packages feed

zydiskell (empty) → 0.1.0.0

raw patch · 104 files changed

+57974/−0 lines, 104 filesdep +basedep +bytestringdep +storable-recordsetup-changed

Dependencies added: base, bytestring, storable-record, vector, zydiskell

Files

+ ChangeLog.md view
@@ -0,0 +1,3 @@+# Changelog for zydiskell++## Unreleased changes
+ LICENSE view
@@ -0,0 +1,674 @@+                    GNU GENERAL PUBLIC LICENSE+                       Version 3, 29 June 2007++ Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>+ Everyone is permitted to copy and distribute verbatim copies+ of this license document, but changing it is not allowed.++                            Preamble++  The GNU General Public License is a free, copyleft license for+software and other kinds of works.++  The licenses for most software and other practical works are designed+to take away your freedom to share and change the works.  By contrast,+the GNU General Public License is intended to guarantee your freedom to+share and change all versions of a program--to make sure it remains free+software for all its users.  We, the Free Software Foundation, use the+GNU General Public License for most of our software; it applies also to+any other work released this way by its authors.  You can apply it to+your programs, too.++  When we speak of free software, we are referring to freedom, not+price.  Our General Public Licenses are designed to make sure that you+have the freedom to distribute copies of free software (and charge for+them if you wish), that you receive source code or can get it if you+want it, that you can change the software or use pieces of it in new+free programs, and that you know you can do these things.++  To protect your rights, we need to prevent others from denying you+these rights or asking you to surrender the rights.  Therefore, you have+certain responsibilities if you distribute copies of the software, or if+you modify it: responsibilities to respect the freedom of others.++  For example, if you distribute copies of such a program, whether+gratis or for a fee, you must pass on to the recipients the same+freedoms that you received.  You must make sure that they, too, receive+or can get the source code.  And you must show them these terms so they+know their rights.++  Developers that use the GNU GPL protect your rights with two steps:+(1) assert copyright on the software, and (2) offer you this License+giving you legal permission to copy, distribute and/or modify it.++  For the developers' and authors' protection, the GPL clearly explains+that there is no warranty for this free software.  For both users' and+authors' sake, the GPL requires that modified versions be marked as+changed, so that their problems will not be attributed erroneously to+authors of previous versions.++  Some devices are designed to deny users access to install or run+modified versions of the software inside them, although the manufacturer+can do so.  This is fundamentally incompatible with the aim of+protecting users' freedom to change the software.  The systematic+pattern of such abuse occurs in the area of products for individuals to+use, which is precisely where it is most unacceptable.  Therefore, we+have designed this version of the GPL to prohibit the practice for those+products.  If such problems arise substantially in other domains, we+stand ready to extend this provision to those domains in future versions+of the GPL, as needed to protect the freedom of users.++  Finally, every program is threatened constantly by software patents.+States should not allow patents to restrict development and use of+software on general-purpose computers, but in those that do, we wish to+avoid the special danger that patents applied to a free program could+make it effectively proprietary.  To prevent this, the GPL assures that+patents cannot be used to render the program non-free.++  The precise terms and conditions for copying, distribution and+modification follow.++                       TERMS AND CONDITIONS++  0. Definitions.++  "This License" refers to version 3 of the GNU General Public License.++  "Copyright" also means copyright-like laws that apply to other kinds of+works, such as semiconductor masks.++  "The Program" refers to any copyrightable work licensed under this+License.  Each licensee is addressed as "you".  "Licensees" and+"recipients" may be individuals or organizations.++  To "modify" a work means to copy from or adapt all or part of the work+in a fashion requiring copyright permission, other than the making of an+exact copy.  The resulting work is called a "modified version" of the+earlier work or a work "based on" the earlier work.++  A "covered work" means either the unmodified Program or a work based+on the Program.++  To "propagate" a work means to do anything with it that, without+permission, would make you directly or secondarily liable for+infringement under applicable copyright law, except executing it on a+computer or modifying a private copy.  Propagation includes copying,+distribution (with or without modification), making available to the+public, and in some countries other activities as well.++  To "convey" a work means any kind of propagation that enables other+parties to make or receive copies.  Mere interaction with a user through+a computer network, with no transfer of a copy, is not conveying.++  An interactive user interface displays "Appropriate Legal Notices"+to the extent that it includes a convenient and prominently visible+feature that (1) displays an appropriate copyright notice, and (2)+tells the user that there is no warranty for the work (except to the+extent that warranties are provided), that licensees may convey the+work under this License, and how to view a copy of this License.  If+the interface presents a list of user commands or options, such as a+menu, a prominent item in the list meets this criterion.++  1. Source Code.++  The "source code" for a work means the preferred form of the work+for making modifications to it.  "Object code" means any non-source+form of a work.++  A "Standard Interface" means an interface that either is an official+standard defined by a recognized standards body, or, in the case of+interfaces specified for a particular programming language, one that+is widely used among developers working in that language.++  The "System Libraries" of an executable work include anything, other+than the work as a whole, that (a) is included in the normal form of+packaging a Major Component, but which is not part of that Major+Component, and (b) serves only to enable use of the work with that+Major Component, or to implement a Standard Interface for which an+implementation is available to the public in source code form.  A+"Major Component", in this context, means a major essential component+(kernel, window system, and so on) of the specific operating system+(if any) on which the executable work runs, or a compiler used to+produce the work, or an object code interpreter used to run it.++  The "Corresponding Source" for a work in object code form means all+the source code needed to generate, install, and (for an executable+work) run the object code and to modify the work, including scripts to+control those activities.  However, it does not include the work's+System Libraries, or general-purpose tools or generally available free+programs which are used unmodified in performing those activities but+which are not part of the work.  For example, Corresponding Source+includes interface definition files associated with source files for+the work, and the source code for shared libraries and dynamically+linked subprograms that the work is specifically designed to require,+such as by intimate data communication or control flow between those+subprograms and other parts of the work.++  The Corresponding Source need not include anything that users+can regenerate automatically from other parts of the Corresponding+Source.++  The Corresponding Source for a work in source code form is that+same work.++  2. Basic Permissions.++  All rights granted under this License are granted for the term of+copyright on the Program, and are irrevocable provided the stated+conditions are met.  This License explicitly affirms your unlimited+permission to run the unmodified Program.  The output from running a+covered work is covered by this License only if the output, given its+content, constitutes a covered work.  This License acknowledges your+rights of fair use or other equivalent, as provided by copyright law.++  You may make, run and propagate covered works that you do not+convey, without conditions so long as your license otherwise remains+in force.  You may convey covered works to others for the sole purpose+of having them make modifications exclusively for you, or provide you+with facilities for running those works, provided that you comply with+the terms of this License in conveying all material for which you do+not control copyright.  Those thus making or running the covered works+for you must do so exclusively on your behalf, under your direction+and control, on terms that prohibit them from making any copies of+your copyrighted material outside their relationship with you.++  Conveying under any other circumstances is permitted solely under+the conditions stated below.  Sublicensing is not allowed; section 10+makes it unnecessary.++  3. Protecting Users' Legal Rights From Anti-Circumvention Law.++  No covered work shall be deemed part of an effective technological+measure under any applicable law fulfilling obligations under article+11 of the WIPO copyright treaty adopted on 20 December 1996, or+similar laws prohibiting or restricting circumvention of such+measures.++  When you convey a covered work, you waive any legal power to forbid+circumvention of technological measures to the extent such circumvention+is effected by exercising rights under this License with respect to+the covered work, and you disclaim any intention to limit operation or+modification of the work as a means of enforcing, against the work's+users, your or third parties' legal rights to forbid circumvention of+technological measures.++  4. Conveying Verbatim Copies.++  You may convey verbatim copies of the Program's source code as you+receive it, in any medium, provided that you conspicuously and+appropriately publish on each copy an appropriate copyright notice;+keep intact all notices stating that this License and any+non-permissive terms added in accord with section 7 apply to the code;+keep intact all notices of the absence of any warranty; and give all+recipients a copy of this License along with the Program.++  You may charge any price or no price for each copy that you convey,+and you may offer support or warranty protection for a fee.++  5. Conveying Modified Source Versions.++  You may convey a work based on the Program, or the modifications to+produce it from the Program, in the form of source code under the+terms of section 4, provided that you also meet all of these conditions:++    a) The work must carry prominent notices stating that you modified+    it, and giving a relevant date.++    b) The work must carry prominent notices stating that it is+    released under this License and any conditions added under section+    7.  This requirement modifies the requirement in section 4 to+    "keep intact all notices".++    c) You must license the entire work, as a whole, under this+    License to anyone who comes into possession of a copy.  This+    License will therefore apply, along with any applicable section 7+    additional terms, to the whole of the work, and all its parts,+    regardless of how they are packaged.  This License gives no+    permission to license the work in any other way, but it does not+    invalidate such permission if you have separately received it.++    d) If the work has interactive user interfaces, each must display+    Appropriate Legal Notices; however, if the Program has interactive+    interfaces that do not display Appropriate Legal Notices, your+    work need not make them do so.++  A compilation of a covered work with other separate and independent+works, which are not by their nature extensions of the covered work,+and which are not combined with it such as to form a larger program,+in or on a volume of a storage or distribution medium, is called an+"aggregate" if the compilation and its resulting copyright are not+used to limit the access or legal rights of the compilation's users+beyond what the individual works permit.  Inclusion of a covered work+in an aggregate does not cause this License to apply to the other+parts of the aggregate.++  6. Conveying Non-Source Forms.++  You may convey a covered work in object code form under the terms+of sections 4 and 5, provided that you also convey the+machine-readable Corresponding Source under the terms of this License,+in one of these ways:++    a) Convey the object code in, or embodied in, a physical product+    (including a physical distribution medium), accompanied by the+    Corresponding Source fixed on a durable physical medium+    customarily used for software interchange.++    b) Convey the object code in, or embodied in, a physical product+    (including a physical distribution medium), accompanied by a+    written offer, valid for at least three years and valid for as+    long as you offer spare parts or customer support for that product+    model, to give anyone who possesses the object code either (1) a+    copy of the Corresponding Source for all the software in the+    product that is covered by this License, on a durable physical+    medium customarily used for software interchange, for a price no+    more than your reasonable cost of physically performing this+    conveying of source, or (2) access to copy the+    Corresponding Source from a network server at no charge.++    c) Convey individual copies of the object code with a copy of the+    written offer to provide the Corresponding Source.  This+    alternative is allowed only occasionally and noncommercially, and+    only if you received the object code with such an offer, in accord+    with subsection 6b.++    d) Convey the object code by offering access from a designated+    place (gratis or for a charge), and offer equivalent access to the+    Corresponding Source in the same way through the same place at no+    further charge.  You need not require recipients to copy the+    Corresponding Source along with the object code.  If the place to+    copy the object code is a network server, the Corresponding Source+    may be on a different server (operated by you or a third party)+    that supports equivalent copying facilities, provided you maintain+    clear directions next to the object code saying where to find the+    Corresponding Source.  Regardless of what server hosts the+    Corresponding Source, you remain obligated to ensure that it is+    available for as long as needed to satisfy these requirements.++    e) Convey the object code using peer-to-peer transmission, provided+    you inform other peers where the object code and Corresponding+    Source of the work are being offered to the general public at no+    charge under subsection 6d.++  A separable portion of the object code, whose source code is excluded+from the Corresponding Source as a System Library, need not be+included in conveying the object code work.++  A "User Product" is either (1) a "consumer product", which means any+tangible personal property which is normally used for personal, family,+or household purposes, or (2) anything designed or sold for incorporation+into a dwelling.  In determining whether a product is a consumer product,+doubtful cases shall be resolved in favor of coverage.  For a particular+product received by a particular user, "normally used" refers to a+typical or common use of that class of product, regardless of the status+of the particular user or of the way in which the particular user+actually uses, or expects or is expected to use, the product.  A product+is a consumer product regardless of whether the product has substantial+commercial, industrial or non-consumer uses, unless such uses represent+the only significant mode of use of the product.++  "Installation Information" for a User Product means any methods,+procedures, authorization keys, or other information required to install+and execute modified versions of a covered work in that User Product from+a modified version of its Corresponding Source.  The information must+suffice to ensure that the continued functioning of the modified object+code is in no case prevented or interfered with solely because+modification has been made.++  If you convey an object code work under this section in, or with, or+specifically for use in, a User Product, and the conveying occurs as+part of a transaction in which the right of possession and use of the+User Product is transferred to the recipient in perpetuity or for a+fixed term (regardless of how the transaction is characterized), the+Corresponding Source conveyed under this section must be accompanied+by the Installation Information.  But this requirement does not apply+if neither you nor any third party retains the ability to install+modified object code on the User Product (for example, the work has+been installed in ROM).++  The requirement to provide Installation Information does not include a+requirement to continue to provide support service, warranty, or updates+for a work that has been modified or installed by the recipient, or for+the User Product in which it has been modified or installed.  Access to a+network may be denied when the modification itself materially and+adversely affects the operation of the network or violates the rules and+protocols for communication across the network.++  Corresponding Source conveyed, and Installation Information provided,+in accord with this section must be in a format that is publicly+documented (and with an implementation available to the public in+source code form), and must require no special password or key for+unpacking, reading or copying.++  7. Additional Terms.++  "Additional permissions" are terms that supplement the terms of this+License by making exceptions from one or more of its conditions.+Additional permissions that are applicable to the entire Program shall+be treated as though they were included in this License, to the extent+that they are valid under applicable law.  If additional permissions+apply only to part of the Program, that part may be used separately+under those permissions, but the entire Program remains governed by+this License without regard to the additional permissions.++  When you convey a copy of a covered work, you may at your option+remove any additional permissions from that copy, or from any part of+it.  (Additional permissions may be written to require their own+removal in certain cases when you modify the work.)  You may place+additional permissions on material, added by you to a covered work,+for which you have or can give appropriate copyright permission.++  Notwithstanding any other provision of this License, for material you+add to a covered work, you may (if authorized by the copyright holders of+that material) supplement the terms of this License with terms:++    a) Disclaiming warranty or limiting liability differently from the+    terms of sections 15 and 16 of this License; or++    b) Requiring preservation of specified reasonable legal notices or+    author attributions in that material or in the Appropriate Legal+    Notices displayed by works containing it; or++    c) Prohibiting misrepresentation of the origin of that material, or+    requiring that modified versions of such material be marked in+    reasonable ways as different from the original version; or++    d) Limiting the use for publicity purposes of names of licensors or+    authors of the material; or++    e) Declining to grant rights under trademark law for use of some+    trade names, trademarks, or service marks; or++    f) Requiring indemnification of licensors and authors of that+    material by anyone who conveys the material (or modified versions of+    it) with contractual assumptions of liability to the recipient, for+    any liability that these contractual assumptions directly impose on+    those licensors and authors.++  All other non-permissive additional terms are considered "further+restrictions" within the meaning of section 10.  If the Program as you+received it, or any part of it, contains a notice stating that it is+governed by this License along with a term that is a further+restriction, you may remove that term.  If a license document contains+a further restriction but permits relicensing or conveying under this+License, you may add to a covered work material governed by the terms+of that license document, provided that the further restriction does+not survive such relicensing or conveying.++  If you add terms to a covered work in accord with this section, you+must place, in the relevant source files, a statement of the+additional terms that apply to those files, or a notice indicating+where to find the applicable terms.++  Additional terms, permissive or non-permissive, may be stated in the+form of a separately written license, or stated as exceptions;+the above requirements apply either way.++  8. Termination.++  You may not propagate or modify a covered work except as expressly+provided under this License.  Any attempt otherwise to propagate or+modify it is void, and will automatically terminate your rights under+this License (including any patent licenses granted under the third+paragraph of section 11).++  However, if you cease all violation of this License, then your+license from a particular copyright holder is reinstated (a)+provisionally, unless and until the copyright holder explicitly and+finally terminates your license, and (b) permanently, if the copyright+holder fails to notify you of the violation by some reasonable means+prior to 60 days after the cessation.++  Moreover, your license from a particular copyright holder is+reinstated permanently if the copyright holder notifies you of the+violation by some reasonable means, this is the first time you have+received notice of violation of this License (for any work) from that+copyright holder, and you cure the violation prior to 30 days after+your receipt of the notice.++  Termination of your rights under this section does not terminate the+licenses of parties who have received copies or rights from you under+this License.  If your rights have been terminated and not permanently+reinstated, you do not qualify to receive new licenses for the same+material under section 10.++  9. Acceptance Not Required for Having Copies.++  You are not required to accept this License in order to receive or+run a copy of the Program.  Ancillary propagation of a covered work+occurring solely as a consequence of using peer-to-peer transmission+to receive a copy likewise does not require acceptance.  However,+nothing other than this License grants you permission to propagate or+modify any covered work.  These actions infringe copyright if you do+not accept this License.  Therefore, by modifying or propagating a+covered work, you indicate your acceptance of this License to do so.++  10. Automatic Licensing of Downstream Recipients.++  Each time you convey a covered work, the recipient automatically+receives a license from the original licensors, to run, modify and+propagate that work, subject to this License.  You are not responsible+for enforcing compliance by third parties with this License.++  An "entity transaction" is a transaction transferring control of an+organization, or substantially all assets of one, or subdividing an+organization, or merging organizations.  If propagation of a covered+work results from an entity transaction, each party to that+transaction who receives a copy of the work also receives whatever+licenses to the work the party's predecessor in interest had or could+give under the previous paragraph, plus a right to possession of the+Corresponding Source of the work from the predecessor in interest, if+the predecessor has it or can get it with reasonable efforts.++  You may not impose any further restrictions on the exercise of the+rights granted or affirmed under this License.  For example, you may+not impose a license fee, royalty, or other charge for exercise of+rights granted under this License, and you may not initiate litigation+(including a cross-claim or counterclaim in a lawsuit) alleging that+any patent claim is infringed by making, using, selling, offering for+sale, or importing the Program or any portion of it.++  11. Patents.++  A "contributor" is a copyright holder who authorizes use under this+License of the Program or a work on which the Program is based.  The+work thus licensed is called the contributor's "contributor version".++  A contributor's "essential patent claims" are all patent claims+owned or controlled by the contributor, whether already acquired or+hereafter acquired, that would be infringed by some manner, permitted+by this License, of making, using, or selling its contributor version,+but do not include claims that would be infringed only as a+consequence of further modification of the contributor version.  For+purposes of this definition, "control" includes the right to grant+patent sublicenses in a manner consistent with the requirements of+this License.++  Each contributor grants you a non-exclusive, worldwide, royalty-free+patent license under the contributor's essential patent claims, to+make, use, sell, offer for sale, import and otherwise run, modify and+propagate the contents of its contributor version.++  In the following three paragraphs, a "patent license" is any express+agreement or commitment, however denominated, not to enforce a patent+(such as an express permission to practice a patent or covenant not to+sue for patent infringement).  To "grant" such a patent license to a+party means to make such an agreement or commitment not to enforce a+patent against the party.++  If you convey a covered work, knowingly relying on a patent license,+and the Corresponding Source of the work is not available for anyone+to copy, free of charge and under the terms of this License, through a+publicly available network server or other readily accessible means,+then you must either (1) cause the Corresponding Source to be so+available, or (2) arrange to deprive yourself of the benefit of the+patent license for this particular work, or (3) arrange, in a manner+consistent with the requirements of this License, to extend the patent+license to downstream recipients.  "Knowingly relying" means you have+actual knowledge that, but for the patent license, your conveying the+covered work in a country, or your recipient's use of the covered work+in a country, would infringe one or more identifiable patents in that+country that you have reason to believe are valid.++  If, pursuant to or in connection with a single transaction or+arrangement, you convey, or propagate by procuring conveyance of, a+covered work, and grant a patent license to some of the parties+receiving the covered work authorizing them to use, propagate, modify+or convey a specific copy of the covered work, then the patent license+you grant is automatically extended to all recipients of the covered+work and works based on it.++  A patent license is "discriminatory" if it does not include within+the scope of its coverage, prohibits the exercise of, or is+conditioned on the non-exercise of one or more of the rights that are+specifically granted under this License.  You may not convey a covered+work if you are a party to an arrangement with a third party that is+in the business of distributing software, under which you make payment+to the third party based on the extent of your activity of conveying+the work, and under which the third party grants, to any of the+parties who would receive the covered work from you, a discriminatory+patent license (a) in connection with copies of the covered work+conveyed by you (or copies made from those copies), or (b) primarily+for and in connection with specific products or compilations that+contain the covered work, unless you entered into that arrangement,+or that patent license was granted, prior to 28 March 2007.++  Nothing in this License shall be construed as excluding or limiting+any implied license or other defenses to infringement that may+otherwise be available to you under applicable patent law.++  12. No Surrender of Others' Freedom.++  If conditions are imposed on you (whether by court order, agreement or+otherwise) that contradict the conditions of this License, they do not+excuse you from the conditions of this License.  If you cannot convey a+covered work so as to satisfy simultaneously your obligations under this+License and any other pertinent obligations, then as a consequence you may+not convey it at all.  For example, if you agree to terms that obligate you+to collect a royalty for further conveying from those to whom you convey+the Program, the only way you could satisfy both those terms and this+License would be to refrain entirely from conveying the Program.++  13. Use with the GNU Affero General Public License.++  Notwithstanding any other provision of this License, you have+permission to link or combine any covered work with a work licensed+under version 3 of the GNU Affero General Public License into a single+combined work, and to convey the resulting work.  The terms of this+License will continue to apply to the part which is the covered work,+but the special requirements of the GNU Affero General Public License,+section 13, concerning interaction through a network will apply to the+combination as such.++  14. Revised Versions of this License.++  The Free Software Foundation may publish revised and/or new versions of+the GNU General Public License from time to time.  Such new versions will+be similar in spirit to the present version, but may differ in detail to+address new problems or concerns.++  Each version is given a distinguishing version number.  If the+Program specifies that a certain numbered version of the GNU General+Public License "or any later version" applies to it, you have the+option of following the terms and conditions either of that numbered+version or of any later version published by the Free Software+Foundation.  If the Program does not specify a version number of the+GNU General Public License, you may choose any version ever published+by the Free Software Foundation.++  If the Program specifies that a proxy can decide which future+versions of the GNU General Public License can be used, that proxy's+public statement of acceptance of a version permanently authorizes you+to choose that version for the Program.++  Later license versions may give you additional or different+permissions.  However, no additional obligations are imposed on any+author or copyright holder as a result of your choosing to follow a+later version.++  15. Disclaimer of Warranty.++  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.++  16. Limitation of Liability.++  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF+SUCH DAMAGES.++  17. Interpretation of Sections 15 and 16.++  If the disclaimer of warranty and limitation of liability provided+above cannot be given local legal effect according to their terms,+reviewing courts shall apply local law that most closely approximates+an absolute waiver of all civil liability in connection with the+Program, unless a warranty or assumption of liability accompanies a+copy of the Program in return for a fee.++                     END OF TERMS AND CONDITIONS++            How to Apply These Terms to Your New Programs++  If you develop a new program, and you want it to be of the greatest+possible use to the public, the best way to achieve this is to make it+free software which everyone can redistribute and change under these terms.++  To do so, attach the following notices to the program.  It is safest+to attach them to the start of each source file to most effectively+state the exclusion of warranty; and each file should have at least+the "copyright" line and a pointer to where the full notice is found.++    <one line to give the program's name and a brief idea of what it does.>+    Copyright (C) <year>  <name of author>++    This program is free software: you can redistribute it and/or modify+    it under the terms of the GNU General Public License as published by+    the Free Software Foundation, either version 3 of the License, or+    (at your option) any later version.++    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, see <https://www.gnu.org/licenses/>.++Also add information on how to contact you by electronic and paper mail.++  If the program does terminal interaction, make it output a short+notice like this when it starts in an interactive mode:++    <program>  Copyright (C) <year>  <name of author>+    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.+    This is free software, and you are welcome to redistribute it+    under certain conditions; type `show c' for details.++The hypothetical commands `show w' and `show c' should show the appropriate+parts of the General Public License.  Of course, your program's commands+might be different; for a GUI interface, you would use an "about box".++  You should also get your employer (if you work as a programmer) or school,+if any, to sign a "copyright disclaimer" for the program, if necessary.+For more information on this, and how to apply and follow the GNU GPL, see+<https://www.gnu.org/licenses/>.++  The GNU General Public License does not permit incorporating your program+into proprietary programs.  If your program is a subroutine library, you+may consider it more useful to permit linking proprietary applications with+the library.  If this is what you want to do, use the GNU Lesser General+Public License instead of this License.  But first, please read+<https://www.gnu.org/licenses/why-not-lgpl.html>.
+ README.md view
@@ -0,0 +1,71 @@+# Zydiskell++Haskell langage binding for the [Zydis library](https://github.com/zyantific/zydis), a fast and lightweight x86/x86-64 disassembler.++## Building++- Recursively clone the project: `git clone --recursive https://github.com/nerded1337/zydiskell`+- Either use Stack or Cabal: `stack build` | `cabal v2-build`++Note: The [Zydis library](https://github.com/zyantific/zydis) will be directly compiled by GHC.++## Interface++We currently expose three functions:++```haskell+import qualified Zydis as Z++Z.initialize :: MachineMode -> AddressWidth -> IO (Either ZyanStatus Decoder)++Z.decodeBuffer+  :: Decoder+  -> ByteString+  -> Offset+  -> Length+  -> IO (Either ZyanStatus DecodedInstruction)++Z. decodeFullBuffer+  :: Decoder -> ByteString -> IO (Either ZyanStatus (Vector DecodedInstruction))+```++## Example+```haskell+{-# LANGUAGE OverloadedStrings #-}++module Main where++import           Data.Bitraversable+import           Data.Bifoldable+import qualified Zydis                         as Z++main :: IO ()+main = test++test :: IO ()+test = bitraverse_ initFailure decode =<< initZydis+ where+  zyanError s = putStrLn . ((s <> ". ZyanStatus: ") <>) . show++  initFailure     = zyanError "Failed to initialize decoder"++  initZydis       = Z.initialize Z.MachineModeLong64 Z.AddressWidth64++  {-+     mov rax, 0xCAFEBABECAFEBABE+     push rax+     ret+  -}+  buffer          = "\x48\xB8\xBE\xBA\xFE\xCA\xBE\xBA\xFE\xCA\x50\xC3"++  decodingFailure = zyanError "Failed to decode buffer"++  {-+      Given the decoded buffer, should output: [MnemonicMov,MnemonicPush,MnemonicRet]+  -}+  printMnemonics  = print . fmap Z.decodedInstructionMnemonic++  decode decoder =+    bitraverse decodingFailure printMnemonics+      =<< Z.decodeFullBuffer decoder buffer+```
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ external/zydis/dependencies/zycore/include/Zycore/API/Memory.h view
@@ -0,0 +1,134 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * @brief+ */++#ifndef ZYCORE_MEMORY_H+#define ZYCORE_MEMORY_H++#include <ZycoreExportConfig.h>+#include <Zycore/Defines.h>+#include <Zycore/Status.h>+#include <Zycore/Types.h>++#if   defined(ZYAN_WINDOWS)+#   include <windows.h>+#elif defined(ZYAN_POSIX)+#   include <sys/mman.h>+#else+#   error "Unsupported platform detected"+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanMemoryPageProtection` enum.+ */+typedef enum ZyanMemoryPageProtection_+{+#if   defined(ZYAN_WINDOWS)++    ZYAN_PAGE_READONLY          = PAGE_READONLY,+    ZYAN_PAGE_READWRITE         = PAGE_READWRITE,+    ZYAN_PAGE_EXECUTE           = PAGE_EXECUTE,+    ZYAN_PAGE_EXECUTE_READ      = PAGE_EXECUTE_READ,+    ZYAN_PAGE_EXECUTE_READWRITE = PAGE_EXECUTE_READWRITE++#elif defined(ZYAN_POSIX)++    ZYAN_PAGE_READONLY          = PROT_READ,+    ZYAN_PAGE_READWRITE         = PROT_READ | PROT_WRITE,+    ZYAN_PAGE_EXECUTE           = PROT_EXEC,+    ZYAN_PAGE_EXECUTE_READ      = PROT_EXEC | PROT_READ,+    ZYAN_PAGE_EXECUTE_READWRITE = PROT_EXEC | PROT_READ | PROT_WRITE++#endif+} ZyanMemoryPageProtection;++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the system page size.+ *+ * @return  The system page size.+ */+ZyanU32 ZyanMemoryGetSystemPageSize();++/**+ * Returns the system allocation granularity.+ *+ * The system allocation granularity specifies the minimum amount of bytes which can be allocated+ * at a specific address by a single call of `ZyanMemoryVirtualAlloc`.+ *+ * This value is typically 64KiB on Windows systems and equal to the page size on most POSIX+ * platforms.+ *+ * @return  The system allocation granularity.+ */+ZyanU32 ZyanMemoryGetSystemAllocationGranularity();++/* ---------------------------------------------------------------------------------------------- */+/* Memory management                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Changes the memory protection value of one or more pages.+ *+ * @param   address     The start address aligned to a page boundary.+ * @param   size        The size.+ * @param   protection  The new page protection value.+ *+ * @return  A zyan status code.+ */+ZyanStatus ZyanMemoryVirtualProtect(void* address, ZyanUSize size,+    ZyanMemoryPageProtection protection);++/**+ * Releases one or more memory pages starting at the given address.+ *+ * @param   address The start address aligned to a page boundary.+ * @param   size    The size.+ *+ * @return  A zyan status code.+ */+ZyanStatus ZyanMemoryVirtualFree(void* address, ZyanUSize size);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#endif /* ZYCORE_MEMORY_H */
+ external/zydis/dependencies/zycore/include/Zycore/API/Synchronization.h view
@@ -0,0 +1,133 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * @brief+ */++#ifndef ZYCORE_SYNCHRONIZATION_H+#define ZYCORE_SYNCHRONIZATION_H++#ifndef ZYAN_NO_LIBC++#include <ZycoreExportConfig.h>+#include <Zycore/Defines.h>+#include <Zycore/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++#if   defined(ZYAN_POSIX)++#include <pthread.h>++/* ---------------------------------------------------------------------------------------------- */+/* Critical Section                                                                               */+/* ---------------------------------------------------------------------------------------------- */++typedef pthread_mutex_t ZyanCriticalSection;++/* ---------------------------------------------------------------------------------------------- */++#elif defined(ZYAN_WINDOWS)++#include <windows.h>++/* ---------------------------------------------------------------------------------------------- */+/* Critical Section                                                                               */+/* ---------------------------------------------------------------------------------------------- */++typedef CRITICAL_SECTION ZyanCriticalSection;++/* ---------------------------------------------------------------------------------------------- */++#else+#   error "Unsupported platform detected"+#endif++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Critical Section                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Initializes a critical section.+ *+ * @param   critical_section    A pointer to the `ZyanCriticalSection` struct.+ */+ZYCORE_EXPORT ZyanStatus ZyanCriticalSectionInitialize(ZyanCriticalSection* critical_section);++/**+ * Enters a critical section.+ *+ * @param   critical_section    A pointer to the `ZyanCriticalSection` struct.+ */+ZYCORE_EXPORT ZyanStatus ZyanCriticalSectionEnter(ZyanCriticalSection* critical_section);++/**+ * Tries to enter a critical section.+ *+ * @param   critical_section    A pointer to the `ZyanCriticalSection` struct.+ *+ * @return  Returns `ZYAN_TRUE` if the critical section was successfully entered or `ZYAN_FALSE`,+ *          if not.+ */+ZYCORE_EXPORT ZyanBool ZyanCriticalSectionTryEnter(ZyanCriticalSection* critical_section);++/**+ * Leaves a critical section.+ *+ * @param   critical_section    A pointer to the `ZyanCriticalSection` struct.+ */+ZYCORE_EXPORT ZyanStatus ZyanCriticalSectionLeave(ZyanCriticalSection* critical_section);++/**+ * Deletes a critical section.+ *+ * @param   critical_section    A pointer to the `ZyanCriticalSection` struct.+ */+ZYCORE_EXPORT ZyanStatus ZyanCriticalSectionDelete(ZyanCriticalSection* critical_section);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYAN_NO_LIBC */++#endif /* ZYCORE_SYNCHRONIZATION_H */
+ external/zydis/dependencies/zycore/include/Zycore/API/Terminal.h view
@@ -0,0 +1,163 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file    Provides cross-platform terminal helper functions.+ * @brief+ */++#ifndef ZYCORE_TERMINAL_H+#define ZYCORE_TERMINAL_H++#include <ZycoreExportConfig.h>+#include <Zycore/LibC.h>+#include <Zycore/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++#ifndef ZYAN_NO_LIBC++/* ============================================================================================== */+/* VT100 CSI SGR sequences                                                                        */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++#define ZYAN_VT100SGR_RESET             "\033[0m"++/* ---------------------------------------------------------------------------------------------- */+/* Foreground colors                                                                              */+/* ---------------------------------------------------------------------------------------------- */++#define ZYAN_VT100SGR_FG_DEFAULT        "\033[39m"++#define ZYAN_VT100SGR_FG_BLACK          "\033[30m"+#define ZYAN_VT100SGR_FG_RED            "\033[31m"+#define ZYAN_VT100SGR_FG_GREEN          "\033[32m"+#define ZYAN_VT100SGR_FG_YELLOW         "\033[33m"+#define ZYAN_VT100SGR_FG_BLUE           "\033[34m"+#define ZYAN_VT100SGR_FG_MAGENTA        "\033[35m"+#define ZYAN_VT100SGR_FG_CYAN           "\033[36m"+#define ZYAN_VT100SGR_FG_WHITE          "\033[37m"+#define ZYAN_VT100SGR_FG_BRIGHT_BLACK   "\033[90m"+#define ZYAN_VT100SGR_FG_BRIGHT_RED     "\033[91m"+#define ZYAN_VT100SGR_FG_BRIGHT_GREEN   "\033[92m"+#define ZYAN_VT100SGR_FG_BRIGHT_YELLOW  "\033[93m"+#define ZYAN_VT100SGR_FG_BRIGHT_BLUE    "\033[94m"+#define ZYAN_VT100SGR_FG_BRIGHT_MAGENTA "\033[95m"+#define ZYAN_VT100SGR_FG_BRIGHT_CYAN    "\033[96m"+#define ZYAN_VT100SGR_FG_BRIGHT_WHITE   "\033[97m"++/* ---------------------------------------------------------------------------------------------- */+/* Background color                                                                               */+/* ---------------------------------------------------------------------------------------------- */++#define ZYAN_VT100SGR_BG_DEFAULT        "\033[49m"++#define ZYAN_VT100SGR_BG_BLACK          "\033[40m"+#define ZYAN_VT100SGR_BG_RED            "\033[41m"+#define ZYAN_VT100SGR_BG_GREEN          "\033[42m"+#define ZYAN_VT100SGR_BG_YELLOW         "\033[43m"+#define ZYAN_VT100SGR_BG_BLUE           "\033[44m"+#define ZYAN_VT100SGR_BG_MAGENTA        "\033[45m"+#define ZYAN_VT100SGR_BG_CYAN           "\033[46m"+#define ZYAN_VT100SGR_BG_WHITE          "\033[47m"+#define ZYAN_VT100SGR_BG_BRIGHT_BLACK   "\033[100m"+#define ZYAN_VT100SGR_BG_BRIGHT_RED     "\033[101m"+#define ZYAN_VT100SGR_BG_BRIGHT_GREEN   "\033[102m"+#define ZYAN_VT100SGR_BG_BRIGHT_YELLOW  "\033[103m"+#define ZYAN_VT100SGR_BG_BRIGHT_BLUE    "\033[104m"+#define ZYAN_VT100SGR_BG_BRIGHT_MAGENTA "\033[105m"+#define ZYAN_VT100SGR_BG_BRIGHT_CYAN    "\033[106m"+#define ZYAN_VT100SGR_BG_BRIGHT_WHITE   "\033[107m"++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Declares the `ZyanStandardStream` enum.+ */+typedef enum ZyanStandardStream_+{+    /**+     * The default input stream.+     */+    ZYAN_STDSTREAM_IN,+    /**+     * The default output stream.+     */+    ZYAN_STDSTREAM_OUT,+    /**+     * The default error stream.+     */+    ZYAN_STDSTREAM_ERR+} ZyanStandardStream;++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * Enables VT100 ansi escape codes for the given stream.+ *+ * @param   stream  Either `ZYAN_STDSTREAM_OUT` or `ZYAN_STDSTREAM_ERR`.+ *+ * @return  A zyan status code.+ *+ * This functions returns `ZYAN_STATUS_SUCCESS` on all non-Windows systems without performing any+ * operations, assuming that VT100 is supported by default.+ *+ * On Windows systems, VT100 functionality is only supported on Windows 10 build 1607 (anniversary+ * update) and later.+ */+ZYCORE_EXPORT ZyanStatus ZyanTerminalEnableVT100(ZyanStandardStream stream);++/**+ * Checks, if the given standard stream reads from or writes to a terminal.+ *+ * @param   stream  The standard stream to check.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the stream is bound to a terminal, `ZYAN_STATUS_FALSE` if not,+ *          or another zyan status code if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanTerminalIsTTY(ZyanStandardStream stream);++/* ============================================================================================== */++#endif // ZYAN_NO_LIBC++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_TERMINAL_H */
+ external/zydis/dependencies/zycore/include/Zycore/API/Thread.h view
@@ -0,0 +1,244 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * @brief+ */++#ifndef ZYCORE_THREAD_H+#define ZYCORE_THREAD_H++#ifndef ZYAN_NO_LIBC++#include <ZycoreExportConfig.h>+#include <Zycore/Defines.h>+#include <Zycore/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++#if   defined(ZYAN_POSIX)++#include <pthread.h>++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ *  Defines the `ZyanThread` data-type.+ */+typedef pthread_t ZyanThread;++/**+ *  Defines the `ZyanThreadId` data-type.+ */+typedef ZyanU64 ZyanThreadId;++/* ---------------------------------------------------------------------------------------------- */+/* Thread Local Storage (TLS)                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ *  Defines the `ZyanThreadTlsIndex` data-type.+ */+typedef pthread_key_t ZyanThreadTlsIndex;++/**+ *  Defines the `ZyanThreadTlsCallback` function prototype.+ */+typedef void(*ZyanThreadTlsCallback)(void* data);++/**+ * Declares a Thread Local Storage (TLS) callback function.+ *+ * @param   name        The callback function name.+ * @param   param_type  The callback data parameter type.+ * @param   param_name  The callback data parameter name.+ */+#define ZYAN_THREAD_DECLARE_TLS_CALLBACK(name, param_type, param_name) \+    void name(param_type* param_name)++/* ---------------------------------------------------------------------------------------------- */++#elif defined(ZYAN_WINDOWS)++#include <windows.h>++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ *  Defines the `ZyanThread` data-type.+ */+typedef HANDLE ZyanThread;++/**+ *  Defines the `ZyanThreadId` data-type.+ */+typedef DWORD ZyanThreadId;++/* ---------------------------------------------------------------------------------------------- */+/* Thread Local Storage (TLS)                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ *  Defines the `ZyanThreadTlsIndex` data-type.+ */+typedef DWORD ZyanThreadTlsIndex;++/**+ *  Defines the `ZyanThreadTlsCallback` function prototype.+ */+typedef PFLS_CALLBACK_FUNCTION ZyanThreadTlsCallback;++/**+ * Declares a Thread Local Storage (TLS) callback function.+ *+ * @param   name        The callback function name.+ * @param   param_type  The callback data parameter type.+ * @param   param_name  The callback data parameter name.+ */+#define ZYAN_THREAD_DECLARE_TLS_CALLBACK(name, param_type, param_name) \+    VOID NTAPI name(param_type* param_name)++/* ---------------------------------------------------------------------------------------------- */++#else+#   error "Unsupported platform detected"+#endif++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the handle of the current thread.+ *+ * @param   thread  Receives the handle of the current thread.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanThreadGetCurrentThread(ZyanThread* thread);++/**+ * Returns the unique id of the current thread.+ *+ * @param   thread_id   Receives the unique id of the current thread.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanThreadGetCurrentThreadId(ZyanThreadId* thread_id);++/* ---------------------------------------------------------------------------------------------- */+/* Thread Local Storage (TLS)                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Allocates a new Thread Local Storage (TLS) slot.+ *+ * @param   index       Receives the TLS slot index.+ * @param   destructor  A pointer to a destructor callback which is invoked to finalize the data+ *                      in the TLS slot or `ZYAN_NULL`, if not needed.+ *+ * The maximum available number of TLS slots is implementation specific and different on each+ * platform:+ * - Windows+ *   - A total amount of 128 slots per process are guaranteed+ * - POSIX+ *   - A total amount of 128 slots per process are guaranteed+ *   - Some systems guarantee larger amounts like e.g. 1024 slots per process+ *+ * Note that the invocation rules for the destructor callback are implementation specific and+ * different on each platform:+ * - Windows+ *   - The callback is invoked when a thread exits+ *   - The callback is invoked when the process exits+ *   - The callback is invoked when the TLS slot is released+ * - POSIX+ *   - The callback is invoked when a thread exits and the stored value is not null+ *   - The callback is NOT invoked when the process exits+ *   - The callback is NOT invoked when the TLS slot is released+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanThreadTlsAlloc(ZyanThreadTlsIndex* index,+    ZyanThreadTlsCallback destructor);++/**+ * Releases a Thread Local Storage (TLS) slot.+ *+ * @param   index   The TLS slot index.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanThreadTlsFree(ZyanThreadTlsIndex index);++/**+ * Returns the value inside the given Thread Local Storage (TLS) slot for the+ * calling thread.+ *+ * @param   index   The TLS slot index.+ * @param   data    Receives the value inside the given Thread Local Storage+ *                  (TLS) slot for the calling thread.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanThreadTlsGetValue(ZyanThreadTlsIndex index, void** data);++/**+ * Set the value of the given Thread Local Storage (TLS) slot for the calling thread.+ *+ * @param   index   The TLS slot index.+ * @param   data    The value to store inside the given Thread Local Storage (TLS) slot for the+ *                  calling thread+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanThreadTlsSetValue(ZyanThreadTlsIndex index, void* data);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYAN_NO_LIBC */++#endif /* ZYCORE_THREAD_H */
+ external/zydis/dependencies/zycore/include/Zycore/Allocator.h view
@@ -0,0 +1,143 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * @brief+ */++#ifndef ZYCORE_ALLOCATOR_H+#define ZYCORE_ALLOCATOR_H++#include <ZycoreExportConfig.h>+#include <Zycore/Status.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++struct ZyanAllocator_;++/**+ * Defines the `ZyanAllocatorAllocate` function prototype.+ *+ * @param   allocator       A pointer to the `ZyanAllocator` instance.+ * @param   p               Receives a pointer to the first memory block sufficient to hold an+ *                          array of `n` elements with a size of `element_size`.+ * @param   element_size    The size of a single element.+ * @param   n               The number of elements to allocate storage for.+ *+ * @return  A zyan status code.+ *+ * This prototype is used for the `allocate()` and `reallocate()` functions.+ *+ * The result of the `reallocate()` function is undefined, if `p` does not point to a memory block+ * previously obtained by `(re-)allocate()`.+ */+typedef ZyanStatus (*ZyanAllocatorAllocate)(struct ZyanAllocator_* allocator, void** p,+    ZyanUSize element_size, ZyanUSize n);++/**+ * Defines the `ZyanAllocatorDeallocate` function prototype.+ *+ * @param   allocator       A pointer to the `ZyanAllocator` instance.+ * @param   p               The pointer obtained from `(re-)allocate()`.+ * @param   element_size    The size of a single element.+ * @param   n               The number of elements earlier passed to `(re-)allocate()`.+ *+  * @return  A zyan status code.+ */+typedef ZyanStatus (*ZyanAllocatorDeallocate)(struct ZyanAllocator_* allocator, void* p,+    ZyanUSize element_size, ZyanUSize n);++/**+ * Defines the `ZyanAllocator` struct.+ *+ * This is the base class for all custom allocator implementations.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanAllocator_+{+    /**+     * The allocate function.+     */+    ZyanAllocatorAllocate allocate;+    /**+     * The reallocate function.+     */+    ZyanAllocatorAllocate reallocate;+    /**+     * The deallocate function.+     */+    ZyanAllocatorDeallocate deallocate;+} ZyanAllocator;++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * Initializes the given `ZyanAllocator` instance.+ *+ * @param   allocator   A pointer to the `ZyanAllocator` instance.+ * @param   allocate    The allocate function.+ * @param   reallocate  The reallocate function.+ * @param   deallocate  The deallocate function.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanAllocatorInit(ZyanAllocator* allocator, ZyanAllocatorAllocate allocate,+    ZyanAllocatorAllocate reallocate, ZyanAllocatorDeallocate deallocate);++#ifndef ZYAN_NO_LIBC++/**+ * Returns the default `ZyanAllocator` instance.+ *+ * @return  A pointer to the default `ZyanAllocator` instance.+ *+ * The default allocator uses the default memory manager to allocate memory on the heap.+ *+ * You should in no case modify the returned allocator instance to avoid unexpected behavior.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanAllocator* ZyanAllocatorDefault(void);++#endif // ZYAN_NO_LIBC++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_ALLOCATOR_H */
+ external/zydis/dependencies/zycore/include/Zycore/ArgParse.h view
@@ -0,0 +1,173 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements command-line argument parsing.+ */++#ifndef ZYCORE_ARGPARSE_H+#define ZYCORE_ARGPARSE_H++#include <Zycore/Types.h>+#include <Zycore/Status.h>+#include <Zycore/Vector.h>+#include <Zycore/String.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Structs and other types                                                                        */+/* ============================================================================================== */++/**+ * Definition of a single argument.+ */+typedef struct ZyanArgParseDefinition_+{+    /**+     * The argument name, e.g. `--help`.+     *+     * Must start with either one or two dashes. Single dash arguments must consist of a single+     * character, (e.g. `-n`), double-dash arguments can be of arbitrary length.+     */+    const char* name;+    /**+     * Whether the argument is boolean or expects a value.+     */+    ZyanBool boolean;+    /**+     * Whether this argument is required (error if missing).+     */+    ZyanBool required;+} ZyanArgParseDefinition;++/**+ * Configuration for argument parsing.+ */+typedef struct ZyanArgParseConfig_+{+    /**+     * `argv` argument passed to `main` by LibC.+     */+    const char** argv;+    /**+     * `argc` argument passed to `main` by LibC.+     */+    ZyanUSize argc;+    /**+     * Minimum # of accepted unnamed / anonymous arguments.+     */+    ZyanUSize min_unnamed_args;+    /**+     * Maximum # of accepted unnamed / anonymous arguments.+     */+    ZyanUSize max_unnamed_args;+    /**+     * Argument definition array, or `ZYAN_NULL`.+     *+     * Expects a pointer to an array of `ZyanArgParseDefinition` instances. The array is+     * terminated by setting the `.name` field of the last element to `ZYAN_NULL`. If no named+     * arguments should be parsed, you can also set this to `ZYAN_NULL`.+     */+    ZyanArgParseDefinition* args;+} ZyanArgParseConfig;++/**+ * Information about a parsed argument.+ */+typedef struct ZyanArgParseArg_+{+    /**+     * Corresponding argument definition, or `ZYAN_NULL` for unnamed args.+     *+     * This pointer is borrowed from the `cfg` pointer passed to `ZyanArgParse`.+     */+    const ZyanArgParseDefinition* def;+    /**+     * Whether the argument has a value (is non-boolean).+     */+    ZyanBool has_value;+    /**+     * If `has_value == true`, then the argument value.+     *+     * This is a view into the `argv` string array passed to `ZyanArgParse` via the `cfg` argument.+     */+    ZyanStringView value;+} ZyanArgParseArg;++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++#ifndef ZYAN_NO_LIBC++/**+ * Parse arguments according to a `ZyanArgParseConfig` definition.+ *+ * @param  cfg          Argument parser config to use.+ * @param  parsed       Receives the parsed output. Vector of `ZyanArgParseArg`. Ownership is+ *                      transferred to the user. Input is expected to be uninitialized. On error,+ *                      the vector remains uninitialized.+ * @param  error_token  On error, if it makes sense, receives the argument fragment causing the+ *                      error. Optional, may be `ZYAN_NULL`. The pointer borrows into the `cfg`+ *                      struct and doesn't have to be freed by the user.+ *+ * @return A `ZyanStatus` status determining whether the parsing succeeded.+ */+ZYCORE_EXPORT ZyanStatus ZyanArgParse(const ZyanArgParseConfig *cfg, ZyanVector* parsed,+    const char** error_token);++#endif++/**+ * Parse arguments according to a `ZyanArgParseConfig` definition.+ *+ * This version allows specification of a custom memory allocator and thus supports no-libc.+ *+ * @param  cfg          Argument parser config to use.+ * @param  parsed       Receives the parsed output. Vector of `ZyanArgParseArg`. Ownership is+ *                      transferred to the user. Input is expected to be uninitialized. On error,+ *                      the vector remains uninitialized.+ * @param  error_token  On error, if it makes sense, receives the argument fragment causing the+ *                      error. Optional, may be `ZYAN_NULL`. The pointer borrows into the `cfg`+ *                      struct and doesn't have to be freed by the user.+ * @param   allocator   The `ZyanAllocator` to be used for allocating the output vector's data.+ *+ * @return A `ZyanStatus` status determining whether the parsing succeeded.+ */+ZYCORE_EXPORT ZyanStatus ZyanArgParseEx(const ZyanArgParseConfig *cfg, ZyanVector* parsed,+    const char** error_token, ZyanAllocator* allocator);++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_ARGPARSE_H */
+ external/zydis/dependencies/zycore/include/Zycore/Bitset.h view
@@ -0,0 +1,484 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements the bitset class.+ */++#ifndef ZYCORE_BITSET_H+#define ZYCORE_BITSET_H++#include <ZycoreExportConfig.h>+#include <Zycore/Allocator.h>+#include <Zycore/Status.h>+#include <Zycore/Types.h>+#include <Zycore/Vector.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanVector` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanBitset_+{+    /**+     * The bitset size.+     */+    ZyanUSize size;+    /**+     * The bitset data.+     */+    ZyanVector bits;+} ZyanBitset;++/**+ * Defines the `ZyanBitsetByteOperation` function prototype.+ *+ * @param   v1  A pointer to the first byte. This value receives the result after performing the+ *              desired operation.+ * @param   v2  A pointer to the second byte.+ *+ * @return  A zyan status code.+ *+ * This function is used to perform byte-wise operations on two `ZyanBitset` instances.+ */+typedef ZyanStatus (*ZyanBitsetByteOperation)(ZyanU8* v1, const ZyanU8* v2);++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constructor and destructor                                                                     */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanBitset` instance.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   count   The initial amount of bits.+ *+ * @return  A zyan status code.+ *+ * The space for the bitset is dynamically allocated by the default allocator using the default+ * growth factor of `2.0f` and the default shrink threshold of `0.5f`.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanBitsetInit(ZyanBitset* bitset, ZyanUSize count);++#endif // ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanBitset` instance and sets a custom `allocator` and memory+ * allocation/deallocation parameters.+ *+ * @param   bitset              A pointer to the `ZyanBitset` instance.+ * @param   count               The initial amount of bits.+ * @param   allocator           A pointer to a `ZyanAllocator` instance.+ * @param   growth_factor       The growth factor (from `1.0f` to `x.xf`).+ * @param   shrink_threshold    The shrink threshold (from `0.0f` to `1.0f`).+ *+ * @return  A zyan status code.+ *+ * A growth factor of `1.0f` disables overallocation and a shrink threshold of `0.0f` disables+ * dynamic shrinking.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetInitEx(ZyanBitset* bitset, ZyanUSize count,+    ZyanAllocator* allocator, float growth_factor, float shrink_threshold);++/**+ * Initializes the given `ZyanBitset` instance and configures it to use a custom user+ * defined buffer with a fixed size.+ *+ * @param   bitset      A pointer to the `ZyanBitset` instance.+ * @param   count       The initial amount of bits.+ * @param   buffer      A pointer to the buffer that is used as storage for the bits.+ * @param   capacity    The maximum capacity (number of bytes) of the buffer.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetInitBuffer(ZyanBitset* bitset, ZyanUSize count, void* buffer,+    ZyanUSize capacity);++/**+ * Destroys the given `ZyanBitset` instance.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetDestroy(ZyanBitset* bitset);++/* ---------------------------------------------------------------------------------------------- */+/* Logical operations                                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Performs a byte-wise `operation` for every byte in the given `ZyanBitset` instances.+ *+ * @param   destination A pointer to the `ZyanBitset` instance that is used as the first input and+ *                      as the destination.+ * @param   source      A pointer to the `ZyanBitset` instance that is used as the second input.+ * @param   operation   A pointer to the function that performs the desired operation.+ *+ * @return  A zyan status code.+ *+ * The `operation` callback is invoked once for every byte in the smallest of the `ZyanBitset`+ * instances.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetPerformByteOperation(ZyanBitset* destination,+    const ZyanBitset* source, ZyanBitsetByteOperation operation);++/**+ * Performs a logical `AND` operation on the given `ZyanBitset` instances.+ *+ * @param   destination A pointer to the `ZyanBitset` instance that is used as the first input and+ *                      as the destination.+ * @param   source      A pointer to the `ZyanBitset` instance that is used as the second input.+ *+ * @return  A zyan status code.+ *+ * If the destination bitmask contains more bits than the source one, the state of the remaining+ * bits will be undefined.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetAND(ZyanBitset* destination, const ZyanBitset* source);++/**+ * Performs a logical `OR`  operation on the given `ZyanBitset` instances.+ *+ * @param   destination A pointer to the `ZyanBitset` instance that is used as the first input and+ *                      as the destination.+ * @param   source      A pointer to the `ZyanBitset` instance that is used as the second input.+ *+ * @return  A zyan status code.+ *+ * If the destination bitmask contains more bits than the source one, the state of the remaining+ * bits will be undefined.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetOR (ZyanBitset* destination, const ZyanBitset* source);++/**+ * Performs a logical `XOR` operation on the given `ZyanBitset` instances.+ *+ * @param   destination A pointer to the `ZyanBitset` instance that is used as the first input and+ *                      as the destination.+ * @param   source      A pointer to the `ZyanBitset` instance that is used as the second input.+ *+ * @return  A zyan status code.+ *+ * If the destination bitmask contains more bits than the source one, the state of the remaining+ * bits will be undefined.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetXOR(ZyanBitset* destination, const ZyanBitset* source);++/**+ * Flips all bits of the given `ZyanBitset` instance.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetFlip(ZyanBitset* bitset);++/* ---------------------------------------------------------------------------------------------- */+/* Bit access                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Sets the bit at `index` of the given `ZyanBitset` instance to `1`.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   index   The bit index.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetSet(ZyanBitset* bitset, ZyanUSize index);++/**+ * Sets the bit at `index` of the given `ZyanBitset` instance to `0`.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   index   The bit index.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetReset(ZyanBitset* bitset, ZyanUSize index);++/**+ * Sets the bit at `index` of the given `ZyanBitset` instance to the specified `value`.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   index   The bit index.+ * @param   value   The new value.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetAssign(ZyanBitset* bitset, ZyanUSize index, ZyanBool value);++/**+ * Toggles the bit at `index` of the given `ZyanBitset` instance.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   index   The bit index.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetToggle(ZyanBitset* bitset, ZyanUSize index);++/**+ * Returns the value of the bit at `index`.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   index   The bit index.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the bit is set or `ZYAN_STATUS_FALSE`, if not, Another zyan+ *          status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetTest(ZyanBitset* bitset, ZyanUSize index);++/**+ * Returns the value of the most significant bit.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the bit is set or `ZYAN_STATUS_FALSE`, if not. Another zyan+ *          status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetTestMSB(ZyanBitset* bitset);++/**+ * Returns the value of the least significant bit.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the bit is set or `ZYAN_STATUS_FALSE`, if not. Another zyan+ *          status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetTestLSB(ZyanBitset* bitset);++/* ---------------------------------------------------------------------------------------------- */++/**+ * Sets all bits of the given `ZyanBitset` instance to `1`.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetSetAll(ZyanBitset* bitset);++/**+ * Sets all bits of the given `ZyanBitset` instance to `0`.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetResetAll(ZyanBitset* bitset);++/* ---------------------------------------------------------------------------------------------- */+/* Size management                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Adds a new bit at the end of the bitset.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   value   The value of the new bit.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetPush(ZyanBitset* bitset, ZyanBool value);++/**+ * Removes the last bit of the bitset.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetPop(ZyanBitset* bitset);++/**+ * Deletes all bits of the given `ZyanBitset` instance.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetClear(ZyanBitset* bitset);++/* ---------------------------------------------------------------------------------------------- */+/* Memory management                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Changes the capacity of the given `ZyanBitset` instance.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   count   The new capacity (number of bits).+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetReserve(ZyanBitset* bitset, ZyanUSize count);++/**+ * Shrinks the capacity of the given bitset to match it's size.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetShrinkToFit(ZyanBitset* bitset);++/* ---------------------------------------------------------------------------------------------- */+/* Information                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the current size of the bitset in bits.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   size    Receives the size of the bitset in bits.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetGetSize(const ZyanBitset* bitset, ZyanUSize* size);++/**+ * Returns the current capacity of the bitset in bits.+ *+ * @param   bitset      A pointer to the `ZyanBitset` instance.+ * @param   capacity    Receives the size of the bitset in bits.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetGetCapacity(const ZyanBitset* bitset, ZyanUSize* capacity);++/**+ * Returns the current size of the bitset in bytes.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   size    Receives the size of the bitset in bytes.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetGetSizeBytes(const ZyanBitset* bitset, ZyanUSize* size);++/**+ * Returns the current capacity of the bitset in bytes.+ *+ * @param   bitset      A pointer to the `ZyanBitset` instance.+ * @param   capacity    Receives the size of the bitset in bytes.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetGetCapacityBytes(const ZyanBitset* bitset, ZyanUSize* capacity);++/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the amount of bits set in the given bitset.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ * @param   count   Receives the amount of bits set in the given bitset.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetCount(const ZyanBitset* bitset, ZyanUSize* count);++/**+ * Checks, if all bits of the given bitset are set.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  `ZYAN_STATUS_TRUE`, if all bits are set, `ZYAN_STATUS_FALSE`, if not. Another zyan+ *          status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetAll(const ZyanBitset* bitset);++/**+ * Checks, if at least one bit of the given bitset is set.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  `ZYAN_STATUS_TRUE`, if at least one bit is set, `ZYAN_STATUS_FALSE`, if not. Another+ *          zyan status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetAny(const ZyanBitset* bitset);++/**+ * Checks, if none bits of the given bitset are set.+ *+ * @param   bitset  A pointer to the `ZyanBitset` instance.+ *+ * @return  `ZYAN_STATUS_TRUE`, if none bits are set, `ZYAN_STATUS_FALSE`, if not. Another zyan+ *          status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanBitsetNone(const ZyanBitset* bitset);++///* ---------------------------------------------------------------------------------------------- */+//+///**+// * Returns a 32-bit unsigned integer representation of the data.+// *+// * @param   bitset  A pointer to the `ZyanBitset` instance.+// * @param   value   Receives the 32-bit unsigned integer representation of the data.+// *+// * @return  A zyan status code.+// */+//ZYCORE_EXPORT ZyanStatus ZyanBitsetToU32(const ZyanBitset* bitset, ZyanU32* value);+//+///**+// * Returns a 64-bit unsigned integer representation of the data.+// *+// * @param   bitset  A pointer to the `ZyanBitset` instance.+// * @param   value   Receives the 64-bit unsigned integer representation of the data.+// *+// * @return  A zyan status code.+// */+//ZYCORE_EXPORT ZyanStatus ZyanBitsetToU64(const ZyanBitset* bitset, ZyanU64* value);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_BITSET_H */
+ external/zydis/dependencies/zycore/include/Zycore/Comparison.h view
@@ -0,0 +1,316 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Defines prototypes of general-purpose comparison functions.+ */++#ifndef ZYCORE_COMPARISON_H+#define ZYCORE_COMPARISON_H++#include <Zycore/Defines.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanEqualityComparison` function prototype.+ *+ * @param   left    A pointer to the first element.+ * @param   right   A pointer to the second element.+ *+ * @return  This function should return `ZYAN_TRUE` if the `left` element equals the `right` one+ *          or `ZYAN_FALSE`, if not.+ */+typedef ZyanBool (*ZyanEqualityComparison)(const void* left, const void* right);++/**+ * Defines the `ZyanComparison` function prototype.+ *+ * @param   left    A pointer to the first element.+ * @param   right   A pointer to the second element.+ *+ * @return  This function should return values in the following range:+ *          `left == right -> result == 0`+ *          `left <  right -> result  < 0`+ *          `left >  right -> result  > 0`+ */+typedef ZyanI32 (*ZyanComparison)(const void* left, const void* right);++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Equality comparison functions                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Declares a generic equality comparison function for an integral datatype.+ *+ * @param   name    The name of the function.+ * @param   type    The name of the integral datatype.+ */+#define ZYAN_DECLARE_EQUALITY_COMPARISON(name, type) \+    ZyanBool name(const type* left, const type* right) \+    { \+        ZYAN_ASSERT(left); \+        ZYAN_ASSERT(right); \+        \+        return (*left == *right) ? ZYAN_TRUE : ZYAN_FALSE; \+    }++/**+ * Declares a generic equality comparison function that compares a single integral+ * datatype field of a struct.+ *+ * @param   name        The name of the function.+ * @param   type        The name of the integral datatype.+ * @param   field_name  The name of the struct field.+ */+#define ZYAN_DECLARE_EQUALITY_COMPARISON_FOR_FIELD(name, type, field_name) \+    ZyanBool name(const type* left, const type* right) \+    { \+        ZYAN_ASSERT(left); \+        ZYAN_ASSERT(right); \+        \+        return (left->field_name == right->field_name) ? ZYAN_TRUE : ZYAN_FALSE; \+    }++/* ---------------------------------------------------------------------------------------------- */+/* Comparison functions                                                                           */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Declares a generic comparison function for an integral datatype.+ *+ * @param   name    The name of the function.+ * @param   type    The name of the integral datatype.+ */+#define ZYAN_DECLARE_COMPARISON(name, type) \+    ZyanI32 name(const type* left, const type* right) \+    { \+        ZYAN_ASSERT(left); \+        ZYAN_ASSERT(right); \+        \+        if (*left < *right) \+        { \+            return -1; \+        } \+        if (*left > *right) \+        { \+            return  1; \+        } \+        return 0; \+    }++/**+ * Declares a generic comparison function that compares a single integral datatype field+ * of a struct.+ *+ * @param   name        The name of the function.+ * @param   type        The name of the integral datatype.+ * @param   field_name  The name of the struct field.+ */+#define ZYAN_DECLARE_COMPARISON_FOR_FIELD(name, type, field_name) \+    ZyanI32 name(const type* left, const type* right) \+    { \+        ZYAN_ASSERT(left); \+        ZYAN_ASSERT(right); \+        \+        if (left->field_name < right->field_name) \+        { \+            return -1; \+        } \+        if (left->field_name > right->field_name) \+        { \+            return  1; \+        } \+        return 0; \+    }++ /* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Default equality comparison functions                                                          */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines a default equality comparison function for pointer values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `ZYAN_TRUE` if the `left` value equals the `right` one or `ZYAN_FALSE`, if+ *          not.+ */+ZYAN_INLINE ZYAN_DECLARE_EQUALITY_COMPARISON(ZyanEqualsPointer, void* const)++/**+ * Defines a default equality comparison function for `ZyanBool` values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `ZYAN_TRUE` if the `left` value equals the `right` one or `ZYAN_FALSE`, if+ *          not.+ */+ZYAN_INLINE ZYAN_DECLARE_EQUALITY_COMPARISON(ZyanEqualsBool, ZyanBool)++/**+ * Defines a default equality comparison function for 8-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `ZYAN_TRUE` if the `left` value equals the `right` one or `ZYAN_FALSE`, if+ *          not.+ */+ZYAN_INLINE ZYAN_DECLARE_EQUALITY_COMPARISON(ZyanEqualsNumeric8, ZyanU8)++/**+ * Defines a default equality comparison function for 16-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `ZYAN_TRUE` if the `left` value equals the `right` one or `ZYAN_FALSE`, if+ *          not.+ */+ZYAN_INLINE ZYAN_DECLARE_EQUALITY_COMPARISON(ZyanEqualsNumeric16, ZyanU16)++/**+ * Defines a default equality comparison function for 32-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `ZYAN_TRUE` if the `left` value equals the `right` one or `ZYAN_FALSE`, if+ *          not.+ */+ZYAN_INLINE ZYAN_DECLARE_EQUALITY_COMPARISON(ZyanEqualsNumeric32, ZyanU32)++/**+ * Defines a default equality comparison function for 64-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `ZYAN_TRUE` if the `left` value equals the `right` one or `ZYAN_FALSE`, if+ *          not.+ */+ZYAN_INLINE ZYAN_DECLARE_EQUALITY_COMPARISON(ZyanEqualsNumeric64, ZyanU64)++/* ---------------------------------------------------------------------------------------------- */+/* Default comparison functions                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines a default comparison function for pointer values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `0` if the `left` value equals the `right` one, `-1` if the `left` value is+ *          less than the `right` one, or `1` if the `left` value is greater than the `right` one.+ */+ZYAN_INLINE ZYAN_DECLARE_COMPARISON(ZyanComparePointer, void* const)++/**+ * Defines a default comparison function for `ZyanBool` values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `0` if the `left` value equals the `right` one, `-1` if the `left` value is+ *          less than the `right` one, or `1` if the `left` value is greater than the `right` one.+ */+ZYAN_INLINE ZYAN_DECLARE_COMPARISON(ZyanCompareBool, ZyanBool)++/**+ * Defines a default comparison function for 8-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `0` if the `left` value equals the `right` one, `-1` if the `left` value is+ *          less than the `right` one, or `1` if the `left` value is greater than the `right` one.+ */+ZYAN_INLINE ZYAN_DECLARE_COMPARISON(ZyanCompareNumeric8, ZyanU8)++/**+ * Defines a default comparison function for 16-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `0` if the `left` value equals the `right` one, `-1` if the `left` value is+ *          less than the `right` one, or `1` if the `left` value is greater than the `right` one.+ */+ZYAN_INLINE ZYAN_DECLARE_COMPARISON(ZyanCompareNumeric16, ZyanU16)++/**+ * Defines a default comparison function for 32-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `0` if the `left` value equals the `right` one, `-1` if the `left` value is+ *          less than the `right` one, or `1` if the `left` value is greater than the `right` one.+ */+ZYAN_INLINE ZYAN_DECLARE_COMPARISON(ZyanCompareNumeric32, ZyanU32)++/**+ * Defines a default comparison function for 64-bit numeric values.+ *+ * @param   left    A pointer to the first value.+ * @param   right   A pointer to the second value.+ *+ * @return  Returns `0` if the `left` value equals the `right` one, `-1` if the `left` value is+ *          less than the `right` one, or `1` if the `left` value is greater than the `right` one.+ */+ZYAN_INLINE ZYAN_DECLARE_COMPARISON(ZyanCompareNumeric64, ZyanU64)++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_COMPARISON_H */
+ external/zydis/dependencies/zycore/include/Zycore/Defines.h view
@@ -0,0 +1,437 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * General helper and platform detection macros.+ */++#ifndef ZYCORE_DEFINES_H+#define ZYCORE_DEFINES_H++/* ============================================================================================== */+/* Meta macros                                                                                    */+/* ============================================================================================== */++/**+ * Concatenates two values using the stringify operator (`##`).+ *+ * @param   x   The first value.+ * @param   y   The second value.+ *+ * @return  The combined string of the given values.+ */+#define ZYAN_MACRO_CONCAT(x, y) x ## y++/**+ * Concatenates two values using the stringify operator (`##`) and expands the value to+ * be used in another macro.+ *+ * @param   x   The first value.+ * @param   y   The second value.+ *+ * @return  The combined string of the given values.+ */+#define ZYAN_MACRO_CONCAT_EXPAND(x, y) ZYAN_MACRO_CONCAT(x, y)++/* ============================================================================================== */+/* Compiler detection                                                                             */+/* ============================================================================================== */++#if defined(__clang__)+#   define ZYAN_CLANG+#   define ZYAN_GNUC+#elif defined(__ICC) || defined(__INTEL_COMPILER)+#   define ZYAN_ICC+#elif defined(__GNUC__) || defined(__GNUG__)+#   define ZYAN_GCC+#   define ZYAN_GNUC+#elif defined(_MSC_VER)+#   define ZYAN_MSVC+#elif defined(__BORLANDC__)+#   define ZYAN_BORLAND+#else+#   define ZYAN_UNKNOWN_COMPILER+#endif++/* ============================================================================================== */+/* Platform detection                                                                             */+/* ============================================================================================== */++#if defined(_WIN32)+#   define ZYAN_WINDOWS+#elif defined(__EMSCRIPTEN__)+#   define ZYAN_EMSCRIPTEN+#elif defined(__APPLE__)+#   define ZYAN_APPLE+#   define ZYAN_POSIX+#elif defined(__linux)+#   define ZYAN_LINUX+#   define ZYAN_POSIX+#elif defined(__FreeBSD__)+#   define ZYAN_FREEBSD+#   define ZYAN_POSIX+#elif defined(sun) || defined(__sun)+#   define ZYAN_SOLARIS+#   define ZYAN_POSIX+#elif defined(__unix)+#   define ZYAN_UNIX+#   define ZYAN_POSIX+#elif defined(__posix)+#   define ZYAN_POSIX+#else+#   define ZYAN_UNKNOWN_PLATFORM+#endif++/* ============================================================================================== */+/* Kernel mode detection                                                                          */+/* ============================================================================================== */++#if (defined(ZYAN_WINDOWS) && defined(_KERNEL_MODE)) || \+    (defined(ZYAN_APPLE) && defined(KERNEL)) || \+    (defined(ZYAN_LINUX) && defined(__KERNEL__)) || \+    (defined(__FreeBSD_kernel__))+#   define ZYAN_KERNEL+#else+#   define ZYAN_USER+#endif++/* ============================================================================================== */+/* Architecture detection                                                                         */+/* ============================================================================================== */++#if defined(_M_AMD64) || defined(__x86_64__)+#   define ZYAN_X64+#elif defined(_M_IX86) || defined(__i386__)+#   define ZYAN_X86+#elif defined(_M_ARM64) || defined(__aarch64__)+#   define ZYAN_AARCH64+#elif defined(_M_ARM) || defined(_M_ARMT) || defined(__arm__) || defined(__thumb__)+#   define ZYAN_ARM+#elif defined(__EMSCRIPTEN__)+    // Nothing to do, `ZYAN_EMSCRIPTEN` is both platform and arch macro for this one.+#else+#   error "Unsupported architecture detected"+#endif++/* ============================================================================================== */+/* Debug/Release detection                                                                        */+/* ============================================================================================== */++#if defined(ZYAN_MSVC) || defined(ZYAN_BORLAND)+#   ifdef _DEBUG+#       define ZYAN_DEBUG+#   else+#       define ZYAN_RELEASE+#   endif+#elif defined(ZYAN_GNUC) || defined(ZYAN_ICC)+#   ifdef NDEBUG+#       define ZYAN_RELEASE+#   else+#       define ZYAN_DEBUG+#   endif+#else+#   define ZYAN_RELEASE+#endif++/* ============================================================================================== */+/* Misc compatibility macros                                                                      */+/* ============================================================================================== */++#if defined(ZYAN_MSVC) || defined(ZYAN_BORLAND)+#   define ZYAN_INLINE __inline+#else+#   define ZYAN_INLINE static inline+#endif++/* ============================================================================================== */+/* Debugging and optimization macros                                                              */+/* ============================================================================================== */++/**+ * Runtime debug assersion.+ */+#if defined(ZYAN_NO_LIBC)+#   define ZYAN_ASSERT(condition) (void)(condition)+#elif defined(ZYAN_WINDOWS) && defined(ZYAN_KERNEL)+#   include <wdm.h>+#   define ZYAN_ASSERT(condition) NT_ASSERT(condition)+#else+#   include <assert.h>+#   define ZYAN_ASSERT(condition) assert(condition)+#endif++/**+ * Compiler-time assertion.+ */+#if __STDC_VERSION__ >= 201112L && !defined(__cplusplus)+#   define ZYAN_STATIC_ASSERT(x) _Static_assert(x, #x)+#elif (defined(__cplusplus) && __cplusplus >= 201103L) || \+      (defined(__cplusplus) && defined (_MSC_VER) && (_MSC_VER >= 1600)) || \+      (defined (_MSC_VER) && (_MSC_VER >= 1800))+#   define ZYAN_STATIC_ASSERT(x) static_assert(x, #x)+#else+#   define ZYAN_STATIC_ASSERT(x) \+        typedef int ZYAN_MACRO_CONCAT_EXPAND(ZYAN_SASSERT_, __COUNTER__) [(x) ? 1 : -1]+#endif++/**+ * Marks the current code path as unreachable.+ */+#if defined(ZYAN_RELEASE)+#   if defined(ZYAN_CLANG) // GCC eagerly evals && RHS, we have to use nested ifs.+#       if __has_builtin(__builtin_unreachable)+#           define ZYAN_UNREACHABLE __builtin_unreachable()+#       else+#           define ZYAN_UNREACHABLE for(;;)+#       endif+#   elif defined(ZYAN_GCC) && ((__GNUC__ == 4 && __GNUC_MINOR__ > 4) || __GNUC__ > 4)+#       define ZYAN_UNREACHABLE __builtin_unreachable()+#   elif defined(ZYAN_ICC)+#       ifdef ZYAN_WINDOWS+#           include <stdlib.h> // "missing return statement" workaround+#           define ZYAN_UNREACHABLE __assume(0); (void)abort()+#       else+#           define ZYAN_UNREACHABLE __builtin_unreachable()+#       endif+#   elif defined(ZYAN_MSVC)+#       define ZYAN_UNREACHABLE __assume(0)+#   else+#       define ZYAN_UNREACHABLE for(;;)+#   endif+#elif defined(ZYAN_NO_LIBC)+#   define ZYAN_UNREACHABLE for(;;)+#elif defined(ZYAN_WINDOWS) && defined(ZYAN_KERNEL)+#   define ZYAN_UNREACHABLE { __fastfail(0); for(;;){} }+#else+#   include <stdlib.h>+#   define ZYAN_UNREACHABLE { assert(0); abort(); }+#endif++/* ============================================================================================== */+/* Utils                                                                                          */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General purpose                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Marks the specified parameter as unused.+ *+ * @param   x   The name of the unused parameter.+ */+#define ZYAN_UNUSED(x) (void)(x)++/**+ * Intentional fallthrough.+ */+#if defined(ZYAN_GCC) && __GNUC__ >= 7+#   define ZYAN_FALLTHROUGH __attribute__((fallthrough))+#else+#   define ZYAN_FALLTHROUGH+#endif++/**+ * Declares a bitfield.+ *+ * @param   x   The size (in bits) of the bitfield.+ */+#define ZYAN_BITFIELD(x) : x++/**+ * Marks functions that require libc (cannot be used with `ZYAN_NO_LIBC`).+ */+#define ZYAN_REQUIRES_LIBC++/**+ * Decorator for `printf`-style functions.+ *+ * @param   format_index    The 1-based index of the format string parameter.+ * @param   first_to_check  The 1-based index of the format arguments parameter.+ */+#if defined(__RESHARPER__)+#   define ZYAN_PRINTF_ATTR(format_index, first_to_check) \+        [[gnu::format(printf, format_index, first_to_check)]]+#elif defined(ZYAN_GCC)+#   define ZYAN_PRINTF_ATTR(format_index, first_to_check) \+        __attribute__((format(printf, format_index, first_to_check)))+#else+#   define ZYAN_PRINTF_ATTR(format_index, first_to_check)+#endif++/**+ * Decorator for `wprintf`-style functions.+ *+ * @param   format_index    The 1-based index of the format string parameter.+ * @param   first_to_check  The 1-based index of the format arguments parameter.+ */+#if defined(__RESHARPER__)+#   define ZYAN_WPRINTF_ATTR(format_index, first_to_check) \+        [[rscpp::format(wprintf, format_index, first_to_check)]]+#else+#   define ZYAN_WPRINTF_ATTR(format_index, first_to_check)+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Arrays                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the length (number of elements) of an array.+ *+ * @param   a   The name of the array.+ *+ * @return  The number of elements of the given array.+ */+#define ZYAN_ARRAY_LENGTH(a) (sizeof(a) / sizeof((a)[0]))++/* ---------------------------------------------------------------------------------------------- */+/* Arithmetic                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the smaller value of `a` or `b`.+ *+ * @param   a   The first value.+ * @param   b   The second value.+ *+ * @return  The smaller value of `a` or `b`.+ */+#define ZYAN_MIN(a, b) (((a) < (b)) ? (a) : (b))++/**+ * Returns the bigger value of `a` or `b`.+ *+ * @param   a   The first value.+ * @param   b   The second value.+ *+ * @return  The bigger value of `a` or `b`.+ */+#define ZYAN_MAX(a, b) (((a) > (b)) ? (a) : (b))++/**+ * Returns the absolute value of `a`.+ *+ * @param   a   The value.+ *+ * @return  The absolute value of `a`.+ */+#define ZYAN_ABS(a) (((a) < 0) ? -(a) : (a))++/**+ * Checks, if the given value is a power of 2.+ *+ * @param   x   The value.+ *+ * @return  `ZYAN_TRUE`, if the given value is a power of 2 or `ZYAN_FALSE`, if not.+ *+ * Note that this macro always returns `ZYAN_TRUE` for `x == 0`.+ */+#define ZYAN_IS_POWER_OF_2(x) (((x) & ((x) - 1)) == 0)++/**+ * Checks, if the given value is properly aligned.+ *+ * Note that this macro only works for powers of 2.+ */+#define ZYAN_IS_ALIGNED_TO(x, align) (((x) & ((align) - 1)) == 0)++/**+ * Aligns the value to the nearest given alignment boundary (by rounding it up).+ *+ * @param   x       The value.+ * @param   align   The desired alignment.+ *+ * @return  The aligned value.+ *+ * Note that this macro only works for powers of 2.+ */+#define ZYAN_ALIGN_UP(x, align) (((x) + (align) - 1) & ~((align) - 1))++/**+ * Aligns the value to the nearest given alignment boundary (by rounding it down).+ *+ * @param   x       The value.+ * @param   align   The desired alignment.+ *+ * @return  The aligned value.+ *+ * Note that this macro only works for powers of 2.+ */+#define ZYAN_ALIGN_DOWN(x, align) (((x) - 1) & ~((align) - 1))++/* ---------------------------------------------------------------------------------------------- */+/* Bit operations                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/*+ * Checks, if the bit at index `b` is required to present the ordinal value `n`.+ *+ * @param   n   The ordinal value.+ * @param   b   The bit index.+ *+ * @return  `ZYAN_TRUE`, if the bit at index `b` is required to present the ordinal value `n` or+ *          `ZYAN_FALSE`, if not.+ *+ * Note that this macro always returns `ZYAN_FALSE` for `n == 0`.+ */+#define ZYAN_NEEDS_BIT(n, b) (((unsigned long)(n) >> (b)) > 0)++/*+ * Returns the number of bits required to represent the ordinal value `n`.+ *+ * @param   n   The ordinal value.+ *+ * @return  The number of bits required to represent the ordinal value `n`.+ *+ * Note that this macro returns `0` for `n == 0`.+ */+#define ZYAN_BITS_TO_REPRESENT(n) \+    ( \+        ZYAN_NEEDS_BIT(n,  0) + ZYAN_NEEDS_BIT(n,  1) + \+        ZYAN_NEEDS_BIT(n,  2) + ZYAN_NEEDS_BIT(n,  3) + \+        ZYAN_NEEDS_BIT(n,  4) + ZYAN_NEEDS_BIT(n,  5) + \+        ZYAN_NEEDS_BIT(n,  6) + ZYAN_NEEDS_BIT(n,  7) + \+        ZYAN_NEEDS_BIT(n,  8) + ZYAN_NEEDS_BIT(n,  9) + \+        ZYAN_NEEDS_BIT(n, 10) + ZYAN_NEEDS_BIT(n, 11) + \+        ZYAN_NEEDS_BIT(n, 12) + ZYAN_NEEDS_BIT(n, 13) + \+        ZYAN_NEEDS_BIT(n, 14) + ZYAN_NEEDS_BIT(n, 15) + \+        ZYAN_NEEDS_BIT(n, 16) + ZYAN_NEEDS_BIT(n, 17) + \+        ZYAN_NEEDS_BIT(n, 18) + ZYAN_NEEDS_BIT(n, 19) + \+        ZYAN_NEEDS_BIT(n, 20) + ZYAN_NEEDS_BIT(n, 21) + \+        ZYAN_NEEDS_BIT(n, 22) + ZYAN_NEEDS_BIT(n, 23) + \+        ZYAN_NEEDS_BIT(n, 24) + ZYAN_NEEDS_BIT(n, 25) + \+        ZYAN_NEEDS_BIT(n, 26) + ZYAN_NEEDS_BIT(n, 27) + \+        ZYAN_NEEDS_BIT(n, 28) + ZYAN_NEEDS_BIT(n, 29) + \+        ZYAN_NEEDS_BIT(n, 30) + ZYAN_NEEDS_BIT(n, 31)   \+    )++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#endif /* ZYCORE_DEFINES_H */
+ external/zydis/dependencies/zycore/include/Zycore/Format.h view
@@ -0,0 +1,261 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Provides helper functions for performant number to string conversion.+ */++#ifndef ZYCORE_FORMAT_H+#define ZYCORE_FORMAT_H++#include <ZycoreExportConfig.h>+#include <Zycore/Status.h>+#include <Zycore/String.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Insertion                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Inserts formatted text in the destination string at the given `index`.+ *+ * @param   string  The destination string.+ * @param   index   The insert index.+ * @param   format  The format string.+ * @param   ...     The format arguments.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYAN_PRINTF_ATTR(3, 4)+ZYCORE_EXPORT ZyanStatus ZyanStringInsertFormat(ZyanString* string, ZyanUSize index,+    const char* format, ...);++/* ---------------------------------------------------------------------------------------------- */++/**+ * Formats the given unsigned ordinal `value` to its decimal text-representation and+ * inserts it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   index           The insert index.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInsertDecU(ZyanString* string, ZyanUSize index, ZyanU64 value,+    ZyanU8 padding_length);++/**+ * Formats the given signed ordinal `value` to its decimal text-representation and+ * inserts it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   index           The insert index.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   force_sign      Set `ZYAN_TRUE`, to force printing of the `+` sign for positive numbers.+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInsertDecS(ZyanString* string, ZyanUSize index, ZyanI64 value,+    ZyanU8 padding_length, ZyanBool force_sign, const ZyanString* prefix);++/**+ * Formats the given unsigned ordinal `value` to its hexadecimal text-representation and+ * inserts it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   index           The insert index.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   uppercase       Set `ZYAN_TRUE` to use uppercase letters ('A'-'F') instead of lowercase+ *                          ones ('a'-'f').+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInsertHexU(ZyanString* string, ZyanUSize index, ZyanU64 value,+    ZyanU8 padding_length, ZyanBool uppercase);++/**+ * Formats the given signed ordinal `value` to its hexadecimal text-representation and+ * inserts it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   index           The insert index.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   uppercase       Set `ZYAN_TRUE` to use uppercase letters ('A'-'F') instead of lowercase+ *                          ones ('a'-'f').+ * @param   force_sign      Set `ZYAN_TRUE`, to force printing of the `+` sign for positive numbers.+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInsertHexS(ZyanString* string, ZyanUSize index, ZyanI64 value,+    ZyanU8 padding_length, ZyanBool uppercase, ZyanBool force_sign, const ZyanString* prefix);++/* ---------------------------------------------------------------------------------------------- */+/* Appending                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Appends formatted text to the destination string.+ *+ * @param   string  The destination string.+ * @param   format  The format string.+ * @param   ...     The format arguments.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYAN_PRINTF_ATTR(2, 3)+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanStringAppendFormat(+    ZyanString* string, const char* format, ...);++#endif // ZYAN_NO_LIBC++/* ---------------------------------------------------------------------------------------------- */++/**+ * Formats the given unsigned ordinal `value` to its decimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringAppendDecU(ZyanString* string, ZyanU64 value,+    ZyanU8 padding_length);++/**+ * Formats the given signed ordinal `value` to its decimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   force_sign      Set `ZYAN_TRUE`, to force printing of the `+` sign for positive numbers.+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringAppendDecS(ZyanString* string, ZyanI64 value,+    ZyanU8 padding_length, ZyanBool force_sign, const ZyanStringView* prefix);++/**+ * Formats the given unsigned ordinal `value` to its hexadecimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   uppercase       Set `ZYAN_TRUE` to use uppercase letters ('A'-'F') instead of lowercase+ *                          ones ('a'-'f').+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringAppendHexU(ZyanString* string, ZyanU64 value,+    ZyanU8 padding_length, ZyanBool uppercase);++/**+ * Formats the given signed ordinal `value` to its hexadecimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   uppercase       Set `ZYAN_TRUE` to use uppercase letters ('A'-'F') instead of lowercase+ *                          ones ('a'-'f').+ * @param   force_sign      Set `ZYAN_TRUE`, to force printing of the `+` sign for positive numbers.+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringAppendHexS(ZyanString* string, ZyanI64 value,+    ZyanU8 padding_length, ZyanBool uppercase, ZyanBool force_sign, const ZyanStringView* prefix);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif // ZYCORE_FORMAT_H
+ external/zydis/dependencies/zycore/include/Zycore/LibC.h view
@@ -0,0 +1,511 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Provides a simple LibC abstraction and fallback routines.+ */++#ifndef ZYCORE_LIBC_H+#define ZYCORE_LIBC_H++#ifndef ZYAN_CUSTOM_LIBC++// Include a custom LibC header and define `ZYAN_CUSTOM_LIBC` to provide your own LibC+// replacement functions++#ifndef ZYAN_NO_LIBC++/* ============================================================================================== */+/* LibC is available                                                                              */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* errno.h                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++#include <errno.h>++#define ZYAN_ERRNO  errno++/* ---------------------------------------------------------------------------------------------- */+/* stdarg.h                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++#include <stdarg.h>++/**+ * Defines the `ZyanVAList` datatype.+ */+typedef va_list ZyanVAList;++#define ZYAN_VA_START               va_start+#define ZYAN_VA_ARG                 va_arg+#define ZYAN_VA_END                 va_end+#define ZYAN_VA_COPY(dest, source)  va_copy((dest), (source))++/* ---------------------------------------------------------------------------------------------- */+/* stdio.h                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++#include <stdio.h>++#define ZYAN_FPUTS      fputs+#define ZYAN_FPUTC      fputc+#define ZYAN_FPRINTF    fprintf+#define ZYAN_PRINTF     printf+#define ZYAN_PUTC       putc+#define ZYAN_PUTS       puts+#define ZYAN_SCANF      scanf+#define ZYAN_SSCANF     sscanf+#define ZYAN_VSNPRINTF  vsnprintf++/**+ * Defines the `ZyanFile` datatype.+ */+typedef FILE ZyanFile;++#define ZYAN_STDIN      stdin+#define ZYAN_STDOUT     stdout+#define ZYAN_STDERR     stderr++/* ---------------------------------------------------------------------------------------------- */+/* stdlib.h                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++#include <stdlib.h>+#define ZYAN_CALLOC     calloc+#define ZYAN_FREE       free+#define ZYAN_MALLOC     malloc+#define ZYAN_REALLOC    realloc++/* ---------------------------------------------------------------------------------------------- */+/* string.h                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++#include <string.h>+#define ZYAN_MEMCHR     memchr+#define ZYAN_MEMCMP     memcmp+#define ZYAN_MEMCPY     memcpy+#define ZYAN_MEMMOVE    memmove+#define ZYAN_MEMSET     memset+#define ZYAN_STRCAT     strcat+#define ZYAN_STRCHR     strchr+#define ZYAN_STRCMP     strcmp+#define ZYAN_STRCOLL    strcoll+#define ZYAN_STRCPY     strcpy+#define ZYAN_STRCSPN    strcspn+#define ZYAN_STRLEN     strlen+#define ZYAN_STRNCAT    strncat+#define ZYAN_STRNCMP    strncmp+#define ZYAN_STRNCPY    strncpy+#define ZYAN_STRPBRK    strpbrk+#define ZYAN_STRRCHR    strrchr+#define ZYAN_STRSPN     strspn+#define ZYAN_STRSTR     strstr+#define ZYAN_STRTOK     strtok+#define ZYAN_STRXFRM    strxfrm++/* ---------------------------------------------------------------------------------------------- */++#else  // if ZYAN_NO_LIBC++/* ============================================================================================== */+/* No LibC available, use our own functions                                                       */+/* ============================================================================================== */++#include <Zycore/Defines.h>+#include <Zycore/Types.h>++/*+ * These implementations are by no means optimized and will be outperformed by pretty much any+ * libc implementation out there. We do not aim towards providing competetive implementations here,+ * but towards providing a last resort fallback for environments without a working libc.+ */++/* ---------------------------------------------------------------------------------------------- */+/* stdarg.h                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++#if defined(ZYAN_MSVC) || defined(ZYAN_ICC)++/**+ * Defines the `ZyanVAList` datatype.+ */+typedef char* ZyanVAList;++#   define ZYAN_VA_START __crt_va_start+#   define ZYAN_VA_ARG   __crt_va_arg+#   define ZYAN_VA_END   __crt_va_end+#   define ZYAN_VA_COPY(destination, source) ((destination) = (source))++#elif defined(ZYAN_GNUC)++/**+ * Defines the `ZyanVAList` datatype.+ */+typedef __builtin_va_list  ZyanVAList;++#   define ZYAN_VA_START(v, l)  __builtin_va_start(v, l)+#   define ZYAN_VA_END(v)       __builtin_va_end(v)+#   define ZYAN_VA_ARG(v, l)    __builtin_va_arg(v, l)+#   define ZYAN_VA_COPY(d, s)   __builtin_va_copy(d, s)++#else+#   error "Unsupported compiler for no-libc mode."+#endif++/* ---------------------------------------------------------------------------------------------- */+/* stdio.h                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++// ZYAN_INLINE int ZYAN_VSNPRINTF (char* const buffer, ZyanUSize const count,+//     char const* const format, ZyanVAList args)+// {+//      // We cant provide a fallback implementation for this function+//     ZYAN_UNUSED(buffer);+//     ZYAN_UNUSED(count);+//     ZYAN_UNUSED(format);+//     ZYAN_UNUSED(args);+//     return ZYAN_NULL;+// }++/* ---------------------------------------------------------------------------------------------- */+/* stdlib.h                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++// ZYAN_INLINE void* ZYAN_CALLOC(ZyanUSize nitems, ZyanUSize size)+// {+//      // We cant provide a fallback implementation for this function+//     ZYAN_UNUSED(nitems);+//     ZYAN_UNUSED(size);+//     return ZYAN_NULL;+// }+//+// ZYAN_INLINE void ZYAN_FREE(void *p)+// {+//      // We cant provide a fallback implementation for this function+//     ZYAN_UNUSED(p);+// }+//+// ZYAN_INLINE void* ZYAN_MALLOC(ZyanUSize n)+// {+//     // We cant provide a fallback implementation for this function+//     ZYAN_UNUSED(n);+//     return ZYAN_NULL;+// }+//+// ZYAN_INLINE void* ZYAN_REALLOC(void* p, ZyanUSize n)+// {+//      // We cant provide a fallback implementation for this function+//     ZYAN_UNUSED(p);+//     ZYAN_UNUSED(n);+//     return ZYAN_NULL;+// }++/* ---------------------------------------------------------------------------------------------- */+/* string.h                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++ZYAN_INLINE void* ZYAN_MEMCHR(const void* str, int c, ZyanUSize n)+{+    const ZyanU8* p = (ZyanU8*)str;+    while (n--)+    {+        if (*p != (ZyanU8)c)+        {+            p++;+        } else+        {+            return (void*)p;+        }+    }+    return 0;+}++ZYAN_INLINE int ZYAN_MEMCMP(const void* s1, const void* s2, ZyanUSize n)+{+    const ZyanU8* p1 = s1, *p2 = s2;+    while (n--)+    {+        if (*p1 != *p2)+        {+            return *p1 - *p2;+        }+        p1++, p2++;+    }+    return 0;+}++ZYAN_INLINE void* ZYAN_MEMCPY(void* dst, const void* src, ZyanUSize n)+{+    volatile ZyanU8* dp = dst;+    const ZyanU8* sp = src;+    while (n--)+    {+        *dp++ = *sp++;+    }+    return dst;+}++ZYAN_INLINE void* ZYAN_MEMMOVE(void* dst, const void* src, ZyanUSize n)+{+    volatile ZyanU8* pd = dst;+    const ZyanU8* ps = src;+    if (ps < pd)+    {+        for (pd += n, ps += n; n--;)+        {+            *--pd = *--ps;+        }+    } else+    {+        while (n--)+        {+            *pd++ = *ps++;+        }+    }+    return dst;+}++ZYAN_INLINE void* ZYAN_MEMSET(void* dst, int val, ZyanUSize n)+{+    volatile ZyanU8* p = dst;+    while (n--)+    {+        *p++ = (unsigned char)val;+    }+    return dst;+}++ZYAN_INLINE char* ZYAN_STRCAT(char* dest, const char* src)+{+    char* ret = dest;+    while (*dest)+    {+        dest++;+    }+    while ((*dest++ = *src++));+    return ret;+}++ZYAN_INLINE char* ZYAN_STRCHR(const char* s, int c)+{+    while (*s != (char)c)+    {+        if (!*s++)+        {+            return 0;+        }+    }+    return (char*)s;+}++ZYAN_INLINE int ZYAN_STRCMP(const char* s1, const char* s2)+{+    while (*s1 && (*s1 == *s2))+    {+        s1++, s2++;+    }+    return *(const ZyanU8*)s1 - *(const ZyanU8*)s2;+}++ZYAN_INLINE int ZYAN_STRCOLL(const char *s1, const char *s2)+{+    // TODO: Implement++    ZYAN_UNUSED(s1);+    ZYAN_UNUSED(s2);++    return 0;+}++ZYAN_INLINE char* ZYAN_STRCPY(char* dest, const char* src)+{+    char* ret = dest;+    while ((*dest++ = *src++));+    return ret;+}++ZYAN_INLINE ZyanUSize ZYAN_STRCSPN(const char *s1, const char *s2)+{+    ZyanUSize ret = 0;+    while (*s1)+    {+        if (ZYAN_STRCHR(s2, *s1))+        {+            return ret;+        }+        s1++, ret++;+    }+    return ret;+}++ZYAN_INLINE ZyanUSize ZYAN_STRLEN(const char* str)+{+    const char* p = str;+    while (*str)+    {+        ++str;+    }+    return str - p;+}++ZYAN_INLINE char* ZYAN_STRNCAT(char* dest, const char* src, ZyanUSize n)+{+    char* ret = dest;+    while (*dest)+    {+        dest++;+    }+    while (n--)+    {+        if (!(*dest++ = *src++))+        {+            return ret;+        }+    }+    *dest = 0;+    return ret;+}++ZYAN_INLINE int ZYAN_STRNCMP(const char* s1, const char* s2, ZyanUSize n)+{+    while (n--)+    {+        if (*s1++ != *s2++)+        {+            return *(unsigned char*)(s1 - 1) - *(unsigned char*)(s2 - 1);+        }+    }+    return 0;+}++ZYAN_INLINE char* ZYAN_STRNCPY(char* dest, const char* src, ZyanUSize n)+{+    char* ret = dest;+    do+    {+        if (!n--)+        {+            return ret;+        }+    } while ((*dest++ = *src++));+    while (n--)+    {+        *dest++ = 0;+    }+    return ret;+}++ZYAN_INLINE char* ZYAN_STRPBRK(const char* s1, const char* s2)+{+    while (*s1)+    {+        if(ZYAN_STRCHR(s2, *s1++))+        {+            return (char*)--s1;+        }+    }+    return 0;+}++ZYAN_INLINE char* ZYAN_STRRCHR(const char* s, int c)+{+    char* ret = 0;+    do+    {+        if (*s == (char)c)+        {+            ret = (char*)s;+        }+    } while (*s++);+    return ret;+}++ZYAN_INLINE ZyanUSize ZYAN_STRSPN(const char* s1, const char* s2)+{+    ZyanUSize ret = 0;+    while (*s1 && ZYAN_STRCHR(s2, *s1++))+    {+        ret++;+    }+    return ret;+}++ZYAN_INLINE char* ZYAN_STRSTR(const char* s1, const char* s2)+{+    const ZyanUSize n = ZYAN_STRLEN(s2);+    while (*s1)+    {+        if (!ZYAN_MEMCMP(s1++, s2, n))+        {+            return (char*)(s1 - 1);+        }+    }+    return 0;+}++ZYAN_INLINE char* ZYAN_STRTOK(char* str, const char* delim)+{+    static char* p = 0;+    if (str)+    {+        p = str;+    } else+    if (!p)+    {+        return 0;+    }+    str = p + ZYAN_STRSPN(p, delim);+    p = str + ZYAN_STRCSPN(str, delim);+    if (p == str)+    {+        return p = 0;+    }+    p = *p ? *p = 0, p + 1 : 0;+    return str;+}++ZYAN_INLINE ZyanUSize ZYAN_STRXFRM(char* dest, const char* src, ZyanUSize n)+{+    const ZyanUSize n2 = ZYAN_STRLEN(src);+    if (n > n2)+    {+        ZYAN_STRCPY(dest, src);+    }+    return n2;+}++/* ---------------------------------------------------------------------------------------------- */++#endif++#endif++/* ============================================================================================== */++#endif /* ZYCORE_LIBC_H */
+ external/zydis/dependencies/zycore/include/Zycore/List.h view
@@ -0,0 +1,574 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements a doubly linked list.+ */++#ifndef ZYCORE_LIST_H+#define ZYCORE_LIST_H++#include <ZycoreExportConfig.h>+#include <Zycore/Allocator.h>+#include <Zycore/Object.h>+#include <Zycore/Status.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanListNode` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanListNode_+{+    /**+     * A pointer to the previous list node.+     */+    struct ZyanListNode_* prev;+    /**+     * A pointer to the next list node.+     */+    struct ZyanListNode_* next;+} ZyanListNode;++/**+ * Defines the `ZyanList` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanList_+{+    /**+     * The memory allocator.+     */+    ZyanAllocator* allocator;+    /**+     * The current number of elements in the list.+     */+    ZyanUSize size;+    /**+     * The size of a single element in bytes.+     */+    ZyanUSize element_size;+    /**+     * The element destructor callback.+     */+    ZyanMemberProcedure destructor;+    /**+     * The head node.+     */+    ZyanListNode* head;+    /**+     * The tail node.+     */+    ZyanListNode* tail;+    /**+     * The data buffer.+     *+     * Only used for instances created by `ZyanListInitCustomBuffer`.+     */+    void* buffer;+    /**+     * The data buffer capacity (number of bytes).+     *+     * Only used for instances created by `ZyanListInitCustomBuffer`.+     */+    ZyanUSize capacity;+    /**+     * The first unused node.+     *+     * When removing a node, the first-unused value is updated to point at the removed node and the+     * next node of the removed node will be updated to point at the old first-unused node.+     *+     * When appending the memory of the first unused-node is recycled to store the new node. The+     * value of the first-unused node is then updated to point at the reused nodes next node.+     *+     * If the first-unused value is `ZYAN_NULL`, any new node will be "allocated" behind the tail+     * node (if there is enough space left in the fixed size buffer).+     *+     * Only used for instances created by `ZyanListInitCustomBuffer`.+     */+    ZyanListNode* first_unused;+} ZyanList;++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines an uninitialized `ZyanList` instance.+ */+#define ZYAN_LIST_INITIALIZER \+    { \+        /* allocator        */ ZYAN_NULL, \+        /* size             */ 0, \+        /* element_size     */ 0, \+        /* head             */ ZYAN_NULL, \+        /* destructor       */ ZYAN_NULL, \+        /* tail             */ ZYAN_NULL, \+        /* buffer           */ ZYAN_NULL, \+        /* capacity         */ 0, \+        /* first_unused     */ ZYAN_NULL \+    }++/* ---------------------------------------------------------------------------------------------- */+/* Helper macros                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the data value of the given `node`.+ *+ * @param   type    The desired value type.+ * @param   node    A pointer to the `ZyanListNode` struct.+ *+ * @result  The data value of the given `node`.+ *+ * Note that this function is unsafe and might dereference a null-pointer.+ */+#ifdef __cplusplus+#define ZYAN_LIST_GET(type, node) \+    (*reinterpret_cast<const type*>(ZyanListGetNodeData(node)))+#else+#define ZYAN_LIST_GET(type, node) \+    (*(const type*)ZyanListGetNodeData(node))+#endif++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constructor and destructor                                                                     */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanList` instance.+ *+ * @param   list            A pointer to the `ZyanList` instance.+ * @param   element_size    The size of a single element in bytes.+ * @param   destructor      A destructor callback that is invoked every time an item is deleted, or+ *                          `ZYAN_NULL` if not needed.+ *+ * @return  A zyan status code.+ *+ * The memory for the list elements is dynamically allocated by the default allocator.+ *+ * Finalization with `ZyanListDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanListInit(ZyanList* list, ZyanUSize element_size,+    ZyanMemberProcedure destructor);++#endif // ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanList` instance and sets a custom `allocator`.+ *+ * @param   list            A pointer to the `ZyanList` instance.+ * @param   element_size    The size of a single element in bytes.+ * @param   destructor      A destructor callback that is invoked every time an item is deleted, or+ *                          `ZYAN_NULL` if not needed.+ * @param   allocator       A pointer to a `ZyanAllocator` instance.+ *+ * @return  A zyan status code.+ *+ * Finalization with `ZyanListDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanListInitEx(ZyanList* list, ZyanUSize element_size,+    ZyanMemberProcedure destructor, ZyanAllocator* allocator);++/**+ * Initializes the given `ZyanList` instance and configures it to use a custom user+ * defined buffer with a fixed size.+ *+ * @param   list            A pointer to the `ZyanList` instance.+ * @param   element_size    The size of a single element in bytes.+ * @param   destructor      A destructor callback that is invoked every time an item is deleted, or+ *                          `ZYAN_NULL` if not needed.+ * @param   buffer          A pointer to the buffer that is used as storage for the elements.+ * @param   capacity        The maximum capacity (number of bytes) of the buffer including the+ *                          space required for the list-nodes.+ *+ * @return  A zyan status code.+ *+ * The buffer capacity required to store `n` elements of type `T` is be calculated by:+ * `size = n * sizeof(ZyanListNode) + n * sizeof(T)`+ *+ * Finalization is not required for instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanListInitCustomBuffer(ZyanList* list, ZyanUSize element_size,+    ZyanMemberProcedure destructor, void* buffer, ZyanUSize capacity);++/**+ * Destroys the given `ZyanList` instance.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListDestroy(ZyanList* list);++/* ---------------------------------------------------------------------------------------------- */+/* Duplication                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanList` instance by duplicating an existing list.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanList` instance.+ * @param   source      A pointer to the source list.+ *+ * @return  A zyan status code.+ *+ * The memory for the list is dynamically allocated by the default allocator.+ *+ * Finalization with `ZyanListDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanListDuplicate(ZyanList* destination,+    const ZyanList* source);++#endif // ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanList` instance by duplicating an existing list and sets a+ * custom `allocator`.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanList` instance.+ * @param   source      A pointer to the source list.+ * @param   allocator   A pointer to a `ZyanAllocator` instance.+ *+ * @return  A zyan status code.++ * Finalization with `ZyanListDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanListDuplicateEx(ZyanList* destination, const ZyanList* source,+    ZyanAllocator* allocator);++/**+ * Initializes a new `ZyanList` instance by duplicating an existing list and+ * configures it to use a custom user defined buffer with a fixed size.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanList` instance.+ * @param   source      A pointer to the source list.+ * @param   buffer      A pointer to the buffer that is used as storage for the elements.+ * @param   capacity    The maximum capacity (number of bytes) of the buffer including the+ *                      space required for the list-nodes.++ *                      This function will fail, if the capacity of the buffer is not sufficient+ *                      to store all elements of the source list.+ *+ * @return  A zyan status code.+ *+ * The buffer capacity required to store `n` elements of type `T` is be calculated by:+ * `size = n * sizeof(ZyanListNode) + n * sizeof(T)`+ *+ * Finalization is not required for instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanListDuplicateCustomBuffer(ZyanList* destination,+    const ZyanList* source, void* buffer, ZyanUSize capacity);++/* ---------------------------------------------------------------------------------------------- */+/* Item access                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns a pointer to the first `ZyanListNode` struct of the given list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   node    Receives a pointer to the first `ZyanListNode` struct of the list.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetHeadNode(const ZyanList* list, const ZyanListNode** node);++/**+ * Returns a pointer to the last `ZyanListNode` struct of the given list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   node    Receives a pointer to the last `ZyanListNode` struct of the list.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetTailNode(const ZyanList* list, const ZyanListNode** node);++/**+ * Receives a pointer to the previous `ZyanListNode` struct linked to the passed one.+ *+ * @param   node    Receives a pointer to the previous `ZyanListNode` struct linked to the passed+ *                  one.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetPrevNode(const ZyanListNode** node);++/**+ * Receives a pointer to the next `ZyanListNode` struct linked to the passed one.+ *+ * @param   node    Receives a pointer to the next `ZyanListNode` struct linked to the passed one.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetNextNode(const ZyanListNode** node);++/**+ * Returns a constant pointer to the data of the given `node`.+ *+ * @param   node    A pointer to the `ZyanListNode` struct.+ *+ * @return  A constant pointer to the the data of the given `node` or `ZYAN_NULL`, if an error+ *          occured.+ *+ * Take a look at `ZyanListGetNodeDataEx`, if you need a function that returns a zyan status code.+ */+ZYCORE_EXPORT const void* ZyanListGetNodeData(const ZyanListNode* node);++/**+ * Returns a constant pointer to the data of the given `node`..+ *+ * @param   node    A pointer to the `ZyanListNode` struct.+ * @param   value   Receives a constant pointer to the data of the given `node`.+ *+ * Take a look at `ZyanListGetNodeData`, if you need a function that directly returns a pointer.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetNodeDataEx(const ZyanListNode* node, const void** value);++/**+ * Returns a mutable pointer to the data of the given `node`.+ *+ * @param   node    A pointer to the `ZyanListNode` struct.+ *+ * @return  A mutable pointer to the the data of the given `node` or `ZYAN_NULL`, if an error+ *          occured.+ *+ * Take a look at `ZyanListGetPointerMutableEx` instead, if you need a function that returns a+ * zyan status code.+ */+ZYCORE_EXPORT void* ZyanListGetNodeDataMutable(const ZyanListNode* node);++/**+ * Returns a mutable pointer to the data of the given `node`..+ *+ * @param   node    A pointer to the `ZyanListNode` struct.+ * @param   value   Receives a mutable pointer to the data of the given `node`.+ *+ * Take a look at `ZyanListGetNodeDataMutable`, if you need a function that directly returns a+ * pointer.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetNodeDataMutableEx(const ZyanListNode* node, void** value);++/**+ * Assigns a new data value to the given `node`.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   node    A pointer to the `ZyanListNode` struct.+ * @param   value   The value to assign.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListSetNodeData(const ZyanList* list, const ZyanListNode* node,+    const void* value);++/* ---------------------------------------------------------------------------------------------- */+/* Insertion                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Adds a new `item` to the end of the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   item    A pointer to the item to add.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListPushBack(ZyanList* list, const void* item);++/**+ * Adds a new `item` to the beginning of the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   item    A pointer to the item to add.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListPushFront(ZyanList* list, const void* item);++/**+ * Constructs an `item` in-place at the end of the list.+ *+ * @param   list        A pointer to the `ZyanList` instance.+ * @param   item        Receives a pointer to the new item.+ * @param   constructor The constructor callback or `ZYAN_NULL`. The new item will be in+ *                      undefined state, if no constructor was passed.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListEmplaceBack(ZyanList* list, void** item,+    ZyanMemberFunction constructor);++/**+ * Constructs an `item` in-place at the beginning of the list.+ *+ * @param   list        A pointer to the `ZyanList` instance.+ * @param   item        Receives a pointer to the new item.+ * @param   constructor The constructor callback or `ZYAN_NULL`. The new item will be in+ *                      undefined state, if no constructor was passed.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListEmplaceFront(ZyanList* list, void** item,+    ZyanMemberFunction constructor);++/* ---------------------------------------------------------------------------------------------- */+/* Deletion                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Removes the last element of the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListPopBack(ZyanList* list);++/**+ * Removes the firstelement of the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListPopFront(ZyanList* list);++/**+ * Removes the given `node` from the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   node    A pointer to the `ZyanListNode` struct.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListRemove(ZyanList* list, const ZyanListNode* node);++/**+ * Removes multiple nodes from the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   first   A pointer to the first node.+ * @param   last    A pointer to the last node.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListRemoveRange(ZyanList* list, const ZyanListNode* first,+    const ZyanListNode* last);++/**+ * Erases all elements of the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListClear(ZyanList* list);++/* ---------------------------------------------------------------------------------------------- */+/* Searching                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++// TODO:++/* ---------------------------------------------------------------------------------------------- */+/* Memory management                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Resizes the given `ZyanList` instance.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   size    The new size of the list.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListResize(ZyanList* list, ZyanUSize size);++/**+ * Resizes the given `ZyanList` instance.+ *+ * @param   list        A pointer to the `ZyanList` instance.+ * @param   size        The new size of the list.+ * @param   initializer A pointer to a value to be used as initializer for new items.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListResizeEx(ZyanList* list, ZyanUSize size, const void* initializer);++/* ---------------------------------------------------------------------------------------------- */+/* Information                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the current size of the list.+ *+ * @param   list    A pointer to the `ZyanList` instance.+ * @param   size    Receives the size of the list.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanListGetSize(const ZyanList* list, ZyanUSize* size);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_VECTOR_H */
+ external/zydis/dependencies/zycore/include/Zycore/Object.h view
@@ -0,0 +1,84 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Defines some generic object-related datatypes.+ */++#ifndef ZYCORE_OBJECT_H+#define ZYCORE_OBJECT_H++#include <Zycore/Status.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanMemberProcedure` function prototype.+ *+ * @param   object  A pointer to the object.+ */+typedef void (*ZyanMemberProcedure)(void* object);++/**+ * Defines the `ZyanConstMemberProcedure` function prototype.+ *+ * @param   object  A pointer to the object.+ */+typedef void (*ZyanConstMemberProcedure)(const void* object);++/**+ * Defines the `ZyanMemberFunction` function prototype.+ *+ * @param   object  A pointer to the object.+ *+ * @return  A zyan status code.+ */+typedef ZyanStatus (*ZyanMemberFunction)(void* object);++/**+ * Defines the `ZyanConstMemberFunction` function prototype.+ *+ * @param   object  A pointer to the object.+ *+ * @return  A zyan status code.+ */+typedef ZyanStatus (*ZyanConstMemberFunction)(const void* object);++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_OBJECT_H */
+ external/zydis/dependencies/zycore/include/Zycore/Status.h view
@@ -0,0 +1,287 @@+/***************************************************************************************************++  Zyan Core Library (Zyan-C)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Status code definitions and check macros.+ */++#ifndef ZYCORE_STATUS_H+#define ZYCORE_STATUS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <Zycore/Types.h>++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanStatus` data type.+ */+typedef ZyanU32 ZyanStatus;++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Definition                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines a zyan status code.+ *+ * @param   error   `1`, if the status code signals an error or `0`, if not.+ * @param   module  The module id.+ * @param   code    The actual code.+ *+ * @return  The zyan status code.+ */+#define ZYAN_MAKE_STATUS(error, module, code) \+    (ZyanStatus)((((error) & 0x01) << 31) | (((module) & 0x7FF) << 20) | ((code) & 0xFFFFF))++/* ---------------------------------------------------------------------------------------------- */+/* Checks                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Checks if a zyan operation was successful.+ *+ * @param   status  The zyan status-code to check.+ *+ * @return  `ZYAN_TRUE`, if the operation succeeded or `ZYAN_FALSE`, if not.+ */+#define ZYAN_SUCCESS(status) \+    (!((status) & 0x80000000))++/**+ * Checks if a zyan operation failed.+ *+ * @param   status  The zyan status-code to check.+ *+ * @return  `ZYAN_TRUE`, if the operation failed or `ZYAN_FALSE`, if not.+ */+#define ZYAN_FAILED(status) \+    ((status) & 0x80000000)++/**+ * Checks if a zyan operation was successful and returns with the status-code, if not.+ *+ * @param   status  The zyan status-code to check.+ */+#define ZYAN_CHECK(status) \+    do \+    { \+        const ZyanStatus status_047620348 = (status); \+        if (!ZYAN_SUCCESS(status_047620348)) \+        { \+            return status_047620348; \+        } \+    } while (0)++/* ---------------------------------------------------------------------------------------------- */+/* Information                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++ /**+ * Returns the module id of a zyan status-code.+ *+ * @param   status  The zyan status-code.+ *+ * @return  The module id of the zyan status-code.+ */+#define ZYAN_STATUS_MODULE(status) \+    (((status) >> 20) & 0x7FF)++ /**+ * Returns the code of a zyan status-code.+ *+ * @param   status  The zyan status-code.+ *+ * @return  The code of the zyan status-code.+ */+#define ZYAN_STATUS_CODE(status) \+    ((status) & 0xFFFFF)++/* ============================================================================================== */+/* Status codes                                                                                   */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Module IDs                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * The zycore generic module id.+ */+#define ZYAN_MODULE_ZYCORE      0x001++/**+ * The zycore arg-parse submodule id.+ */+#define ZYAN_MODULE_ARGPARSE    0x003++/**+ * The base module id for user-defined status codes.+ */+#define ZYAN_MODULE_USER        0x3FF++/* ---------------------------------------------------------------------------------------------- */+/* Status codes (general purpose)                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * The operation completed successfully.+ */+#define ZYAN_STATUS_SUCCESS \+    ZYAN_MAKE_STATUS(0, ZYAN_MODULE_ZYCORE, 0x00)++/**+ * The operation failed with an generic error.+ */+#define ZYAN_STATUS_FAILED \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x01)++/**+ * The operation completed successfully and returned `ZYAN_TRUE`.+ */+#define ZYAN_STATUS_TRUE \+    ZYAN_MAKE_STATUS(0, ZYAN_MODULE_ZYCORE, 0x02)++/**+ * The operation completed successfully and returned `ZYAN_FALSE`.+ */+#define ZYAN_STATUS_FALSE \+    ZYAN_MAKE_STATUS(0, ZYAN_MODULE_ZYCORE, 0x03)++/**+ * An invalid argument was passed to a function.+ */+#define ZYAN_STATUS_INVALID_ARGUMENT \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x04)++/**+ * An attempt was made to perform an invalid operation.+ */+#define ZYAN_STATUS_INVALID_OPERATION \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x05)++/**+ * Insufficient privileges to perform the requested operation.+ */+#define ZYAN_STATUS_ACCESS_DENIED \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x06)++/**+ * The requested entity was not found.+ */+#define ZYAN_STATUS_NOT_FOUND \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x07)++/**+ * An index passed to a function was out of bounds.+ */+#define ZYAN_STATUS_OUT_OF_RANGE \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x08)++/**+ * A buffer passed to a function was too small to complete the requested operation.+ */+#define ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x09)++/**+ * Insufficient memory to perform the operation.+ */+#define ZYAN_STATUS_NOT_ENOUGH_MEMORY \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x0A)++/**+ * An unknown error occurred during a system function call.+ */+#define ZYAN_STATUS_BAD_SYSTEMCALL \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x0B)++/**+ * The process ran out of resources while performing an operation.+ */+#define ZYAN_STATUS_OUT_OF_RESOURCES \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x0C)++/**+ * A dependency library was not found or does have an unexpected version number or+ * feature-set.+ */+#define ZYAN_STATUS_MISSING_DEPENDENCY \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYCORE, 0x0D)++/* ---------------------------------------------------------------------------------------------- */+/* Status codes (arg parse)                                                                       */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Argument was not expected.+ */+#define ZYAN_STATUS_ARG_NOT_UNDERSTOOD \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ARGPARSE, 0x00)++/**+ * Too few arguments were provided.+ */+#define ZYAN_STATUS_TOO_FEW_ARGS \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ARGPARSE, 0x01)++/**+ * Too many arguments were provided.+ */+#define ZYAN_STATUS_TOO_MANY_ARGS \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ARGPARSE, 0x02)++/**+ * An argument that expected a value misses its value.+ */+#define ZYAN_STATUS_ARG_MISSES_VALUE \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ARGPARSE, 0x03)++/**+* A required argument is missing.+*/+#define ZYAN_STATUS_REQUIRED_ARG_MISSING \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ARGPARSE, 0x04)++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_STATUS_H */
+ external/zydis/dependencies/zycore/include/Zycore/String.h view
@@ -0,0 +1,1012 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements a string type.+ */++#ifndef ZYCORE_STRING_H+#define ZYCORE_STRING_H++#include <ZycoreExportConfig.h>+#include <Zycore/Allocator.h>+#include <Zycore/Status.h>+#include <Zycore/Types.h>+#include <Zycore/Vector.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++/**+ * The initial minimum capacity (number of characters) for all dynamically allocated+ * string instances - not including the terminating '\0'-character.+ */+#define ZYAN_STRING_MIN_CAPACITY                32++/**+ * The default growth factor for all string instances.+ */+#define ZYAN_STRING_DEFAULT_GROWTH_FACTOR       2.00f++/**+ * The default shrink threshold for all string instances.+ */+#define ZYAN_STRING_DEFAULT_SHRINK_THRESHOLD    0.25f++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* String flags                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZyanStringFlags` datatype.+ */+typedef ZyanU8 ZyanStringFlags;++/**+ * The string uses a custom user-defined buffer with a fixed capacity.+ */+#define ZYAN_STRING_HAS_FIXED_CAPACITY  0x01 // (1 << 0)++/* ---------------------------------------------------------------------------------------------- */+/* String                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZyanString` struct.+ *+ * The `ZyanString` type is implemented as a size-prefixed string - which allows for a lot of+ * performance optimizations.+ * Nevertheless null-termination is guaranteed at all times to provide maximum compatibility with+ * default C-style strings (use `ZyanStringGetData` to access the C-style string).+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanString_+{+    /**+     * String flags.+     */+    ZyanStringFlags flags;+    /**+     * The vector that contains the actual string.+     */+    ZyanVector vector;+} ZyanString;++/* ---------------------------------------------------------------------------------------------- */+/* View                                                                                           */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZyanStringView` struct.+ *+ * The `ZyanStringView` type provides a view inside a string (`ZyanString` instances, null-+ * terminated C-style strings, or even not-null-terminated custom strings). A view is immutable+ * by design and can't be directly converted to a C-style string.+ *+ * Views might become invalid (e.g. pointing to invalid memory), if the underlying string gets+ * destroyed or resized.+ *+ * The `ZYAN_STRING_TO_VIEW` macro can be used to cast a `ZyanString` to a `ZyanStringView` pointer+ * without any runtime overhead.+ * Casting a view to a normal string is not supported and will lead to unexpected behavior (use+ * `ZyanStringDuplicate` to create a deep-copy instead).+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanStringView_+{+    /**+     * The string data.+     *+     * The view internally re-uses the normal string struct to allow casts without any runtime+     * overhead.+     */+    ZyanString string;+} ZyanStringView;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines an uninitialized `ZyanString` instance.+ */+#define ZYAN_STRING_INITIALIZER \+    { \+        /* flags  */ 0, \+        /* vector */ ZYAN_VECTOR_INITIALIZER \+    }++/* ---------------------------------------------------------------------------------------------- */+/* Helper macros                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Casts a `ZyanString` pointer to a constant `ZyanStringView` pointer.+ */+#define ZYAN_STRING_TO_VIEW(string) (const ZyanStringView*)(string)++/**+ * Defines a `ZyanStringView` struct that provides a view into a static C-style string.+ *+ * @param   string  The C-style string.+ */+#define ZYAN_DEFINE_STRING_VIEW(string) \+    { \+        /* string */ \+        { \+            /* flags  */ 0, \+            /* vector */ \+            { \+                /* allocator        */ ZYAN_NULL, \+                /* growth_factor    */ 1.0f, \+                /* shrink_threshold */ 0.0f, \+                /* size             */ sizeof(string), \+                /* capacity         */ sizeof(string), \+                /* element_size     */ sizeof(char), \+                /* destructor       */ ZYAN_NULL, \+                /* data             */ (char*)(string) \+            } \+        } \+    }++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constructor and destructor                                                                     */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanString` instance.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   capacity        The initial capacity (number of characters).+ *+ * @return  A zyan status code.+ *+ * The memory for the string is dynamically allocated by the default allocator using the default+ * growth factor of `2.0f` and the default shrink threshold of `0.25f`.+ *+ * The allocated buffer will be at least one character larger than the given `capacity`, to reserve+ * space for the terminating '\0'.+ *+ * Finalization with `ZyanStringDestroy` is required for all strings created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanStringInit(ZyanString* string, ZyanUSize capacity);++#endif // ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanString` instance and sets a custom `allocator` and memory+ * allocation/deallocation parameters.+ *+ * @param   string              A pointer to the `ZyanString` instance.+ * @param   capacity            The initial capacity (number of characters).+ * @param   allocator           A pointer to a `ZyanAllocator` instance.+ * @param   growth_factor       The growth factor (from `1.0f` to `x.xf`).+ * @param   shrink_threshold    The shrink threshold (from `0.0f` to `1.0f`).+ *+ * @return  A zyan status code.+ *+ * A growth factor of `1.0f` disables overallocation and a shrink threshold of `0.0f` disables+ * dynamic shrinking.+ *+ * The allocated buffer will be at least one character larger than the given `capacity`, to reserve+ * space for the terminating '\0'.+ *+ * Finalization with `ZyanStringDestroy` is required for all strings created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInitEx(ZyanString* string, ZyanUSize capacity,+    ZyanAllocator* allocator, float growth_factor, float shrink_threshold);++/**+ * Initializes the given `ZyanString` instance and configures it to use a custom user+ * defined buffer with a fixed size.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   buffer          A pointer to the buffer that is used as storage for the string.+ * @param   capacity        The maximum capacity (number of characters) of the buffer, including+ *                          the terminating '\0'.+ *+ * @return  A zyan status code.+ *+ * Finalization is not required for strings created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInitCustomBuffer(ZyanString* string, char* buffer,+    ZyanUSize capacity);++/**+ * Destroys the given `ZyanString` instance.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ *+ * @return  A zyan status code.+ *+ */+ZYCORE_EXPORT ZyanStatus ZyanStringDestroy(ZyanString* string);++/* ---------------------------------------------------------------------------------------------- */+/* Duplication                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanString` instance by duplicating an existing string.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanString` instance.+ * @param   source      A pointer to the source string.+ * @param   capacity    The initial capacity (number of characters).+ *+ *                      This value is automatically adjusted to the size of the source string, if+ *                      a smaller value was passed.+ *+ * @return  A zyan status code.+ *+ * The behavior of this function is undefined, if `source` is a view into the `destination`+ * string or `destination` points to an already initialized `ZyanString` instance.+ *+ * The memory for the string is dynamically allocated by the default allocator using the default+ * growth factor of `2.0f` and the default shrink threshold of `0.25f`.+ *+ * The allocated buffer will be at least one character larger than the given `capacity`, to reserve+ * space for the terminating '\0'.+ *+ * Finalization with `ZyanStringDestroy` is required for all strings created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanStringDuplicate(ZyanString* destination,+    const ZyanStringView* source, ZyanUSize capacity);++#endif // ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanString` instance by duplicating an existing string and sets a+ * custom `allocator` and memory allocation/deallocation parameters.+ *+ * @param   destination         A pointer to the (uninitialized) destination `ZyanString` instance.+ * @param   source              A pointer to the source string.+ * @param   capacity            The initial capacity (number of characters).++ *                              This value is automatically adjusted to the size of the source+ *                              string, if a smaller value was passed.+ * @param   allocator           A pointer to a `ZyanAllocator` instance.+ * @param   growth_factor       The growth factor (from `1.0f` to `x.xf`).+ * @param   shrink_threshold    The shrink threshold (from `0.0f` to `1.0f`).+ *+ * @return  A zyan status code.+ *+ * The behavior of this function is undefined, if `source` is a view into the `destination`+ * string or `destination` points to an already initialized `ZyanString` instance.+ *+ * A growth factor of `1.0f` disables overallocation and a shrink threshold of `0.0f` disables+ * dynamic shrinking.+ *+ * The allocated buffer will be at least one character larger than the given `capacity`, to reserve+ * space for the terminating '\0'.+ *+ * Finalization with `ZyanStringDestroy` is required for all strings created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringDuplicateEx(ZyanString* destination,+    const ZyanStringView* source, ZyanUSize capacity, ZyanAllocator* allocator,+    float growth_factor, float shrink_threshold);++/**+ * Initializes a new `ZyanString` instance by duplicating an existing string and+ * configures it to use a custom user defined buffer with a fixed size.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanString` instance.+ * @param   source      A pointer to the source string.+ * @param   buffer      A pointer to the buffer that is used as storage for the string.+ * @param   capacity    The maximum capacity (number of characters) of the buffer, including the+ *                      terminating '\0'.++ *                      This function will fail, if the capacity of the buffer is less or equal to+ *                      the size of the source string.+ *+ * @return  A zyan status code.+ *+ * The behavior of this function is undefined, if `source` is a view into the `destination`+ * string or `destination` points to an already initialized `ZyanString` instance.+ *+ * Finalization is not required for strings created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringDuplicateCustomBuffer(ZyanString* destination,+    const ZyanStringView* source, char* buffer, ZyanUSize capacity);++/* ---------------------------------------------------------------------------------------------- */+/* Concatenation                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanString` instance by concatenating two existing strings.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanString` instance.+ *+ *                      This function will fail, if the destination `ZyanString` instance equals+ *                      one of the source strings.+ * @param   s1          A pointer to the first source string.+ * @param   s2          A pointer to the second source string.+ * @param   capacity    The initial capacity (number of characters).++ *                      This value is automatically adjusted to the combined size of the source+ *                      strings, if a smaller value was passed.+ *+ * @return  A zyan status code.+ *+ * The behavior of this function is undefined, if `s1` or `s2` are views into the `destination`+ * string or `destination` points to an already initialized `ZyanString` instance.+ *+ * The memory for the string is dynamically allocated by the default allocator using the default+ * growth factor of `2.0f` and the default shrink threshold of `0.25f`.+ *+ * The allocated buffer will be at least one character larger than the given `capacity`, to reserve+ * space for the terminating '\0'.+ *+ * Finalization with `ZyanStringDestroy` is required for all strings created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanStringConcat(ZyanString* destination,+    const ZyanStringView* s1, const ZyanStringView* s2, ZyanUSize capacity);++#endif // ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanString` instance by concatenating two existing strings and sets+ * a custom `allocator` and memory allocation/deallocation parameters.+ *+ * @param   destination         A pointer to the (uninitialized) destination `ZyanString` instance.+ *+ *                              This function will fail, if the destination `ZyanString` instance+ *                              equals one of the source strings.+ * @param   s1                  A pointer to the first source string.+ * @param   s2                  A pointer to the second source string.+ * @param   capacity            The initial capacity (number of characters).+ *+ *                              This value is automatically adjusted to the combined size of the+ *                              source strings, if a smaller value was passed.+ * @param   allocator           A pointer to a `ZyanAllocator` instance.+ * @param   growth_factor       The growth factor (from `1.0f` to `x.xf`).+ * @param   shrink_threshold    The shrink threshold (from `0.0f` to `1.0f`).+ *+ * @return  A zyan status code.+ *+ * The behavior of this function is undefined, if `s1` or `s2` are views into the `destination`+ * string or `destination` points to an already initialized `ZyanString` instance.+ *+ * A growth factor of `1.0f` disables overallocation and a shrink threshold of `0.0f` disables+ * dynamic shrinking.+ *+ * The allocated buffer will be at least one character larger than the given `capacity`, to reserve+ * space for the terminating '\0'.+ *+ * Finalization with `ZyanStringDestroy` is required for all strings created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringConcatEx(ZyanString* destination, const ZyanStringView* s1,+    const ZyanStringView* s2, ZyanUSize capacity, ZyanAllocator* allocator, float growth_factor,+    float shrink_threshold);++/**+ * Initializes a new `ZyanString` instance by concatenating two existing strings and+ * configures it to use a custom user defined buffer with a fixed size.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanString` instance.+ *+ *                      This function will fail, if the destination `ZyanString` instance equals+ *                      one of the source strings.+ * @param   s1          A pointer to the first source string.+ * @param   s2          A pointer to the second source string.+ * @param   buffer      A pointer to the buffer that is used as storage for the string.+ * @param   capacity    The maximum capacity (number of characters) of the buffer.+ *+ *                      This function will fail, if the capacity of the buffer is less or equal to+ *                      the combined size of the source strings.+ *+ * @return  A zyan status code.+ *+ * The behavior of this function is undefined, if `s1` or `s2` are views into the `destination`+ * string or `destination` points to an already initialized `ZyanString` instance.+ *+ * Finalization is not required for strings created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringConcatCustomBuffer(ZyanString* destination,+    const ZyanStringView* s1, const ZyanStringView* s2, char* buffer, ZyanUSize capacity);++/* ---------------------------------------------------------------------------------------------- */+/* Views                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns a view inside an existing view/string.+ *+ * @param   view    A pointer to the `ZyanStringView` instance.+ * @param   source  A pointer to the source string.+ *+ * @return  A zyan status code.+ *+ * The `ZYAN_STRING_TO_VEW` macro can be used to pass any `ZyanString` instance as value for the+ * `source` string.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringViewInsideView(ZyanStringView* view,+    const ZyanStringView* source);++/**+ * Returns a view inside an existing view/string starting from the given `index`.+ *+ * @param   view    A pointer to the `ZyanStringView` instance.+ * @param   source  A pointer to the source string.+ * @param   index   The start index.+ * @param   count   The number of characters.+ *+ * @return  A zyan status code.+ *+ * The `ZYAN_STRING_TO_VEW` macro can be used to pass any `ZyanString` instance as value for the+ * `source` string.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringViewInsideViewEx(ZyanStringView* view,+    const ZyanStringView* source, ZyanUSize index, ZyanUSize count);++/**+ * Returns a view inside a null-terminated C-style string.+ *+ * @param   view    A pointer to the `ZyanStringView` instance.+ * @param   string  The C-style string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringViewInsideBuffer(ZyanStringView* view, const char* string);++/**+ * Returns a view inside a character buffer with custom length.+ *+ * @param   view    A pointer to the `ZyanStringView` instance.+ * @param   buffer  A pointer to the buffer containing the string characters.+ * @param   length  The length of the string (number of characters).+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringViewInsideBufferEx(ZyanStringView* view, const char* buffer,+    ZyanUSize length);++/**+ * Returns the size (number of characters) of the view.+ *+ * @param   view    A pointer to the `ZyanStringView` instance.+ * @param   size    Receives the size (number of characters) of the view.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringViewGetSize(const ZyanStringView* view, ZyanUSize* size);++/**+ * Returns the C-style string of the given `ZyanString` instance.+ *+ * @warning The string is not guaranteed to be null terminated!+ *+ * @param   string  A pointer to the `ZyanStringView` instance.+ * @param   value   Receives a pointer to the C-style string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringViewGetData(const ZyanStringView* view, const char** buffer);++/* ---------------------------------------------------------------------------------------------- */+/* Character access                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the character at the given `index`.+ *+ * @param   string  A pointer to the `ZyanStringView` instance.+ * @param   index   The character index.+ * @param   value   Receives the desired character of the string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringGetChar(const ZyanStringView* string, ZyanUSize index,+    char* value);++/**+ * Returns a pointer to the character at the given `index`.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   index   The character index.+ * @param   value   Receives a pointer to the desired character in the string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringGetCharMutable(ZyanString* string, ZyanUSize index,+    char** value);++/**+ * Assigns a new value to the character at the given `index`.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   index   The character index.+ * @param   value   The character to assign.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringSetChar(ZyanString* string, ZyanUSize index, char value);++/* ---------------------------------------------------------------------------------------------- */+/* Insertion                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Inserts the content of the source string in the destination string at the given `index`.+ *+ * @param   destination The destination string.+ * @param   index       The insert index.+ * @param   source      The source string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInsert(ZyanString* destination, ZyanUSize index,+    const ZyanStringView* source);++/**+ * Inserts `count` characters of the source string in the destination string at the given+ * `index`.+ *+ * @param   destination         The destination string.+ * @param   destination_index   The insert index.+ * @param   source              The source string.+ * @param   source_index        The index of the first character to be inserted from the source+ *                              string.+ * @param   count               The number of chars to insert from the source string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringInsertEx(ZyanString* destination, ZyanUSize destination_index,+    const ZyanStringView* source, ZyanUSize source_index, ZyanUSize count);++/* ---------------------------------------------------------------------------------------------- */+/* Appending                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Appends the content of the source string to the end of the destination string.+ *+ * @param   destination The destination string.+ * @param   source      The source string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringAppend(ZyanString* destination, const ZyanStringView* source);++/**+ * Appends `count` characters of the source string to the end of the destination string.+ *+ * @param   destination     The destination string.+ * @param   source          The source string.+ * @param   source_index    The index of the first character to be appended from the source string.+ * @param   count           The number of chars to append from the source string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringAppendEx(ZyanString* destination, const ZyanStringView* source,+    ZyanUSize source_index, ZyanUSize count);++/* ---------------------------------------------------------------------------------------------- */+/* Deletion                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Deletes characters from the given string, starting at `index`.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   index   The index of the first character to delete.+ * @param   count   The number of characters to delete.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringDelete(ZyanString* string, ZyanUSize index, ZyanUSize count);++/**+ * Deletes all remaining characters from the given string, starting at `index`.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   index   The index of the first character to delete.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringTruncate(ZyanString* string, ZyanUSize index);++/**+ * Erases the given string.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringClear(ZyanString* string);++/* ---------------------------------------------------------------------------------------------- */+/* Searching                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Searches for the first occurrence of `needle` in the given `haystack` starting from the+ * left.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringLPos(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index);++/**+ * Searches for the first occurrence of `needle` in the given `haystack` starting from the+ * left.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ * @param   index       The start index.+ * @param   count       The maximum number of characters to iterate, beginning from the start+ *                      `index`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringLPosEx(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index, ZyanUSize index, ZyanUSize count);++/**+ * Performs a case-insensitive search for the first occurrence of `needle` in the given+ * `haystack` starting from the left.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringLPosI(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index);++/**+ * Performs a case-insensitive search for the first occurrence of `needle` in the given+ * `haystack` starting from the left.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ * @param   index       The start index.+ * @param   count       The maximum number of characters to iterate, beginning from the start+ *                      `index`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringLPosIEx(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index, ZyanUSize index, ZyanUSize count);++/**+ * Searches for the first occurrence of `needle` in the given `haystack` starting from the+ * right.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringRPos(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index);++/**+ * Searches for the first occurrence of `needle` in the given `haystack` starting from the+ *          right.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ * @param   index       The start index.+ * @param   count       The maximum number of characters to iterate, beginning from the start+ *                      `index`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringRPosEx(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index, ZyanUSize index, ZyanUSize count);++/**+ * Performs a case-insensitive search for the first occurrence of `needle` in the given+ * `haystack` starting from the right.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringRPosI(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index);++/**+ * Performs a case-insensitive search for the first occurrence of `needle` in the given+ * `haystack` starting from the right.+ *+ * @param   haystack    The string to search in.+ * @param   needle      The sub-string to search for.+ * @param   found_index A pointer to a variable that receives the index of the first occurrence of+ *                      `needle`.+ * @param   index       The start index.+ * @param   count       The maximum number of characters to iterate, beginning from the start+ *                      `index`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the needle was found, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ *+ * The `found_index` is set to `-1`, if the needle was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringRPosIEx(const ZyanStringView* haystack,+    const ZyanStringView* needle, ZyanISize* found_index, ZyanUSize index, ZyanUSize count);++/* ---------------------------------------------------------------------------------------------- */+/* Comparing                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Compares two strings.+ *+ * @param   s1      The first string+ * @param   s2      The second string.+ * @param   result  Receives the comparison result.+ *+ *                  Values:+ *                  - `result  < 0` -> The first character that does not match has a lower value+ *                    in `s1` than in `s2`.+ *                  - `result == 0` -> The contents of both strings are equal.+ *                  - `result  > 0` -> The first character that does not match has a greater value+ *                    in `s1` than in `s2`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the strings are equal, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringCompare(const ZyanStringView* s1, const ZyanStringView* s2,+    ZyanI32* result);++/**+ * Performs a case-insensitive comparison of two strings.+ *+ * @param   s1      The first string+ * @param   s2      The second string.+ * @param   result  Receives the comparison result.+ *+ *                  Values:+ *                  - `result  < 0` -> The first character that does not match has a lower value+ *                    in `s1` than in `s2`.+ *                  - `result == 0` -> The contents of both strings are equal.+ *                  - `result  > 0` -> The first character that does not match has a greater value+ *                    in `s1` than in `s2`.+ *+ * @return  `ZYAN_STATUS_TRUE`, if the strings are equal, `ZYAN_STATUS_FALSE`, if not, or another+ *          zyan status code, if an error occured.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringCompareI(const ZyanStringView* s1, const ZyanStringView* s2,+    ZyanI32* result);++/* ---------------------------------------------------------------------------------------------- */+/* Case conversion                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Converts the given string to lowercase letters.+ *+ * @param   string      A pointer to the `ZyanString` instance.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringToLowerCase(ZyanString* string);++/**+ * Converts `count` characters of the given string to lowercase letters.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   index   The start index.+ * @param   count   The number of characters to convert, beginning from the start `index`.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringToLowerCaseEx(ZyanString* string, ZyanUSize index,+    ZyanUSize count);++/**+ * Converts the given string to uppercase letters.+ *+ * @param   string      A pointer to the `ZyanString` instance.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringToUpperCase(ZyanString* string);++/**+ * Converts `count` characters of the given string to uppercase letters.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   index   The start index.+ * @param   count   The number of characters to convert, beginning from the start `index`.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringToUpperCaseEx(ZyanString* string, ZyanUSize index,+    ZyanUSize count);++/* ---------------------------------------------------------------------------------------------- */+/* Memory management                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Resizes the given `ZyanString` instance.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   size    The new size of the string.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringResize(ZyanString* string, ZyanUSize size);++/**+ * Changes the capacity of the given `ZyanString` instance.+ *+ * @param   string      A pointer to the `ZyanString` instance.+ * @param   capacity    The new minimum capacity of the string.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringReserve(ZyanString* string, ZyanUSize capacity);++/**+ * Shrinks the capacity of the given string to match it's size.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringShrinkToFit(ZyanString* string);++/* ---------------------------------------------------------------------------------------------- */+/* Information                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the current capacity of the string.+ *+ * @param   string      A pointer to the `ZyanString` instance.+ * @param   capacity    Receives the size of the string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringGetCapacity(const ZyanString* string, ZyanUSize* capacity);++/**+ * Returns the current size (number of characters) of the string (excluding the+ * terminating zero character).+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   size    Receives the size (number of characters) of the string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringGetSize(const ZyanString* string, ZyanUSize* size);++/**+ * Returns the C-style string of the given `ZyanString` instance.+ *+ * @param   string  A pointer to the `ZyanString` instance.+ * @param   value   Receives a pointer to the C-style string.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanStringGetData(const ZyanString* string, const char** value);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif // ZYCORE_STRING_H
+ external/zydis/dependencies/zycore/include/Zycore/Types.h view
@@ -0,0 +1,195 @@+/***************************************************************************************************++  Zyan Core Library (Zyan-C)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Includes and defines some default data types.+ */++#ifndef ZYCORE_TYPES_H+#define ZYCORE_TYPES_H++#include <Zycore/Defines.h>++/* ============================================================================================== */+/* Integer types                                                                                  */+/* ============================================================================================== */++#if defined(ZYAN_NO_LIBC) || \+    (defined(ZYAN_MSVC) && defined(ZYAN_KERNEL)) // The WDK LibC lacks stdint.h.+    // No LibC mode, use compiler built-in types / macros.+#   if defined(ZYAN_MSVC) || defined(ZYAN_ICC)+        typedef unsigned __int8  ZyanU8;+        typedef unsigned __int16 ZyanU16;+        typedef unsigned __int32 ZyanU32;+        typedef unsigned __int64 ZyanU64;+        typedef   signed __int8  ZyanI8;+        typedef   signed __int16 ZyanI16;+        typedef   signed __int32 ZyanI32;+        typedef   signed __int64 ZyanI64;+#       if _WIN64+           typedef ZyanU64       ZyanUSize;+           typedef ZyanI64       ZyanISize;+           typedef ZyanU64       ZyanUPointer;+           typedef ZyanI64       ZyanIPointer;+#       else+           typedef ZyanU32       ZyanUSize;+           typedef ZyanI32       ZyanISize;+           typedef ZyanU32       ZyanUPointer;+           typedef ZyanI32       ZyanIPointer;+#       endif+#   elif defined(ZYAN_GNUC)+        typedef __UINT8_TYPE__   ZyanU8;+        typedef __UINT16_TYPE__  ZyanU16;+        typedef __UINT32_TYPE__  ZyanU32;+        typedef __UINT64_TYPE__  ZyanU64;+        typedef __INT8_TYPE__    ZyanI8;+        typedef __INT16_TYPE__   ZyanI16;+        typedef __INT32_TYPE__   ZyanI32;+        typedef __INT64_TYPE__   ZyanI64;+        typedef __SIZE_TYPE__    ZyanUSize;+        typedef __PTRDIFF_TYPE__ ZyanISize;+        typedef __UINTPTR_TYPE__ ZyanUPointer;+        typedef __INTPTR_TYPE__  ZyanIPointer;+#   else+#       error "Unsupported compiler for no-libc mode."+#   endif+#else+    // If is LibC present, we use stdint types.+#   include <stdint.h>+#   include <stddef.h>+    typedef uint8_t   ZyanU8;+    typedef uint16_t  ZyanU16;+    typedef uint32_t  ZyanU32;+    typedef uint64_t  ZyanU64;+    typedef int8_t    ZyanI8;+    typedef int16_t   ZyanI16;+    typedef int32_t   ZyanI32;+    typedef int64_t   ZyanI64;+    typedef size_t    ZyanUSize;+    typedef ptrdiff_t ZyanISize;+    typedef uintptr_t ZyanUPointer;+    typedef intptr_t  ZyanIPointer;+#endif++// Verify size assumptions.+ZYAN_STATIC_ASSERT(sizeof(ZyanU8      ) == 1            );+ZYAN_STATIC_ASSERT(sizeof(ZyanU16     ) == 2            );+ZYAN_STATIC_ASSERT(sizeof(ZyanU32     ) == 4            );+ZYAN_STATIC_ASSERT(sizeof(ZyanU64     ) == 8            );+ZYAN_STATIC_ASSERT(sizeof(ZyanI8      ) == 1            );+ZYAN_STATIC_ASSERT(sizeof(ZyanI16     ) == 2            );+ZYAN_STATIC_ASSERT(sizeof(ZyanI32     ) == 4            );+ZYAN_STATIC_ASSERT(sizeof(ZyanI64     ) == 8            );+ZYAN_STATIC_ASSERT(sizeof(ZyanUSize   ) == sizeof(void*)); // TODO: This one is incorrect!+ZYAN_STATIC_ASSERT(sizeof(ZyanISize   ) == sizeof(void*)); // TODO: This one is incorrect!+ZYAN_STATIC_ASSERT(sizeof(ZyanUPointer) == sizeof(void*));+ZYAN_STATIC_ASSERT(sizeof(ZyanIPointer) == sizeof(void*));++// Verify signedness assumptions (relies on size checks above).+ZYAN_STATIC_ASSERT((ZyanI8 )-1 >> 1 < (ZyanI8 )((ZyanU8 )-1 >> 1));+ZYAN_STATIC_ASSERT((ZyanI16)-1 >> 1 < (ZyanI16)((ZyanU16)-1 >> 1));+ZYAN_STATIC_ASSERT((ZyanI32)-1 >> 1 < (ZyanI32)((ZyanU32)-1 >> 1));+ZYAN_STATIC_ASSERT((ZyanI64)-1 >> 1 < (ZyanI64)((ZyanU64)-1 >> 1));++/* ============================================================================================== */+/* Pointer                                                                                        */+/* ============================================================================================== */++/**+ * Defines the `ZyanVoidPointer` data-type.+ */+typedef char* ZyanVoidPointer;++/**+ * Defines the `ZyanConstVoidPointer` data-type.+ */+typedef const void* ZyanConstVoidPointer;++#define ZYAN_NULL ((void*)0)++/* ============================================================================================== */+/* Logic types                                                                                    */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Boolean                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++#define ZYAN_FALSE 0+#define ZYAN_TRUE  1++/**+ * Defines the `ZyanBool` data-type.+ *+ * Represents a default boolean data-type where `0` is interpreted as `false` and all other values+ * as `true`.+ */+typedef ZyanU8 ZyanBool;++/* ---------------------------------------------------------------------------------------------- */+/* Ternary                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZyanTernary` data-type.+ *+ * The `ZyanTernary` is a balanced ternary type that uses three truth values indicating `true`,+ * `false` and an indeterminate third value.+ */+typedef ZyanI8 ZyanTernary;++#define ZYAN_TERNARY_FALSE    (-1)+#define ZYAN_TERNARY_UNKNOWN  0x00+#define ZYAN_TERNARY_TRUE     0x01++/* ============================================================================================== */+/* String types                                                                                   */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* C-style strings                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZyanCharPointer` data-type.+ *+ * This type is most often used to represent null-terminated strings aka. C-style strings.+ */+typedef char* ZyanCharPointer;++/**+ * Defines the `ZyanConstCharPointer` data-type.+ *+ * This type is most often used to represent null-terminated strings aka. C-style strings.+ */+typedef const char* ZyanConstCharPointer;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#endif /* ZYCORE_TYPES_H */
+ external/zydis/dependencies/zycore/include/Zycore/Vector.h view
@@ -0,0 +1,723 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements the vector container class.+ */++#ifndef ZYCORE_VECTOR_H+#define ZYCORE_VECTOR_H++#include <ZycoreExportConfig.h>+#include <Zycore/Allocator.h>+#include <Zycore/Comparison.h>+#include <Zycore/Object.h>+#include <Zycore/Status.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++/**+ * The initial minimum capacity (number of elements) for all dynamically allocated vector+ * instances.+ */+#define ZYAN_VECTOR_MIN_CAPACITY                1++/**+ * The default growth factor for all vector instances.+ */+#define ZYAN_VECTOR_DEFAULT_GROWTH_FACTOR       2.00f++/**+ * The default shrink threshold for all vector instances.+ */+#define ZYAN_VECTOR_DEFAULT_SHRINK_THRESHOLD    0.25f++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZyanVector` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZyanVector_+{+    /**+     * The memory allocator.+     */+    ZyanAllocator* allocator;+    /**+     * The growth factor.+     */+    float growth_factor;+    /**+     * The shrink threshold.+     */+    float shrink_threshold;+    /**+     * The current number of elements in the vector.+     */+    ZyanUSize size;+    /**+     * The maximum capacity (number of elements).+     */+    ZyanUSize capacity;+    /**+     * The size of a single element in bytes.+     */+    ZyanUSize element_size;+    /**+     * The element destructor callback.+     */+    ZyanMemberProcedure destructor;+    /**+     * The data pointer.+     */+    void* data;+} ZyanVector;++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines an uninitialized `ZyanVector` instance.+ */+#define ZYAN_VECTOR_INITIALIZER \+    { \+        /* allocator        */ ZYAN_NULL, \+        /* growth_factor    */ 0.0f, \+        /* shrink_threshold */ 0.0f, \+        /* size             */ 0, \+        /* capacity         */ 0, \+        /* element_size     */ 0, \+        /* destructor       */ ZYAN_NULL, \+        /* data             */ ZYAN_NULL \+    }++/* ---------------------------------------------------------------------------------------------- */+/* Helper macros                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the value of the element at the given `index`.+ *+ * @param   type    The desired value type.+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The element index.+ *+ * @result  The value of the desired element in the vector.+ *+ * Note that this function is unsafe and might dereference a null-pointer.+ */+#ifdef __cplusplus+#define ZYAN_VECTOR_GET(type, vector, index) \+    (*reinterpret_cast<const type*>(ZyanVectorGet(vector, index)))+#else+#define ZYAN_VECTOR_GET(type, vector, index) \+    (*(const type*)ZyanVectorGet(vector, index))+#endif++/**+ * Loops through all elements of the vector.+ *+ * @param   type        The desired value type.+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   item_name   The name of the iterator item.+ * @param   body        The body to execute for each item in the vector.+ */+#define ZYAN_VECTOR_FOREACH(type, vector, item_name, body) \+    { \+        const ZyanUSize ZYAN_MACRO_CONCAT_EXPAND(size_d50d3303, item_name) = (vector)->size; \+        for (ZyanUSize ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name) = 0; \+            ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name) < \+            ZYAN_MACRO_CONCAT_EXPAND(size_d50d3303, item_name); \+            ++ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name)) \+        { \+            const type item_name = ZYAN_VECTOR_GET(type, vector, \+                ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name)); \+            body \+        } \+    }++/**+ * Loops through all elements of the vector.+ *+ * @param   type        The desired value type.+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   item_name   The name of the iterator item.+ * @param   body        The body to execute for each item in the vector.+ */+#define ZYAN_VECTOR_FOREACH_MUTABLE(type, vector, item_name, body) \+    { \+        const ZyanUSize ZYAN_MACRO_CONCAT_EXPAND(size_d50d3303, item_name) = (vector)->size; \+        for (ZyanUSize ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name) = 0; \+            ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name) < \+            ZYAN_MACRO_CONCAT_EXPAND(size_d50d3303, item_name); \+            ++ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name)) \+        { \+            type* const item_name = ZyanVectorGetMutable(vector, \+                ZYAN_MACRO_CONCAT_EXPAND(i_bfd62679, item_name)); \+            body \+        } \+    }++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constructor and destructor                                                                     */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanVector` instance.+ *+ * @param   vector          A pointer to the `ZyanVector` instance.+ * @param   element_size    The size of a single element in bytes.+ * @param   capacity        The initial capacity (number of elements).+ * @param   destructor      A destructor callback that is invoked every time an item is deleted, or+ *                          `ZYAN_NULL` if not needed.+ *+ * @return  A zyan status code.+ *+ * The memory for the vector elements is dynamically allocated by the default allocator using the+ * default growth factor of `2.0f` and the default shrink threshold of `0.25f`.+ *+ * Finalization with `ZyanVectorDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanVectorInit(ZyanVector* vector,+    ZyanUSize element_size, ZyanUSize capacity, ZyanMemberProcedure destructor);++#endif // ZYAN_NO_LIBC++/**+ * Initializes the given `ZyanVector` instance and sets a custom `allocator` and memory+ * allocation/deallocation parameters.+ *+ * @param   vector              A pointer to the `ZyanVector` instance.+ * @param   element_size        The size of a single element in bytes.+ * @param   capacity            The initial capacity (number of elements).+ * @param   destructor          A destructor callback that is invoked every time an item is deleted,+ *                              or `ZYAN_NULL` if not needed.+ * @param   allocator           A pointer to a `ZyanAllocator` instance.+ * @param   growth_factor       The growth factor (from `1.0f` to `x.xf`).+ * @param   shrink_threshold    The shrink threshold (from `0.0f` to `1.0f`).+ *+ * @return  A zyan status code.+ *+ * A growth factor of `1.0f` disables overallocation and a shrink threshold of `0.0f` disables+ * dynamic shrinking.+ *+ * Finalization with `ZyanVectorDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorInitEx(ZyanVector* vector, ZyanUSize element_size,+    ZyanUSize capacity, ZyanMemberProcedure destructor, ZyanAllocator* allocator,+    float growth_factor, float shrink_threshold);++/**+ * Initializes the given `ZyanVector` instance and configures it to use a custom user+ * defined buffer with a fixed size.+ *+ * @param   vector          A pointer to the `ZyanVector` instance.+ * @param   element_size    The size of a single element in bytes.+ * @param   buffer          A pointer to the buffer that is used as storage for the elements.+ * @param   capacity        The maximum capacity (number of elements) of the buffer.+ * @param   destructor      A destructor callback that is invoked every time an item is deleted, or+ *                          `ZYAN_NULL` if not needed.+ *+ * @return  A zyan status code.+ *+ * Finalization is not required for instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorInitCustomBuffer(ZyanVector* vector, ZyanUSize element_size,+    void* buffer, ZyanUSize capacity, ZyanMemberProcedure destructor);++/**+ * Destroys the given `ZyanVector` instance.+ *+ * @param   vector  A pointer to the `ZyanVector` instance..+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorDestroy(ZyanVector* vector);++/* ---------------------------------------------------------------------------------------------- */+/* Duplication                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanVector` instance by duplicating an existing vector.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanVector` instance.+ * @param   source      A pointer to the source vector.+ * @param   capacity    The initial capacity (number of elements).+ *+ *                      This value is automatically adjusted to the size of the source vector, if+ *                      a smaller value was passed.+ *+ * @return  A zyan status code.+ *+ * The memory for the vector is dynamically allocated by the default allocator using the default+ * growth factor of `2.0f` and the default shrink threshold of `0.25f`.+ *+ * Finalization with `ZyanVectorDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZYAN_REQUIRES_LIBC ZyanStatus ZyanVectorDuplicate(ZyanVector* destination,+    const ZyanVector* source, ZyanUSize capacity);++#endif // ZYAN_NO_LIBC++/**+ * Initializes a new `ZyanVector` instance by duplicating an existing vector and sets a+ * custom `allocator` and memory allocation/deallocation parameters.+ *+ * @param   destination         A pointer to the (uninitialized) destination `ZyanVector` instance.+ * @param   source              A pointer to the source vector.+ * @param   capacity            The initial capacity (number of elements).++ *                              This value is automatically adjusted to the size of the source+ *                              vector, if a smaller value was passed.+ * @param   allocator           A pointer to a `ZyanAllocator` instance.+ * @param   growth_factor       The growth factor (from `1.0f` to `x.xf`).+ * @param   shrink_threshold    The shrink threshold (from `0.0f` to `1.0f`).+ *+ * @return  A zyan status code.+ *+ * A growth factor of `1.0f` disables overallocation and a shrink threshold of `0.0f` disables+ * dynamic shrinking.+ *+ * Finalization with `ZyanVectorDestroy` is required for all instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorDuplicateEx(ZyanVector* destination, const ZyanVector* source,+    ZyanUSize capacity, ZyanAllocator* allocator, float growth_factor, float shrink_threshold);++/**+ * Initializes a new `ZyanVector` instance by duplicating an existing vector and+ * configures it to use a custom user defined buffer with a fixed size.+ *+ * @param   destination A pointer to the (uninitialized) destination `ZyanVector` instance.+ * @param   source      A pointer to the source vector.+ * @param   buffer      A pointer to the buffer that is used as storage for the elements.+ * @param   capacity    The maximum capacity (number of elements) of the buffer.++ *                      This function will fail, if the capacity of the buffer is less than the+ *                      size of the source vector.+ *+ * @return  A zyan status code.+ *+ * Finalization is not required for instances created by this function.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorDuplicateCustomBuffer(ZyanVector* destination,+    const ZyanVector* source, void* buffer, ZyanUSize capacity);++/* ---------------------------------------------------------------------------------------------- */+/* Element access                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns a constant pointer to the element at the given `index`.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   index       The element index.+ *+ * @return  A constant pointer to the desired element in the vector or `ZYAN_NULL`, if an error+ *          occured.+ *+ * Note that the returned pointer might get invalid when the vector is resized by either a manual+ * call to the memory-management functions or implicitly by inserting or removing elements.+ *+ * Take a look at `ZyanVectorGetPointer` instead, if you need a function that returns a zyan status+ * code.+ */+ZYCORE_EXPORT const void* ZyanVectorGet(const ZyanVector* vector, ZyanUSize index);++/**+ * Returns a mutable pointer to the element at the given `index`.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   index       The element index.+ *+ * @return  A mutable pointer to the desired element in the vector or `ZYAN_NULL`, if an error+ *          occured.+ *+ * Note that the returned pointer might get invalid when the vector is resized by either a manual+ * call to the memory-management functions or implicitly by inserting or removing elements.+ *+ * Take a look at `ZyanVectorGetPointerMutable` instead, if you need a function that returns a+ * zyan status code.+ */+ZYCORE_EXPORT void* ZyanVectorGetMutable(const ZyanVector* vector, ZyanUSize index);++/**+ * Returns a constant pointer to the element at the given `index`.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The element index.+ * @param   value   Receives a constant pointer to the desired element in the vector.+ *+ * Note that the returned pointer might get invalid when the vector is resized by either a manual+ * call to the memory-management functions or implicitly by inserting or removing elements.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorGetPointer(const ZyanVector* vector, ZyanUSize index,+    const void** value);++/**+ * Returns a mutable pointer to the element at the given `index`.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The element index.+ * @param   value Receives a mutable pointer to the desired element in the vector.+ *+ * Note that the returned pointer might get invalid when the vector is resized by either a manual+ * call to the memory-management functions or implicitly by inserting or removing elements.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorGetPointerMutable(const ZyanVector* vector, ZyanUSize index,+    void** value);++/**+ * Assigns a new value to the element at the given `index`.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The value index.+ * @param   value   The value to assign.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorSet(ZyanVector* vector, ZyanUSize index,+    const void* value);++/* ---------------------------------------------------------------------------------------------- */+/* Insertion                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Adds a new `element` to the end of the vector.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   element A pointer to the element to add.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorPushBack(ZyanVector* vector, const void* element);++/**+ * Inserts an `element` at the given `index` of the vector.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The insert index.+ * @param   element A pointer to the element to insert.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorInsert(ZyanVector* vector, ZyanUSize index,+    const void* element);++/**+ * Inserts multiple `elements` at the given `index` of the vector.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   index       The insert index.+ * @param   elements    A pointer to the first element.+ * @param   count       The number of elements to insert.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorInsertRange(ZyanVector* vector, ZyanUSize index,+    const void* elements, ZyanUSize count);++/**+ * Constructs an `element` in-place at the end of the vector.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   element     Receives a pointer to the new element.+ * @param   constructor The constructor callback or `ZYAN_NULL`. The new element will be in+ *                      undefined state, if no constructor was passed.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorEmplace(ZyanVector* vector, void** element,+    ZyanMemberFunction constructor);++/**+ * Constructs an `element` in-place and inserts it at the given `index` of the vector.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   index       The insert index.+ * @param   element     Receives a pointer to the new element.+ * @param   constructor The constructor callback or `ZYAN_NULL`. The new element will be in+ *                      undefined state, if no constructor was passed.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorEmplaceEx(ZyanVector* vector, ZyanUSize index,+    void** element, ZyanMemberFunction constructor);++/* ---------------------------------------------------------------------------------------------- */+/* Utils                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Swaps the element at `index_first` with the element at `index_second`.+ *+ * @param   vector          A pointer to the `ZyanVector` instance.+ * @param   index_first     The index of the first element.+ * @param   index_second    The index of the second element.+ *+ * @return  A zyan status code.+ *+ * This function requires the vector to have spare capacity for one temporary element. Call+ * `ZyanVectorReserve` before this function to increase capacity, if needed.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorSwapElements(ZyanVector* vector, ZyanUSize index_first,+    ZyanUSize index_second);++/* ---------------------------------------------------------------------------------------------- */+/* Deletion                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Deletes the element at the given `index` of the vector.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The element index.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorDelete(ZyanVector* vector, ZyanUSize index);++/**+ * Deletes multiple elements from the given vector, starting at `index`.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   index   The index of the first element to delete.+ * @param   count   The number of elements to delete.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorDeleteRange(ZyanVector* vector, ZyanUSize index,+    ZyanUSize count);++/**+ * Removes the last element of the vector.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorPopBack(ZyanVector* vector);++/**+ * Erases all elements of the given vector.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorClear(ZyanVector* vector);++/* ---------------------------------------------------------------------------------------------- */+/* Searching                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Sequentially searches for the first occurrence of `element` in the given vector.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   element     A pointer to the element to search for.+ * @param   found_index A pointer to a variable that receives the index of the found element.+ * @param   comparison  The comparison function to use.+ *+ * @return  `ZYAN_STATUS_TRUE` if the element was found, `ZYAN_STATUS_FALSE` if not or a generic+ *          zyan status code if an error occured.+ *+ * The `found_index` is set to `-1`, if the element was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorFind(const ZyanVector* vector, const void* element,+    ZyanISize* found_index, ZyanEqualityComparison comparison);++/**+ * Sequentially searches for the first occurrence of `element` in the given vector.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   element     A pointer to the element to search for.+ * @param   found_index A pointer to a variable that receives the index of the found element.+ * @param   comparison  The comparison function to use.+ * @param   index       The start index.+ * @param   count       The maximum number of elements to iterate, beginning from the start `index`.+ *+ * @return  `ZYAN_STATUS_TRUE` if the element was found, `ZYAN_STATUS_FALSE` if not or a generic+ *          zyan status code if an error occured.+ *+ * The `found_index` is set to `-1`, if the element was not found.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorFindEx(const ZyanVector* vector, const void* element,+    ZyanISize* found_index, ZyanEqualityComparison comparison, ZyanUSize index, ZyanUSize count);++/**+ * Searches for the first occurrence of `element` in the given vector using a binary-+ * search algorithm.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   element     A pointer to the element to search for.+ * @param   found_index A pointer to a variable that receives the index of the found element.+ * @param   comparison  The comparison function to use.+ *+ * @return  `ZYAN_STATUS_TRUE` if the element was found, `ZYAN_STATUS_FALSE` if not or a generic+ *          zyan status code if an error occured.+ *+ * If found, `found_index` contains the zero-based index of `element`. If not found, `found_index`+ * contains the index of the first entry larger than `element`.+ *+ * This function requires all elements in the vector to be strictly ordered (sorted).+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorBinarySearch(const ZyanVector* vector, const void* element,+    ZyanUSize* found_index, ZyanComparison comparison);++/**+ * Searches for the first occurrence of `element` in the given vector using a binary-+ * search algorithm.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   element     A pointer to the element to search for.+ * @param   found_index A pointer to a variable that receives the index of the found element.+ * @param   comparison  The comparison function to use.+ * @param   index       The start index.+ * @param   count       The maximum number of elements to iterate, beginning from the start `index`.+ *+ * @return  `ZYAN_STATUS_TRUE` if the element was found, `ZYAN_STATUS_FALSE` if not or a generic+ *          zyan status code if an error occured.+ *+ * If found, `found_index` contains the zero-based index of `element`. If not found, `found_index`+ * contains the index of the first entry larger than `element`.+ *+ * This function requires all elements in the vector to be strictly ordered (sorted).+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorBinarySearchEx(const ZyanVector* vector, const void* element,+    ZyanUSize* found_index, ZyanComparison comparison, ZyanUSize index, ZyanUSize count);++/* ---------------------------------------------------------------------------------------------- */+/* Memory management                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Resizes the given `ZyanVector` instance.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   size    The new size of the vector.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorResize(ZyanVector* vector, ZyanUSize size);++/**+ * Resizes the given `ZyanVector` instance.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   size        The new size of the vector.+ * @param   initializer A pointer to a value to be used as initializer for new items.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorResizeEx(ZyanVector* vector, ZyanUSize size,+    const void* initializer);++/**+ * Changes the capacity of the given `ZyanVector` instance.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   capacity    The new minimum capacity of the vector.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorReserve(ZyanVector* vector, ZyanUSize capacity);++/**+ * Shrinks the capacity of the given vector to match it's size.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorShrinkToFit(ZyanVector* vector);++/* ---------------------------------------------------------------------------------------------- */+/* Information                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the current capacity of the vector.+ *+ * @param   vector      A pointer to the `ZyanVector` instance.+ * @param   capacity    Receives the size of the vector.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorGetCapacity(const ZyanVector* vector, ZyanUSize* capacity);++/**+ * Returns the current size of the vector.+ *+ * @param   vector  A pointer to the `ZyanVector` instance.+ * @param   size    Receives the size of the vector.+ *+ * @return  A zyan status code.+ */+ZYCORE_EXPORT ZyanStatus ZyanVectorGetSize(const ZyanVector* vector, ZyanUSize* size);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_VECTOR_H */
+ external/zydis/dependencies/zycore/include/Zycore/Zycore.h view
@@ -0,0 +1,111 @@+/***************************************************************************************************++  Zyan Core Library (Zycore-C)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Master include file, including everything else.+ */++#ifndef ZYCORE_H+#define ZYCORE_H++#include <ZycoreExportConfig.h>+#include <Zycore/Types.h>++// TODO:++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constants                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * A macro that defines the zycore version.+ */+#define ZYCORE_VERSION (ZyanU64)0x0001000000000000++/* ---------------------------------------------------------------------------------------------- */+/* Helper macros                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Extracts the major-part of the zycore version.+ *+ * @param   version The zycore version value+ */+#define ZYCORE_VERSION_MAJOR(version) (ZyanU16)((version & 0xFFFF000000000000) >> 48)++/**+ * Extracts the minor-part of the zycore version.+ *+ * @param   version The zycore version value+ */+#define ZYCORE_VERSION_MINOR(version) (ZyanU16)((version & 0x0000FFFF00000000) >> 32)++/**+ * Extracts the patch-part of the zycore version.+ *+ * @param   version The zycore version value+ */+#define ZYCORE_VERSION_PATCH(version) (ZyanU16)((version & 0x00000000FFFF0000) >> 16)++/**+ * Extracts the build-part of the zycore version.+ *+ * @param   version The zycore version value+ */+#define ZYCORE_VERSION_BUILD(version) (ZyanU16)(version & 0x000000000000FFFF)++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * Returns the zycore version.+ *+ * @return  The zycore version.+ *+ * Use the macros provided in this file to extract the major, minor, patch and build part from the+ * returned version value.+ */+ZYCORE_EXPORT ZyanU64 ZycoreGetVersion(void);++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYCORE_H */
+ external/zydis/include/Zydis/Decoder.h view
@@ -0,0 +1,237 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Functions for decoding instructions.+ */++#ifndef ZYDIS_DECODER_H+#define ZYDIS_DECODER_H++#include <Zycore/Types.h>+#include <Zycore/Defines.h>+#include <Zydis/DecoderTypes.h>+#include <Zydis/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Decoder mode                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecoderMode` enum.+ */+typedef enum ZydisDecoderMode_+{+    /**+     * Enables minimal instruction decoding without semantic analysis.+     *+     * This mode provides access to the mnemonic, the instruction-length, the effective+     * operand-size, the effective address-width, some attributes (e.g. `ZYDIS_ATTRIB_IS_RELATIVE`)+     * and all of the information in the `raw` field of the `ZydisDecodedInstruction` struct.+     *+     * Operands, most attributes and other specific information (like `AVX` info) are not+     * accessible in this mode.+     *+     * This mode is NOT enabled by default.+     */+    ZYDIS_DECODER_MODE_MINIMAL,+    /**+     * Enables the `AMD`-branch mode.+     *+     * Intel ignores the operand-size override-prefix (`0x66`) for all branches with 32-bit+     * immediates and forces the operand-size of the instruction to 64-bit in 64-bit mode.+     * In `AMD`-branch mode `0x66` is not ignored and changes the operand-size and the size of the+     * immediate to 16-bit.+     *+     * This mode is NOT enabled by default.+     */+    ZYDIS_DECODER_MODE_AMD_BRANCHES,+    /**+     * Enables `KNC` compatibility-mode.+     *+     * `KNC` and `KNL+` chips are sharing opcodes and encodings for some mask-related instructions.+     * Enable this mode to use the old `KNC` specifications (different mnemonics, operands, ..).+     *+     * This mode is NOT enabled by default.+     */+    ZYDIS_DECODER_MODE_KNC,+    /**+     * Enables the `MPX` mode.+     *+     * The `MPX` isa-extension reuses (overrides) some of the widenop instruction opcodes.+     *+     * This mode is enabled by default.+     */+    ZYDIS_DECODER_MODE_MPX,+    /**+     * Enables the `CET` mode.+     *+     * The `CET` isa-extension reuses (overrides) some of the widenop instruction opcodes.+     *+     * This mode is enabled by default.+     */+    ZYDIS_DECODER_MODE_CET,+    /**+     * Enables the `LZCNT` mode.+     *+     * The `LZCNT` isa-extension reuses (overrides) some of the widenop instruction opcodes.+     *+     * This mode is enabled by default.+     */+    ZYDIS_DECODER_MODE_LZCNT,+    /**+     * Enables the `TZCNT` mode.+     *+     * The `TZCNT` isa-extension reuses (overrides) some of the widenop instruction opcodes.+     *+     * This mode is enabled by default.+     */+    ZYDIS_DECODER_MODE_TZCNT,+    /**+     * Enables the `WBNOINVD` mode.+     *+     * The `WBINVD` instruction is interpreted as `WBNOINVD` on ICL chips, if a `F3` prefix is+     * used.+     *+     * This mode is disabled by default.+     */+    ZYDIS_DECODER_MODE_WBNOINVD,+     /**+     * Enables the `CLDEMOTE` mode.+     *+     * The `CLDEMOTE` isa-extension reuses (overrides) some of the widenop instruction opcodes.+     *+     * This mode is enabled by default.+     */+    ZYDIS_DECODER_MODE_CLDEMOTE,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_DECODER_MODE_MAX_VALUE = ZYDIS_DECODER_MODE_CLDEMOTE,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_DECODER_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_DECODER_MODE_MAX_VALUE)+} ZydisDecoderMode;++/* ---------------------------------------------------------------------------------------------- */+/* Decoder struct                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecoder` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZydisDecoder_+{+    /**+     * The machine mode.+     */+    ZydisMachineMode machine_mode;+    /**+     * The address width.+     */+    ZydisAddressWidth address_width;+    /**+     * The decoder mode array.+     */+    ZyanBool decoder_mode[ZYDIS_DECODER_MODE_MAX_VALUE + 1];+} ZydisDecoder;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * @addtogroup decoder Decoder+ * Functions allowing decoding of instruction bytes to a machine interpretable struct.+ * @{+ */++/**+ * Initializes the given `ZydisDecoder` instance.+ *+ * @param   decoder         A pointer to the `ZydisDecoder` instance.+ * @param   machine_mode    The machine mode.+ * @param   address_width   The address width.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisDecoderInit(ZydisDecoder* decoder, ZydisMachineMode machine_mode,+    ZydisAddressWidth address_width);++/**+ * Enables or disables the specified decoder-mode.+ *+ * @param   decoder A pointer to the `ZydisDecoder` instance.+ * @param   mode    The decoder mode.+ * @param   enabled `ZYAN_TRUE` to enable, or `ZYAN_FALSE` to disable the specified decoder-mode.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisDecoderEnableMode(ZydisDecoder* decoder, ZydisDecoderMode mode,+    ZyanBool enabled);++/**+ * Decodes the instruction in the given input `buffer`.+ *+ * @param   decoder     A pointer to the `ZydisDecoder` instance.+ * @param   buffer      A pointer to the input buffer.+ * @param   length      The length of the input buffer. Note that this can be bigger than the+ *                      actual size of the instruction -- you don't have to know the size up+ *                      front. This length is merely used to prevent Zydis from doing+ *                      out-of-bounds reads on your buffer.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct, that receives the+ *                      details about the decoded instruction.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisDecoderDecodeBuffer(const ZydisDecoder* decoder,+    const void* buffer, ZyanUSize length, ZydisDecodedInstruction* instruction);++/** @} */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_DECODER_H */
+ external/zydis/include/Zydis/DecoderTypes.h view
@@ -0,0 +1,1452 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Defines the basic `ZydisDecodedInstruction` and `ZydisDecodedOperand` structs.+ */++#ifndef ZYDIS_INSTRUCTIONINFO_H+#define ZYDIS_INSTRUCTIONINFO_H++#include <Zycore/Types.h>+#include <Zydis/MetaInfo.h>+#include <Zydis/Mnemonic.h>+#include <Zydis/Register.h>+#include <Zydis/SharedTypes.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Decoded operand                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Memory type                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMemoryOperandType` enum.+ */+typedef enum ZydisMemoryOperandType_+{+    ZYDIS_MEMOP_TYPE_INVALID,+    /**+     * Normal memory operand.+     */+    ZYDIS_MEMOP_TYPE_MEM,+    /**+     * The memory operand is only used for address-generation. No real memory-access is+     * caused.+     */+    ZYDIS_MEMOP_TYPE_AGEN,+    /**+     * A memory operand using `SIB` addressing form, where the index register is not used+     * in address calculation and scale is ignored. No real memory-access is caused.+     */+    ZYDIS_MEMOP_TYPE_MIB,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MEMOP_TYPE_MAX_VALUE = ZYDIS_MEMOP_TYPE_MIB,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MEMOP_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MEMOP_TYPE_MAX_VALUE)+} ZydisMemoryOperandType;++/* ---------------------------------------------------------------------------------------------- */+/* Decoded operand                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecodedOperand` struct.+ */+typedef struct ZydisDecodedOperand_+{+    /**+     * The operand-id.+     */+    ZyanU8 id;+    /**+     * The type of the operand.+     */+    ZydisOperandType type;+    /**+     * The visibility of the operand.+     */+    ZydisOperandVisibility visibility;+    /**+     * The operand-actions.+     */+    ZydisOperandActions actions;+    /**+     * The operand-encoding.+     */+    ZydisOperandEncoding encoding;+    /**+     * The logical size of the operand (in bits).+     */+    ZyanU16 size;+    /**+     * The element-type.+     */+    ZydisElementType element_type;+    /**+     * The size of a single element.+     */+    ZydisElementSize element_size;+    /**+     * The number of elements.+     */+    ZyanU16 element_count;+    /**+     * Extended info for register-operands.+     */+    struct ZydisDecodedOperandReg_+    {+        /**+         * The register value.+         */+        ZydisRegister value;+        // TODO: AVX512_4VNNIW MULTISOURCE registers+    } reg;+    /**+     * Extended info for memory-operands.+     */+    struct ZydisDecodedOperandMem_+    {+        /**+         * The type of the memory operand.+         */+        ZydisMemoryOperandType type;+        /**+         * The segment register.+         */+        ZydisRegister segment;+        /**+         * The base register.+         */+        ZydisRegister base;+        /**+         * The index register.+         */+        ZydisRegister index;+        /**+         * The scale factor.+         */+        ZyanU8 scale;+        /**+         * Extended info for memory-operands with displacement.+         */+        struct ZydisDecodedOperandMemDisp_+        {+            /**+             * Signals, if the displacement value is used.+             */+            ZyanBool has_displacement;+            /**+             * The displacement value+             */+            ZyanI64 value;+        } disp;+    } mem;+    /**+     * Extended info for pointer-operands.+     */+    struct ZydisDecodedOperandPtr_+    {+        ZyanU16 segment;+        ZyanU32 offset;+    } ptr;+    /**+     * Extended info for immediate-operands.+     */+    struct ZydisDecodedOperandImm_+    {+        /**+         * Signals, if the immediate value is signed.+         */+        ZyanBool is_signed;+        /**+         * Signals, if the immediate value contains a relative offset. You can use+         * `ZydisCalcAbsoluteAddress` to determine the absolute address value.+         */+        ZyanBool is_relative;+        /**+         * The immediate value.+         */+        union ZydisDecodedOperandImmValue_+        {+            ZyanU64 u;+            ZyanI64 s;+        } value;+    } imm;+} ZydisDecodedOperand;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Decoded instruction                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Instruction attributes                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisInstructionAttributes` data-type.+ */+typedef ZyanU64 ZydisInstructionAttributes;++/**+ * The instruction has the `ModRM` byte.+ */+#define ZYDIS_ATTRIB_HAS_MODRM                  0x0000000000000001 // (1 <<  0)+/**+ * The instruction has the `SIB` byte.+ */+#define ZYDIS_ATTRIB_HAS_SIB                    0x0000000000000002 // (1 <<  1)+/**+ * The instruction has the `REX` prefix.+ */+#define ZYDIS_ATTRIB_HAS_REX                    0x0000000000000004 // (1 <<  2)+/**+ * The instruction has the `XOP` prefix.+ */+#define ZYDIS_ATTRIB_HAS_XOP                    0x0000000000000008 // (1 <<  3)+/**+ * The instruction has the `VEX` prefix.+ */+#define ZYDIS_ATTRIB_HAS_VEX                    0x0000000000000010 // (1 <<  4)+/**+ * The instruction has the `EVEX` prefix.+ */+#define ZYDIS_ATTRIB_HAS_EVEX                   0x0000000000000020 // (1 <<  5)+/**+ * The instruction has the `MVEX` prefix.+ */+#define ZYDIS_ATTRIB_HAS_MVEX                   0x0000000000000040 // (1 <<  6)+/**+ * The instruction has one or more operands with position-relative offsets.+ */+#define ZYDIS_ATTRIB_IS_RELATIVE                0x0000000000000080 // (1 <<  7)+/**+ * The instruction is privileged.+ *+ * Privileged instructions are any instructions that require a current ring level below 3.+ */+#define ZYDIS_ATTRIB_IS_PRIVILEGED              0x0000000000000100 // (1 <<  8)++/**+ * The instruction accesses one or more CPU-flags.+ */+#define ZYDIS_ATTRIB_CPUFLAG_ACCESS             0x0000001000000000 // (1 << 36) // TODO: rebase++/**+ * The instruction may conditionally read the general CPU state.+ */+#define ZYDIS_ATTRIB_CPU_STATE_CR               0x0000002000000000 // (1 << 37) // TODO: rebase+/**+ * The instruction may conditionally write the general CPU state.+ */+#define ZYDIS_ATTRIB_CPU_STATE_CW               0x0000004000000000 // (1 << 38) // TODO: rebase+/**+ * The instruction may conditionally read the FPU state (X87, MMX).+ */+#define ZYDIS_ATTRIB_FPU_STATE_CR               0x0000008000000000 // (1 << 39) // TODO: rebase+/**+ * The instruction may conditionally write the FPU state (X87, MMX).+ */+#define ZYDIS_ATTRIB_FPU_STATE_CW               0x0000010000000000 // (1 << 40) // TODO: rebase+/**+ * The instruction may conditionally read the XMM state (AVX, AVX2, AVX-512).+ */+#define ZYDIS_ATTRIB_XMM_STATE_CR               0x0000020000000000 // (1 << 41) // TODO: rebase+/**+ * The instruction may conditionally write the XMM state (AVX, AVX2, AVX-512).+ */+#define ZYDIS_ATTRIB_XMM_STATE_CW               0x0000040000000000 // (1 << 42) // TODO: rebase++/**+ * The instruction accepts the `LOCK` prefix (`0xF0`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_LOCK               0x0000000000000200 // (1 <<  9)+/**+ * The instruction accepts the `REP` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_REP                0x0000000000000400 // (1 << 10)+/**+ * The instruction accepts the `REPE`/`REPZ` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_REPE               0x0000000000000800 // (1 << 11)+/**+ * The instruction accepts the `REPE`/`REPZ` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_REPZ               0x0000000000000800 // (1 << 11)+/**+ * The instruction accepts the `REPNE`/`REPNZ` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_REPNE              0x0000000000001000 // (1 << 12)+/**+ * The instruction accepts the `REPNE`/`REPNZ` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_REPNZ              0x0000000000001000 // (1 << 12)+/**+ * The instruction accepts the `BND` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_BND                0x0000000000002000 // (1 << 13)+/**+ * The instruction accepts the `XACQUIRE` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_XACQUIRE           0x0000000000004000 // (1 << 14)+/**+ * The instruction accepts the `XRELEASE` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_XRELEASE           0x0000000000008000 // (1 << 15)+/**+ * The instruction accepts the `XACQUIRE`/`XRELEASE` prefixes (`0xF2`, `0xF3`)+ * without the `LOCK` prefix (`0x0F`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_HLE_WITHOUT_LOCK   0x0000000000010000 // (1 << 16)+/**+ * The instruction accepts branch hints (0x2E, 0x3E).+ */+#define ZYDIS_ATTRIB_ACCEPTS_BRANCH_HINTS       0x0000000000020000 // (1 << 17)+/**+ * The instruction accepts segment prefixes (`0x2E`, `0x36`, `0x3E`, `0x26`,+ * `0x64`, `0x65`).+ */+#define ZYDIS_ATTRIB_ACCEPTS_SEGMENT            0x0000000000040000 // (1 << 18)+/**+ * The instruction has the `LOCK` prefix (`0xF0`).+ */+#define ZYDIS_ATTRIB_HAS_LOCK                   0x0000000000080000 // (1 << 19)+/**+ * The instruction has the `REP` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_HAS_REP                    0x0000000000100000 // (1 << 20)+/**+ * The instruction has the `REPE`/`REPZ` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_HAS_REPE                   0x0000000000200000 // (1 << 21)+/**+ * The instruction has the `REPE`/`REPZ` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_HAS_REPZ                   0x0000000000200000 // (1 << 21)+/**+ * The instruction has the `REPNE`/`REPNZ` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_HAS_REPNE                  0x0000000000400000 // (1 << 22)+/**+ * The instruction has the `REPNE`/`REPNZ` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_HAS_REPNZ                  0x0000000000400000 // (1 << 22)+/**+ * The instruction has the `BND` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_HAS_BND                    0x0000000000800000 // (1 << 23)+/**+ * The instruction has the `XACQUIRE` prefix (`0xF2`).+ */+#define ZYDIS_ATTRIB_HAS_XACQUIRE               0x0000000001000000 // (1 << 24)+/**+ * The instruction has the `XRELEASE` prefix (`0xF3`).+ */+#define ZYDIS_ATTRIB_HAS_XRELEASE               0x0000000002000000 // (1 << 25)+/**+ * The instruction has the branch-not-taken hint (`0x2E`).+ */+#define ZYDIS_ATTRIB_HAS_BRANCH_NOT_TAKEN       0x0000000004000000 // (1 << 26)+/**+ * The instruction has the branch-taken hint (`0x3E`).+ */+#define ZYDIS_ATTRIB_HAS_BRANCH_TAKEN           0x0000000008000000 // (1 << 27)+/**+ * The instruction has a segment modifier.+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT                0x00000003F0000000+/**+ * The instruction has the `CS` segment modifier (`0x2E`).+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT_CS             0x0000000010000000 // (1 << 28)+/**+ * The instruction has the `SS` segment modifier (`0x36`).+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT_SS             0x0000000020000000 // (1 << 29)+/**+ * The instruction has the `DS` segment modifier (`0x3E`).+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT_DS             0x0000000040000000 // (1 << 30)+/**+ * The instruction has the `ES` segment modifier (`0x26`).+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT_ES             0x0000000080000000 // (1 << 31)+/**+ * The instruction has the `FS` segment modifier (`0x64`).+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT_FS             0x0000000100000000 // (1 << 32)+/**+ * The instruction has the `GS` segment modifier (`0x65`).+ */+#define ZYDIS_ATTRIB_HAS_SEGMENT_GS             0x0000000200000000 // (1 << 33)+/**+ * The instruction has the operand-size override prefix (`0x66`).+ */+#define ZYDIS_ATTRIB_HAS_OPERANDSIZE            0x0000000400000000 // (1 << 34) // TODO: rename+/**+ * The instruction has the address-size override prefix (`0x67`).+ */+#define ZYDIS_ATTRIB_HAS_ADDRESSSIZE            0x0000000800000000 // (1 << 35) // TODO: rename++/* ---------------------------------------------------------------------------------------------- */+/* R/E/FLAGS info                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisCPUFlags` data-type.+ */+typedef ZyanU32 ZydisCPUFlags;++/**+ * Defines the `ZydisCPUFlag` enum.+ */+typedef enum ZydisCPUFlag_+{+    /**+     * Carry flag.+     */+    ZYDIS_CPUFLAG_CF,+    /**+     * Parity flag.+     */+    ZYDIS_CPUFLAG_PF,+    /**+     * Adjust flag.+     */+    ZYDIS_CPUFLAG_AF,+    /**+     * Zero flag.+     */+    ZYDIS_CPUFLAG_ZF,+    /**+     * Sign flag.+     */+    ZYDIS_CPUFLAG_SF,+    /**+     * Trap flag.+     */+    ZYDIS_CPUFLAG_TF,+    /**+     * Interrupt enable flag.+     */+    ZYDIS_CPUFLAG_IF,+    /**+     * Direction flag.+     */+    ZYDIS_CPUFLAG_DF,+    /**+     * Overflow flag.+     */+    ZYDIS_CPUFLAG_OF,+    /**+     * I/O privilege level flag.+     */+    ZYDIS_CPUFLAG_IOPL,+    /**+     * Nested task flag.+     */+    ZYDIS_CPUFLAG_NT,+    /**+     * Resume flag.+     */+    ZYDIS_CPUFLAG_RF,+    /**+     * Virtual 8086 mode flag.+     */+    ZYDIS_CPUFLAG_VM,+    /**+     * Alignment check.+     */+    ZYDIS_CPUFLAG_AC,+    /**+     * Virtual interrupt flag.+     */+    ZYDIS_CPUFLAG_VIF,+    /**+     * Virtual interrupt pending.+     */+    ZYDIS_CPUFLAG_VIP,+    /**+     * Able to use CPUID instruction.+     */+    ZYDIS_CPUFLAG_ID,+    /**+     * FPU condition-code flag 0.+     */+    ZYDIS_CPUFLAG_C0,+    /**+     * FPU condition-code flag 1.+     */+    ZYDIS_CPUFLAG_C1,+    /**+     * FPU condition-code flag 2.+     */+    ZYDIS_CPUFLAG_C2,+    /**+     * FPU condition-code flag 3.+     */+    ZYDIS_CPUFLAG_C3,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_CPUFLAG_MAX_VALUE = ZYDIS_CPUFLAG_C3,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_CPUFLAG_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_CPUFLAG_MAX_VALUE)+} ZydisCPUFlag;++/**+ * Defines the `ZydisCPUFlagAction` enum.+ */+typedef enum ZydisCPUFlagAction_+{+    /**+     * The CPU flag is not touched by the instruction.+     */+    ZYDIS_CPUFLAG_ACTION_NONE,+    /**+     * The CPU flag is tested (read).+     */+    ZYDIS_CPUFLAG_ACTION_TESTED,+    /**+     * The CPU flag is tested and modified afterwards (read-write).+     */+    ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED,+    /**+     * The CPU flag is modified (write).+     */+    ZYDIS_CPUFLAG_ACTION_MODIFIED,+    /**+     * The CPU flag is set to 0 (write).+     */+    ZYDIS_CPUFLAG_ACTION_SET_0,+    /**+     * The CPU flag is set to 1 (write).+     */+    ZYDIS_CPUFLAG_ACTION_SET_1,+    /**+     * The CPU flag is undefined (write).+     */+    ZYDIS_CPUFLAG_ACTION_UNDEFINED,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_CPUFLAG_ACTION_MAX_VALUE = ZYDIS_CPUFLAG_ACTION_UNDEFINED,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_CPUFLAG_ACTION_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_CPUFLAG_ACTION_MAX_VALUE)+} ZydisCPUFlagAction;++/* ---------------------------------------------------------------------------------------------- */+/* Branch types                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisBranchType` enum.+ */+typedef enum ZydisBranchType_+{+    /**+     * The instruction is not a branch instruction.+     */+    ZYDIS_BRANCH_TYPE_NONE,+    /**+     * The instruction is a short (8-bit) branch instruction.+     */+    ZYDIS_BRANCH_TYPE_SHORT,+    /**+     * The instruction is a near (16-bit or 32-bit) branch instruction.+     */+    ZYDIS_BRANCH_TYPE_NEAR,+    /**+     * The instruction is a far (inter-segment) branch instruction.+     */+    ZYDIS_BRANCH_TYPE_FAR,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_BRANCH_TYPE_MAX_VALUE = ZYDIS_BRANCH_TYPE_FAR,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_BRANCH_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_BRANCH_TYPE_MAX_VALUE)+} ZydisBranchType;++/* ---------------------------------------------------------------------------------------------- */+/* SSE/AVX exception-class                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisExceptionClass` enum.+ */+typedef enum ZydisExceptionClass_+{+    ZYDIS_EXCEPTION_CLASS_NONE,+    // TODO: FP Exceptions+    ZYDIS_EXCEPTION_CLASS_SSE1,+    ZYDIS_EXCEPTION_CLASS_SSE2,+    ZYDIS_EXCEPTION_CLASS_SSE3,+    ZYDIS_EXCEPTION_CLASS_SSE4,+    ZYDIS_EXCEPTION_CLASS_SSE5,+    ZYDIS_EXCEPTION_CLASS_SSE7,+    ZYDIS_EXCEPTION_CLASS_AVX1,+    ZYDIS_EXCEPTION_CLASS_AVX2,+    ZYDIS_EXCEPTION_CLASS_AVX3,+    ZYDIS_EXCEPTION_CLASS_AVX4,+    ZYDIS_EXCEPTION_CLASS_AVX5,+    ZYDIS_EXCEPTION_CLASS_AVX6,+    ZYDIS_EXCEPTION_CLASS_AVX7,+    ZYDIS_EXCEPTION_CLASS_AVX8,+    ZYDIS_EXCEPTION_CLASS_AVX11,+    ZYDIS_EXCEPTION_CLASS_AVX12,+    ZYDIS_EXCEPTION_CLASS_E1,+    ZYDIS_EXCEPTION_CLASS_E1NF,+    ZYDIS_EXCEPTION_CLASS_E2,+    ZYDIS_EXCEPTION_CLASS_E2NF,+    ZYDIS_EXCEPTION_CLASS_E3,+    ZYDIS_EXCEPTION_CLASS_E3NF,+    ZYDIS_EXCEPTION_CLASS_E4,+    ZYDIS_EXCEPTION_CLASS_E4NF,+    ZYDIS_EXCEPTION_CLASS_E5,+    ZYDIS_EXCEPTION_CLASS_E5NF,+    ZYDIS_EXCEPTION_CLASS_E6,+    ZYDIS_EXCEPTION_CLASS_E6NF,+    ZYDIS_EXCEPTION_CLASS_E7NM,+    ZYDIS_EXCEPTION_CLASS_E7NM128,+    ZYDIS_EXCEPTION_CLASS_E9NF,+    ZYDIS_EXCEPTION_CLASS_E10,+    ZYDIS_EXCEPTION_CLASS_E10NF,+    ZYDIS_EXCEPTION_CLASS_E11,+    ZYDIS_EXCEPTION_CLASS_E11NF,+    ZYDIS_EXCEPTION_CLASS_E12,+    ZYDIS_EXCEPTION_CLASS_E12NP,+    ZYDIS_EXCEPTION_CLASS_K20,+    ZYDIS_EXCEPTION_CLASS_K21,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_EXCEPTION_CLASS_MAX_VALUE = ZYDIS_EXCEPTION_CLASS_K21,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_EXCEPTION_CLASS_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_EXCEPTION_CLASS_MAX_VALUE)+} ZydisExceptionClass;++/* ---------------------------------------------------------------------------------------------- */+/* AVX mask mode                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMaskMode` enum.+ */+typedef enum ZydisMaskMode_+{+    ZYDIS_MASK_MODE_INVALID,+    /**+     * Masking is disabled for the current instruction (`K0` register is used).+     */+    ZYDIS_MASK_MODE_DISABLED,+    /**+     * The embedded mask register is used as a merge-mask.+     */+    ZYDIS_MASK_MODE_MERGING,+    /**+     * The embedded mask register is used as a zero-mask.+     */+    ZYDIS_MASK_MODE_ZEROING,+    /**+     * The embedded mask register is used as a control-mask (element selector).+     */+    ZYDIS_MASK_MODE_CONTROL,+    /**+     * The embedded mask register is used as a zeroing control-mask (element selector).+     */+    ZYDIS_MASK_MODE_CONTROL_ZEROING,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MASK_MODE_MAX_VALUE = ZYDIS_MASK_MODE_CONTROL_ZEROING,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MASK_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MASK_MODE_MAX_VALUE)+} ZydisMaskMode;++/* ---------------------------------------------------------------------------------------------- */+/* AVX broadcast-mode                                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisBroadcastMode` enum.+ */+typedef enum ZydisBroadcastMode_+{+    ZYDIS_BROADCAST_MODE_INVALID,+    ZYDIS_BROADCAST_MODE_1_TO_2,+    ZYDIS_BROADCAST_MODE_1_TO_4,+    ZYDIS_BROADCAST_MODE_1_TO_8,+    ZYDIS_BROADCAST_MODE_1_TO_16,+    ZYDIS_BROADCAST_MODE_1_TO_32,+    ZYDIS_BROADCAST_MODE_1_TO_64,+    ZYDIS_BROADCAST_MODE_2_TO_4,+    ZYDIS_BROADCAST_MODE_2_TO_8,+    ZYDIS_BROADCAST_MODE_2_TO_16,+    ZYDIS_BROADCAST_MODE_4_TO_8,+    ZYDIS_BROADCAST_MODE_4_TO_16,+    ZYDIS_BROADCAST_MODE_8_TO_16,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_BROADCAST_MODE_MAX_VALUE = ZYDIS_BROADCAST_MODE_8_TO_16,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_BROADCAST_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_BROADCAST_MODE_MAX_VALUE)+} ZydisBroadcastMode;++/* ---------------------------------------------------------------------------------------------- */+/* AVX rounding-mode                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisRoundingMode` enum.+ */+typedef enum ZydisRoundingMode_+{+    ZYDIS_ROUNDING_MODE_INVALID,+    /**+     * Round to nearest.+     */+    ZYDIS_ROUNDING_MODE_RN,+    /**+     * Round down.+     */+    ZYDIS_ROUNDING_MODE_RD,+    /**+     * Round up.+     */+    ZYDIS_ROUNDING_MODE_RU,+    /**+     * Round towards zero.+     */+    ZYDIS_ROUNDING_MODE_RZ,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_ROUNDING_MODE_MAX_VALUE = ZYDIS_ROUNDING_MODE_RZ,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_ROUNDING_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_ROUNDING_MODE_MAX_VALUE)+} ZydisRoundingMode;++/* ---------------------------------------------------------------------------------------------- */+/* KNC swizzle-mode                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisSwizzleMode` enum.+ */+typedef enum ZydisSwizzleMode_+{+    ZYDIS_SWIZZLE_MODE_INVALID,+    ZYDIS_SWIZZLE_MODE_DCBA,+    ZYDIS_SWIZZLE_MODE_CDAB,+    ZYDIS_SWIZZLE_MODE_BADC,+    ZYDIS_SWIZZLE_MODE_DACB,+    ZYDIS_SWIZZLE_MODE_AAAA,+    ZYDIS_SWIZZLE_MODE_BBBB,+    ZYDIS_SWIZZLE_MODE_CCCC,+    ZYDIS_SWIZZLE_MODE_DDDD,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_SWIZZLE_MODE_MAX_VALUE = ZYDIS_SWIZZLE_MODE_DDDD,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_SWIZZLE_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_SWIZZLE_MODE_MAX_VALUE)+} ZydisSwizzleMode;++/* ---------------------------------------------------------------------------------------------- */+/* KNC conversion-mode                                                                            */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisConversionMode` enum.+ */+typedef enum ZydisConversionMode_+{+    ZYDIS_CONVERSION_MODE_INVALID,+    ZYDIS_CONVERSION_MODE_FLOAT16,+    ZYDIS_CONVERSION_MODE_SINT8,+    ZYDIS_CONVERSION_MODE_UINT8,+    ZYDIS_CONVERSION_MODE_SINT16,+    ZYDIS_CONVERSION_MODE_UINT16,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_CONVERSION_MODE_MAX_VALUE = ZYDIS_CONVERSION_MODE_UINT16,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_CONVERSION_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_CONVERSION_MODE_MAX_VALUE)+} ZydisConversionMode;++/* ---------------------------------------------------------------------------------------------- */+/* Legacy prefix type                                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisPrefixType` enum.+ */+typedef enum ZydisPrefixType_+{+    /**+     * The prefix is ignored by the instruction.+     *+     * This applies to all prefixes that are not accepted by the instruction in general or the+     * ones that are overwritten by a prefix of the same group closer to the instruction opcode.+     */+    ZYDIS_PREFIX_TYPE_IGNORED,+    /**+     * The prefix is effectively used by the instruction.+     */+    ZYDIS_PREFIX_TYPE_EFFECTIVE,+    /**+     * The prefix is used as a mandatory prefix.+     *+     * A mandatory prefix is interpreted as an opcode extension and has no further effect on the+     * instruction.+     */+    ZYDIS_PREFIX_TYPE_MANDATORY,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_PREFIX_TYPE_MAX_VALUE = ZYDIS_PREFIX_TYPE_MANDATORY,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_PREFIX_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_PREFIX_TYPE_MAX_VALUE)+} ZydisPrefixType;++// TODO: Check effective for 66/67 prefixes (currently defaults to EFFECTIVE)++/* ---------------------------------------------------------------------------------------------- */+/* Decoded instruction                                                                            */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Information about a decoded instruction.+ */+typedef struct ZydisDecodedInstruction_+{+    /**+     * The machine mode used to decode this instruction.+     */+    ZydisMachineMode machine_mode;+    /**+     * The instruction-mnemonic.+     */+    ZydisMnemonic mnemonic;+    /**+     * The length of the decoded instruction.+     */+    ZyanU8 length;+    /**+     * The instruction-encoding (`LEGACY`, `3DNOW`, `VEX`, `EVEX`, `XOP`).+     */+    ZydisInstructionEncoding encoding;+    /**+     * The opcode-map.+     */+    ZydisOpcodeMap opcode_map;+    /**+     * The instruction-opcode.+     */+    ZyanU8 opcode;+    /**+     * The stack width.+     */+    ZyanU8 stack_width;+    /**+     * The effective operand width.+     */+    ZyanU8 operand_width;+    /**+     * The effective address width.+     */+    ZyanU8 address_width;+    /**+     * The number of instruction-operands.+     */+    ZyanU8 operand_count;+    /**+     * Detailed info for all instruction operands.+     *+     * Explicit operands are guaranteed to be in the front and ordered as they are printed+     * by the formatter in Intel mode. No assumptions can be made about the order of hidden+     * operands, except that they always located behind the explicit operands.+     */+    ZydisDecodedOperand operands[ZYDIS_MAX_OPERAND_COUNT];+    /**+     * Instruction attributes.+     */+    ZydisInstructionAttributes attributes;+    /**+     * Information about accessed CPU flags.+     */+    struct ZydisDecodedInstructionAccessedFlags_+    {+        /**+         * The CPU-flag action.+         *+         * Use `ZydisGetAccessedFlagsByAction` to get a mask with all flags matching a specific+         * action.+         */+        ZydisCPUFlagAction action;+    } accessed_flags[ZYDIS_CPUFLAG_MAX_VALUE + 1];+    /**+     * Extended info for `AVX` instructions.+     */+    struct ZydisDecodedInstructionAvx_+    {+        /**+         * The `AVX` vector-length.+         */+        ZyanU16 vector_length;+        /**+         * Info about the embedded writemask-register (`AVX-512` and `KNC` only).+         */+        struct ZydisDecodedInstructionAvxMask_+        {+            /**+             * The masking mode.+             */+            ZydisMaskMode mode;+            /**+             * The mask register.+             */+            ZydisRegister reg;+        } mask;+        /**+         * Contains info about the `AVX` broadcast.+         */+        struct ZydisDecodedInstructionAvxBroadcast_+        {+            /**+             * Signals, if the broadcast is a static broadcast.+             *+             * This is the case for instructions with inbuilt broadcast functionality, which is+             * always active and not controlled by the `EVEX/MVEX.RC` bits.+             */+            ZyanBool is_static;+            /**+             * The `AVX` broadcast-mode.+             */+            ZydisBroadcastMode mode;+        } broadcast;+        /**+         * Contains info about the `AVX` rounding.+         */+        struct ZydisDecodedInstructionAvxRounding_+        {+            /**+             * The `AVX` rounding-mode.+             */+            ZydisRoundingMode mode;+        } rounding;+        /**+         * Contains info about the `AVX` register-swizzle (`KNC` only).+         */+        struct ZydisDecodedInstructionAvxSwizzle_+        {+            /**+             * The `AVX` register-swizzle mode.+             */+            ZydisSwizzleMode mode;+        } swizzle;+        /**+         * Contains info about the `AVX` data-conversion (`KNC` only).+         */+        struct ZydisDecodedInstructionAvxConversion_+        {+            /**+             * The `AVX` data-conversion mode.+             */+            ZydisConversionMode mode;+        } conversion;+        /**+         * Signals, if the `SAE` (suppress-all-exceptions) functionality is+         * enabled for the instruction.+         */+        ZyanBool has_sae;+        /**+         * Signals, if the instruction has a memory-eviction-hint (`KNC` only).+         */+        ZyanBool has_eviction_hint;+        // TODO: publish EVEX tuple-type and MVEX functionality+    } avx;+    /**+     * Meta info.+     */+    struct ZydisDecodedInstructionMeta_+    {+        /**+         * The instruction category.+         */+        ZydisInstructionCategory category;+        /**+         * The ISA-set.+         */+        ZydisISASet isa_set;+        /**+         * The ISA-set extension.+         */+        ZydisISAExt isa_ext;+        /**+         * The branch type.+         */+        ZydisBranchType branch_type;+        /**+         * The exception class.+         */+        ZydisExceptionClass exception_class;+    } meta;+    /**+     * Detailed info about different instruction-parts like `ModRM`, `SIB` or+     * encoding-prefixes.+     */+    struct ZydisDecodedInstructionRaw_+    {+        /**+         * The number of legacy prefixes.+         */+        ZyanU8 prefix_count;+        /**+         * Detailed info about the legacy prefixes (including `REX`).+         */+        struct ZydisDecodedInstructionRawPrefixes_+        {+            /**+             * The prefix type.+             */+            ZydisPrefixType type;+            /**+             * The prefix byte.+             */+            ZyanU8 value;+        } prefixes[ZYDIS_MAX_INSTRUCTION_LENGTH];+        /**+         * Detailed info about the `REX` prefix.+         */+        struct ZydisDecodedInstructionRawRex_+        {+            /**+             * 64-bit operand-size promotion.+             */+            ZyanU8 W;+            /**+             * Extension of the `ModRM.reg` field.+             */+            ZyanU8 R;+            /**+             * Extension of the `SIB.index` field.+             */+            ZyanU8 X;+            /**+             * Extension of the `ModRM.rm`, `SIB.base`, or `opcode.reg` field.+             */+            ZyanU8 B;+            /**+             * The offset of the effective `REX` byte, relative to the beginning of the+             * instruction, in bytes.+             *+             * This offset always points to the "effective" `REX` prefix (the one closest to the+             * instruction opcode), if multiple `REX` prefixes are present.+             *+             * Note that the `REX` byte can be the first byte of the instruction, which would lead+             * to an offset of `0`. Please refer to the instruction attributes to check for the+             * presence of the `REX` prefix.+             */+            ZyanU8 offset;+        } rex;+        /**+         * Detailed info about the `XOP` prefix.+         */+        struct ZydisDecodedInstructionRawXop_+        {+            /**+             * Extension of the `ModRM.reg` field (inverted).+             */+            ZyanU8 R;+            /**+             * Extension of the `SIB.index` field (inverted).+             */+            ZyanU8 X;+            /**+             * Extension of the `ModRM.rm`, `SIB.base`, or `opcode.reg` field (inverted).+             */+            ZyanU8 B;+            /**+             * Opcode-map specifier.+             */+            ZyanU8 m_mmmm;+            /**+             * 64-bit operand-size promotion or opcode-extension.+             */+            ZyanU8 W;+            /**+             * `NDS`/`NDD` (non-destructive-source/destination) register+             * specifier (inverted).+             */+            ZyanU8 vvvv;+            /**+             * Vector-length specifier.+             */+            ZyanU8 L;+            /**+             * Compressed legacy prefix.+             */+            ZyanU8 pp;+            /**+             * The offset of the first xop byte, relative to the beginning of+             * the instruction, in bytes.+             */+            ZyanU8 offset;+        } xop;+        /**+         * Detailed info about the `VEX` prefix.+         */+        struct ZydisDecodedInstructionRawVex_+        {+            /**+             * Extension of the `ModRM.reg` field (inverted).+             */+            ZyanU8 R;+            /**+             * Extension of the `SIB.index` field (inverted).+             */+            ZyanU8 X;+            /**+             * Extension of the `ModRM.rm`, `SIB.base`, or `opcode.reg` field (inverted).+             */+            ZyanU8 B;+            /**+             * Opcode-map specifier.+             */+            ZyanU8 m_mmmm;+            /**+             * 64-bit operand-size promotion or opcode-extension.+             */+            ZyanU8 W;+            /**+             * `NDS`/`NDD` (non-destructive-source/destination) register specifier+             *  (inverted).+             */+            ZyanU8 vvvv;+            /**+             * Vector-length specifier.+             */+            ZyanU8 L;+            /**+             * Compressed legacy prefix.+             */+            ZyanU8 pp;+            /**+             * The offset of the first `VEX` byte, relative to the beginning of+             * the instruction, in bytes.+             */+            ZyanU8 offset;+            /**+             * The size of the `VEX` prefix, in bytes.+             */+            ZyanU8 size;+        } vex;+        /**+         * Detailed info about the `EVEX` prefix.+         */+        struct ZydisDecodedInstructionRawEvex_+        {+            /**+             * Extension of the `ModRM.reg` field (inverted).+             */+            ZyanU8 R;+            /**+             * Extension of the `SIB.index/vidx` field (inverted).+             */+            ZyanU8 X;+            /**+             * Extension of the `ModRM.rm` or `SIB.base` field (inverted).+             */+            ZyanU8 B;+            /**+             * High-16 register specifier modifier (inverted).+             */+            ZyanU8 R2;+            /**+             * Opcode-map specifier.+             */+            ZyanU8 mm;+            /**+             * 64-bit operand-size promotion or opcode-extension.+             */+            ZyanU8 W;+            /**+             * `NDS`/`NDD` (non-destructive-source/destination) register specifier+             * (inverted).+             */+            ZyanU8 vvvv;+            /**+             * Compressed legacy prefix.+             */+            ZyanU8 pp;+            /**+             * Zeroing/Merging.+             */+            ZyanU8 z;+            /**+             * Vector-length specifier or rounding-control (most significant bit).+             */+            ZyanU8 L2;+            /**+             * Vector-length specifier or rounding-control (least significant bit).+             */+            ZyanU8 L;+            /**+             * Broadcast/RC/SAE context.+             */+            ZyanU8 b;+            /**+             * High-16 `NDS`/`VIDX` register specifier.+             */+            ZyanU8 V2;+            /**+             * Embedded opmask register specifier.+             */+            ZyanU8 aaa;+            /**+             * The offset of the first evex byte, relative to the beginning of the+             * instruction, in bytes.+             */+            ZyanU8 offset;+        } evex;+        /**+        * Detailed info about the `MVEX` prefix.+        */+        struct ZydisDecodedInstructionRawMvex_+        {+            /**+             * Extension of the `ModRM.reg` field (inverted).+             */+            ZyanU8 R;+            /**+             * Extension of the `SIB.index/vidx` field (inverted).+             */+            ZyanU8 X;+            /**+             * Extension of the `ModRM.rm` or `SIB.base` field (inverted).+             */+            ZyanU8 B;+            /**+             * High-16 register specifier modifier (inverted).+             */+            ZyanU8 R2;+            /**+             * Opcode-map specifier.+             */+            ZyanU8 mmmm;+            /**+             * 64-bit operand-size promotion or opcode-extension.+             */+            ZyanU8 W;+            /**+             * `NDS`/`NDD` (non-destructive-source/destination) register specifier+             *  (inverted).+             */+            ZyanU8 vvvv;+            /**+             * Compressed legacy prefix.+             */+            ZyanU8 pp;+            /**+             * Non-temporal/eviction hint.+             */+            ZyanU8 E;+            /**+             * Swizzle/broadcast/up-convert/down-convert/static-rounding controls.+             */+            ZyanU8 SSS;+            /**+             * High-16 `NDS`/`VIDX` register specifier.+             */+            ZyanU8 V2;+            /**+             * Embedded opmask register specifier.+             */+            ZyanU8 kkk;+            /**+             * The offset of the first mvex byte, relative to the beginning of the+             * instruction, in bytes.+             */+            ZyanU8 offset;+        } mvex;+        /**+         * Detailed info about the `ModRM` byte.+         */+        struct ZydisDecodedInstructionModRm_+        {+            /**+             * The addressing mode.+             */+            ZyanU8 mod;+            /**+             * Register specifier or opcode-extension.+             */+            ZyanU8 reg;+            /**+             * Register specifier or opcode-extension.+             */+            ZyanU8 rm;+            /**+             * The offset of the `ModRM` byte, relative to the beginning of the+             * instruction, in bytes.+             */+            ZyanU8 offset;+        } modrm;+        /**+         * Detailed info about the `SIB` byte.+         */+        struct ZydisDecodedInstructionRawSib_+        {+            /**+             * The scale factor.+             */+            ZyanU8 scale;+            /**+             * The index-register specifier.+             */+            ZyanU8 index;+            /**+             * The base-register specifier.+             */+            ZyanU8 base;+            /**+             * The offset of the `SIB` byte, relative to the beginning of the+             * instruction, in bytes.+             */+            ZyanU8 offset;+        } sib;+        /**+         * Detailed info about displacement-bytes.+         */+        struct ZydisDecodedInstructionRawDisp_+        {+            /**+             * The displacement value+             */+            ZyanI64 value;+            /**+             * The physical displacement size, in bits.+             */+            ZyanU8 size;+            // TODO: publish cd8 scale+            /**+             * The offset of the displacement data, relative to the beginning of the+             * instruction, in bytes.+             */+            ZyanU8 offset;+        } disp;+        /**+         * Detailed info about immediate-bytes.+         */+        struct ZydisDecodedInstructionRawImm_+        {+            /**+             * Signals, if the immediate value is signed.+             */+            ZyanBool is_signed;+            /**+             * Signals, if the immediate value contains a relative offset. You can use+             * `ZydisCalcAbsoluteAddress` to determine the absolute address value.+             */+            ZyanBool is_relative;+            /**+             * The immediate value.+             */+            union ZydisDecodedInstructionRawImmValue_+            {+                ZyanU64 u;+                ZyanI64 s;+            } value;+            /**+             * The physical immediate size, in bits.+             */+            ZyanU8 size;+            /**+             * The offset of the immediate data, relative to the beginning of the+             * instruction, in bytes.+             */+            ZyanU8 offset;+        } imm[2];+    } raw;+} ZydisDecodedInstruction;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_INSTRUCTIONINFO_H */
+ external/zydis/include/Zydis/Formatter.h view
@@ -0,0 +1,1179 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Functions for formatting instructions to human-readable text.+ */++#ifndef ZYDIS_FORMATTER_H+#define ZYDIS_FORMATTER_H++#include <Zycore/Defines.h>+#include <Zycore/String.h>+#include <Zycore/Types.h>+#include <Zydis/DecoderTypes.h>+#include <Zydis/FormatterBuffer.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++/**+ * Use this constant as value for `runtime_address` in `ZydisFormatterFormatInstruction(Ex)`+ * or `ZydisFormatterFormatOperand(Ex)` to print relative values for all addresses.+ */+#define ZYDIS_RUNTIME_ADDRESS_NONE (ZyanU64)(-1)++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Formatter style                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisFormatterStyle` enum.+ */+typedef enum ZydisFormatterStyle_+{+    /**+     * Generates `AT&T`-style disassembly.+     */+    ZYDIS_FORMATTER_STYLE_ATT,+    /**+     * Generates `Intel`-style disassembly.+     */+    ZYDIS_FORMATTER_STYLE_INTEL,+    /**+     * Generates `MASM`-style disassembly that is directly accepted as input for+     * the `MASM` assembler.+     *+     * The runtime-address is ignored in this mode.+     */+    ZYDIS_FORMATTER_STYLE_INTEL_MASM,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_FORMATTER_STYLE_MAX_VALUE = ZYDIS_FORMATTER_STYLE_INTEL_MASM,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_FORMATTER_STYLE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_FORMATTER_STYLE_MAX_VALUE)+} ZydisFormatterStyle;++/* ---------------------------------------------------------------------------------------------- */+/* Properties                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisFormatterProperty` enum.+ */+typedef enum ZydisFormatterProperty_+{+    /* ---------------------------------------------------------------------------------------- */+    /* General                                                                                  */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the printing of effective operand-size suffixes (`AT&T`) or operand-sizes+     * of memory operands (`INTEL`).+     *+     * Pass `ZYAN_TRUE` as value to force the formatter to always print the size, or `ZYAN_FALSE`+     * to only print it if needed.+     */+    ZYDIS_FORMATTER_PROP_FORCE_SIZE,+    /**+     * Controls the printing of segment prefixes.+     *+     * Pass `ZYAN_TRUE` as value to force the formatter to always print the segment register of+     * memory-operands or `ZYAN_FALSE` to omit implicit `DS`/`SS` segments.+     */+    ZYDIS_FORMATTER_PROP_FORCE_SEGMENT,+    /**+     * Controls the printing of branch addresses.+     *+     * Pass `ZYAN_TRUE` as value to force the formatter to always print relative branch addresses+     * or `ZYAN_FALSE` to use absolute addresses, if a runtime-address different to+     * `ZYDIS_RUNTIME_ADDRESS_NONE` was passed.+     */+    ZYDIS_FORMATTER_PROP_FORCE_RELATIVE_BRANCHES,+    /**+     * Controls the printing of `EIP`/`RIP`-relative addresses.+     *+     * Pass `ZYAN_TRUE` as value to force the formatter to always print relative addresses for+     * `EIP`/`RIP`-relative operands or `ZYAN_FALSE` to use absolute addresses, if a runtime-+     * address different to `ZYDIS_RUNTIME_ADDRESS_NONE` was passed.+     */+    ZYDIS_FORMATTER_PROP_FORCE_RELATIVE_RIPREL,+    /**+     * Controls the printing of branch-instructions sizes.+     *+     * Pass `ZYAN_TRUE` as value to print the size (`short`, `near`) of branch+     * instructions or `ZYAN_FALSE` to hide it.+     *+     * Note that the `far`/`l` modifier is always printed.+     */+    ZYDIS_FORMATTER_PROP_PRINT_BRANCH_SIZE,++    /**+     * Controls the printing of instruction prefixes.+     *+     * Pass `ZYAN_TRUE` as value to print all instruction-prefixes (even ignored or duplicate+     * ones) or `ZYAN_FALSE` to only print prefixes that are effectively used by the instruction.+     */+    ZYDIS_FORMATTER_PROP_DETAILED_PREFIXES,++    /* ---------------------------------------------------------------------------------------- */+    /* Numeric values                                                                           */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the base of address values.+     */+    ZYDIS_FORMATTER_PROP_ADDR_BASE,+    /**+     * Controls the signedness of relative addresses. Absolute addresses are+     * always unsigned.+     */+    ZYDIS_FORMATTER_PROP_ADDR_SIGNEDNESS,+    /**+     * Controls the padding of absolute address values.+     *+     * Pass `ZYDIS_PADDING_DISABLED` to disable padding, `ZYDIS_PADDING_AUTO` to padd all+     * addresses to the current stack width (hexadecimal only), or any other integer value for+     * custom padding.+     */+    ZYDIS_FORMATTER_PROP_ADDR_PADDING_ABSOLUTE,+    /**+     * Controls the padding of relative address values.+     *+     * Pass `ZYDIS_PADDING_DISABLED` to disable padding, `ZYDIS_PADDING_AUTO` to padd all+     * addresses to the current stack width (hexadecimal only), or any other integer value for+     * custom padding.+     */+    ZYDIS_FORMATTER_PROP_ADDR_PADDING_RELATIVE,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the base of displacement values.+     */+    ZYDIS_FORMATTER_PROP_DISP_BASE,+    /**+     * Controls the signedness of displacement values.+     */+    ZYDIS_FORMATTER_PROP_DISP_SIGNEDNESS,+    /**+     * Controls the padding of displacement values.+     *+     * Pass `ZYDIS_PADDING_DISABLED` to disable padding, or any other integer value for custom+     * padding.+     */+    ZYDIS_FORMATTER_PROP_DISP_PADDING,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the base of immediate values.+     */+    ZYDIS_FORMATTER_PROP_IMM_BASE,+    /**+     * Controls the signedness of immediate values.+     *+     * Pass `ZYDIS_SIGNEDNESS_AUTO` to automatically choose the most suitable mode based on the+     * operands `ZydisDecodedOperand.imm.is_signed` attribute.+     */+    ZYDIS_FORMATTER_PROP_IMM_SIGNEDNESS,+    /**+     * Controls the padding of immediate values.+     *+     * Pass `ZYDIS_PADDING_DISABLED` to disable padding, `ZYDIS_PADDING_AUTO` to padd all+     * immediates to the operand-width (hexadecimal only), or any other integer value for custom+     * padding.+     */+    ZYDIS_FORMATTER_PROP_IMM_PADDING,++    /* ---------------------------------------------------------------------------------------- */+    /* Text formatting                                                                          */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the letter-case for prefixes.+     *+     * Pass `ZYAN_TRUE` as value to format in uppercase or `ZYAN_FALSE` to format in lowercase.+     */+    ZYDIS_FORMATTER_PROP_UPPERCASE_PREFIXES,+    /**+     * Controls the letter-case for the mnemonic.+     *+     * Pass `ZYAN_TRUE` as value to format in uppercase or `ZYAN_FALSE` to format in lowercase.+     */+    ZYDIS_FORMATTER_PROP_UPPERCASE_MNEMONIC,+    /**+     * Controls the letter-case for registers.+     *+     * Pass `ZYAN_TRUE` as value to format in uppercase or `ZYAN_FALSE` to format in lowercase.+     */+    ZYDIS_FORMATTER_PROP_UPPERCASE_REGISTERS,+    /**+     * Controls the letter-case for typecasts.+     *+     * Pass `ZYAN_TRUE` as value to format in uppercase or `ZYAN_FALSE` to format in lowercase.+     */+    ZYDIS_FORMATTER_PROP_UPPERCASE_TYPECASTS,+    /**+     * Controls the letter-case for decorators.+     *+     * Pass `ZYAN_TRUE` as value to format in uppercase or `ZYAN_FALSE` to format in lowercase.+     */+    ZYDIS_FORMATTER_PROP_UPPERCASE_DECORATORS,++    /* ---------------------------------------------------------------------------------------- */+    /* Number formatting                                                                        */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the prefix for decimal values.+     *+     * Pass a pointer to a null-terminated C-style string with a maximum length of 10 characters+     * to set a custom prefix, or `ZYAN_NULL` to disable it.+     *+     * The string is deep-copied into an internal buffer.+     */+    ZYDIS_FORMATTER_PROP_DEC_PREFIX,+    /**+     * Controls the suffix for decimal values.+     *+     * Pass a pointer to a null-terminated C-style string with a maximum length of 10 characters+     * to set a custom suffix, or `ZYAN_NULL` to disable it.+     *+     * The string is deep-copied into an internal buffer.+     */+    ZYDIS_FORMATTER_PROP_DEC_SUFFIX,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * Controls the letter-case of hexadecimal values.+     *+     * Pass `ZYAN_TRUE` as value to format in uppercase and `ZYAN_FALSE` to format in lowercase.+     *+     * The default value is `ZYAN_TRUE`.+     */+    ZYDIS_FORMATTER_PROP_HEX_UPPERCASE,+    /**+     * Controls the prefix for hexadecimal values.+     *+     * Pass a pointer to a null-terminated C-style string with a maximum length of 10 characters+     * to set a custom prefix, or `ZYAN_NULL` to disable it.+     *+     * The string is deep-copied into an internal buffer.+     */+    ZYDIS_FORMATTER_PROP_HEX_PREFIX,+    /**+     * Controls the suffix for hexadecimal values.+     *+     * Pass a pointer to a null-terminated C-style string with a maximum length of 10 characters+     * to set a custom suffix, or `ZYAN_NULL` to disable it.+     *+     * The string is deep-copied into an internal buffer.+     */+    ZYDIS_FORMATTER_PROP_HEX_SUFFIX,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * Maximum value of this enum.+     */+    ZYDIS_FORMATTER_PROP_MAX_VALUE = ZYDIS_FORMATTER_PROP_HEX_SUFFIX,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_FORMATTER_PROP_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_FORMATTER_PROP_MAX_VALUE)+} ZydisFormatterProperty;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisNumericBase` enum.+ */+typedef enum ZydisNumericBase_+{+    /**+     * Decimal system.+     */+    ZYDIS_NUMERIC_BASE_DEC,+    /**+     * Hexadecimal system.+     */+    ZYDIS_NUMERIC_BASE_HEX,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_NUMERIC_BASE_MAX_VALUE = ZYDIS_NUMERIC_BASE_HEX,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_NUMERIC_BASE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_NUMERIC_BASE_MAX_VALUE)+} ZydisNumericBase;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisSignedness` enum.+ */+typedef enum ZydisSignedness_+{+    /**+     * Automatically choose the most suitable mode based on the operands+     * ZydisDecodedOperand.imm.is_signed` attribute.+     */+    ZYDIS_SIGNEDNESS_AUTO,+    /**+     * Force signed values.+     */+    ZYDIS_SIGNEDNESS_SIGNED,+    /**+     * Force unsigned values.+     */+    ZYDIS_SIGNEDNESS_UNSIGNED,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_SIGNEDNESS_MAX_VALUE = ZYDIS_SIGNEDNESS_UNSIGNED,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_SIGNEDNESS_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_SIGNEDNESS_MAX_VALUE)+} ZydisSignedness;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisPadding` enum.+ */+typedef enum ZydisPadding_+{+    /**+     * Disables padding.+     */+    ZYDIS_PADDING_DISABLED = 0,+    /**+     * Padds the value to the current stack-width for addresses, or to the+     * operand-width for immediate values (hexadecimal only).+     */+    ZYDIS_PADDING_AUTO     = (-1),++    /**+     * Maximum value of this enum.+     */+    ZYDIS_PADDING_MAX_VALUE = ZYDIS_PADDING_AUTO,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_PADDING_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_PADDING_MAX_VALUE)+} ZydisPadding;++/* ---------------------------------------------------------------------------------------------- */+/* Function types                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisFormatterFunction` enum.+ *+ * Do NOT change the order of the values this enum or the function fields inside the+ * `ZydisFormatter` struct.+ */+typedef enum ZydisFormatterFunction_+{+    /* ---------------------------------------------------------------------------------------- */+    /* Instruction                                                                              */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function is invoked before the formatter formats an instruction.+     */+    ZYDIS_FORMATTER_FUNC_PRE_INSTRUCTION,+    /**+     * This function is invoked after the formatter formatted an instruction.+     */+    ZYDIS_FORMATTER_FUNC_POST_INSTRUCTION,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function refers to the main formatting function.+     *+     * Replacing this function allows for complete custom formatting, but indirectly disables all+     * other hooks except for `ZYDIS_FORMATTER_FUNC_PRE_INSTRUCTION` and+     * `ZYDIS_FORMATTER_FUNC_POST_INSTRUCTION`.+     */+    ZYDIS_FORMATTER_FUNC_FORMAT_INSTRUCTION,++    /* ---------------------------------------------------------------------------------------- */+    /* Operands                                                                                 */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function is invoked before the formatter formats an operand.+     */+    ZYDIS_FORMATTER_FUNC_PRE_OPERAND,+    /**+     * This function is invoked after the formatter formatted an operand.+     */+    ZYDIS_FORMATTER_FUNC_POST_OPERAND,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function is invoked to format a register operand.+     */+    ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_REG,+    /**+     * This function is invoked to format a memory operand.+     *+     * Replacing this function might indirectly disable some specific calls to the+     * `ZYDIS_FORMATTER_FUNC_PRINT_TYPECAST`, `ZYDIS_FORMATTER_FUNC_PRINT_SEGMENT`,+     * `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS` and `ZYDIS_FORMATTER_FUNC_PRINT_DISP` functions.+     */+    ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_MEM,+    /**+     * This function is invoked to format a pointer operand.+     */+    ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_PTR,+    /**+     * This function is invoked to format an immediate operand.+     *+     * Replacing this function might indirectly disable some specific calls to the+     * `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS`, `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_REL` and+     * `ZYDIS_FORMATTER_FUNC_PRINT_IMM` functions.+     */+    ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_IMM,++    /* ---------------------------------------------------------------------------------------- */+    /* Elemental tokens                                                                         */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function is invoked to print the instruction mnemonic.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_MNEMONIC,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function is invoked to print a register.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_REGISTER,+    /**+     * This function is invoked to print absolute addresses.+     *+     * Conditionally invoked, if a runtime-address different to `ZYDIS_RUNTIME_ADDRESS_NONE` was+     * passed:+     * - `IMM` operands with relative address (e.g. `JMP`, `CALL`, ...)+     * - `MEM` operands with `EIP`/`RIP`-relative address (e.g. `MOV RAX, [RIP+0x12345678]`)+     *+     * Always invoked for:+     * - `MEM` operands with absolute address (e.g. `MOV RAX, [0x12345678]`)+     */+    ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS,+    /**+     * This function is invoked to print relative addresses.+     *+     * Conditionally invoked, if `ZYDIS_RUNTIME_ADDRESS_NONE` was passed as runtime-address:+     * - `IMM` operands with relative address (e.g. `JMP`, `CALL`, ...)+     */+    ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_REL,+    /**+     * This function is invoked to print a memory displacement value.+     *+     * If the memory displacement contains an address and a runtime-address different to+     * `ZYDIS_RUNTIME_ADDRESS_NONE` was passed, `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS` is called+     * instead.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_DISP,+    /**+     * This function is invoked to print an immediate value.+     *+     * If the immediate contains an address and a runtime-address different to+     * `ZYDIS_RUNTIME_ADDRESS_NONE` was passed, `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS` is called+     * instead.+     *+     * If the immediate contains an address and `ZYDIS_RUNTIME_ADDRESS_NONE` was passed as+     * runtime-address, `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_REL` is called instead.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_IMM,++    /* ---------------------------------------------------------------------------------------- */+    /* Optional tokens                                                                          */+    /* ---------------------------------------------------------------------------------------- */++    /**+     * This function is invoked to print the size of a memory operand (`INTEL` only).+     */+    ZYDIS_FORMATTER_FUNC_PRINT_TYPECAST,+    /**+     * This function is invoked to print the segment-register of a memory operand.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_SEGMENT,+    /**+     * This function is invoked to print the instruction prefixes.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_PREFIXES,+    /**+     * This function is invoked after formatting an operand to print a `EVEX`/`MVEX`+     * decorator.+     */+    ZYDIS_FORMATTER_FUNC_PRINT_DECORATOR,++    /* ---------------------------------------------------------------------------------------- */++    /**+     * Maximum value of this enum.+     */+    ZYDIS_FORMATTER_FUNC_MAX_VALUE = ZYDIS_FORMATTER_FUNC_PRINT_DECORATOR,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_FORMATTER_FUNC_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_FORMATTER_FUNC_MAX_VALUE)+} ZydisFormatterFunction;++/* ---------------------------------------------------------------------------------------------- */+/* Decorator types                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecorator` enum.+ */+typedef enum ZydisDecorator_+{+    ZYDIS_DECORATOR_INVALID,+    /**+     * The embedded-mask decorator.+     */+    ZYDIS_DECORATOR_MASK,+    /**+     * The broadcast decorator.+     */+    ZYDIS_DECORATOR_BC,+    /**+     * The rounding-control decorator.+     */+    ZYDIS_DECORATOR_RC,+    /**+     * The suppress-all-exceptions decorator.+     */+    ZYDIS_DECORATOR_SAE,+    /**+     * The register-swizzle decorator.+     */+    ZYDIS_DECORATOR_SWIZZLE,+    /**+     * The conversion decorator.+     */+    ZYDIS_DECORATOR_CONVERSION,+    /**+     * The eviction-hint decorator.+     */+    ZYDIS_DECORATOR_EH,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_DECORATOR_MAX_VALUE = ZYDIS_DECORATOR_EH,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_DECORATOR_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_DECORATOR_MAX_VALUE)+} ZydisDecorator;++/* ---------------------------------------------------------------------------------------------- */+/* Formatter context                                                                              */+/* ---------------------------------------------------------------------------------------------- */++typedef struct ZydisFormatter_ ZydisFormatter;++/**+ * Defines the `ZydisFormatterContext` struct.+ */+typedef struct ZydisFormatterContext_+{+    /**+     * A pointer to the `ZydisDecodedInstruction` struct.+     */+    const ZydisDecodedInstruction* instruction;+    /**+     * A pointer to the `ZydisDecodedOperand` struct.+     */+    const ZydisDecodedOperand* operand;+    /**+     * The runtime address of the instruction.+     */+    ZyanU64 runtime_address;+    /**+     * A pointer to user-defined data.+     */+    void* user_data;+} ZydisFormatterContext;++/* ---------------------------------------------------------------------------------------------- */+/* Function prototypes                                                                            */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisFormatterFunc` function prototype.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   buffer      A pointer to the `ZydisFormatterBuffer` struct.+ * @param   context     A pointer to the `ZydisFormatterContext` struct.+ *+ * @return  A zyan status code.+ *+ * Returning a status code other than `ZYAN_STATUS_SUCCESS` will immediately cause the formatting+ * process to fail (see exceptions below).+ *+ * Returning `ZYDIS_STATUS_SKIP_TOKEN` is valid for functions of the following types and will+ * instruct the formatter to omit the whole operand:+ * - `ZYDIS_FORMATTER_FUNC_PRE_OPERAND`+ * - `ZYDIS_FORMATTER_FUNC_POST_OPERAND`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_REG`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_MEM`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_PTR`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_IMM`+ *+ * This function prototype is used by functions of the following types:+ * - `ZYDIS_FORMATTER_FUNC_PRE_INSTRUCTION`+ * - `ZYDIS_FORMATTER_FUNC_POST_INSTRUCTION`+ * - `ZYDIS_FORMATTER_FUNC_PRE_OPERAND`+ * - `ZYDIS_FORMATTER_FUNC_POST_OPERAND`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_INSTRUCTION`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_MNEMONIC`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_PREFIXES`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_REG`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_MEM`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_PTR`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_IMM`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_REL`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_DISP`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_IMM`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_TYPECAST`+ * - `ZYDIS_FORMATTER_FUNC_PRINT_SEGMENT`+ */+typedef ZyanStatus (*ZydisFormatterFunc)(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ /**+ * Defines the `ZydisFormatterRegisterFunc` function prototype.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   buffer      A pointer to the `ZydisFormatterBuffer` struct.+ * @param   context     A pointer to the `ZydisFormatterContext` struct.+ * @param   reg         The register.+ *+ * @return  Returning a status code other than `ZYAN_STATUS_SUCCESS` will immediately cause the+ *          formatting process to fail.+ *+ * This function prototype is used by functions of the following types:+ * - `ZYDIS_FORMATTER_FUNC_PRINT_REGISTER`.+ */+typedef ZyanStatus (*ZydisFormatterRegisterFunc)(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg);++/**+ * Defines the `ZydisFormatterDecoratorFunc` function prototype.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   buffer      A pointer to the `ZydisFormatterBuffer` struct.+ * @param   context     A pointer to the `ZydisFormatterContext` struct.+ * @param   decorator   The decorator type.+ *+ * @return  Returning a status code other than `ZYAN_STATUS_SUCCESS` will immediately cause the+ *          formatting process to fail.+ *+ * This function type is used for:+ * - `ZYDIS_FORMATTER_FUNC_PRINT_DECORATOR`+ */+typedef ZyanStatus (*ZydisFormatterDecoratorFunc)(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisDecorator decorator);++/* ---------------------------------------------------------------------------------------------- */+/* Formatter struct                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisFormatter` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ *+ * Do NOT change the order of the function fields or the values of the `ZydisFormatterFunction`+ * enum.+ */+struct ZydisFormatter_+{+    /**+     * The formatter style.+     */+    ZydisFormatterStyle style;+    /**+     * The `ZYDIS_FORMATTER_PROP_FORCE_SIZE` property.+     */+    ZyanBool force_memory_size;+    /**+     * The `ZYDIS_FORMATTER_PROP_FORCE_SEGMENT` property.+     */+    ZyanBool force_memory_segment;+    /**+     * The `ZYDIS_FORMATTER_PROP_FORCE_RELATIVE_BRANCHES` property.+     */+    ZyanBool force_relative_branches;+    /**+     * The `ZYDIS_FORMATTER_PROP_FORCE_RELATIVE_RIPREL` property.+     */+    ZyanBool force_relative_riprel;+    /**+     * The `ZYDIS_FORMATTER_PROP_PRINT_BRANCH_SIZE` property.+     */+    ZyanBool print_branch_size;+    /**+     * The `ZYDIS_FORMATTER_DETAILED_PREFIXES` property.+     */+    ZyanBool detailed_prefixes;+    /**+     * The `ZYDIS_FORMATTER_ADDR_BASE` property.+     */+    ZydisNumericBase addr_base;+    /**+     * The `ZYDIS_FORMATTER_ADDR_SIGNEDNESS` property.+     */+    ZydisSignedness addr_signedness;+    /**+     * The `ZYDIS_FORMATTER_ADDR_PADDING_ABSOLUTE` property.+     */+    ZydisPadding addr_padding_absolute;+    /**+     * The `ZYDIS_FORMATTER_ADDR_PADDING_RELATIVE` property.+     */+    ZydisPadding addr_padding_relative;+    /**+     * The `ZYDIS_FORMATTER_DISP_BASE` property.+     */+    ZydisNumericBase disp_base;+    /**+     * The `ZYDIS_FORMATTER_DISP_SIGNEDNESS` property.+     */+    ZydisSignedness disp_signedness;+    /**+     * The `ZYDIS_FORMATTER_DISP_PADDING` property.+     */+    ZydisPadding disp_padding;+    /**+     * The `ZYDIS_FORMATTER_IMM_BASE` property.+     */+    ZydisNumericBase imm_base;+    /**+     * The `ZYDIS_FORMATTER_IMM_SIGNEDNESS` property.+     */+    ZydisSignedness imm_signedness;+    /**+     * The `ZYDIS_FORMATTER_IMM_PADDING` property.+     */+    ZydisPadding imm_padding;+    /**+     * The `ZYDIS_FORMATTER_UPPERCASE_PREFIXES` property.+     */+    ZyanI32 case_prefixes;+    /**+     * The `ZYDIS_FORMATTER_UPPERCASE_MNEMONIC` property.+     */+    ZyanI32 case_mnemonic;+    /**+     * The `ZYDIS_FORMATTER_UPPERCASE_REGISTERS` property.+     */+    ZyanI32 case_registers;+    /**+     * The `ZYDIS_FORMATTER_UPPERCASE_TYPECASTS` property.+     */+    ZyanI32 case_typecasts;+    /**+     * The `ZYDIS_FORMATTER_UPPERCASE_DECORATORS` property.+     */+    ZyanI32 case_decorators;+    /**+     * The `ZYDIS_FORMATTER_HEX_UPPERCASE` property.+     */+    ZyanBool hex_uppercase;+    /**+     * The number formats for all numeric bases.+     *+     * Index 0 = prefix+     * Index 1 = suffix+     */+    struct+    {+        /**+         * A pointer to the `ZyanStringView` to use as prefix/suffix.+         */+        const ZyanStringView* string;+        /**+         * The `ZyanStringView` to use as prefix/suffix+         */+        ZyanStringView string_data;+        /**+         * The actual string data.+         */+        char buffer[11];+    } number_format[ZYDIS_NUMERIC_BASE_MAX_VALUE + 1][2];+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRE_INSTRUCTION` function.+     */+    ZydisFormatterFunc func_pre_instruction;+    /**+     * The `ZYDIS_FORMATTER_FUNC_POST_INSTRUCTION` function.+     */+    ZydisFormatterFunc func_post_instruction;+    /**+     * The `ZYDIS_FORMATTER_FUNC_FORMAT_INSTRUCTION` function.+     */+    ZydisFormatterFunc func_format_instruction;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRE_OPERAND` function.+     */+    ZydisFormatterFunc func_pre_operand;+    /**+     * The `ZYDIS_FORMATTER_FUNC_POST_OPERAND` function.+     */+    ZydisFormatterFunc func_post_operand;+    /**+     * The `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_REG` function.+     */+    ZydisFormatterFunc func_format_operand_reg;+    /**+     * The `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_MEM` function.+     */+    ZydisFormatterFunc func_format_operand_mem;+    /**+     * The `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_PTR` function.+     */+    ZydisFormatterFunc func_format_operand_ptr;+    /**+     * The `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_IMM` function.+     */+    ZydisFormatterFunc func_format_operand_imm;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_MNEMONIC function.+     */+    ZydisFormatterFunc func_print_mnemonic;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_REGISTER` function.+     */+    ZydisFormatterRegisterFunc func_print_register;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS` function.+     */+    ZydisFormatterFunc func_print_address_abs;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_REL` function.+     */+    ZydisFormatterFunc func_print_address_rel;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_DISP` function.+     */+    ZydisFormatterFunc func_print_disp;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_IMM` function.+     */+    ZydisFormatterFunc func_print_imm;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_TYPECAST` function.+     */+    ZydisFormatterFunc func_print_typecast;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_SEGMENT` function.+     */+    ZydisFormatterFunc func_print_segment;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_PREFIXES` function.+     */+    ZydisFormatterFunc func_print_prefixes;+    /**+     * The `ZYDIS_FORMATTER_FUNC_PRINT_DECORATOR` function.+     */+    ZydisFormatterDecoratorFunc func_print_decorator;+};++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * @addtogroup formatter Formatter+ * Functions allowing formatting of previously decoded instructions to human readable text.+ * @{+ */++/* ---------------------------------------------------------------------------------------------- */+/* Initialization                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Initializes the given `ZydisFormatter` instance.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   style       The base formatter style (either `AT&T` or `Intel` style).+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterInit(ZydisFormatter* formatter, ZydisFormatterStyle style);++/* ---------------------------------------------------------------------------------------------- */+/* Setter                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Changes the value of the specified formatter `property`.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   property    The id of the formatter-property.+ * @param   value       The new value.+ *+ * @return  A zyan status code.+ *+ * This function returns `ZYAN_STATUS_INVALID_OPERATION` if a property can't be changed for the+ * current formatter-style.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterSetProperty(ZydisFormatter* formatter,+    ZydisFormatterProperty property, ZyanUPointer value);++/**+ * Replaces a formatter function with a custom callback and/or retrieves the currently+ * used function.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   type        The formatter function-type.+ * @param   callback    A pointer to a variable that contains the pointer of the callback function+ *                      and receives the pointer of the currently used function.+ *+ * @return  A zyan status code.+ *+ * Call this function with `callback` pointing to a `ZYAN_NULL` value to retrieve the currently+ * used function without replacing it.+ *+ * This function returns `ZYAN_STATUS_INVALID_OPERATION` if a function can't be replaced for the+ * current formatter-style.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterSetHook(ZydisFormatter* formatter,+    ZydisFormatterFunction type, const void** callback);++/* ---------------------------------------------------------------------------------------------- */+/* Formatting                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Formats the given instruction and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in characters).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterFormatInstruction(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address);++/**+ * Formats the given instruction and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in characters).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ * @param   user_data       A pointer to user-defined data which can be used in custom formatter+ *                          callbacks.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterFormatInstructionEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address, void* user_data);++/**+ * Formats the given operand and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   index           The index of the operand to format.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in characters).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ *+ * @return  A zyan status code.+ *+ * Use `ZydisFormatterFormatInstruction` or `ZydisFormatterFormatInstructionEx` to format a+ * complete instruction.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterFormatOperand(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address);++/**+ * Formats the given operand and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   index           The index of the operand to format.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in characters).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ * @param   user_data       A pointer to user-defined data which can be used in custom formatter+ *                          callbacks.+ *+ * @return  A zyan status code.+ *+ * Use `ZydisFormatterFormatInstruction` or `ZydisFormatterFormatInstructionEx` to format a+ * complete instruction.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterFormatOperandEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address, void* user_data);++/* ---------------------------------------------------------------------------------------------- */+/* Tokenizing                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Tokenizes the given instruction and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in bytes).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ * @param   token           Receives a pointer to the first token in the output buffer.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterTokenizeInstruction(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token);++/**+ * Tokenizes the given instruction and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in bytes).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ * @param   token           Receives a pointer to the first token in the output buffer.+ * @param   user_data       A pointer to user-defined data which can be used in custom formatter+ *                          callbacks.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterTokenizeInstructionEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token, void* user_data);++/**+ * Tokenizes the given operand and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   index           The index of the operand to format.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in bytes).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ * @param   token           Receives a pointer to the first token in the output buffer.+ *+ * @return  A zyan status code.+ *+ * Use `ZydisFormatterTokenizeInstruction` or `ZydisFormatterTokenizeInstructionEx` to tokenize a+ * complete instruction.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterTokenizeOperand(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token);++/**+ * Tokenizes the given operand and writes it into the output buffer.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   index           The index of the operand to format.+ * @param   buffer          A pointer to the output buffer.+ * @param   length          The length of the output buffer (in bytes).+ * @param   runtime_address The runtime address of the instruction or `ZYDIS_RUNTIME_ADDRESS_NONE`+ *                          to print relative addresses.+ * @param   token           Receives a pointer to the first token in the output buffer.+ * @param   user_data       A pointer to user-defined data which can be used in custom formatter+ *                          callbacks.+ *+ * @return  A zyan status code.+ *+ * Use `ZydisFormatterTokenizeInstruction` or `ZydisFormatterTokenizeInstructionEx` to tokenize a+ * complete instruction.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterTokenizeOperandEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token, void* user_data);++/* ---------------------------------------------------------------------------------------------- */++/**+ * @}+ */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_FORMATTER_H */
+ external/zydis/include/Zydis/FormatterBuffer.h view
@@ -0,0 +1,306 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements the `ZydisFormatterToken` type and provides functions to use it.+ */++#ifndef ZYDIS_FORMATTER_TOKEN_H+#define ZYDIS_FORMATTER_TOKEN_H++#include <ZydisExportConfig.h>+#include <Zycore/String.h>+#include <Zycore/Types.h>+#include <Zydis/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Token types                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * @biref   Defines the `ZydisTokenType` data-type.+ */+typedef ZyanU8 ZydisTokenType;++#define ZYDIS_TOKEN_INVALID             0x00+/**+ * A whitespace character.+ */+#define ZYDIS_TOKEN_WHITESPACE          0x01+/**+ * A delimiter character (like `','`, `':'`, `'+'`, `'-'`, `'*'`).+ */+#define ZYDIS_TOKEN_DELIMITER           0x02+/**+ * An opening parenthesis character (like `'('`, `'['`, `'{'`).+ */+#define ZYDIS_TOKEN_PARENTHESIS_OPEN    0x03+/**+ * A closing parenthesis character (like `')'`, `']'`, `'}'`).+ */+#define ZYDIS_TOKEN_PARENTHESIS_CLOSE   0x04+/**+ * A prefix literal (like `"LOCK"`, `"REP"`).+ */+#define ZYDIS_TOKEN_PREFIX              0x05+/**+ * A mnemonic literal (like `"MOV"`, `"VCMPPSD"`, `"LCALL"`).+ */+#define ZYDIS_TOKEN_MNEMONIC            0x06+/**+ * A register literal (like `"RAX"`, `"DS"`, `"%ECX"`).+ */+#define ZYDIS_TOKEN_REGISTER            0x07+/**+ * An absolute address literal (like `0x00400000`).+ */+#define ZYDIS_TOKEN_ADDRESS_ABS         0x08+/**+ * A relative address literal (like `-0x100`).+ */+#define ZYDIS_TOKEN_ADDRESS_REL         0x09+/**+ * A displacement literal (like `0xFFFFFFFF`, `-0x100`, `+0x1234`).+ */+#define ZYDIS_TOKEN_DISPLACEMENT        0x0A+/**+ * An immediate literal (like `0xC0`, `-0x1234`, `$0x0000`).+ */+#define ZYDIS_TOKEN_IMMEDIATE           0x0B+/**+ * A typecast literal (like `DWORD PTR`).+ */+#define ZYDIS_TOKEN_TYPECAST            0x0C+/**+ * A decorator literal (like `"Z"`, `"1TO4"`).+ */+#define ZYDIS_TOKEN_DECORATOR           0x0D+/**+ * A symbol literal.+ */+#define ZYDIS_TOKEN_SYMBOL              0x0E++/**+ * The base for user-defined token types.+ */+#define ZYDIS_TOKEN_USER                0x80++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Token                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++#pragma pack(push, 1)++/**+ * Defines the `ZydisFormatterToken` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZydisFormatterToken_+{+    /**+     * The token type.+     */+    ZydisTokenType type;+    /**+     * An offset to the next token, or `0`.+     */+    ZyanU8 next;+} ZydisFormatterToken;++#pragma pack(pop)++/**+ * Defines the `ZydisFormatterTokenConst` data-type.+ */+typedef const ZydisFormatterToken ZydisFormatterTokenConst;++/* ---------------------------------------------------------------------------------------------- */+/* Buffer                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisFormatterBuffer` struct.+ *+ * All fields in this struct should be considered as "private". Any changes may+ * lead to unexpected behavior.+ */+typedef struct ZydisFormatterBuffer_+{+    /**+     * `ZYAN_TRUE`, if the buffer contains a token stream or `ZYAN_FALSE, if it+     *  contains a simple string.+     */+    ZyanBool is_token_list;+    /**+     * The remaining capacity of the buffer.+     */+    ZyanUSize capacity;+    /**+     * The `ZyanString` instance that refers to the literal value of the most+     * recently added token.+     */+    ZyanString string;+} ZydisFormatterBuffer;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Token                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the `type` and the string `value` of the given `token`.+ *+ * @param   token   A pointer to the `ZydisFormatterToken` struct.+ * @param   type    Receives the token type.+ * @param   value   Receives a pointer to the string value of the token.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterTokenGetValue(const ZydisFormatterToken* token,+    ZydisTokenType* type, ZyanConstCharPointer* value);++/**+ * Obtains the next `token` linked to the passed one.+ *+ * @param   token   Receives a pointer to the next `ZydisFormatterToken` struct+ *                  linked to the passed one.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterTokenNext(ZydisFormatterTokenConst** token);++/* ---------------------------------------------------------------------------------------------- */+/* Buffer                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the current (most recently added) token.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   token   Receives a pointer to the current token.+ *+ * @return  A zyan status code.+ *+ * This function returns `ZYAN_STATUS_INVALID_OPERATION`, if the buffer does not contain at least+ * one token.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferGetToken(const ZydisFormatterBuffer* buffer,+    ZydisFormatterTokenConst** token);++/**+ * Returns the `ZyanString` instance associated with the given buffer.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   string  Receives a pointer to the `ZyanString` instance associated with the given+ *                  buffer.+ *+ * @return  A zyan status code.+ *+ * This function returns `ZYAN_STATUS_INVALID_OPERATION`, if the buffer does not contain at least+ * one token.+ *+ * The returned string always refers to the literal value of the current (most recently added)+ * token and will remain valid until the buffer is destroyed.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferGetString(ZydisFormatterBuffer* buffer,+    ZyanString** string);++/**+ * Appends a new token to the `buffer`.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   type    The type of the new token.+ *+ * @return  A zyan status code.+ *+ * Note that the `ZyanString` instance returned by `ZydisFormatterBufferGetString` will+ * automatically be updated by calling this function.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferAppend(ZydisFormatterBuffer* buffer,+    ZydisTokenType type);++/**+ * Returns a snapshot of the buffer-state.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   state   Receives a snapshot of the buffer-state.+ *+ * @return  A zyan status code.+ *+ * Note that the buffer-state is saved inside the buffer itself and thus becomes invalid as soon+ * as the buffer gets overwritten or destroyed.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferRemember(const ZydisFormatterBuffer* buffer,+    ZyanUPointer* state);++/**+ * Restores a previously saved buffer-state.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   state   The buffer-state to restore.+ *+ * @return  A zyan status code.+ *+ * All tokens added after obtaining the given `state` snapshot will be removed. This function+ * does NOT restore any string content.+ *+ * Note that the `ZyanString` instance returned by `ZydisFormatterBufferGetString` will+ * automatically be updated by calling this function.+ */+ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferRestore(ZydisFormatterBuffer* buffer,+    ZyanUPointer state);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_FORMATTER_TOKEN_H */
+ external/zydis/include/Zydis/Generated/EnumISAExt.h view
@@ -0,0 +1,89 @@+/**+ * Defines the `ZydisISAExt` enum.+ */+typedef enum ZydisISAExt_+{+    ZYDIS_ISA_EXT_INVALID,+    ZYDIS_ISA_EXT_ADOX_ADCX,+    ZYDIS_ISA_EXT_AES,+    ZYDIS_ISA_EXT_AMD3DNOW,+    ZYDIS_ISA_EXT_AVX,+    ZYDIS_ISA_EXT_AVX2,+    ZYDIS_ISA_EXT_AVX2GATHER,+    ZYDIS_ISA_EXT_AVX512EVEX,+    ZYDIS_ISA_EXT_AVX512VEX,+    ZYDIS_ISA_EXT_AVXAES,+    ZYDIS_ISA_EXT_BASE,+    ZYDIS_ISA_EXT_BMI1,+    ZYDIS_ISA_EXT_BMI2,+    ZYDIS_ISA_EXT_CET,+    ZYDIS_ISA_EXT_CLDEMOTE,+    ZYDIS_ISA_EXT_CLFLUSHOPT,+    ZYDIS_ISA_EXT_CLFSH,+    ZYDIS_ISA_EXT_CLWB,+    ZYDIS_ISA_EXT_CLZERO,+    ZYDIS_ISA_EXT_ENQCMD,+    ZYDIS_ISA_EXT_F16C,+    ZYDIS_ISA_EXT_FMA,+    ZYDIS_ISA_EXT_FMA4,+    ZYDIS_ISA_EXT_GFNI,+    ZYDIS_ISA_EXT_INVPCID,+    ZYDIS_ISA_EXT_KNC,+    ZYDIS_ISA_EXT_KNCE,+    ZYDIS_ISA_EXT_KNCV,+    ZYDIS_ISA_EXT_LONGMODE,+    ZYDIS_ISA_EXT_LZCNT,+    ZYDIS_ISA_EXT_MMX,+    ZYDIS_ISA_EXT_MONITOR,+    ZYDIS_ISA_EXT_MONITORX,+    ZYDIS_ISA_EXT_MOVBE,+    ZYDIS_ISA_EXT_MOVDIR,+    ZYDIS_ISA_EXT_MPX,+    ZYDIS_ISA_EXT_PADLOCK,+    ZYDIS_ISA_EXT_PAUSE,+    ZYDIS_ISA_EXT_PCLMULQDQ,+    ZYDIS_ISA_EXT_PCONFIG,+    ZYDIS_ISA_EXT_PKU,+    ZYDIS_ISA_EXT_PREFETCHWT1,+    ZYDIS_ISA_EXT_PT,+    ZYDIS_ISA_EXT_RDPID,+    ZYDIS_ISA_EXT_RDPRU,+    ZYDIS_ISA_EXT_RDRAND,+    ZYDIS_ISA_EXT_RDSEED,+    ZYDIS_ISA_EXT_RDTSCP,+    ZYDIS_ISA_EXT_RDWRFSGS,+    ZYDIS_ISA_EXT_RTM,+    ZYDIS_ISA_EXT_SGX,+    ZYDIS_ISA_EXT_SGX_ENCLV,+    ZYDIS_ISA_EXT_SHA,+    ZYDIS_ISA_EXT_SMAP,+    ZYDIS_ISA_EXT_SMX,+    ZYDIS_ISA_EXT_SSE,+    ZYDIS_ISA_EXT_SSE2,+    ZYDIS_ISA_EXT_SSE3,+    ZYDIS_ISA_EXT_SSE4,+    ZYDIS_ISA_EXT_SSE4A,+    ZYDIS_ISA_EXT_SSSE3,+    ZYDIS_ISA_EXT_SVM,+    ZYDIS_ISA_EXT_TBM,+    ZYDIS_ISA_EXT_VAES,+    ZYDIS_ISA_EXT_VMFUNC,+    ZYDIS_ISA_EXT_VPCLMULQDQ,+    ZYDIS_ISA_EXT_VTX,+    ZYDIS_ISA_EXT_WAITPKG,+    ZYDIS_ISA_EXT_X87,+    ZYDIS_ISA_EXT_XOP,+    ZYDIS_ISA_EXT_XSAVE,+    ZYDIS_ISA_EXT_XSAVEC,+    ZYDIS_ISA_EXT_XSAVEOPT,+    ZYDIS_ISA_EXT_XSAVES,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_ISA_EXT_MAX_VALUE = ZYDIS_ISA_EXT_XSAVES,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_ISA_EXT_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_ISA_EXT_MAX_VALUE)+} ZydisISAExt;
+ external/zydis/include/Zydis/Generated/EnumISASet.h view
@@ -0,0 +1,178 @@+/**+ * Defines the `ZydisISASet` enum.+ */+typedef enum ZydisISASet_+{+    ZYDIS_ISA_SET_INVALID,+    ZYDIS_ISA_SET_ADOX_ADCX,+    ZYDIS_ISA_SET_AES,+    ZYDIS_ISA_SET_AMD,+    ZYDIS_ISA_SET_AMD3DNOW,+    ZYDIS_ISA_SET_AVX,+    ZYDIS_ISA_SET_AVX2,+    ZYDIS_ISA_SET_AVX2GATHER,+    ZYDIS_ISA_SET_AVX512BW_128,+    ZYDIS_ISA_SET_AVX512BW_128N,+    ZYDIS_ISA_SET_AVX512BW_256,+    ZYDIS_ISA_SET_AVX512BW_512,+    ZYDIS_ISA_SET_AVX512BW_KOP,+    ZYDIS_ISA_SET_AVX512CD_128,+    ZYDIS_ISA_SET_AVX512CD_256,+    ZYDIS_ISA_SET_AVX512CD_512,+    ZYDIS_ISA_SET_AVX512DQ_128,+    ZYDIS_ISA_SET_AVX512DQ_128N,+    ZYDIS_ISA_SET_AVX512DQ_256,+    ZYDIS_ISA_SET_AVX512DQ_512,+    ZYDIS_ISA_SET_AVX512DQ_KOP,+    ZYDIS_ISA_SET_AVX512DQ_SCALAR,+    ZYDIS_ISA_SET_AVX512ER_512,+    ZYDIS_ISA_SET_AVX512ER_SCALAR,+    ZYDIS_ISA_SET_AVX512F_128,+    ZYDIS_ISA_SET_AVX512F_128N,+    ZYDIS_ISA_SET_AVX512F_256,+    ZYDIS_ISA_SET_AVX512F_512,+    ZYDIS_ISA_SET_AVX512F_KOP,+    ZYDIS_ISA_SET_AVX512F_SCALAR,+    ZYDIS_ISA_SET_AVX512PF_512,+    ZYDIS_ISA_SET_AVX512_4FMAPS_512,+    ZYDIS_ISA_SET_AVX512_4FMAPS_SCALAR,+    ZYDIS_ISA_SET_AVX512_4VNNIW_512,+    ZYDIS_ISA_SET_AVX512_BF16_128,+    ZYDIS_ISA_SET_AVX512_BF16_256,+    ZYDIS_ISA_SET_AVX512_BF16_512,+    ZYDIS_ISA_SET_AVX512_BITALG_128,+    ZYDIS_ISA_SET_AVX512_BITALG_256,+    ZYDIS_ISA_SET_AVX512_BITALG_512,+    ZYDIS_ISA_SET_AVX512_GFNI_128,+    ZYDIS_ISA_SET_AVX512_GFNI_256,+    ZYDIS_ISA_SET_AVX512_GFNI_512,+    ZYDIS_ISA_SET_AVX512_IFMA_128,+    ZYDIS_ISA_SET_AVX512_IFMA_256,+    ZYDIS_ISA_SET_AVX512_IFMA_512,+    ZYDIS_ISA_SET_AVX512_VAES_128,+    ZYDIS_ISA_SET_AVX512_VAES_256,+    ZYDIS_ISA_SET_AVX512_VAES_512,+    ZYDIS_ISA_SET_AVX512_VBMI2_128,+    ZYDIS_ISA_SET_AVX512_VBMI2_256,+    ZYDIS_ISA_SET_AVX512_VBMI2_512,+    ZYDIS_ISA_SET_AVX512_VBMI_128,+    ZYDIS_ISA_SET_AVX512_VBMI_256,+    ZYDIS_ISA_SET_AVX512_VBMI_512,+    ZYDIS_ISA_SET_AVX512_VNNI_128,+    ZYDIS_ISA_SET_AVX512_VNNI_256,+    ZYDIS_ISA_SET_AVX512_VNNI_512,+    ZYDIS_ISA_SET_AVX512_VP2INTERSECT_128,+    ZYDIS_ISA_SET_AVX512_VP2INTERSECT_256,+    ZYDIS_ISA_SET_AVX512_VP2INTERSECT_512,+    ZYDIS_ISA_SET_AVX512_VPCLMULQDQ_128,+    ZYDIS_ISA_SET_AVX512_VPCLMULQDQ_256,+    ZYDIS_ISA_SET_AVX512_VPCLMULQDQ_512,+    ZYDIS_ISA_SET_AVX512_VPOPCNTDQ_128,+    ZYDIS_ISA_SET_AVX512_VPOPCNTDQ_256,+    ZYDIS_ISA_SET_AVX512_VPOPCNTDQ_512,+    ZYDIS_ISA_SET_AVXAES,+    ZYDIS_ISA_SET_AVX_GFNI,+    ZYDIS_ISA_SET_BMI1,+    ZYDIS_ISA_SET_BMI2,+    ZYDIS_ISA_SET_CET,+    ZYDIS_ISA_SET_CLDEMOTE,+    ZYDIS_ISA_SET_CLFLUSHOPT,+    ZYDIS_ISA_SET_CLFSH,+    ZYDIS_ISA_SET_CLWB,+    ZYDIS_ISA_SET_CLZERO,+    ZYDIS_ISA_SET_CMOV,+    ZYDIS_ISA_SET_CMPXCHG16B,+    ZYDIS_ISA_SET_ENQCMD,+    ZYDIS_ISA_SET_F16C,+    ZYDIS_ISA_SET_FAT_NOP,+    ZYDIS_ISA_SET_FCMOV,+    ZYDIS_ISA_SET_FMA,+    ZYDIS_ISA_SET_FMA4,+    ZYDIS_ISA_SET_FXSAVE,+    ZYDIS_ISA_SET_FXSAVE64,+    ZYDIS_ISA_SET_GFNI,+    ZYDIS_ISA_SET_I186,+    ZYDIS_ISA_SET_I286PROTECTED,+    ZYDIS_ISA_SET_I286REAL,+    ZYDIS_ISA_SET_I386,+    ZYDIS_ISA_SET_I486,+    ZYDIS_ISA_SET_I486REAL,+    ZYDIS_ISA_SET_I86,+    ZYDIS_ISA_SET_INVPCID,+    ZYDIS_ISA_SET_KNCE,+    ZYDIS_ISA_SET_KNCJKBR,+    ZYDIS_ISA_SET_KNCSTREAM,+    ZYDIS_ISA_SET_KNCV,+    ZYDIS_ISA_SET_KNC_MISC,+    ZYDIS_ISA_SET_KNC_PF_HINT,+    ZYDIS_ISA_SET_LAHF,+    ZYDIS_ISA_SET_LONGMODE,+    ZYDIS_ISA_SET_LZCNT,+    ZYDIS_ISA_SET_MONITOR,+    ZYDIS_ISA_SET_MONITORX,+    ZYDIS_ISA_SET_MOVBE,+    ZYDIS_ISA_SET_MOVDIR,+    ZYDIS_ISA_SET_MPX,+    ZYDIS_ISA_SET_PADLOCK_ACE,+    ZYDIS_ISA_SET_PADLOCK_PHE,+    ZYDIS_ISA_SET_PADLOCK_PMM,+    ZYDIS_ISA_SET_PADLOCK_RNG,+    ZYDIS_ISA_SET_PAUSE,+    ZYDIS_ISA_SET_PCLMULQDQ,+    ZYDIS_ISA_SET_PCONFIG,+    ZYDIS_ISA_SET_PENTIUMMMX,+    ZYDIS_ISA_SET_PENTIUMREAL,+    ZYDIS_ISA_SET_PKU,+    ZYDIS_ISA_SET_POPCNT,+    ZYDIS_ISA_SET_PPRO,+    ZYDIS_ISA_SET_PREFETCHWT1,+    ZYDIS_ISA_SET_PREFETCH_NOP,+    ZYDIS_ISA_SET_PT,+    ZYDIS_ISA_SET_RDPID,+    ZYDIS_ISA_SET_RDPMC,+    ZYDIS_ISA_SET_RDPRU,+    ZYDIS_ISA_SET_RDRAND,+    ZYDIS_ISA_SET_RDSEED,+    ZYDIS_ISA_SET_RDTSCP,+    ZYDIS_ISA_SET_RDWRFSGS,+    ZYDIS_ISA_SET_RTM,+    ZYDIS_ISA_SET_SGX,+    ZYDIS_ISA_SET_SGX_ENCLV,+    ZYDIS_ISA_SET_SHA,+    ZYDIS_ISA_SET_SMAP,+    ZYDIS_ISA_SET_SMX,+    ZYDIS_ISA_SET_SSE,+    ZYDIS_ISA_SET_SSE2,+    ZYDIS_ISA_SET_SSE2MMX,+    ZYDIS_ISA_SET_SSE3,+    ZYDIS_ISA_SET_SSE3X87,+    ZYDIS_ISA_SET_SSE4,+    ZYDIS_ISA_SET_SSE42,+    ZYDIS_ISA_SET_SSE4A,+    ZYDIS_ISA_SET_SSEMXCSR,+    ZYDIS_ISA_SET_SSE_PREFETCH,+    ZYDIS_ISA_SET_SSSE3,+    ZYDIS_ISA_SET_SSSE3MMX,+    ZYDIS_ISA_SET_SVM,+    ZYDIS_ISA_SET_TBM,+    ZYDIS_ISA_SET_VAES,+    ZYDIS_ISA_SET_VMFUNC,+    ZYDIS_ISA_SET_VPCLMULQDQ,+    ZYDIS_ISA_SET_VTX,+    ZYDIS_ISA_SET_WAITPKG,+    ZYDIS_ISA_SET_X87,+    ZYDIS_ISA_SET_XOP,+    ZYDIS_ISA_SET_XSAVE,+    ZYDIS_ISA_SET_XSAVEC,+    ZYDIS_ISA_SET_XSAVEOPT,+    ZYDIS_ISA_SET_XSAVES,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_ISA_SET_MAX_VALUE = ZYDIS_ISA_SET_XSAVES,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_ISA_SET_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_ISA_SET_MAX_VALUE)+} ZydisISASet;
+ external/zydis/include/Zydis/Generated/EnumInstructionCategory.h view
@@ -0,0 +1,114 @@+/**+ * Defines the `ZydisInstructionCategory` enum.+ */+typedef enum ZydisInstructionCategory_+{+    ZYDIS_CATEGORY_INVALID,+    ZYDIS_CATEGORY_ADOX_ADCX,+    ZYDIS_CATEGORY_AES,+    ZYDIS_CATEGORY_AMD3DNOW,+    ZYDIS_CATEGORY_AVX,+    ZYDIS_CATEGORY_AVX2,+    ZYDIS_CATEGORY_AVX2GATHER,+    ZYDIS_CATEGORY_AVX512,+    ZYDIS_CATEGORY_AVX512_4FMAPS,+    ZYDIS_CATEGORY_AVX512_4VNNIW,+    ZYDIS_CATEGORY_AVX512_BITALG,+    ZYDIS_CATEGORY_AVX512_VBMI,+    ZYDIS_CATEGORY_AVX512_VP2INTERSECT,+    ZYDIS_CATEGORY_BINARY,+    ZYDIS_CATEGORY_BITBYTE,+    ZYDIS_CATEGORY_BLEND,+    ZYDIS_CATEGORY_BMI1,+    ZYDIS_CATEGORY_BMI2,+    ZYDIS_CATEGORY_BROADCAST,+    ZYDIS_CATEGORY_CALL,+    ZYDIS_CATEGORY_CET,+    ZYDIS_CATEGORY_CLDEMOTE,+    ZYDIS_CATEGORY_CLFLUSHOPT,+    ZYDIS_CATEGORY_CLWB,+    ZYDIS_CATEGORY_CLZERO,+    ZYDIS_CATEGORY_CMOV,+    ZYDIS_CATEGORY_COMPRESS,+    ZYDIS_CATEGORY_COND_BR,+    ZYDIS_CATEGORY_CONFLICT,+    ZYDIS_CATEGORY_CONVERT,+    ZYDIS_CATEGORY_DATAXFER,+    ZYDIS_CATEGORY_DECIMAL,+    ZYDIS_CATEGORY_ENQCMD,+    ZYDIS_CATEGORY_EXPAND,+    ZYDIS_CATEGORY_FCMOV,+    ZYDIS_CATEGORY_FLAGOP,+    ZYDIS_CATEGORY_FMA4,+    ZYDIS_CATEGORY_GATHER,+    ZYDIS_CATEGORY_GFNI,+    ZYDIS_CATEGORY_IFMA,+    ZYDIS_CATEGORY_INTERRUPT,+    ZYDIS_CATEGORY_IO,+    ZYDIS_CATEGORY_IOSTRINGOP,+    ZYDIS_CATEGORY_KMASK,+    ZYDIS_CATEGORY_KNC,+    ZYDIS_CATEGORY_KNCMASK,+    ZYDIS_CATEGORY_KNCSCALAR,+    ZYDIS_CATEGORY_LOGICAL,+    ZYDIS_CATEGORY_LOGICAL_FP,+    ZYDIS_CATEGORY_LZCNT,+    ZYDIS_CATEGORY_MISC,+    ZYDIS_CATEGORY_MMX,+    ZYDIS_CATEGORY_MOVDIR,+    ZYDIS_CATEGORY_MPX,+    ZYDIS_CATEGORY_NOP,+    ZYDIS_CATEGORY_PADLOCK,+    ZYDIS_CATEGORY_PCLMULQDQ,+    ZYDIS_CATEGORY_PCONFIG,+    ZYDIS_CATEGORY_PKU,+    ZYDIS_CATEGORY_POP,+    ZYDIS_CATEGORY_PREFETCH,+    ZYDIS_CATEGORY_PREFETCHWT1,+    ZYDIS_CATEGORY_PT,+    ZYDIS_CATEGORY_PUSH,+    ZYDIS_CATEGORY_RDPID,+    ZYDIS_CATEGORY_RDPRU,+    ZYDIS_CATEGORY_RDRAND,+    ZYDIS_CATEGORY_RDSEED,+    ZYDIS_CATEGORY_RDWRFSGS,+    ZYDIS_CATEGORY_RET,+    ZYDIS_CATEGORY_ROTATE,+    ZYDIS_CATEGORY_SCATTER,+    ZYDIS_CATEGORY_SEGOP,+    ZYDIS_CATEGORY_SEMAPHORE,+    ZYDIS_CATEGORY_SETCC,+    ZYDIS_CATEGORY_SGX,+    ZYDIS_CATEGORY_SHA,+    ZYDIS_CATEGORY_SHIFT,+    ZYDIS_CATEGORY_SMAP,+    ZYDIS_CATEGORY_SSE,+    ZYDIS_CATEGORY_STRINGOP,+    ZYDIS_CATEGORY_STTNI,+    ZYDIS_CATEGORY_SYSCALL,+    ZYDIS_CATEGORY_SYSRET,+    ZYDIS_CATEGORY_SYSTEM,+    ZYDIS_CATEGORY_TBM,+    ZYDIS_CATEGORY_UFMA,+    ZYDIS_CATEGORY_UNCOND_BR,+    ZYDIS_CATEGORY_VAES,+    ZYDIS_CATEGORY_VBMI2,+    ZYDIS_CATEGORY_VFMA,+    ZYDIS_CATEGORY_VPCLMULQDQ,+    ZYDIS_CATEGORY_VTX,+    ZYDIS_CATEGORY_WAITPKG,+    ZYDIS_CATEGORY_WIDENOP,+    ZYDIS_CATEGORY_X87_ALU,+    ZYDIS_CATEGORY_XOP,+    ZYDIS_CATEGORY_XSAVE,+    ZYDIS_CATEGORY_XSAVEOPT,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_CATEGORY_MAX_VALUE = ZYDIS_CATEGORY_XSAVEOPT,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_CATEGORY_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_CATEGORY_MAX_VALUE)+} ZydisInstructionCategory;
+ external/zydis/include/Zydis/Generated/EnumMnemonic.h view
@@ -0,0 +1,1621 @@+/**+ * Defines the `ZydisMnemonic` enum.+ */+typedef enum ZydisMnemonic_+{+    ZYDIS_MNEMONIC_INVALID,+    ZYDIS_MNEMONIC_AAA,+    ZYDIS_MNEMONIC_AAD,+    ZYDIS_MNEMONIC_AAM,+    ZYDIS_MNEMONIC_AAS,+    ZYDIS_MNEMONIC_ADC,+    ZYDIS_MNEMONIC_ADCX,+    ZYDIS_MNEMONIC_ADD,+    ZYDIS_MNEMONIC_ADDPD,+    ZYDIS_MNEMONIC_ADDPS,+    ZYDIS_MNEMONIC_ADDSD,+    ZYDIS_MNEMONIC_ADDSS,+    ZYDIS_MNEMONIC_ADDSUBPD,+    ZYDIS_MNEMONIC_ADDSUBPS,+    ZYDIS_MNEMONIC_ADOX,+    ZYDIS_MNEMONIC_AESDEC,+    ZYDIS_MNEMONIC_AESDECLAST,+    ZYDIS_MNEMONIC_AESENC,+    ZYDIS_MNEMONIC_AESENCLAST,+    ZYDIS_MNEMONIC_AESIMC,+    ZYDIS_MNEMONIC_AESKEYGENASSIST,+    ZYDIS_MNEMONIC_AND,+    ZYDIS_MNEMONIC_ANDN,+    ZYDIS_MNEMONIC_ANDNPD,+    ZYDIS_MNEMONIC_ANDNPS,+    ZYDIS_MNEMONIC_ANDPD,+    ZYDIS_MNEMONIC_ANDPS,+    ZYDIS_MNEMONIC_ARPL,+    ZYDIS_MNEMONIC_BEXTR,+    ZYDIS_MNEMONIC_BLCFILL,+    ZYDIS_MNEMONIC_BLCI,+    ZYDIS_MNEMONIC_BLCIC,+    ZYDIS_MNEMONIC_BLCMSK,+    ZYDIS_MNEMONIC_BLCS,+    ZYDIS_MNEMONIC_BLENDPD,+    ZYDIS_MNEMONIC_BLENDPS,+    ZYDIS_MNEMONIC_BLENDVPD,+    ZYDIS_MNEMONIC_BLENDVPS,+    ZYDIS_MNEMONIC_BLSFILL,+    ZYDIS_MNEMONIC_BLSI,+    ZYDIS_MNEMONIC_BLSIC,+    ZYDIS_MNEMONIC_BLSMSK,+    ZYDIS_MNEMONIC_BLSR,+    ZYDIS_MNEMONIC_BNDCL,+    ZYDIS_MNEMONIC_BNDCN,+    ZYDIS_MNEMONIC_BNDCU,+    ZYDIS_MNEMONIC_BNDLDX,+    ZYDIS_MNEMONIC_BNDMK,+    ZYDIS_MNEMONIC_BNDMOV,+    ZYDIS_MNEMONIC_BNDSTX,+    ZYDIS_MNEMONIC_BOUND,+    ZYDIS_MNEMONIC_BSF,+    ZYDIS_MNEMONIC_BSR,+    ZYDIS_MNEMONIC_BSWAP,+    ZYDIS_MNEMONIC_BT,+    ZYDIS_MNEMONIC_BTC,+    ZYDIS_MNEMONIC_BTR,+    ZYDIS_MNEMONIC_BTS,+    ZYDIS_MNEMONIC_BZHI,+    ZYDIS_MNEMONIC_CALL,+    ZYDIS_MNEMONIC_CBW,+    ZYDIS_MNEMONIC_CDQ,+    ZYDIS_MNEMONIC_CDQE,+    ZYDIS_MNEMONIC_CLAC,+    ZYDIS_MNEMONIC_CLC,+    ZYDIS_MNEMONIC_CLD,+    ZYDIS_MNEMONIC_CLDEMOTE,+    ZYDIS_MNEMONIC_CLEVICT0,+    ZYDIS_MNEMONIC_CLEVICT1,+    ZYDIS_MNEMONIC_CLFLUSH,+    ZYDIS_MNEMONIC_CLFLUSHOPT,+    ZYDIS_MNEMONIC_CLGI,+    ZYDIS_MNEMONIC_CLI,+    ZYDIS_MNEMONIC_CLRSSBSY,+    ZYDIS_MNEMONIC_CLTS,+    ZYDIS_MNEMONIC_CLWB,+    ZYDIS_MNEMONIC_CLZERO,+    ZYDIS_MNEMONIC_CMC,+    ZYDIS_MNEMONIC_CMOVB,+    ZYDIS_MNEMONIC_CMOVBE,+    ZYDIS_MNEMONIC_CMOVL,+    ZYDIS_MNEMONIC_CMOVLE,+    ZYDIS_MNEMONIC_CMOVNB,+    ZYDIS_MNEMONIC_CMOVNBE,+    ZYDIS_MNEMONIC_CMOVNL,+    ZYDIS_MNEMONIC_CMOVNLE,+    ZYDIS_MNEMONIC_CMOVNO,+    ZYDIS_MNEMONIC_CMOVNP,+    ZYDIS_MNEMONIC_CMOVNS,+    ZYDIS_MNEMONIC_CMOVNZ,+    ZYDIS_MNEMONIC_CMOVO,+    ZYDIS_MNEMONIC_CMOVP,+    ZYDIS_MNEMONIC_CMOVS,+    ZYDIS_MNEMONIC_CMOVZ,+    ZYDIS_MNEMONIC_CMP,+    ZYDIS_MNEMONIC_CMPPD,+    ZYDIS_MNEMONIC_CMPPS,+    ZYDIS_MNEMONIC_CMPSB,+    ZYDIS_MNEMONIC_CMPSD,+    ZYDIS_MNEMONIC_CMPSQ,+    ZYDIS_MNEMONIC_CMPSS,+    ZYDIS_MNEMONIC_CMPSW,+    ZYDIS_MNEMONIC_CMPXCHG,+    ZYDIS_MNEMONIC_CMPXCHG16B,+    ZYDIS_MNEMONIC_CMPXCHG8B,+    ZYDIS_MNEMONIC_COMISD,+    ZYDIS_MNEMONIC_COMISS,+    ZYDIS_MNEMONIC_CPUID,+    ZYDIS_MNEMONIC_CQO,+    ZYDIS_MNEMONIC_CRC32,+    ZYDIS_MNEMONIC_CVTDQ2PD,+    ZYDIS_MNEMONIC_CVTDQ2PS,+    ZYDIS_MNEMONIC_CVTPD2DQ,+    ZYDIS_MNEMONIC_CVTPD2PI,+    ZYDIS_MNEMONIC_CVTPD2PS,+    ZYDIS_MNEMONIC_CVTPI2PD,+    ZYDIS_MNEMONIC_CVTPI2PS,+    ZYDIS_MNEMONIC_CVTPS2DQ,+    ZYDIS_MNEMONIC_CVTPS2PD,+    ZYDIS_MNEMONIC_CVTPS2PI,+    ZYDIS_MNEMONIC_CVTSD2SI,+    ZYDIS_MNEMONIC_CVTSD2SS,+    ZYDIS_MNEMONIC_CVTSI2SD,+    ZYDIS_MNEMONIC_CVTSI2SS,+    ZYDIS_MNEMONIC_CVTSS2SD,+    ZYDIS_MNEMONIC_CVTSS2SI,+    ZYDIS_MNEMONIC_CVTTPD2DQ,+    ZYDIS_MNEMONIC_CVTTPD2PI,+    ZYDIS_MNEMONIC_CVTTPS2DQ,+    ZYDIS_MNEMONIC_CVTTPS2PI,+    ZYDIS_MNEMONIC_CVTTSD2SI,+    ZYDIS_MNEMONIC_CVTTSS2SI,+    ZYDIS_MNEMONIC_CWD,+    ZYDIS_MNEMONIC_CWDE,+    ZYDIS_MNEMONIC_DAA,+    ZYDIS_MNEMONIC_DAS,+    ZYDIS_MNEMONIC_DEC,+    ZYDIS_MNEMONIC_DELAY,+    ZYDIS_MNEMONIC_DIV,+    ZYDIS_MNEMONIC_DIVPD,+    ZYDIS_MNEMONIC_DIVPS,+    ZYDIS_MNEMONIC_DIVSD,+    ZYDIS_MNEMONIC_DIVSS,+    ZYDIS_MNEMONIC_DPPD,+    ZYDIS_MNEMONIC_DPPS,+    ZYDIS_MNEMONIC_EMMS,+    ZYDIS_MNEMONIC_ENCLS,+    ZYDIS_MNEMONIC_ENCLU,+    ZYDIS_MNEMONIC_ENCLV,+    ZYDIS_MNEMONIC_ENDBR32,+    ZYDIS_MNEMONIC_ENDBR64,+    ZYDIS_MNEMONIC_ENQCMD,+    ZYDIS_MNEMONIC_ENQCMDS,+    ZYDIS_MNEMONIC_ENTER,+    ZYDIS_MNEMONIC_EXTRACTPS,+    ZYDIS_MNEMONIC_EXTRQ,+    ZYDIS_MNEMONIC_F2XM1,+    ZYDIS_MNEMONIC_FABS,+    ZYDIS_MNEMONIC_FADD,+    ZYDIS_MNEMONIC_FADDP,+    ZYDIS_MNEMONIC_FBLD,+    ZYDIS_MNEMONIC_FBSTP,+    ZYDIS_MNEMONIC_FCHS,+    ZYDIS_MNEMONIC_FCMOVB,+    ZYDIS_MNEMONIC_FCMOVBE,+    ZYDIS_MNEMONIC_FCMOVE,+    ZYDIS_MNEMONIC_FCMOVNB,+    ZYDIS_MNEMONIC_FCMOVNBE,+    ZYDIS_MNEMONIC_FCMOVNE,+    ZYDIS_MNEMONIC_FCMOVNU,+    ZYDIS_MNEMONIC_FCMOVU,+    ZYDIS_MNEMONIC_FCOM,+    ZYDIS_MNEMONIC_FCOMI,+    ZYDIS_MNEMONIC_FCOMIP,+    ZYDIS_MNEMONIC_FCOMP,+    ZYDIS_MNEMONIC_FCOMPP,+    ZYDIS_MNEMONIC_FCOS,+    ZYDIS_MNEMONIC_FDECSTP,+    ZYDIS_MNEMONIC_FDISI8087_NOP,+    ZYDIS_MNEMONIC_FDIV,+    ZYDIS_MNEMONIC_FDIVP,+    ZYDIS_MNEMONIC_FDIVR,+    ZYDIS_MNEMONIC_FDIVRP,+    ZYDIS_MNEMONIC_FEMMS,+    ZYDIS_MNEMONIC_FENI8087_NOP,+    ZYDIS_MNEMONIC_FFREE,+    ZYDIS_MNEMONIC_FFREEP,+    ZYDIS_MNEMONIC_FIADD,+    ZYDIS_MNEMONIC_FICOM,+    ZYDIS_MNEMONIC_FICOMP,+    ZYDIS_MNEMONIC_FIDIV,+    ZYDIS_MNEMONIC_FIDIVR,+    ZYDIS_MNEMONIC_FILD,+    ZYDIS_MNEMONIC_FIMUL,+    ZYDIS_MNEMONIC_FINCSTP,+    ZYDIS_MNEMONIC_FIST,+    ZYDIS_MNEMONIC_FISTP,+    ZYDIS_MNEMONIC_FISTTP,+    ZYDIS_MNEMONIC_FISUB,+    ZYDIS_MNEMONIC_FISUBR,+    ZYDIS_MNEMONIC_FLD,+    ZYDIS_MNEMONIC_FLD1,+    ZYDIS_MNEMONIC_FLDCW,+    ZYDIS_MNEMONIC_FLDENV,+    ZYDIS_MNEMONIC_FLDL2E,+    ZYDIS_MNEMONIC_FLDL2T,+    ZYDIS_MNEMONIC_FLDLG2,+    ZYDIS_MNEMONIC_FLDLN2,+    ZYDIS_MNEMONIC_FLDPI,+    ZYDIS_MNEMONIC_FLDZ,+    ZYDIS_MNEMONIC_FMUL,+    ZYDIS_MNEMONIC_FMULP,+    ZYDIS_MNEMONIC_FNCLEX,+    ZYDIS_MNEMONIC_FNINIT,+    ZYDIS_MNEMONIC_FNOP,+    ZYDIS_MNEMONIC_FNSAVE,+    ZYDIS_MNEMONIC_FNSTCW,+    ZYDIS_MNEMONIC_FNSTENV,+    ZYDIS_MNEMONIC_FNSTSW,+    ZYDIS_MNEMONIC_FPATAN,+    ZYDIS_MNEMONIC_FPREM,+    ZYDIS_MNEMONIC_FPREM1,+    ZYDIS_MNEMONIC_FPTAN,+    ZYDIS_MNEMONIC_FRNDINT,+    ZYDIS_MNEMONIC_FRSTOR,+    ZYDIS_MNEMONIC_FSCALE,+    ZYDIS_MNEMONIC_FSETPM287_NOP,+    ZYDIS_MNEMONIC_FSIN,+    ZYDIS_MNEMONIC_FSINCOS,+    ZYDIS_MNEMONIC_FSQRT,+    ZYDIS_MNEMONIC_FST,+    ZYDIS_MNEMONIC_FSTP,+    ZYDIS_MNEMONIC_FSTPNCE,+    ZYDIS_MNEMONIC_FSUB,+    ZYDIS_MNEMONIC_FSUBP,+    ZYDIS_MNEMONIC_FSUBR,+    ZYDIS_MNEMONIC_FSUBRP,+    ZYDIS_MNEMONIC_FTST,+    ZYDIS_MNEMONIC_FUCOM,+    ZYDIS_MNEMONIC_FUCOMI,+    ZYDIS_MNEMONIC_FUCOMIP,+    ZYDIS_MNEMONIC_FUCOMP,+    ZYDIS_MNEMONIC_FUCOMPP,+    ZYDIS_MNEMONIC_FWAIT,+    ZYDIS_MNEMONIC_FXAM,+    ZYDIS_MNEMONIC_FXCH,+    ZYDIS_MNEMONIC_FXRSTOR,+    ZYDIS_MNEMONIC_FXRSTOR64,+    ZYDIS_MNEMONIC_FXSAVE,+    ZYDIS_MNEMONIC_FXSAVE64,+    ZYDIS_MNEMONIC_FXTRACT,+    ZYDIS_MNEMONIC_FYL2X,+    ZYDIS_MNEMONIC_FYL2XP1,+    ZYDIS_MNEMONIC_GETSEC,+    ZYDIS_MNEMONIC_GF2P8AFFINEINVQB,+    ZYDIS_MNEMONIC_GF2P8AFFINEQB,+    ZYDIS_MNEMONIC_GF2P8MULB,+    ZYDIS_MNEMONIC_HADDPD,+    ZYDIS_MNEMONIC_HADDPS,+    ZYDIS_MNEMONIC_HLT,+    ZYDIS_MNEMONIC_HSUBPD,+    ZYDIS_MNEMONIC_HSUBPS,+    ZYDIS_MNEMONIC_IDIV,+    ZYDIS_MNEMONIC_IMUL,+    ZYDIS_MNEMONIC_IN,+    ZYDIS_MNEMONIC_INC,+    ZYDIS_MNEMONIC_INCSSPD,+    ZYDIS_MNEMONIC_INCSSPQ,+    ZYDIS_MNEMONIC_INSB,+    ZYDIS_MNEMONIC_INSD,+    ZYDIS_MNEMONIC_INSERTPS,+    ZYDIS_MNEMONIC_INSERTQ,+    ZYDIS_MNEMONIC_INSW,+    ZYDIS_MNEMONIC_INT,+    ZYDIS_MNEMONIC_INT1,+    ZYDIS_MNEMONIC_INT3,+    ZYDIS_MNEMONIC_INTO,+    ZYDIS_MNEMONIC_INVD,+    ZYDIS_MNEMONIC_INVEPT,+    ZYDIS_MNEMONIC_INVLPG,+    ZYDIS_MNEMONIC_INVLPGA,+    ZYDIS_MNEMONIC_INVPCID,+    ZYDIS_MNEMONIC_INVVPID,+    ZYDIS_MNEMONIC_IRET,+    ZYDIS_MNEMONIC_IRETD,+    ZYDIS_MNEMONIC_IRETQ,+    ZYDIS_MNEMONIC_JB,+    ZYDIS_MNEMONIC_JBE,+    ZYDIS_MNEMONIC_JCXZ,+    ZYDIS_MNEMONIC_JECXZ,+    ZYDIS_MNEMONIC_JKNZD,+    ZYDIS_MNEMONIC_JKZD,+    ZYDIS_MNEMONIC_JL,+    ZYDIS_MNEMONIC_JLE,+    ZYDIS_MNEMONIC_JMP,+    ZYDIS_MNEMONIC_JNB,+    ZYDIS_MNEMONIC_JNBE,+    ZYDIS_MNEMONIC_JNL,+    ZYDIS_MNEMONIC_JNLE,+    ZYDIS_MNEMONIC_JNO,+    ZYDIS_MNEMONIC_JNP,+    ZYDIS_MNEMONIC_JNS,+    ZYDIS_MNEMONIC_JNZ,+    ZYDIS_MNEMONIC_JO,+    ZYDIS_MNEMONIC_JP,+    ZYDIS_MNEMONIC_JRCXZ,+    ZYDIS_MNEMONIC_JS,+    ZYDIS_MNEMONIC_JZ,+    ZYDIS_MNEMONIC_KADDB,+    ZYDIS_MNEMONIC_KADDD,+    ZYDIS_MNEMONIC_KADDQ,+    ZYDIS_MNEMONIC_KADDW,+    ZYDIS_MNEMONIC_KAND,+    ZYDIS_MNEMONIC_KANDB,+    ZYDIS_MNEMONIC_KANDD,+    ZYDIS_MNEMONIC_KANDN,+    ZYDIS_MNEMONIC_KANDNB,+    ZYDIS_MNEMONIC_KANDND,+    ZYDIS_MNEMONIC_KANDNQ,+    ZYDIS_MNEMONIC_KANDNR,+    ZYDIS_MNEMONIC_KANDNW,+    ZYDIS_MNEMONIC_KANDQ,+    ZYDIS_MNEMONIC_KANDW,+    ZYDIS_MNEMONIC_KCONCATH,+    ZYDIS_MNEMONIC_KCONCATL,+    ZYDIS_MNEMONIC_KEXTRACT,+    ZYDIS_MNEMONIC_KMERGE2L1H,+    ZYDIS_MNEMONIC_KMERGE2L1L,+    ZYDIS_MNEMONIC_KMOV,+    ZYDIS_MNEMONIC_KMOVB,+    ZYDIS_MNEMONIC_KMOVD,+    ZYDIS_MNEMONIC_KMOVQ,+    ZYDIS_MNEMONIC_KMOVW,+    ZYDIS_MNEMONIC_KNOT,+    ZYDIS_MNEMONIC_KNOTB,+    ZYDIS_MNEMONIC_KNOTD,+    ZYDIS_MNEMONIC_KNOTQ,+    ZYDIS_MNEMONIC_KNOTW,+    ZYDIS_MNEMONIC_KOR,+    ZYDIS_MNEMONIC_KORB,+    ZYDIS_MNEMONIC_KORD,+    ZYDIS_MNEMONIC_KORQ,+    ZYDIS_MNEMONIC_KORTEST,+    ZYDIS_MNEMONIC_KORTESTB,+    ZYDIS_MNEMONIC_KORTESTD,+    ZYDIS_MNEMONIC_KORTESTQ,+    ZYDIS_MNEMONIC_KORTESTW,+    ZYDIS_MNEMONIC_KORW,+    ZYDIS_MNEMONIC_KSHIFTLB,+    ZYDIS_MNEMONIC_KSHIFTLD,+    ZYDIS_MNEMONIC_KSHIFTLQ,+    ZYDIS_MNEMONIC_KSHIFTLW,+    ZYDIS_MNEMONIC_KSHIFTRB,+    ZYDIS_MNEMONIC_KSHIFTRD,+    ZYDIS_MNEMONIC_KSHIFTRQ,+    ZYDIS_MNEMONIC_KSHIFTRW,+    ZYDIS_MNEMONIC_KTESTB,+    ZYDIS_MNEMONIC_KTESTD,+    ZYDIS_MNEMONIC_KTESTQ,+    ZYDIS_MNEMONIC_KTESTW,+    ZYDIS_MNEMONIC_KUNPCKBW,+    ZYDIS_MNEMONIC_KUNPCKDQ,+    ZYDIS_MNEMONIC_KUNPCKWD,+    ZYDIS_MNEMONIC_KXNOR,+    ZYDIS_MNEMONIC_KXNORB,+    ZYDIS_MNEMONIC_KXNORD,+    ZYDIS_MNEMONIC_KXNORQ,+    ZYDIS_MNEMONIC_KXNORW,+    ZYDIS_MNEMONIC_KXOR,+    ZYDIS_MNEMONIC_KXORB,+    ZYDIS_MNEMONIC_KXORD,+    ZYDIS_MNEMONIC_KXORQ,+    ZYDIS_MNEMONIC_KXORW,+    ZYDIS_MNEMONIC_LAHF,+    ZYDIS_MNEMONIC_LAR,+    ZYDIS_MNEMONIC_LDDQU,+    ZYDIS_MNEMONIC_LDMXCSR,+    ZYDIS_MNEMONIC_LDS,+    ZYDIS_MNEMONIC_LEA,+    ZYDIS_MNEMONIC_LEAVE,+    ZYDIS_MNEMONIC_LES,+    ZYDIS_MNEMONIC_LFENCE,+    ZYDIS_MNEMONIC_LFS,+    ZYDIS_MNEMONIC_LGDT,+    ZYDIS_MNEMONIC_LGS,+    ZYDIS_MNEMONIC_LIDT,+    ZYDIS_MNEMONIC_LLDT,+    ZYDIS_MNEMONIC_LLWPCB,+    ZYDIS_MNEMONIC_LMSW,+    ZYDIS_MNEMONIC_LODSB,+    ZYDIS_MNEMONIC_LODSD,+    ZYDIS_MNEMONIC_LODSQ,+    ZYDIS_MNEMONIC_LODSW,+    ZYDIS_MNEMONIC_LOOP,+    ZYDIS_MNEMONIC_LOOPE,+    ZYDIS_MNEMONIC_LOOPNE,+    ZYDIS_MNEMONIC_LSL,+    ZYDIS_MNEMONIC_LSS,+    ZYDIS_MNEMONIC_LTR,+    ZYDIS_MNEMONIC_LWPINS,+    ZYDIS_MNEMONIC_LWPVAL,+    ZYDIS_MNEMONIC_LZCNT,+    ZYDIS_MNEMONIC_MASKMOVDQU,+    ZYDIS_MNEMONIC_MASKMOVQ,+    ZYDIS_MNEMONIC_MAXPD,+    ZYDIS_MNEMONIC_MAXPS,+    ZYDIS_MNEMONIC_MAXSD,+    ZYDIS_MNEMONIC_MAXSS,+    ZYDIS_MNEMONIC_MFENCE,+    ZYDIS_MNEMONIC_MINPD,+    ZYDIS_MNEMONIC_MINPS,+    ZYDIS_MNEMONIC_MINSD,+    ZYDIS_MNEMONIC_MINSS,+    ZYDIS_MNEMONIC_MONITOR,+    ZYDIS_MNEMONIC_MONITORX,+    ZYDIS_MNEMONIC_MONTMUL,+    ZYDIS_MNEMONIC_MOV,+    ZYDIS_MNEMONIC_MOVAPD,+    ZYDIS_MNEMONIC_MOVAPS,+    ZYDIS_MNEMONIC_MOVBE,+    ZYDIS_MNEMONIC_MOVD,+    ZYDIS_MNEMONIC_MOVDDUP,+    ZYDIS_MNEMONIC_MOVDIR64B,+    ZYDIS_MNEMONIC_MOVDIRI,+    ZYDIS_MNEMONIC_MOVDQ2Q,+    ZYDIS_MNEMONIC_MOVDQA,+    ZYDIS_MNEMONIC_MOVDQU,+    ZYDIS_MNEMONIC_MOVHLPS,+    ZYDIS_MNEMONIC_MOVHPD,+    ZYDIS_MNEMONIC_MOVHPS,+    ZYDIS_MNEMONIC_MOVLHPS,+    ZYDIS_MNEMONIC_MOVLPD,+    ZYDIS_MNEMONIC_MOVLPS,+    ZYDIS_MNEMONIC_MOVMSKPD,+    ZYDIS_MNEMONIC_MOVMSKPS,+    ZYDIS_MNEMONIC_MOVNTDQ,+    ZYDIS_MNEMONIC_MOVNTDQA,+    ZYDIS_MNEMONIC_MOVNTI,+    ZYDIS_MNEMONIC_MOVNTPD,+    ZYDIS_MNEMONIC_MOVNTPS,+    ZYDIS_MNEMONIC_MOVNTQ,+    ZYDIS_MNEMONIC_MOVNTSD,+    ZYDIS_MNEMONIC_MOVNTSS,+    ZYDIS_MNEMONIC_MOVQ,+    ZYDIS_MNEMONIC_MOVQ2DQ,+    ZYDIS_MNEMONIC_MOVSB,+    ZYDIS_MNEMONIC_MOVSD,+    ZYDIS_MNEMONIC_MOVSHDUP,+    ZYDIS_MNEMONIC_MOVSLDUP,+    ZYDIS_MNEMONIC_MOVSQ,+    ZYDIS_MNEMONIC_MOVSS,+    ZYDIS_MNEMONIC_MOVSW,+    ZYDIS_MNEMONIC_MOVSX,+    ZYDIS_MNEMONIC_MOVSXD,+    ZYDIS_MNEMONIC_MOVUPD,+    ZYDIS_MNEMONIC_MOVUPS,+    ZYDIS_MNEMONIC_MOVZX,+    ZYDIS_MNEMONIC_MPSADBW,+    ZYDIS_MNEMONIC_MUL,+    ZYDIS_MNEMONIC_MULPD,+    ZYDIS_MNEMONIC_MULPS,+    ZYDIS_MNEMONIC_MULSD,+    ZYDIS_MNEMONIC_MULSS,+    ZYDIS_MNEMONIC_MULX,+    ZYDIS_MNEMONIC_MWAIT,+    ZYDIS_MNEMONIC_MWAITX,+    ZYDIS_MNEMONIC_NEG,+    ZYDIS_MNEMONIC_NOP,+    ZYDIS_MNEMONIC_NOT,+    ZYDIS_MNEMONIC_OR,+    ZYDIS_MNEMONIC_ORPD,+    ZYDIS_MNEMONIC_ORPS,+    ZYDIS_MNEMONIC_OUT,+    ZYDIS_MNEMONIC_OUTSB,+    ZYDIS_MNEMONIC_OUTSD,+    ZYDIS_MNEMONIC_OUTSW,+    ZYDIS_MNEMONIC_PABSB,+    ZYDIS_MNEMONIC_PABSD,+    ZYDIS_MNEMONIC_PABSW,+    ZYDIS_MNEMONIC_PACKSSDW,+    ZYDIS_MNEMONIC_PACKSSWB,+    ZYDIS_MNEMONIC_PACKUSDW,+    ZYDIS_MNEMONIC_PACKUSWB,+    ZYDIS_MNEMONIC_PADDB,+    ZYDIS_MNEMONIC_PADDD,+    ZYDIS_MNEMONIC_PADDQ,+    ZYDIS_MNEMONIC_PADDSB,+    ZYDIS_MNEMONIC_PADDSW,+    ZYDIS_MNEMONIC_PADDUSB,+    ZYDIS_MNEMONIC_PADDUSW,+    ZYDIS_MNEMONIC_PADDW,+    ZYDIS_MNEMONIC_PALIGNR,+    ZYDIS_MNEMONIC_PAND,+    ZYDIS_MNEMONIC_PANDN,+    ZYDIS_MNEMONIC_PAUSE,+    ZYDIS_MNEMONIC_PAVGB,+    ZYDIS_MNEMONIC_PAVGUSB,+    ZYDIS_MNEMONIC_PAVGW,+    ZYDIS_MNEMONIC_PBLENDVB,+    ZYDIS_MNEMONIC_PBLENDW,+    ZYDIS_MNEMONIC_PCLMULQDQ,+    ZYDIS_MNEMONIC_PCMPEQB,+    ZYDIS_MNEMONIC_PCMPEQD,+    ZYDIS_MNEMONIC_PCMPEQQ,+    ZYDIS_MNEMONIC_PCMPEQW,+    ZYDIS_MNEMONIC_PCMPESTRI,+    ZYDIS_MNEMONIC_PCMPESTRM,+    ZYDIS_MNEMONIC_PCMPGTB,+    ZYDIS_MNEMONIC_PCMPGTD,+    ZYDIS_MNEMONIC_PCMPGTQ,+    ZYDIS_MNEMONIC_PCMPGTW,+    ZYDIS_MNEMONIC_PCMPISTRI,+    ZYDIS_MNEMONIC_PCMPISTRM,+    ZYDIS_MNEMONIC_PCONFIG,+    ZYDIS_MNEMONIC_PDEP,+    ZYDIS_MNEMONIC_PEXT,+    ZYDIS_MNEMONIC_PEXTRB,+    ZYDIS_MNEMONIC_PEXTRD,+    ZYDIS_MNEMONIC_PEXTRQ,+    ZYDIS_MNEMONIC_PEXTRW,+    ZYDIS_MNEMONIC_PF2ID,+    ZYDIS_MNEMONIC_PF2IW,+    ZYDIS_MNEMONIC_PFACC,+    ZYDIS_MNEMONIC_PFADD,+    ZYDIS_MNEMONIC_PFCMPEQ,+    ZYDIS_MNEMONIC_PFCMPGE,+    ZYDIS_MNEMONIC_PFCMPGT,+    ZYDIS_MNEMONIC_PFCPIT1,+    ZYDIS_MNEMONIC_PFMAX,+    ZYDIS_MNEMONIC_PFMIN,+    ZYDIS_MNEMONIC_PFMUL,+    ZYDIS_MNEMONIC_PFNACC,+    ZYDIS_MNEMONIC_PFPNACC,+    ZYDIS_MNEMONIC_PFRCP,+    ZYDIS_MNEMONIC_PFRCPIT2,+    ZYDIS_MNEMONIC_PFRSQIT1,+    ZYDIS_MNEMONIC_PFSQRT,+    ZYDIS_MNEMONIC_PFSUB,+    ZYDIS_MNEMONIC_PFSUBR,+    ZYDIS_MNEMONIC_PHADDD,+    ZYDIS_MNEMONIC_PHADDSW,+    ZYDIS_MNEMONIC_PHADDW,+    ZYDIS_MNEMONIC_PHMINPOSUW,+    ZYDIS_MNEMONIC_PHSUBD,+    ZYDIS_MNEMONIC_PHSUBSW,+    ZYDIS_MNEMONIC_PHSUBW,+    ZYDIS_MNEMONIC_PI2FD,+    ZYDIS_MNEMONIC_PI2FW,+    ZYDIS_MNEMONIC_PINSRB,+    ZYDIS_MNEMONIC_PINSRD,+    ZYDIS_MNEMONIC_PINSRQ,+    ZYDIS_MNEMONIC_PINSRW,+    ZYDIS_MNEMONIC_PMADDUBSW,+    ZYDIS_MNEMONIC_PMADDWD,+    ZYDIS_MNEMONIC_PMAXSB,+    ZYDIS_MNEMONIC_PMAXSD,+    ZYDIS_MNEMONIC_PMAXSW,+    ZYDIS_MNEMONIC_PMAXUB,+    ZYDIS_MNEMONIC_PMAXUD,+    ZYDIS_MNEMONIC_PMAXUW,+    ZYDIS_MNEMONIC_PMINSB,+    ZYDIS_MNEMONIC_PMINSD,+    ZYDIS_MNEMONIC_PMINSW,+    ZYDIS_MNEMONIC_PMINUB,+    ZYDIS_MNEMONIC_PMINUD,+    ZYDIS_MNEMONIC_PMINUW,+    ZYDIS_MNEMONIC_PMOVMSKB,+    ZYDIS_MNEMONIC_PMOVSXBD,+    ZYDIS_MNEMONIC_PMOVSXBQ,+    ZYDIS_MNEMONIC_PMOVSXBW,+    ZYDIS_MNEMONIC_PMOVSXDQ,+    ZYDIS_MNEMONIC_PMOVSXWD,+    ZYDIS_MNEMONIC_PMOVSXWQ,+    ZYDIS_MNEMONIC_PMOVZXBD,+    ZYDIS_MNEMONIC_PMOVZXBQ,+    ZYDIS_MNEMONIC_PMOVZXBW,+    ZYDIS_MNEMONIC_PMOVZXDQ,+    ZYDIS_MNEMONIC_PMOVZXWD,+    ZYDIS_MNEMONIC_PMOVZXWQ,+    ZYDIS_MNEMONIC_PMULDQ,+    ZYDIS_MNEMONIC_PMULHRSW,+    ZYDIS_MNEMONIC_PMULHRW,+    ZYDIS_MNEMONIC_PMULHUW,+    ZYDIS_MNEMONIC_PMULHW,+    ZYDIS_MNEMONIC_PMULLD,+    ZYDIS_MNEMONIC_PMULLW,+    ZYDIS_MNEMONIC_PMULUDQ,+    ZYDIS_MNEMONIC_POP,+    ZYDIS_MNEMONIC_POPA,+    ZYDIS_MNEMONIC_POPAD,+    ZYDIS_MNEMONIC_POPCNT,+    ZYDIS_MNEMONIC_POPF,+    ZYDIS_MNEMONIC_POPFD,+    ZYDIS_MNEMONIC_POPFQ,+    ZYDIS_MNEMONIC_POR,+    ZYDIS_MNEMONIC_PREFETCH,+    ZYDIS_MNEMONIC_PREFETCHNTA,+    ZYDIS_MNEMONIC_PREFETCHT0,+    ZYDIS_MNEMONIC_PREFETCHT1,+    ZYDIS_MNEMONIC_PREFETCHT2,+    ZYDIS_MNEMONIC_PREFETCHW,+    ZYDIS_MNEMONIC_PREFETCHWT1,+    ZYDIS_MNEMONIC_PSADBW,+    ZYDIS_MNEMONIC_PSHUFB,+    ZYDIS_MNEMONIC_PSHUFD,+    ZYDIS_MNEMONIC_PSHUFHW,+    ZYDIS_MNEMONIC_PSHUFLW,+    ZYDIS_MNEMONIC_PSHUFW,+    ZYDIS_MNEMONIC_PSIGNB,+    ZYDIS_MNEMONIC_PSIGND,+    ZYDIS_MNEMONIC_PSIGNW,+    ZYDIS_MNEMONIC_PSLLD,+    ZYDIS_MNEMONIC_PSLLDQ,+    ZYDIS_MNEMONIC_PSLLQ,+    ZYDIS_MNEMONIC_PSLLW,+    ZYDIS_MNEMONIC_PSRAD,+    ZYDIS_MNEMONIC_PSRAW,+    ZYDIS_MNEMONIC_PSRLD,+    ZYDIS_MNEMONIC_PSRLDQ,+    ZYDIS_MNEMONIC_PSRLQ,+    ZYDIS_MNEMONIC_PSRLW,+    ZYDIS_MNEMONIC_PSUBB,+    ZYDIS_MNEMONIC_PSUBD,+    ZYDIS_MNEMONIC_PSUBQ,+    ZYDIS_MNEMONIC_PSUBSB,+    ZYDIS_MNEMONIC_PSUBSW,+    ZYDIS_MNEMONIC_PSUBUSB,+    ZYDIS_MNEMONIC_PSUBUSW,+    ZYDIS_MNEMONIC_PSUBW,+    ZYDIS_MNEMONIC_PSWAPD,+    ZYDIS_MNEMONIC_PTEST,+    ZYDIS_MNEMONIC_PTWRITE,+    ZYDIS_MNEMONIC_PUNPCKHBW,+    ZYDIS_MNEMONIC_PUNPCKHDQ,+    ZYDIS_MNEMONIC_PUNPCKHQDQ,+    ZYDIS_MNEMONIC_PUNPCKHWD,+    ZYDIS_MNEMONIC_PUNPCKLBW,+    ZYDIS_MNEMONIC_PUNPCKLDQ,+    ZYDIS_MNEMONIC_PUNPCKLQDQ,+    ZYDIS_MNEMONIC_PUNPCKLWD,+    ZYDIS_MNEMONIC_PUSH,+    ZYDIS_MNEMONIC_PUSHA,+    ZYDIS_MNEMONIC_PUSHAD,+    ZYDIS_MNEMONIC_PUSHF,+    ZYDIS_MNEMONIC_PUSHFD,+    ZYDIS_MNEMONIC_PUSHFQ,+    ZYDIS_MNEMONIC_PXOR,+    ZYDIS_MNEMONIC_RCL,+    ZYDIS_MNEMONIC_RCPPS,+    ZYDIS_MNEMONIC_RCPSS,+    ZYDIS_MNEMONIC_RCR,+    ZYDIS_MNEMONIC_RDFSBASE,+    ZYDIS_MNEMONIC_RDGSBASE,+    ZYDIS_MNEMONIC_RDMSR,+    ZYDIS_MNEMONIC_RDPID,+    ZYDIS_MNEMONIC_RDPKRU,+    ZYDIS_MNEMONIC_RDPMC,+    ZYDIS_MNEMONIC_RDPRU,+    ZYDIS_MNEMONIC_RDRAND,+    ZYDIS_MNEMONIC_RDSEED,+    ZYDIS_MNEMONIC_RDSSPD,+    ZYDIS_MNEMONIC_RDSSPQ,+    ZYDIS_MNEMONIC_RDTSC,+    ZYDIS_MNEMONIC_RDTSCP,+    ZYDIS_MNEMONIC_RET,+    ZYDIS_MNEMONIC_ROL,+    ZYDIS_MNEMONIC_ROR,+    ZYDIS_MNEMONIC_RORX,+    ZYDIS_MNEMONIC_ROUNDPD,+    ZYDIS_MNEMONIC_ROUNDPS,+    ZYDIS_MNEMONIC_ROUNDSD,+    ZYDIS_MNEMONIC_ROUNDSS,+    ZYDIS_MNEMONIC_RSM,+    ZYDIS_MNEMONIC_RSQRTPS,+    ZYDIS_MNEMONIC_RSQRTSS,+    ZYDIS_MNEMONIC_RSTORSSP,+    ZYDIS_MNEMONIC_SAHF,+    ZYDIS_MNEMONIC_SALC,+    ZYDIS_MNEMONIC_SAR,+    ZYDIS_MNEMONIC_SARX,+    ZYDIS_MNEMONIC_SAVEPREVSSP,+    ZYDIS_MNEMONIC_SBB,+    ZYDIS_MNEMONIC_SCASB,+    ZYDIS_MNEMONIC_SCASD,+    ZYDIS_MNEMONIC_SCASQ,+    ZYDIS_MNEMONIC_SCASW,+    ZYDIS_MNEMONIC_SETB,+    ZYDIS_MNEMONIC_SETBE,+    ZYDIS_MNEMONIC_SETL,+    ZYDIS_MNEMONIC_SETLE,+    ZYDIS_MNEMONIC_SETNB,+    ZYDIS_MNEMONIC_SETNBE,+    ZYDIS_MNEMONIC_SETNL,+    ZYDIS_MNEMONIC_SETNLE,+    ZYDIS_MNEMONIC_SETNO,+    ZYDIS_MNEMONIC_SETNP,+    ZYDIS_MNEMONIC_SETNS,+    ZYDIS_MNEMONIC_SETNZ,+    ZYDIS_MNEMONIC_SETO,+    ZYDIS_MNEMONIC_SETP,+    ZYDIS_MNEMONIC_SETS,+    ZYDIS_MNEMONIC_SETSSBSY,+    ZYDIS_MNEMONIC_SETZ,+    ZYDIS_MNEMONIC_SFENCE,+    ZYDIS_MNEMONIC_SGDT,+    ZYDIS_MNEMONIC_SHA1MSG1,+    ZYDIS_MNEMONIC_SHA1MSG2,+    ZYDIS_MNEMONIC_SHA1NEXTE,+    ZYDIS_MNEMONIC_SHA1RNDS4,+    ZYDIS_MNEMONIC_SHA256MSG1,+    ZYDIS_MNEMONIC_SHA256MSG2,+    ZYDIS_MNEMONIC_SHA256RNDS2,+    ZYDIS_MNEMONIC_SHL,+    ZYDIS_MNEMONIC_SHLD,+    ZYDIS_MNEMONIC_SHLX,+    ZYDIS_MNEMONIC_SHR,+    ZYDIS_MNEMONIC_SHRD,+    ZYDIS_MNEMONIC_SHRX,+    ZYDIS_MNEMONIC_SHUFPD,+    ZYDIS_MNEMONIC_SHUFPS,+    ZYDIS_MNEMONIC_SIDT,+    ZYDIS_MNEMONIC_SKINIT,+    ZYDIS_MNEMONIC_SLDT,+    ZYDIS_MNEMONIC_SLWPCB,+    ZYDIS_MNEMONIC_SMSW,+    ZYDIS_MNEMONIC_SPFLT,+    ZYDIS_MNEMONIC_SQRTPD,+    ZYDIS_MNEMONIC_SQRTPS,+    ZYDIS_MNEMONIC_SQRTSD,+    ZYDIS_MNEMONIC_SQRTSS,+    ZYDIS_MNEMONIC_STAC,+    ZYDIS_MNEMONIC_STC,+    ZYDIS_MNEMONIC_STD,+    ZYDIS_MNEMONIC_STGI,+    ZYDIS_MNEMONIC_STI,+    ZYDIS_MNEMONIC_STMXCSR,+    ZYDIS_MNEMONIC_STOSB,+    ZYDIS_MNEMONIC_STOSD,+    ZYDIS_MNEMONIC_STOSQ,+    ZYDIS_MNEMONIC_STOSW,+    ZYDIS_MNEMONIC_STR,+    ZYDIS_MNEMONIC_SUB,+    ZYDIS_MNEMONIC_SUBPD,+    ZYDIS_MNEMONIC_SUBPS,+    ZYDIS_MNEMONIC_SUBSD,+    ZYDIS_MNEMONIC_SUBSS,+    ZYDIS_MNEMONIC_SWAPGS,+    ZYDIS_MNEMONIC_SYSCALL,+    ZYDIS_MNEMONIC_SYSENTER,+    ZYDIS_MNEMONIC_SYSEXIT,+    ZYDIS_MNEMONIC_SYSRET,+    ZYDIS_MNEMONIC_T1MSKC,+    ZYDIS_MNEMONIC_TEST,+    ZYDIS_MNEMONIC_TPAUSE,+    ZYDIS_MNEMONIC_TZCNT,+    ZYDIS_MNEMONIC_TZCNTI,+    ZYDIS_MNEMONIC_TZMSK,+    ZYDIS_MNEMONIC_UCOMISD,+    ZYDIS_MNEMONIC_UCOMISS,+    ZYDIS_MNEMONIC_UD0,+    ZYDIS_MNEMONIC_UD1,+    ZYDIS_MNEMONIC_UD2,+    ZYDIS_MNEMONIC_UMONITOR,+    ZYDIS_MNEMONIC_UMWAIT,+    ZYDIS_MNEMONIC_UNPCKHPD,+    ZYDIS_MNEMONIC_UNPCKHPS,+    ZYDIS_MNEMONIC_UNPCKLPD,+    ZYDIS_MNEMONIC_UNPCKLPS,+    ZYDIS_MNEMONIC_V4FMADDPS,+    ZYDIS_MNEMONIC_V4FMADDSS,+    ZYDIS_MNEMONIC_V4FNMADDPS,+    ZYDIS_MNEMONIC_V4FNMADDSS,+    ZYDIS_MNEMONIC_VADDNPD,+    ZYDIS_MNEMONIC_VADDNPS,+    ZYDIS_MNEMONIC_VADDPD,+    ZYDIS_MNEMONIC_VADDPS,+    ZYDIS_MNEMONIC_VADDSD,+    ZYDIS_MNEMONIC_VADDSETSPS,+    ZYDIS_MNEMONIC_VADDSS,+    ZYDIS_MNEMONIC_VADDSUBPD,+    ZYDIS_MNEMONIC_VADDSUBPS,+    ZYDIS_MNEMONIC_VAESDEC,+    ZYDIS_MNEMONIC_VAESDECLAST,+    ZYDIS_MNEMONIC_VAESENC,+    ZYDIS_MNEMONIC_VAESENCLAST,+    ZYDIS_MNEMONIC_VAESIMC,+    ZYDIS_MNEMONIC_VAESKEYGENASSIST,+    ZYDIS_MNEMONIC_VALIGND,+    ZYDIS_MNEMONIC_VALIGNQ,+    ZYDIS_MNEMONIC_VANDNPD,+    ZYDIS_MNEMONIC_VANDNPS,+    ZYDIS_MNEMONIC_VANDPD,+    ZYDIS_MNEMONIC_VANDPS,+    ZYDIS_MNEMONIC_VBLENDMPD,+    ZYDIS_MNEMONIC_VBLENDMPS,+    ZYDIS_MNEMONIC_VBLENDPD,+    ZYDIS_MNEMONIC_VBLENDPS,+    ZYDIS_MNEMONIC_VBLENDVPD,+    ZYDIS_MNEMONIC_VBLENDVPS,+    ZYDIS_MNEMONIC_VBROADCASTF128,+    ZYDIS_MNEMONIC_VBROADCASTF32X2,+    ZYDIS_MNEMONIC_VBROADCASTF32X4,+    ZYDIS_MNEMONIC_VBROADCASTF32X8,+    ZYDIS_MNEMONIC_VBROADCASTF64X2,+    ZYDIS_MNEMONIC_VBROADCASTF64X4,+    ZYDIS_MNEMONIC_VBROADCASTI128,+    ZYDIS_MNEMONIC_VBROADCASTI32X2,+    ZYDIS_MNEMONIC_VBROADCASTI32X4,+    ZYDIS_MNEMONIC_VBROADCASTI32X8,+    ZYDIS_MNEMONIC_VBROADCASTI64X2,+    ZYDIS_MNEMONIC_VBROADCASTI64X4,+    ZYDIS_MNEMONIC_VBROADCASTSD,+    ZYDIS_MNEMONIC_VBROADCASTSS,+    ZYDIS_MNEMONIC_VCMPPD,+    ZYDIS_MNEMONIC_VCMPPS,+    ZYDIS_MNEMONIC_VCMPSD,+    ZYDIS_MNEMONIC_VCMPSS,+    ZYDIS_MNEMONIC_VCOMISD,+    ZYDIS_MNEMONIC_VCOMISS,+    ZYDIS_MNEMONIC_VCOMPRESSPD,+    ZYDIS_MNEMONIC_VCOMPRESSPS,+    ZYDIS_MNEMONIC_VCVTDQ2PD,+    ZYDIS_MNEMONIC_VCVTDQ2PS,+    ZYDIS_MNEMONIC_VCVTFXPNTDQ2PS,+    ZYDIS_MNEMONIC_VCVTFXPNTPD2DQ,+    ZYDIS_MNEMONIC_VCVTFXPNTPD2UDQ,+    ZYDIS_MNEMONIC_VCVTFXPNTPS2DQ,+    ZYDIS_MNEMONIC_VCVTFXPNTPS2UDQ,+    ZYDIS_MNEMONIC_VCVTFXPNTUDQ2PS,+    ZYDIS_MNEMONIC_VCVTNE2PS2BF16,+    ZYDIS_MNEMONIC_VCVTNEPS2BF16,+    ZYDIS_MNEMONIC_VCVTPD2DQ,+    ZYDIS_MNEMONIC_VCVTPD2PS,+    ZYDIS_MNEMONIC_VCVTPD2QQ,+    ZYDIS_MNEMONIC_VCVTPD2UDQ,+    ZYDIS_MNEMONIC_VCVTPD2UQQ,+    ZYDIS_MNEMONIC_VCVTPH2PS,+    ZYDIS_MNEMONIC_VCVTPS2DQ,+    ZYDIS_MNEMONIC_VCVTPS2PD,+    ZYDIS_MNEMONIC_VCVTPS2PH,+    ZYDIS_MNEMONIC_VCVTPS2QQ,+    ZYDIS_MNEMONIC_VCVTPS2UDQ,+    ZYDIS_MNEMONIC_VCVTPS2UQQ,+    ZYDIS_MNEMONIC_VCVTQQ2PD,+    ZYDIS_MNEMONIC_VCVTQQ2PS,+    ZYDIS_MNEMONIC_VCVTSD2SI,+    ZYDIS_MNEMONIC_VCVTSD2SS,+    ZYDIS_MNEMONIC_VCVTSD2USI,+    ZYDIS_MNEMONIC_VCVTSI2SD,+    ZYDIS_MNEMONIC_VCVTSI2SS,+    ZYDIS_MNEMONIC_VCVTSS2SD,+    ZYDIS_MNEMONIC_VCVTSS2SI,+    ZYDIS_MNEMONIC_VCVTSS2USI,+    ZYDIS_MNEMONIC_VCVTTPD2DQ,+    ZYDIS_MNEMONIC_VCVTTPD2QQ,+    ZYDIS_MNEMONIC_VCVTTPD2UDQ,+    ZYDIS_MNEMONIC_VCVTTPD2UQQ,+    ZYDIS_MNEMONIC_VCVTTPS2DQ,+    ZYDIS_MNEMONIC_VCVTTPS2QQ,+    ZYDIS_MNEMONIC_VCVTTPS2UDQ,+    ZYDIS_MNEMONIC_VCVTTPS2UQQ,+    ZYDIS_MNEMONIC_VCVTTSD2SI,+    ZYDIS_MNEMONIC_VCVTTSD2USI,+    ZYDIS_MNEMONIC_VCVTTSS2SI,+    ZYDIS_MNEMONIC_VCVTTSS2USI,+    ZYDIS_MNEMONIC_VCVTUDQ2PD,+    ZYDIS_MNEMONIC_VCVTUDQ2PS,+    ZYDIS_MNEMONIC_VCVTUQQ2PD,+    ZYDIS_MNEMONIC_VCVTUQQ2PS,+    ZYDIS_MNEMONIC_VCVTUSI2SD,+    ZYDIS_MNEMONIC_VCVTUSI2SS,+    ZYDIS_MNEMONIC_VDBPSADBW,+    ZYDIS_MNEMONIC_VDIVPD,+    ZYDIS_MNEMONIC_VDIVPS,+    ZYDIS_MNEMONIC_VDIVSD,+    ZYDIS_MNEMONIC_VDIVSS,+    ZYDIS_MNEMONIC_VDPBF16PS,+    ZYDIS_MNEMONIC_VDPPD,+    ZYDIS_MNEMONIC_VDPPS,+    ZYDIS_MNEMONIC_VERR,+    ZYDIS_MNEMONIC_VERW,+    ZYDIS_MNEMONIC_VEXP223PS,+    ZYDIS_MNEMONIC_VEXP2PD,+    ZYDIS_MNEMONIC_VEXP2PS,+    ZYDIS_MNEMONIC_VEXPANDPD,+    ZYDIS_MNEMONIC_VEXPANDPS,+    ZYDIS_MNEMONIC_VEXTRACTF128,+    ZYDIS_MNEMONIC_VEXTRACTF32X4,+    ZYDIS_MNEMONIC_VEXTRACTF32X8,+    ZYDIS_MNEMONIC_VEXTRACTF64X2,+    ZYDIS_MNEMONIC_VEXTRACTF64X4,+    ZYDIS_MNEMONIC_VEXTRACTI128,+    ZYDIS_MNEMONIC_VEXTRACTI32X4,+    ZYDIS_MNEMONIC_VEXTRACTI32X8,+    ZYDIS_MNEMONIC_VEXTRACTI64X2,+    ZYDIS_MNEMONIC_VEXTRACTI64X4,+    ZYDIS_MNEMONIC_VEXTRACTPS,+    ZYDIS_MNEMONIC_VFIXUPIMMPD,+    ZYDIS_MNEMONIC_VFIXUPIMMPS,+    ZYDIS_MNEMONIC_VFIXUPIMMSD,+    ZYDIS_MNEMONIC_VFIXUPIMMSS,+    ZYDIS_MNEMONIC_VFIXUPNANPD,+    ZYDIS_MNEMONIC_VFIXUPNANPS,+    ZYDIS_MNEMONIC_VFMADD132PD,+    ZYDIS_MNEMONIC_VFMADD132PS,+    ZYDIS_MNEMONIC_VFMADD132SD,+    ZYDIS_MNEMONIC_VFMADD132SS,+    ZYDIS_MNEMONIC_VFMADD213PD,+    ZYDIS_MNEMONIC_VFMADD213PS,+    ZYDIS_MNEMONIC_VFMADD213SD,+    ZYDIS_MNEMONIC_VFMADD213SS,+    ZYDIS_MNEMONIC_VFMADD231PD,+    ZYDIS_MNEMONIC_VFMADD231PS,+    ZYDIS_MNEMONIC_VFMADD231SD,+    ZYDIS_MNEMONIC_VFMADD231SS,+    ZYDIS_MNEMONIC_VFMADD233PS,+    ZYDIS_MNEMONIC_VFMADDPD,+    ZYDIS_MNEMONIC_VFMADDPS,+    ZYDIS_MNEMONIC_VFMADDSD,+    ZYDIS_MNEMONIC_VFMADDSS,+    ZYDIS_MNEMONIC_VFMADDSUB132PD,+    ZYDIS_MNEMONIC_VFMADDSUB132PS,+    ZYDIS_MNEMONIC_VFMADDSUB213PD,+    ZYDIS_MNEMONIC_VFMADDSUB213PS,+    ZYDIS_MNEMONIC_VFMADDSUB231PD,+    ZYDIS_MNEMONIC_VFMADDSUB231PS,+    ZYDIS_MNEMONIC_VFMADDSUBPD,+    ZYDIS_MNEMONIC_VFMADDSUBPS,+    ZYDIS_MNEMONIC_VFMSUB132PD,+    ZYDIS_MNEMONIC_VFMSUB132PS,+    ZYDIS_MNEMONIC_VFMSUB132SD,+    ZYDIS_MNEMONIC_VFMSUB132SS,+    ZYDIS_MNEMONIC_VFMSUB213PD,+    ZYDIS_MNEMONIC_VFMSUB213PS,+    ZYDIS_MNEMONIC_VFMSUB213SD,+    ZYDIS_MNEMONIC_VFMSUB213SS,+    ZYDIS_MNEMONIC_VFMSUB231PD,+    ZYDIS_MNEMONIC_VFMSUB231PS,+    ZYDIS_MNEMONIC_VFMSUB231SD,+    ZYDIS_MNEMONIC_VFMSUB231SS,+    ZYDIS_MNEMONIC_VFMSUBADD132PD,+    ZYDIS_MNEMONIC_VFMSUBADD132PS,+    ZYDIS_MNEMONIC_VFMSUBADD213PD,+    ZYDIS_MNEMONIC_VFMSUBADD213PS,+    ZYDIS_MNEMONIC_VFMSUBADD231PD,+    ZYDIS_MNEMONIC_VFMSUBADD231PS,+    ZYDIS_MNEMONIC_VFMSUBADDPD,+    ZYDIS_MNEMONIC_VFMSUBADDPS,+    ZYDIS_MNEMONIC_VFMSUBPD,+    ZYDIS_MNEMONIC_VFMSUBPS,+    ZYDIS_MNEMONIC_VFMSUBSD,+    ZYDIS_MNEMONIC_VFMSUBSS,+    ZYDIS_MNEMONIC_VFNMADD132PD,+    ZYDIS_MNEMONIC_VFNMADD132PS,+    ZYDIS_MNEMONIC_VFNMADD132SD,+    ZYDIS_MNEMONIC_VFNMADD132SS,+    ZYDIS_MNEMONIC_VFNMADD213PD,+    ZYDIS_MNEMONIC_VFNMADD213PS,+    ZYDIS_MNEMONIC_VFNMADD213SD,+    ZYDIS_MNEMONIC_VFNMADD213SS,+    ZYDIS_MNEMONIC_VFNMADD231PD,+    ZYDIS_MNEMONIC_VFNMADD231PS,+    ZYDIS_MNEMONIC_VFNMADD231SD,+    ZYDIS_MNEMONIC_VFNMADD231SS,+    ZYDIS_MNEMONIC_VFNMADDPD,+    ZYDIS_MNEMONIC_VFNMADDPS,+    ZYDIS_MNEMONIC_VFNMADDSD,+    ZYDIS_MNEMONIC_VFNMADDSS,+    ZYDIS_MNEMONIC_VFNMSUB132PD,+    ZYDIS_MNEMONIC_VFNMSUB132PS,+    ZYDIS_MNEMONIC_VFNMSUB132SD,+    ZYDIS_MNEMONIC_VFNMSUB132SS,+    ZYDIS_MNEMONIC_VFNMSUB213PD,+    ZYDIS_MNEMONIC_VFNMSUB213PS,+    ZYDIS_MNEMONIC_VFNMSUB213SD,+    ZYDIS_MNEMONIC_VFNMSUB213SS,+    ZYDIS_MNEMONIC_VFNMSUB231PD,+    ZYDIS_MNEMONIC_VFNMSUB231PS,+    ZYDIS_MNEMONIC_VFNMSUB231SD,+    ZYDIS_MNEMONIC_VFNMSUB231SS,+    ZYDIS_MNEMONIC_VFNMSUBPD,+    ZYDIS_MNEMONIC_VFNMSUBPS,+    ZYDIS_MNEMONIC_VFNMSUBSD,+    ZYDIS_MNEMONIC_VFNMSUBSS,+    ZYDIS_MNEMONIC_VFPCLASSPD,+    ZYDIS_MNEMONIC_VFPCLASSPS,+    ZYDIS_MNEMONIC_VFPCLASSSD,+    ZYDIS_MNEMONIC_VFPCLASSSS,+    ZYDIS_MNEMONIC_VFRCZPD,+    ZYDIS_MNEMONIC_VFRCZPS,+    ZYDIS_MNEMONIC_VFRCZSD,+    ZYDIS_MNEMONIC_VFRCZSS,+    ZYDIS_MNEMONIC_VGATHERDPD,+    ZYDIS_MNEMONIC_VGATHERDPS,+    ZYDIS_MNEMONIC_VGATHERPF0DPD,+    ZYDIS_MNEMONIC_VGATHERPF0DPS,+    ZYDIS_MNEMONIC_VGATHERPF0HINTDPD,+    ZYDIS_MNEMONIC_VGATHERPF0HINTDPS,+    ZYDIS_MNEMONIC_VGATHERPF0QPD,+    ZYDIS_MNEMONIC_VGATHERPF0QPS,+    ZYDIS_MNEMONIC_VGATHERPF1DPD,+    ZYDIS_MNEMONIC_VGATHERPF1DPS,+    ZYDIS_MNEMONIC_VGATHERPF1QPD,+    ZYDIS_MNEMONIC_VGATHERPF1QPS,+    ZYDIS_MNEMONIC_VGATHERQPD,+    ZYDIS_MNEMONIC_VGATHERQPS,+    ZYDIS_MNEMONIC_VGETEXPPD,+    ZYDIS_MNEMONIC_VGETEXPPS,+    ZYDIS_MNEMONIC_VGETEXPSD,+    ZYDIS_MNEMONIC_VGETEXPSS,+    ZYDIS_MNEMONIC_VGETMANTPD,+    ZYDIS_MNEMONIC_VGETMANTPS,+    ZYDIS_MNEMONIC_VGETMANTSD,+    ZYDIS_MNEMONIC_VGETMANTSS,+    ZYDIS_MNEMONIC_VGF2P8AFFINEINVQB,+    ZYDIS_MNEMONIC_VGF2P8AFFINEQB,+    ZYDIS_MNEMONIC_VGF2P8MULB,+    ZYDIS_MNEMONIC_VGMAXABSPS,+    ZYDIS_MNEMONIC_VGMAXPD,+    ZYDIS_MNEMONIC_VGMAXPS,+    ZYDIS_MNEMONIC_VGMINPD,+    ZYDIS_MNEMONIC_VGMINPS,+    ZYDIS_MNEMONIC_VHADDPD,+    ZYDIS_MNEMONIC_VHADDPS,+    ZYDIS_MNEMONIC_VHSUBPD,+    ZYDIS_MNEMONIC_VHSUBPS,+    ZYDIS_MNEMONIC_VINSERTF128,+    ZYDIS_MNEMONIC_VINSERTF32X4,+    ZYDIS_MNEMONIC_VINSERTF32X8,+    ZYDIS_MNEMONIC_VINSERTF64X2,+    ZYDIS_MNEMONIC_VINSERTF64X4,+    ZYDIS_MNEMONIC_VINSERTI128,+    ZYDIS_MNEMONIC_VINSERTI32X4,+    ZYDIS_MNEMONIC_VINSERTI32X8,+    ZYDIS_MNEMONIC_VINSERTI64X2,+    ZYDIS_MNEMONIC_VINSERTI64X4,+    ZYDIS_MNEMONIC_VINSERTPS,+    ZYDIS_MNEMONIC_VLDDQU,+    ZYDIS_MNEMONIC_VLDMXCSR,+    ZYDIS_MNEMONIC_VLOADUNPACKHD,+    ZYDIS_MNEMONIC_VLOADUNPACKHPD,+    ZYDIS_MNEMONIC_VLOADUNPACKHPS,+    ZYDIS_MNEMONIC_VLOADUNPACKHQ,+    ZYDIS_MNEMONIC_VLOADUNPACKLD,+    ZYDIS_MNEMONIC_VLOADUNPACKLPD,+    ZYDIS_MNEMONIC_VLOADUNPACKLPS,+    ZYDIS_MNEMONIC_VLOADUNPACKLQ,+    ZYDIS_MNEMONIC_VLOG2PS,+    ZYDIS_MNEMONIC_VMASKMOVDQU,+    ZYDIS_MNEMONIC_VMASKMOVPD,+    ZYDIS_MNEMONIC_VMASKMOVPS,+    ZYDIS_MNEMONIC_VMAXPD,+    ZYDIS_MNEMONIC_VMAXPS,+    ZYDIS_MNEMONIC_VMAXSD,+    ZYDIS_MNEMONIC_VMAXSS,+    ZYDIS_MNEMONIC_VMCALL,+    ZYDIS_MNEMONIC_VMCLEAR,+    ZYDIS_MNEMONIC_VMFUNC,+    ZYDIS_MNEMONIC_VMINPD,+    ZYDIS_MNEMONIC_VMINPS,+    ZYDIS_MNEMONIC_VMINSD,+    ZYDIS_MNEMONIC_VMINSS,+    ZYDIS_MNEMONIC_VMLAUNCH,+    ZYDIS_MNEMONIC_VMLOAD,+    ZYDIS_MNEMONIC_VMMCALL,+    ZYDIS_MNEMONIC_VMOVAPD,+    ZYDIS_MNEMONIC_VMOVAPS,+    ZYDIS_MNEMONIC_VMOVD,+    ZYDIS_MNEMONIC_VMOVDDUP,+    ZYDIS_MNEMONIC_VMOVDQA,+    ZYDIS_MNEMONIC_VMOVDQA32,+    ZYDIS_MNEMONIC_VMOVDQA64,+    ZYDIS_MNEMONIC_VMOVDQU,+    ZYDIS_MNEMONIC_VMOVDQU16,+    ZYDIS_MNEMONIC_VMOVDQU32,+    ZYDIS_MNEMONIC_VMOVDQU64,+    ZYDIS_MNEMONIC_VMOVDQU8,+    ZYDIS_MNEMONIC_VMOVHLPS,+    ZYDIS_MNEMONIC_VMOVHPD,+    ZYDIS_MNEMONIC_VMOVHPS,+    ZYDIS_MNEMONIC_VMOVLHPS,+    ZYDIS_MNEMONIC_VMOVLPD,+    ZYDIS_MNEMONIC_VMOVLPS,+    ZYDIS_MNEMONIC_VMOVMSKPD,+    ZYDIS_MNEMONIC_VMOVMSKPS,+    ZYDIS_MNEMONIC_VMOVNRAPD,+    ZYDIS_MNEMONIC_VMOVNRAPS,+    ZYDIS_MNEMONIC_VMOVNRNGOAPD,+    ZYDIS_MNEMONIC_VMOVNRNGOAPS,+    ZYDIS_MNEMONIC_VMOVNTDQ,+    ZYDIS_MNEMONIC_VMOVNTDQA,+    ZYDIS_MNEMONIC_VMOVNTPD,+    ZYDIS_MNEMONIC_VMOVNTPS,+    ZYDIS_MNEMONIC_VMOVQ,+    ZYDIS_MNEMONIC_VMOVSD,+    ZYDIS_MNEMONIC_VMOVSHDUP,+    ZYDIS_MNEMONIC_VMOVSLDUP,+    ZYDIS_MNEMONIC_VMOVSS,+    ZYDIS_MNEMONIC_VMOVUPD,+    ZYDIS_MNEMONIC_VMOVUPS,+    ZYDIS_MNEMONIC_VMPSADBW,+    ZYDIS_MNEMONIC_VMPTRLD,+    ZYDIS_MNEMONIC_VMPTRST,+    ZYDIS_MNEMONIC_VMREAD,+    ZYDIS_MNEMONIC_VMRESUME,+    ZYDIS_MNEMONIC_VMRUN,+    ZYDIS_MNEMONIC_VMSAVE,+    ZYDIS_MNEMONIC_VMULPD,+    ZYDIS_MNEMONIC_VMULPS,+    ZYDIS_MNEMONIC_VMULSD,+    ZYDIS_MNEMONIC_VMULSS,+    ZYDIS_MNEMONIC_VMWRITE,+    ZYDIS_MNEMONIC_VMXOFF,+    ZYDIS_MNEMONIC_VMXON,+    ZYDIS_MNEMONIC_VORPD,+    ZYDIS_MNEMONIC_VORPS,+    ZYDIS_MNEMONIC_VP2INTERSECTD,+    ZYDIS_MNEMONIC_VP2INTERSECTQ,+    ZYDIS_MNEMONIC_VP4DPWSSD,+    ZYDIS_MNEMONIC_VP4DPWSSDS,+    ZYDIS_MNEMONIC_VPABSB,+    ZYDIS_MNEMONIC_VPABSD,+    ZYDIS_MNEMONIC_VPABSQ,+    ZYDIS_MNEMONIC_VPABSW,+    ZYDIS_MNEMONIC_VPACKSSDW,+    ZYDIS_MNEMONIC_VPACKSSWB,+    ZYDIS_MNEMONIC_VPACKSTOREHD,+    ZYDIS_MNEMONIC_VPACKSTOREHPD,+    ZYDIS_MNEMONIC_VPACKSTOREHPS,+    ZYDIS_MNEMONIC_VPACKSTOREHQ,+    ZYDIS_MNEMONIC_VPACKSTORELD,+    ZYDIS_MNEMONIC_VPACKSTORELPD,+    ZYDIS_MNEMONIC_VPACKSTORELPS,+    ZYDIS_MNEMONIC_VPACKSTORELQ,+    ZYDIS_MNEMONIC_VPACKUSDW,+    ZYDIS_MNEMONIC_VPACKUSWB,+    ZYDIS_MNEMONIC_VPADCD,+    ZYDIS_MNEMONIC_VPADDB,+    ZYDIS_MNEMONIC_VPADDD,+    ZYDIS_MNEMONIC_VPADDQ,+    ZYDIS_MNEMONIC_VPADDSB,+    ZYDIS_MNEMONIC_VPADDSETCD,+    ZYDIS_MNEMONIC_VPADDSETSD,+    ZYDIS_MNEMONIC_VPADDSW,+    ZYDIS_MNEMONIC_VPADDUSB,+    ZYDIS_MNEMONIC_VPADDUSW,+    ZYDIS_MNEMONIC_VPADDW,+    ZYDIS_MNEMONIC_VPALIGNR,+    ZYDIS_MNEMONIC_VPAND,+    ZYDIS_MNEMONIC_VPANDD,+    ZYDIS_MNEMONIC_VPANDN,+    ZYDIS_MNEMONIC_VPANDND,+    ZYDIS_MNEMONIC_VPANDNQ,+    ZYDIS_MNEMONIC_VPANDQ,+    ZYDIS_MNEMONIC_VPAVGB,+    ZYDIS_MNEMONIC_VPAVGW,+    ZYDIS_MNEMONIC_VPBLENDD,+    ZYDIS_MNEMONIC_VPBLENDMB,+    ZYDIS_MNEMONIC_VPBLENDMD,+    ZYDIS_MNEMONIC_VPBLENDMQ,+    ZYDIS_MNEMONIC_VPBLENDMW,+    ZYDIS_MNEMONIC_VPBLENDVB,+    ZYDIS_MNEMONIC_VPBLENDW,+    ZYDIS_MNEMONIC_VPBROADCASTB,+    ZYDIS_MNEMONIC_VPBROADCASTD,+    ZYDIS_MNEMONIC_VPBROADCASTMB2Q,+    ZYDIS_MNEMONIC_VPBROADCASTMW2D,+    ZYDIS_MNEMONIC_VPBROADCASTQ,+    ZYDIS_MNEMONIC_VPBROADCASTW,+    ZYDIS_MNEMONIC_VPCLMULQDQ,+    ZYDIS_MNEMONIC_VPCMOV,+    ZYDIS_MNEMONIC_VPCMPB,+    ZYDIS_MNEMONIC_VPCMPD,+    ZYDIS_MNEMONIC_VPCMPEQB,+    ZYDIS_MNEMONIC_VPCMPEQD,+    ZYDIS_MNEMONIC_VPCMPEQQ,+    ZYDIS_MNEMONIC_VPCMPEQW,+    ZYDIS_MNEMONIC_VPCMPESTRI,+    ZYDIS_MNEMONIC_VPCMPESTRM,+    ZYDIS_MNEMONIC_VPCMPGTB,+    ZYDIS_MNEMONIC_VPCMPGTD,+    ZYDIS_MNEMONIC_VPCMPGTQ,+    ZYDIS_MNEMONIC_VPCMPGTW,+    ZYDIS_MNEMONIC_VPCMPISTRI,+    ZYDIS_MNEMONIC_VPCMPISTRM,+    ZYDIS_MNEMONIC_VPCMPLTD,+    ZYDIS_MNEMONIC_VPCMPQ,+    ZYDIS_MNEMONIC_VPCMPUB,+    ZYDIS_MNEMONIC_VPCMPUD,+    ZYDIS_MNEMONIC_VPCMPUQ,+    ZYDIS_MNEMONIC_VPCMPUW,+    ZYDIS_MNEMONIC_VPCMPW,+    ZYDIS_MNEMONIC_VPCOMB,+    ZYDIS_MNEMONIC_VPCOMD,+    ZYDIS_MNEMONIC_VPCOMPRESSB,+    ZYDIS_MNEMONIC_VPCOMPRESSD,+    ZYDIS_MNEMONIC_VPCOMPRESSQ,+    ZYDIS_MNEMONIC_VPCOMPRESSW,+    ZYDIS_MNEMONIC_VPCOMQ,+    ZYDIS_MNEMONIC_VPCOMUB,+    ZYDIS_MNEMONIC_VPCOMUD,+    ZYDIS_MNEMONIC_VPCOMUQ,+    ZYDIS_MNEMONIC_VPCOMUW,+    ZYDIS_MNEMONIC_VPCOMW,+    ZYDIS_MNEMONIC_VPCONFLICTD,+    ZYDIS_MNEMONIC_VPCONFLICTQ,+    ZYDIS_MNEMONIC_VPDPBUSD,+    ZYDIS_MNEMONIC_VPDPBUSDS,+    ZYDIS_MNEMONIC_VPDPWSSD,+    ZYDIS_MNEMONIC_VPDPWSSDS,+    ZYDIS_MNEMONIC_VPERM2F128,+    ZYDIS_MNEMONIC_VPERM2I128,+    ZYDIS_MNEMONIC_VPERMB,+    ZYDIS_MNEMONIC_VPERMD,+    ZYDIS_MNEMONIC_VPERMF32X4,+    ZYDIS_MNEMONIC_VPERMI2B,+    ZYDIS_MNEMONIC_VPERMI2D,+    ZYDIS_MNEMONIC_VPERMI2PD,+    ZYDIS_MNEMONIC_VPERMI2PS,+    ZYDIS_MNEMONIC_VPERMI2Q,+    ZYDIS_MNEMONIC_VPERMI2W,+    ZYDIS_MNEMONIC_VPERMIL2PD,+    ZYDIS_MNEMONIC_VPERMIL2PS,+    ZYDIS_MNEMONIC_VPERMILPD,+    ZYDIS_MNEMONIC_VPERMILPS,+    ZYDIS_MNEMONIC_VPERMPD,+    ZYDIS_MNEMONIC_VPERMPS,+    ZYDIS_MNEMONIC_VPERMQ,+    ZYDIS_MNEMONIC_VPERMT2B,+    ZYDIS_MNEMONIC_VPERMT2D,+    ZYDIS_MNEMONIC_VPERMT2PD,+    ZYDIS_MNEMONIC_VPERMT2PS,+    ZYDIS_MNEMONIC_VPERMT2Q,+    ZYDIS_MNEMONIC_VPERMT2W,+    ZYDIS_MNEMONIC_VPERMW,+    ZYDIS_MNEMONIC_VPEXPANDB,+    ZYDIS_MNEMONIC_VPEXPANDD,+    ZYDIS_MNEMONIC_VPEXPANDQ,+    ZYDIS_MNEMONIC_VPEXPANDW,+    ZYDIS_MNEMONIC_VPEXTRB,+    ZYDIS_MNEMONIC_VPEXTRD,+    ZYDIS_MNEMONIC_VPEXTRQ,+    ZYDIS_MNEMONIC_VPEXTRW,+    ZYDIS_MNEMONIC_VPGATHERDD,+    ZYDIS_MNEMONIC_VPGATHERDQ,+    ZYDIS_MNEMONIC_VPGATHERQD,+    ZYDIS_MNEMONIC_VPGATHERQQ,+    ZYDIS_MNEMONIC_VPHADDBD,+    ZYDIS_MNEMONIC_VPHADDBQ,+    ZYDIS_MNEMONIC_VPHADDBW,+    ZYDIS_MNEMONIC_VPHADDD,+    ZYDIS_MNEMONIC_VPHADDDQ,+    ZYDIS_MNEMONIC_VPHADDSW,+    ZYDIS_MNEMONIC_VPHADDUBD,+    ZYDIS_MNEMONIC_VPHADDUBQ,+    ZYDIS_MNEMONIC_VPHADDUBW,+    ZYDIS_MNEMONIC_VPHADDUDQ,+    ZYDIS_MNEMONIC_VPHADDUWD,+    ZYDIS_MNEMONIC_VPHADDUWQ,+    ZYDIS_MNEMONIC_VPHADDW,+    ZYDIS_MNEMONIC_VPHADDWD,+    ZYDIS_MNEMONIC_VPHADDWQ,+    ZYDIS_MNEMONIC_VPHMINPOSUW,+    ZYDIS_MNEMONIC_VPHSUBBW,+    ZYDIS_MNEMONIC_VPHSUBD,+    ZYDIS_MNEMONIC_VPHSUBDQ,+    ZYDIS_MNEMONIC_VPHSUBSW,+    ZYDIS_MNEMONIC_VPHSUBW,+    ZYDIS_MNEMONIC_VPHSUBWD,+    ZYDIS_MNEMONIC_VPINSRB,+    ZYDIS_MNEMONIC_VPINSRD,+    ZYDIS_MNEMONIC_VPINSRQ,+    ZYDIS_MNEMONIC_VPINSRW,+    ZYDIS_MNEMONIC_VPLZCNTD,+    ZYDIS_MNEMONIC_VPLZCNTQ,+    ZYDIS_MNEMONIC_VPMACSDD,+    ZYDIS_MNEMONIC_VPMACSDQH,+    ZYDIS_MNEMONIC_VPMACSDQL,+    ZYDIS_MNEMONIC_VPMACSSDD,+    ZYDIS_MNEMONIC_VPMACSSDQH,+    ZYDIS_MNEMONIC_VPMACSSDQL,+    ZYDIS_MNEMONIC_VPMACSSWD,+    ZYDIS_MNEMONIC_VPMACSSWW,+    ZYDIS_MNEMONIC_VPMACSWD,+    ZYDIS_MNEMONIC_VPMACSWW,+    ZYDIS_MNEMONIC_VPMADCSSWD,+    ZYDIS_MNEMONIC_VPMADCSWD,+    ZYDIS_MNEMONIC_VPMADD231D,+    ZYDIS_MNEMONIC_VPMADD233D,+    ZYDIS_MNEMONIC_VPMADD52HUQ,+    ZYDIS_MNEMONIC_VPMADD52LUQ,+    ZYDIS_MNEMONIC_VPMADDUBSW,+    ZYDIS_MNEMONIC_VPMADDWD,+    ZYDIS_MNEMONIC_VPMASKMOVD,+    ZYDIS_MNEMONIC_VPMASKMOVQ,+    ZYDIS_MNEMONIC_VPMAXSB,+    ZYDIS_MNEMONIC_VPMAXSD,+    ZYDIS_MNEMONIC_VPMAXSQ,+    ZYDIS_MNEMONIC_VPMAXSW,+    ZYDIS_MNEMONIC_VPMAXUB,+    ZYDIS_MNEMONIC_VPMAXUD,+    ZYDIS_MNEMONIC_VPMAXUQ,+    ZYDIS_MNEMONIC_VPMAXUW,+    ZYDIS_MNEMONIC_VPMINSB,+    ZYDIS_MNEMONIC_VPMINSD,+    ZYDIS_MNEMONIC_VPMINSQ,+    ZYDIS_MNEMONIC_VPMINSW,+    ZYDIS_MNEMONIC_VPMINUB,+    ZYDIS_MNEMONIC_VPMINUD,+    ZYDIS_MNEMONIC_VPMINUQ,+    ZYDIS_MNEMONIC_VPMINUW,+    ZYDIS_MNEMONIC_VPMOVB2M,+    ZYDIS_MNEMONIC_VPMOVD2M,+    ZYDIS_MNEMONIC_VPMOVDB,+    ZYDIS_MNEMONIC_VPMOVDW,+    ZYDIS_MNEMONIC_VPMOVM2B,+    ZYDIS_MNEMONIC_VPMOVM2D,+    ZYDIS_MNEMONIC_VPMOVM2Q,+    ZYDIS_MNEMONIC_VPMOVM2W,+    ZYDIS_MNEMONIC_VPMOVMSKB,+    ZYDIS_MNEMONIC_VPMOVQ2M,+    ZYDIS_MNEMONIC_VPMOVQB,+    ZYDIS_MNEMONIC_VPMOVQD,+    ZYDIS_MNEMONIC_VPMOVQW,+    ZYDIS_MNEMONIC_VPMOVSDB,+    ZYDIS_MNEMONIC_VPMOVSDW,+    ZYDIS_MNEMONIC_VPMOVSQB,+    ZYDIS_MNEMONIC_VPMOVSQD,+    ZYDIS_MNEMONIC_VPMOVSQW,+    ZYDIS_MNEMONIC_VPMOVSWB,+    ZYDIS_MNEMONIC_VPMOVSXBD,+    ZYDIS_MNEMONIC_VPMOVSXBQ,+    ZYDIS_MNEMONIC_VPMOVSXBW,+    ZYDIS_MNEMONIC_VPMOVSXDQ,+    ZYDIS_MNEMONIC_VPMOVSXWD,+    ZYDIS_MNEMONIC_VPMOVSXWQ,+    ZYDIS_MNEMONIC_VPMOVUSDB,+    ZYDIS_MNEMONIC_VPMOVUSDW,+    ZYDIS_MNEMONIC_VPMOVUSQB,+    ZYDIS_MNEMONIC_VPMOVUSQD,+    ZYDIS_MNEMONIC_VPMOVUSQW,+    ZYDIS_MNEMONIC_VPMOVUSWB,+    ZYDIS_MNEMONIC_VPMOVW2M,+    ZYDIS_MNEMONIC_VPMOVWB,+    ZYDIS_MNEMONIC_VPMOVZXBD,+    ZYDIS_MNEMONIC_VPMOVZXBQ,+    ZYDIS_MNEMONIC_VPMOVZXBW,+    ZYDIS_MNEMONIC_VPMOVZXDQ,+    ZYDIS_MNEMONIC_VPMOVZXWD,+    ZYDIS_MNEMONIC_VPMOVZXWQ,+    ZYDIS_MNEMONIC_VPMULDQ,+    ZYDIS_MNEMONIC_VPMULHD,+    ZYDIS_MNEMONIC_VPMULHRSW,+    ZYDIS_MNEMONIC_VPMULHUD,+    ZYDIS_MNEMONIC_VPMULHUW,+    ZYDIS_MNEMONIC_VPMULHW,+    ZYDIS_MNEMONIC_VPMULLD,+    ZYDIS_MNEMONIC_VPMULLQ,+    ZYDIS_MNEMONIC_VPMULLW,+    ZYDIS_MNEMONIC_VPMULTISHIFTQB,+    ZYDIS_MNEMONIC_VPMULUDQ,+    ZYDIS_MNEMONIC_VPOPCNTB,+    ZYDIS_MNEMONIC_VPOPCNTD,+    ZYDIS_MNEMONIC_VPOPCNTQ,+    ZYDIS_MNEMONIC_VPOPCNTW,+    ZYDIS_MNEMONIC_VPOR,+    ZYDIS_MNEMONIC_VPORD,+    ZYDIS_MNEMONIC_VPORQ,+    ZYDIS_MNEMONIC_VPPERM,+    ZYDIS_MNEMONIC_VPREFETCH0,+    ZYDIS_MNEMONIC_VPREFETCH1,+    ZYDIS_MNEMONIC_VPREFETCH2,+    ZYDIS_MNEMONIC_VPREFETCHE0,+    ZYDIS_MNEMONIC_VPREFETCHE1,+    ZYDIS_MNEMONIC_VPREFETCHE2,+    ZYDIS_MNEMONIC_VPREFETCHENTA,+    ZYDIS_MNEMONIC_VPREFETCHNTA,+    ZYDIS_MNEMONIC_VPROLD,+    ZYDIS_MNEMONIC_VPROLQ,+    ZYDIS_MNEMONIC_VPROLVD,+    ZYDIS_MNEMONIC_VPROLVQ,+    ZYDIS_MNEMONIC_VPRORD,+    ZYDIS_MNEMONIC_VPRORQ,+    ZYDIS_MNEMONIC_VPRORVD,+    ZYDIS_MNEMONIC_VPRORVQ,+    ZYDIS_MNEMONIC_VPROTB,+    ZYDIS_MNEMONIC_VPROTD,+    ZYDIS_MNEMONIC_VPROTQ,+    ZYDIS_MNEMONIC_VPROTW,+    ZYDIS_MNEMONIC_VPSADBW,+    ZYDIS_MNEMONIC_VPSBBD,+    ZYDIS_MNEMONIC_VPSBBRD,+    ZYDIS_MNEMONIC_VPSCATTERDD,+    ZYDIS_MNEMONIC_VPSCATTERDQ,+    ZYDIS_MNEMONIC_VPSCATTERQD,+    ZYDIS_MNEMONIC_VPSCATTERQQ,+    ZYDIS_MNEMONIC_VPSHAB,+    ZYDIS_MNEMONIC_VPSHAD,+    ZYDIS_MNEMONIC_VPSHAQ,+    ZYDIS_MNEMONIC_VPSHAW,+    ZYDIS_MNEMONIC_VPSHLB,+    ZYDIS_MNEMONIC_VPSHLD,+    ZYDIS_MNEMONIC_VPSHLDD,+    ZYDIS_MNEMONIC_VPSHLDQ,+    ZYDIS_MNEMONIC_VPSHLDVD,+    ZYDIS_MNEMONIC_VPSHLDVQ,+    ZYDIS_MNEMONIC_VPSHLDVW,+    ZYDIS_MNEMONIC_VPSHLDW,+    ZYDIS_MNEMONIC_VPSHLQ,+    ZYDIS_MNEMONIC_VPSHLW,+    ZYDIS_MNEMONIC_VPSHRDD,+    ZYDIS_MNEMONIC_VPSHRDQ,+    ZYDIS_MNEMONIC_VPSHRDVD,+    ZYDIS_MNEMONIC_VPSHRDVQ,+    ZYDIS_MNEMONIC_VPSHRDVW,+    ZYDIS_MNEMONIC_VPSHRDW,+    ZYDIS_MNEMONIC_VPSHUFB,+    ZYDIS_MNEMONIC_VPSHUFBITQMB,+    ZYDIS_MNEMONIC_VPSHUFD,+    ZYDIS_MNEMONIC_VPSHUFHW,+    ZYDIS_MNEMONIC_VPSHUFLW,+    ZYDIS_MNEMONIC_VPSIGNB,+    ZYDIS_MNEMONIC_VPSIGND,+    ZYDIS_MNEMONIC_VPSIGNW,+    ZYDIS_MNEMONIC_VPSLLD,+    ZYDIS_MNEMONIC_VPSLLDQ,+    ZYDIS_MNEMONIC_VPSLLQ,+    ZYDIS_MNEMONIC_VPSLLVD,+    ZYDIS_MNEMONIC_VPSLLVQ,+    ZYDIS_MNEMONIC_VPSLLVW,+    ZYDIS_MNEMONIC_VPSLLW,+    ZYDIS_MNEMONIC_VPSRAD,+    ZYDIS_MNEMONIC_VPSRAQ,+    ZYDIS_MNEMONIC_VPSRAVD,+    ZYDIS_MNEMONIC_VPSRAVQ,+    ZYDIS_MNEMONIC_VPSRAVW,+    ZYDIS_MNEMONIC_VPSRAW,+    ZYDIS_MNEMONIC_VPSRLD,+    ZYDIS_MNEMONIC_VPSRLDQ,+    ZYDIS_MNEMONIC_VPSRLQ,+    ZYDIS_MNEMONIC_VPSRLVD,+    ZYDIS_MNEMONIC_VPSRLVQ,+    ZYDIS_MNEMONIC_VPSRLVW,+    ZYDIS_MNEMONIC_VPSRLW,+    ZYDIS_MNEMONIC_VPSUBB,+    ZYDIS_MNEMONIC_VPSUBD,+    ZYDIS_MNEMONIC_VPSUBQ,+    ZYDIS_MNEMONIC_VPSUBRD,+    ZYDIS_MNEMONIC_VPSUBRSETBD,+    ZYDIS_MNEMONIC_VPSUBSB,+    ZYDIS_MNEMONIC_VPSUBSETBD,+    ZYDIS_MNEMONIC_VPSUBSW,+    ZYDIS_MNEMONIC_VPSUBUSB,+    ZYDIS_MNEMONIC_VPSUBUSW,+    ZYDIS_MNEMONIC_VPSUBW,+    ZYDIS_MNEMONIC_VPTERNLOGD,+    ZYDIS_MNEMONIC_VPTERNLOGQ,+    ZYDIS_MNEMONIC_VPTEST,+    ZYDIS_MNEMONIC_VPTESTMB,+    ZYDIS_MNEMONIC_VPTESTMD,+    ZYDIS_MNEMONIC_VPTESTMQ,+    ZYDIS_MNEMONIC_VPTESTMW,+    ZYDIS_MNEMONIC_VPTESTNMB,+    ZYDIS_MNEMONIC_VPTESTNMD,+    ZYDIS_MNEMONIC_VPTESTNMQ,+    ZYDIS_MNEMONIC_VPTESTNMW,+    ZYDIS_MNEMONIC_VPUNPCKHBW,+    ZYDIS_MNEMONIC_VPUNPCKHDQ,+    ZYDIS_MNEMONIC_VPUNPCKHQDQ,+    ZYDIS_MNEMONIC_VPUNPCKHWD,+    ZYDIS_MNEMONIC_VPUNPCKLBW,+    ZYDIS_MNEMONIC_VPUNPCKLDQ,+    ZYDIS_MNEMONIC_VPUNPCKLQDQ,+    ZYDIS_MNEMONIC_VPUNPCKLWD,+    ZYDIS_MNEMONIC_VPXOR,+    ZYDIS_MNEMONIC_VPXORD,+    ZYDIS_MNEMONIC_VPXORQ,+    ZYDIS_MNEMONIC_VRANGEPD,+    ZYDIS_MNEMONIC_VRANGEPS,+    ZYDIS_MNEMONIC_VRANGESD,+    ZYDIS_MNEMONIC_VRANGESS,+    ZYDIS_MNEMONIC_VRCP14PD,+    ZYDIS_MNEMONIC_VRCP14PS,+    ZYDIS_MNEMONIC_VRCP14SD,+    ZYDIS_MNEMONIC_VRCP14SS,+    ZYDIS_MNEMONIC_VRCP23PS,+    ZYDIS_MNEMONIC_VRCP28PD,+    ZYDIS_MNEMONIC_VRCP28PS,+    ZYDIS_MNEMONIC_VRCP28SD,+    ZYDIS_MNEMONIC_VRCP28SS,+    ZYDIS_MNEMONIC_VRCPPS,+    ZYDIS_MNEMONIC_VRCPSS,+    ZYDIS_MNEMONIC_VREDUCEPD,+    ZYDIS_MNEMONIC_VREDUCEPS,+    ZYDIS_MNEMONIC_VREDUCESD,+    ZYDIS_MNEMONIC_VREDUCESS,+    ZYDIS_MNEMONIC_VRNDFXPNTPD,+    ZYDIS_MNEMONIC_VRNDFXPNTPS,+    ZYDIS_MNEMONIC_VRNDSCALEPD,+    ZYDIS_MNEMONIC_VRNDSCALEPS,+    ZYDIS_MNEMONIC_VRNDSCALESD,+    ZYDIS_MNEMONIC_VRNDSCALESS,+    ZYDIS_MNEMONIC_VROUNDPD,+    ZYDIS_MNEMONIC_VROUNDPS,+    ZYDIS_MNEMONIC_VROUNDSD,+    ZYDIS_MNEMONIC_VROUNDSS,+    ZYDIS_MNEMONIC_VRSQRT14PD,+    ZYDIS_MNEMONIC_VRSQRT14PS,+    ZYDIS_MNEMONIC_VRSQRT14SD,+    ZYDIS_MNEMONIC_VRSQRT14SS,+    ZYDIS_MNEMONIC_VRSQRT23PS,+    ZYDIS_MNEMONIC_VRSQRT28PD,+    ZYDIS_MNEMONIC_VRSQRT28PS,+    ZYDIS_MNEMONIC_VRSQRT28SD,+    ZYDIS_MNEMONIC_VRSQRT28SS,+    ZYDIS_MNEMONIC_VRSQRTPS,+    ZYDIS_MNEMONIC_VRSQRTSS,+    ZYDIS_MNEMONIC_VSCALEFPD,+    ZYDIS_MNEMONIC_VSCALEFPS,+    ZYDIS_MNEMONIC_VSCALEFSD,+    ZYDIS_MNEMONIC_VSCALEFSS,+    ZYDIS_MNEMONIC_VSCALEPS,+    ZYDIS_MNEMONIC_VSCATTERDPD,+    ZYDIS_MNEMONIC_VSCATTERDPS,+    ZYDIS_MNEMONIC_VSCATTERPF0DPD,+    ZYDIS_MNEMONIC_VSCATTERPF0DPS,+    ZYDIS_MNEMONIC_VSCATTERPF0HINTDPD,+    ZYDIS_MNEMONIC_VSCATTERPF0HINTDPS,+    ZYDIS_MNEMONIC_VSCATTERPF0QPD,+    ZYDIS_MNEMONIC_VSCATTERPF0QPS,+    ZYDIS_MNEMONIC_VSCATTERPF1DPD,+    ZYDIS_MNEMONIC_VSCATTERPF1DPS,+    ZYDIS_MNEMONIC_VSCATTERPF1QPD,+    ZYDIS_MNEMONIC_VSCATTERPF1QPS,+    ZYDIS_MNEMONIC_VSCATTERQPD,+    ZYDIS_MNEMONIC_VSCATTERQPS,+    ZYDIS_MNEMONIC_VSHUFF32X4,+    ZYDIS_MNEMONIC_VSHUFF64X2,+    ZYDIS_MNEMONIC_VSHUFI32X4,+    ZYDIS_MNEMONIC_VSHUFI64X2,+    ZYDIS_MNEMONIC_VSHUFPD,+    ZYDIS_MNEMONIC_VSHUFPS,+    ZYDIS_MNEMONIC_VSQRTPD,+    ZYDIS_MNEMONIC_VSQRTPS,+    ZYDIS_MNEMONIC_VSQRTSD,+    ZYDIS_MNEMONIC_VSQRTSS,+    ZYDIS_MNEMONIC_VSTMXCSR,+    ZYDIS_MNEMONIC_VSUBPD,+    ZYDIS_MNEMONIC_VSUBPS,+    ZYDIS_MNEMONIC_VSUBRPD,+    ZYDIS_MNEMONIC_VSUBRPS,+    ZYDIS_MNEMONIC_VSUBSD,+    ZYDIS_MNEMONIC_VSUBSS,+    ZYDIS_MNEMONIC_VTESTPD,+    ZYDIS_MNEMONIC_VTESTPS,+    ZYDIS_MNEMONIC_VUCOMISD,+    ZYDIS_MNEMONIC_VUCOMISS,+    ZYDIS_MNEMONIC_VUNPCKHPD,+    ZYDIS_MNEMONIC_VUNPCKHPS,+    ZYDIS_MNEMONIC_VUNPCKLPD,+    ZYDIS_MNEMONIC_VUNPCKLPS,+    ZYDIS_MNEMONIC_VXORPD,+    ZYDIS_MNEMONIC_VXORPS,+    ZYDIS_MNEMONIC_VZEROALL,+    ZYDIS_MNEMONIC_VZEROUPPER,+    ZYDIS_MNEMONIC_WBINVD,+    ZYDIS_MNEMONIC_WRFSBASE,+    ZYDIS_MNEMONIC_WRGSBASE,+    ZYDIS_MNEMONIC_WRMSR,+    ZYDIS_MNEMONIC_WRPKRU,+    ZYDIS_MNEMONIC_WRSSD,+    ZYDIS_MNEMONIC_WRSSQ,+    ZYDIS_MNEMONIC_WRUSSD,+    ZYDIS_MNEMONIC_WRUSSQ,+    ZYDIS_MNEMONIC_XABORT,+    ZYDIS_MNEMONIC_XADD,+    ZYDIS_MNEMONIC_XBEGIN,+    ZYDIS_MNEMONIC_XCHG,+    ZYDIS_MNEMONIC_XCRYPT_CBC,+    ZYDIS_MNEMONIC_XCRYPT_CFB,+    ZYDIS_MNEMONIC_XCRYPT_CTR,+    ZYDIS_MNEMONIC_XCRYPT_ECB,+    ZYDIS_MNEMONIC_XCRYPT_OFB,+    ZYDIS_MNEMONIC_XEND,+    ZYDIS_MNEMONIC_XGETBV,+    ZYDIS_MNEMONIC_XLAT,+    ZYDIS_MNEMONIC_XOR,+    ZYDIS_MNEMONIC_XORPD,+    ZYDIS_MNEMONIC_XORPS,+    ZYDIS_MNEMONIC_XRSTOR,+    ZYDIS_MNEMONIC_XRSTOR64,+    ZYDIS_MNEMONIC_XRSTORS,+    ZYDIS_MNEMONIC_XRSTORS64,+    ZYDIS_MNEMONIC_XSAVE,+    ZYDIS_MNEMONIC_XSAVE64,+    ZYDIS_MNEMONIC_XSAVEC,+    ZYDIS_MNEMONIC_XSAVEC64,+    ZYDIS_MNEMONIC_XSAVEOPT,+    ZYDIS_MNEMONIC_XSAVEOPT64,+    ZYDIS_MNEMONIC_XSAVES,+    ZYDIS_MNEMONIC_XSAVES64,+    ZYDIS_MNEMONIC_XSETBV,+    ZYDIS_MNEMONIC_XSHA1,+    ZYDIS_MNEMONIC_XSHA256,+    ZYDIS_MNEMONIC_XSTORE,+    ZYDIS_MNEMONIC_XTEST,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MNEMONIC_MAX_VALUE = ZYDIS_MNEMONIC_XTEST,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MNEMONIC_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MNEMONIC_MAX_VALUE)+} ZydisMnemonic;
+ external/zydis/include/Zydis/Generated/EnumRegister.h view
@@ -0,0 +1,292 @@+/**+ * Defines the `ZydisRegister` enum.+ */+typedef enum ZydisRegister_+{+    ZYDIS_REGISTER_NONE,++    // General purpose registers  8-bit+    ZYDIS_REGISTER_AL,+    ZYDIS_REGISTER_CL,+    ZYDIS_REGISTER_DL,+    ZYDIS_REGISTER_BL,+    ZYDIS_REGISTER_AH,+    ZYDIS_REGISTER_CH,+    ZYDIS_REGISTER_DH,+    ZYDIS_REGISTER_BH,+    ZYDIS_REGISTER_SPL,+    ZYDIS_REGISTER_BPL,+    ZYDIS_REGISTER_SIL,+    ZYDIS_REGISTER_DIL,+    ZYDIS_REGISTER_R8B,+    ZYDIS_REGISTER_R9B,+    ZYDIS_REGISTER_R10B,+    ZYDIS_REGISTER_R11B,+    ZYDIS_REGISTER_R12B,+    ZYDIS_REGISTER_R13B,+    ZYDIS_REGISTER_R14B,+    ZYDIS_REGISTER_R15B,+    // General purpose registers 16-bit+    ZYDIS_REGISTER_AX,+    ZYDIS_REGISTER_CX,+    ZYDIS_REGISTER_DX,+    ZYDIS_REGISTER_BX,+    ZYDIS_REGISTER_SP,+    ZYDIS_REGISTER_BP,+    ZYDIS_REGISTER_SI,+    ZYDIS_REGISTER_DI,+    ZYDIS_REGISTER_R8W,+    ZYDIS_REGISTER_R9W,+    ZYDIS_REGISTER_R10W,+    ZYDIS_REGISTER_R11W,+    ZYDIS_REGISTER_R12W,+    ZYDIS_REGISTER_R13W,+    ZYDIS_REGISTER_R14W,+    ZYDIS_REGISTER_R15W,+    // General purpose registers 32-bit+    ZYDIS_REGISTER_EAX,+    ZYDIS_REGISTER_ECX,+    ZYDIS_REGISTER_EDX,+    ZYDIS_REGISTER_EBX,+    ZYDIS_REGISTER_ESP,+    ZYDIS_REGISTER_EBP,+    ZYDIS_REGISTER_ESI,+    ZYDIS_REGISTER_EDI,+    ZYDIS_REGISTER_R8D,+    ZYDIS_REGISTER_R9D,+    ZYDIS_REGISTER_R10D,+    ZYDIS_REGISTER_R11D,+    ZYDIS_REGISTER_R12D,+    ZYDIS_REGISTER_R13D,+    ZYDIS_REGISTER_R14D,+    ZYDIS_REGISTER_R15D,+    // General purpose registers 64-bit+    ZYDIS_REGISTER_RAX,+    ZYDIS_REGISTER_RCX,+    ZYDIS_REGISTER_RDX,+    ZYDIS_REGISTER_RBX,+    ZYDIS_REGISTER_RSP,+    ZYDIS_REGISTER_RBP,+    ZYDIS_REGISTER_RSI,+    ZYDIS_REGISTER_RDI,+    ZYDIS_REGISTER_R8,+    ZYDIS_REGISTER_R9,+    ZYDIS_REGISTER_R10,+    ZYDIS_REGISTER_R11,+    ZYDIS_REGISTER_R12,+    ZYDIS_REGISTER_R13,+    ZYDIS_REGISTER_R14,+    ZYDIS_REGISTER_R15,+    // Floating point legacy registers+    ZYDIS_REGISTER_ST0,+    ZYDIS_REGISTER_ST1,+    ZYDIS_REGISTER_ST2,+    ZYDIS_REGISTER_ST3,+    ZYDIS_REGISTER_ST4,+    ZYDIS_REGISTER_ST5,+    ZYDIS_REGISTER_ST6,+    ZYDIS_REGISTER_ST7,+    ZYDIS_REGISTER_X87CONTROL,+    ZYDIS_REGISTER_X87STATUS,+    ZYDIS_REGISTER_X87TAG,+    // Floating point multimedia registers+    ZYDIS_REGISTER_MM0,+    ZYDIS_REGISTER_MM1,+    ZYDIS_REGISTER_MM2,+    ZYDIS_REGISTER_MM3,+    ZYDIS_REGISTER_MM4,+    ZYDIS_REGISTER_MM5,+    ZYDIS_REGISTER_MM6,+    ZYDIS_REGISTER_MM7,+    // Floating point vector registers 128-bit+    ZYDIS_REGISTER_XMM0,+    ZYDIS_REGISTER_XMM1,+    ZYDIS_REGISTER_XMM2,+    ZYDIS_REGISTER_XMM3,+    ZYDIS_REGISTER_XMM4,+    ZYDIS_REGISTER_XMM5,+    ZYDIS_REGISTER_XMM6,+    ZYDIS_REGISTER_XMM7,+    ZYDIS_REGISTER_XMM8,+    ZYDIS_REGISTER_XMM9,+    ZYDIS_REGISTER_XMM10,+    ZYDIS_REGISTER_XMM11,+    ZYDIS_REGISTER_XMM12,+    ZYDIS_REGISTER_XMM13,+    ZYDIS_REGISTER_XMM14,+    ZYDIS_REGISTER_XMM15,+    ZYDIS_REGISTER_XMM16,+    ZYDIS_REGISTER_XMM17,+    ZYDIS_REGISTER_XMM18,+    ZYDIS_REGISTER_XMM19,+    ZYDIS_REGISTER_XMM20,+    ZYDIS_REGISTER_XMM21,+    ZYDIS_REGISTER_XMM22,+    ZYDIS_REGISTER_XMM23,+    ZYDIS_REGISTER_XMM24,+    ZYDIS_REGISTER_XMM25,+    ZYDIS_REGISTER_XMM26,+    ZYDIS_REGISTER_XMM27,+    ZYDIS_REGISTER_XMM28,+    ZYDIS_REGISTER_XMM29,+    ZYDIS_REGISTER_XMM30,+    ZYDIS_REGISTER_XMM31,+    // Floating point vector registers 256-bit+    ZYDIS_REGISTER_YMM0,+    ZYDIS_REGISTER_YMM1,+    ZYDIS_REGISTER_YMM2,+    ZYDIS_REGISTER_YMM3,+    ZYDIS_REGISTER_YMM4,+    ZYDIS_REGISTER_YMM5,+    ZYDIS_REGISTER_YMM6,+    ZYDIS_REGISTER_YMM7,+    ZYDIS_REGISTER_YMM8,+    ZYDIS_REGISTER_YMM9,+    ZYDIS_REGISTER_YMM10,+    ZYDIS_REGISTER_YMM11,+    ZYDIS_REGISTER_YMM12,+    ZYDIS_REGISTER_YMM13,+    ZYDIS_REGISTER_YMM14,+    ZYDIS_REGISTER_YMM15,+    ZYDIS_REGISTER_YMM16,+    ZYDIS_REGISTER_YMM17,+    ZYDIS_REGISTER_YMM18,+    ZYDIS_REGISTER_YMM19,+    ZYDIS_REGISTER_YMM20,+    ZYDIS_REGISTER_YMM21,+    ZYDIS_REGISTER_YMM22,+    ZYDIS_REGISTER_YMM23,+    ZYDIS_REGISTER_YMM24,+    ZYDIS_REGISTER_YMM25,+    ZYDIS_REGISTER_YMM26,+    ZYDIS_REGISTER_YMM27,+    ZYDIS_REGISTER_YMM28,+    ZYDIS_REGISTER_YMM29,+    ZYDIS_REGISTER_YMM30,+    ZYDIS_REGISTER_YMM31,+    // Floating point vector registers 512-bit+    ZYDIS_REGISTER_ZMM0,+    ZYDIS_REGISTER_ZMM1,+    ZYDIS_REGISTER_ZMM2,+    ZYDIS_REGISTER_ZMM3,+    ZYDIS_REGISTER_ZMM4,+    ZYDIS_REGISTER_ZMM5,+    ZYDIS_REGISTER_ZMM6,+    ZYDIS_REGISTER_ZMM7,+    ZYDIS_REGISTER_ZMM8,+    ZYDIS_REGISTER_ZMM9,+    ZYDIS_REGISTER_ZMM10,+    ZYDIS_REGISTER_ZMM11,+    ZYDIS_REGISTER_ZMM12,+    ZYDIS_REGISTER_ZMM13,+    ZYDIS_REGISTER_ZMM14,+    ZYDIS_REGISTER_ZMM15,+    ZYDIS_REGISTER_ZMM16,+    ZYDIS_REGISTER_ZMM17,+    ZYDIS_REGISTER_ZMM18,+    ZYDIS_REGISTER_ZMM19,+    ZYDIS_REGISTER_ZMM20,+    ZYDIS_REGISTER_ZMM21,+    ZYDIS_REGISTER_ZMM22,+    ZYDIS_REGISTER_ZMM23,+    ZYDIS_REGISTER_ZMM24,+    ZYDIS_REGISTER_ZMM25,+    ZYDIS_REGISTER_ZMM26,+    ZYDIS_REGISTER_ZMM27,+    ZYDIS_REGISTER_ZMM28,+    ZYDIS_REGISTER_ZMM29,+    ZYDIS_REGISTER_ZMM30,+    ZYDIS_REGISTER_ZMM31,+    // Flags registers+    ZYDIS_REGISTER_FLAGS,+    ZYDIS_REGISTER_EFLAGS,+    ZYDIS_REGISTER_RFLAGS,+    // Instruction-pointer registers+    ZYDIS_REGISTER_IP,+    ZYDIS_REGISTER_EIP,+    ZYDIS_REGISTER_RIP,+    // Segment registers+    ZYDIS_REGISTER_ES,+    ZYDIS_REGISTER_CS,+    ZYDIS_REGISTER_SS,+    ZYDIS_REGISTER_DS,+    ZYDIS_REGISTER_FS,+    ZYDIS_REGISTER_GS,+    // Table registers+    ZYDIS_REGISTER_GDTR,+    ZYDIS_REGISTER_LDTR,+    ZYDIS_REGISTER_IDTR,+    ZYDIS_REGISTER_TR,+    // Test registers+    ZYDIS_REGISTER_TR0,+    ZYDIS_REGISTER_TR1,+    ZYDIS_REGISTER_TR2,+    ZYDIS_REGISTER_TR3,+    ZYDIS_REGISTER_TR4,+    ZYDIS_REGISTER_TR5,+    ZYDIS_REGISTER_TR6,+    ZYDIS_REGISTER_TR7,+    // Control registers+    ZYDIS_REGISTER_CR0,+    ZYDIS_REGISTER_CR1,+    ZYDIS_REGISTER_CR2,+    ZYDIS_REGISTER_CR3,+    ZYDIS_REGISTER_CR4,+    ZYDIS_REGISTER_CR5,+    ZYDIS_REGISTER_CR6,+    ZYDIS_REGISTER_CR7,+    ZYDIS_REGISTER_CR8,+    ZYDIS_REGISTER_CR9,+    ZYDIS_REGISTER_CR10,+    ZYDIS_REGISTER_CR11,+    ZYDIS_REGISTER_CR12,+    ZYDIS_REGISTER_CR13,+    ZYDIS_REGISTER_CR14,+    ZYDIS_REGISTER_CR15,+    // Debug registers+    ZYDIS_REGISTER_DR0,+    ZYDIS_REGISTER_DR1,+    ZYDIS_REGISTER_DR2,+    ZYDIS_REGISTER_DR3,+    ZYDIS_REGISTER_DR4,+    ZYDIS_REGISTER_DR5,+    ZYDIS_REGISTER_DR6,+    ZYDIS_REGISTER_DR7,+    ZYDIS_REGISTER_DR8,+    ZYDIS_REGISTER_DR9,+    ZYDIS_REGISTER_DR10,+    ZYDIS_REGISTER_DR11,+    ZYDIS_REGISTER_DR12,+    ZYDIS_REGISTER_DR13,+    ZYDIS_REGISTER_DR14,+    ZYDIS_REGISTER_DR15,+    // Mask registers+    ZYDIS_REGISTER_K0,+    ZYDIS_REGISTER_K1,+    ZYDIS_REGISTER_K2,+    ZYDIS_REGISTER_K3,+    ZYDIS_REGISTER_K4,+    ZYDIS_REGISTER_K5,+    ZYDIS_REGISTER_K6,+    ZYDIS_REGISTER_K7,+    // Bound registers+    ZYDIS_REGISTER_BND0,+    ZYDIS_REGISTER_BND1,+    ZYDIS_REGISTER_BND2,+    ZYDIS_REGISTER_BND3,+    ZYDIS_REGISTER_BNDCFG,+    ZYDIS_REGISTER_BNDSTATUS,+    // Uncategorized+    ZYDIS_REGISTER_MXCSR,+    ZYDIS_REGISTER_PKRU,+    ZYDIS_REGISTER_XCR0,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_REGISTER_MAX_VALUE = ZYDIS_REGISTER_XCR0,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_REGISTER_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_REGISTER_MAX_VALUE)+} ZydisRegister;
+ external/zydis/include/Zydis/Internal/DecoderData.h view
@@ -0,0 +1,331 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#ifndef ZYDIS_INTERNAL_DECODERDATA_H+#define ZYDIS_INTERNAL_DECODERDATA_H++#include <Zycore/Defines.h>+#include <Zydis/DecoderTypes.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++// MSVC does not like types other than (un-)signed int for bit-fields+#ifdef ZYAN_MSVC+#   pragma warning(push)+#   pragma warning(disable:4214)+#endif++#pragma pack(push, 1)++/* ---------------------------------------------------------------------------------------------- */+/* Decoder tree                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecoderTreeNodeType` data-type.+ */+typedef ZyanU8 ZydisDecoderTreeNodeType;++/**+ * Values that represent zydis decoder tree node types.+ */+enum ZydisDecoderTreeNodeTypes+{+    ZYDIS_NODETYPE_INVALID                  = 0x00,+    /**+     * Reference to an instruction-definition.+     */+    ZYDIS_NODETYPE_DEFINITION_MASK          = 0x80,+    /**+     * Reference to an XOP-map filter.+     */+    ZYDIS_NODETYPE_FILTER_XOP               = 0x01,+    /**+     * Reference to an VEX-map filter.+     */+    ZYDIS_NODETYPE_FILTER_VEX               = 0x02,+    /**+     * Reference to an EVEX/MVEX-map filter.+     */+    ZYDIS_NODETYPE_FILTER_EMVEX             = 0x03,+    /**+     * Reference to an opcode filter.+     */+    ZYDIS_NODETYPE_FILTER_OPCODE            = 0x04,+    /**+     * Reference to an instruction-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE              = 0x05,+    /**+     * Reference to an compacted instruction-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_COMPACT      = 0x06,+    /**+     * Reference to a ModRM.mod filter.+     */+    ZYDIS_NODETYPE_FILTER_MODRM_MOD         = 0x07,+    /**+     * Reference to a compacted ModRM.mod filter.+     */+    ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT = 0x08,+    /**+     * Reference to a ModRM.reg filter.+     */+    ZYDIS_NODETYPE_FILTER_MODRM_REG         = 0x09,+    /**+     * Reference to a ModRM.rm filter.+     */+    ZYDIS_NODETYPE_FILTER_MODRM_RM          = 0x0A,+    /**+     * Reference to a PrefixGroup1 filter.+     */+    ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1     = 0x0B,+    /**+     * Reference to a mandatory-prefix filter.+     */+    ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX  = 0x0C,+    /**+     * Reference to an operand-size filter.+     */+    ZYDIS_NODETYPE_FILTER_OPERAND_SIZE      = 0x0D,+    /**+     * Reference to an address-size filter.+     */+    ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE      = 0x0E,+    /**+     * Reference to a vector-length filter.+     */+    ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH     = 0x0F,+    /**+     * Reference to an REX/VEX/EVEX.W filter.+     */+    ZYDIS_NODETYPE_FILTER_REX_W             = 0x10,+    /**+     * Reference to an REX/VEX/EVEX.B filter.+     */+    ZYDIS_NODETYPE_FILTER_REX_B             = 0x11,+    /**+     * Reference to an EVEX.b filter.+     */+    ZYDIS_NODETYPE_FILTER_EVEX_B            = 0x12,+    /**+     * Reference to an MVEX.E filter.+     */+    ZYDIS_NODETYPE_FILTER_MVEX_E            = 0x13,+    /**+     * Reference to a AMD-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_AMD          = 0x14,+    /**+     * Reference to a KNC-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_KNC          = 0x15,+    /**+     * Reference to a MPX-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_MPX          = 0x16,+    /**+     * Reference to a CET-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_CET          = 0x17,+    /**+     * Reference to a LZCNT-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_LZCNT        = 0x18,+    /**+     * Reference to a TZCNT-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_TZCNT        = 0x19,+    /**+     * Reference to a WBNOINVD-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_WBNOINVD     = 0x1A,+    /**+     * Reference to a CLDEMOTE-mode filter.+     */+    ZYDIS_NODETYPE_FILTER_MODE_CLDEMOTE     = 0x1B+};++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecoderTreeNodeValue` data-type.+ */+typedef ZyanU16 ZydisDecoderTreeNodeValue;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecoderTreeNode` struct.+ */+typedef struct ZydisDecoderTreeNode_+{+    ZydisDecoderTreeNodeType type;+    ZydisDecoderTreeNodeValue value;+} ZydisDecoderTreeNode;++/* ---------------------------------------------------------------------------------------------- */++#pragma pack(pop)++#ifdef ZYAN_MSVC+#   pragma warning(pop)+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Physical instruction encoding info                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisInstructionEncodingFlags` data-type.+ */+typedef ZyanU8 ZydisInstructionEncodingFlags;++/**+ * The instruction has an optional modrm byte.+ */+#define ZYDIS_INSTR_ENC_FLAG_HAS_MODRM      0x01++/**+ * The instruction has an optional displacement value.+ */+#define ZYDIS_INSTR_ENC_FLAG_HAS_DISP       0x02++/**+ * The instruction has an optional immediate value.+ */+#define ZYDIS_INSTR_ENC_FLAG_HAS_IMM0       0x04++/**+ * The instruction has a second optional immediate value.+ */+#define ZYDIS_INSTR_ENC_FLAG_HAS_IMM1       0x08++/**+ * The instruction ignores the value of `modrm.mod` and always assumes `modrm.mod == 3`+ *          ("reg, reg" - form).+ *+ *          Instructions with this flag can't have a SIB byte or a displacement value.+ */+#define ZYDIS_INSTR_ENC_FLAG_FORCE_REG_FORM 0x10++/**+ * Defines the `ZydisInstructionEncodingInfo` struct.+ */+typedef struct ZydisInstructionEncodingInfo_+{+    /**+     * Contains flags with information about the physical instruction-encoding.+     */+    ZydisInstructionEncodingFlags flags;+    /**+     * Displacement info.+     */+    struct+    {+        /**+         * The size of the displacement value.+         */+        ZyanU8 size[3];+    } disp;+    /**+     * Immediate info.+     */+    struct+    {+        /**+         * The size of the immediate value.+         */+        ZyanU8 size[3];+        /**+         * Signals, if the value is signed.+         */+        ZyanBool is_signed;+        /**+         * Signals, if the value is a relative offset.+         */+        ZyanBool is_relative;+    } imm[2];+} ZydisInstructionEncodingInfo;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Functions                                                                                      */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Decoder tree                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++extern const ZydisDecoderTreeNode zydis_decoder_tree_root;++/**+ * Returns the root node of the instruction tree.+ *+ * @return  The root node of the instruction tree.+ */+ZYAN_INLINE const ZydisDecoderTreeNode* ZydisDecoderTreeGetRootNode(void)+{+    return &zydis_decoder_tree_root;+}++/**+ * Returns the child node of `parent` specified by `index`.+ *+ * @param   parent  The parent node.+ * @param   index   The index of the child node to retrieve.+ *+ * @return  The specified child node.+ */+ZYDIS_NO_EXPORT const ZydisDecoderTreeNode* ZydisDecoderTreeGetChildNode(+    const ZydisDecoderTreeNode* parent, ZyanU16 index);++/**+ * Returns information about optional instruction parts (like modrm, displacement or+ * immediates) for the instruction that is linked to the given `node`.+ *+ * @param   node    The instruction definition node.+ * @param   info    A pointer to the `ZydisInstructionParts` struct.+ */+ZYDIS_NO_EXPORT void ZydisGetInstructionEncodingInfo(const ZydisDecoderTreeNode* node,+    const ZydisInstructionEncodingInfo** info);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_INTERNAL_DECODERDATA_H */
+ external/zydis/include/Zydis/Internal/FormatterATT.h view
@@ -0,0 +1,178 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements the `AT&T` style instruction-formatter.+ */++#ifndef ZYDIS_FORMATTER_ATT_H+#define ZYDIS_FORMATTER_ATT_H++#include <Zydis/Formatter.h>+#include <Zydis/Internal/FormatterBase.h>+#include <Zydis/Internal/String.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Formatter functions                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Instruction                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */+/* Operands                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterATTFormatOperandMEM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */+/* Elemental tokens                                                                               */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterATTPrintMnemonic(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterATTPrintRegister(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg);++ZyanStatus ZydisFormatterATTPrintDISP(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterATTPrintIMM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Fomatter presets                                                                               */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* AT&T                                                                                           */+/* ---------------------------------------------------------------------------------------------- */++/**+ * The default formatter configuration for `AT&T` style disassembly.+ */+static const ZydisFormatter FORMATTER_ATT =+{+    /* style                   */ ZYDIS_FORMATTER_STYLE_ATT,+    /* force_memory_size       */ ZYAN_FALSE,+    /* force_memory_seg        */ ZYAN_FALSE,+    /* force_relative_branches */ ZYAN_FALSE,+    /* force_relative_riprel   */ ZYAN_FALSE,+    /* print_branch_size       */ ZYAN_FALSE,+    /* detailed_prefixes       */ ZYAN_FALSE,+    /* addr_base               */ ZYDIS_NUMERIC_BASE_HEX,+    /* addr_signedness         */ ZYDIS_SIGNEDNESS_SIGNED,+    /* addr_padding_absolute   */ ZYDIS_PADDING_AUTO,+    /* addr_padding_relative   */ 2,+    /* disp_base               */ ZYDIS_NUMERIC_BASE_HEX,+    /* disp_signedness         */ ZYDIS_SIGNEDNESS_SIGNED,+    /* disp_padding            */ 2,+    /* imm_base                */ ZYDIS_NUMERIC_BASE_HEX,+    /* imm_signedness          */ ZYDIS_SIGNEDNESS_AUTO,+    /* imm_padding             */ 2,+    /* case_prefixes           */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_mnemonic           */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_registers          */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_typecasts          */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_decorators         */ ZYDIS_LETTER_CASE_DEFAULT,+    /* hex_uppercase           */ ZYAN_TRUE,+    /* number_format           */+    {+        // ZYDIS_NUMERIC_BASE_DEC+        {+            // Prefix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            },+            // Suffix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            }+        },+        // ZYDIS_NUMERIC_BASE_HEX+        {+            // Prefix+            {+                /* string      */ &FORMATTER_ATT.number_format[+                                    ZYDIS_NUMERIC_BASE_HEX][0].string_data,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW("0x"),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            },+            // Suffix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            }+        }+    },+    /* func_pre_instruction    */ ZYAN_NULL,+    /* func_post_instruction   */ ZYAN_NULL,+    /* func_format_instruction */ &ZydisFormatterATTFormatInstruction,+    /* func_pre_operand        */ ZYAN_NULL,+    /* func_post_operand       */ ZYAN_NULL,+    /* func_format_operand_reg */ &ZydisFormatterBaseFormatOperandREG,+    /* func_format_operand_mem */ &ZydisFormatterATTFormatOperandMEM,+    /* func_format_operand_ptr */ &ZydisFormatterBaseFormatOperandPTR,+    /* func_format_operand_imm */ &ZydisFormatterBaseFormatOperandIMM,+    /* func_print_mnemonic     */ &ZydisFormatterATTPrintMnemonic,+    /* func_print_register     */ &ZydisFormatterATTPrintRegister,+    /* func_print_address_abs  */ &ZydisFormatterBasePrintAddressABS,+    /* func_print_address_rel  */ &ZydisFormatterBasePrintAddressREL,+    /* func_print_disp         */ &ZydisFormatterATTPrintDISP,+    /* func_print_imm          */ &ZydisFormatterATTPrintIMM,+    /* func_print_typecast     */ ZYAN_NULL,+    /* func_print_segment      */ &ZydisFormatterBasePrintSegment,+    /* func_print_prefixes     */ &ZydisFormatterBasePrintPrefixes,+    /* func_print_decorator    */ &ZydisFormatterBasePrintDecorator+};++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif // ZYDIS_FORMATTER_ATT_H
+ external/zydis/include/Zydis/Internal/FormatterBase.h view
@@ -0,0 +1,318 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Provides formatter functions that are shared between the different formatters.+ */++#ifndef ZYDIS_FORMATTER_BASE_H+#define ZYDIS_FORMATTER_BASE_H++#include <Zydis/Formatter.h>+#include <Zydis/Internal/String.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* String                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Appends an unsigned numeric value to the given string.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   base            The numeric base.+ * @param   str             The destination string.+ * @param   value           The value.+ * @param   padding_length  The padding length.+ */+#define ZYDIS_STRING_APPEND_NUM_U(formatter, base, str, value, padding_length) \+    switch (base) \+    { \+    case ZYDIS_NUMERIC_BASE_DEC: \+        ZYAN_CHECK(ZydisStringAppendDecU(str, value, padding_length, \+            (formatter)->number_format[base][0].string, \+            (formatter)->number_format[base][1].string)); \+        break; \+    case ZYDIS_NUMERIC_BASE_HEX: \+        ZYAN_CHECK(ZydisStringAppendHexU(str, value, padding_length, \+            (formatter)->hex_uppercase, \+            (formatter)->number_format[base][0].string, \+            (formatter)->number_format[base][1].string)); \+        break; \+    default: \+        return ZYAN_STATUS_INVALID_ARGUMENT; \+    }++/**+ * Appends a signed numeric value to the given string.+ *+ * @param   formatter       A pointer to the `ZydisFormatter` instance.+ * @param   base            The numeric base.+ * @param   str             The destination string.+ * @param   value           The value.+ * @param   padding_length  The padding length.+ * @param   force_sign      Forces printing of the '+' sign for positive numbers.+ */+#define ZYDIS_STRING_APPEND_NUM_S(formatter, base, str, value, padding_length, force_sign) \+    switch (base) \+    { \+    case ZYDIS_NUMERIC_BASE_DEC: \+        ZYAN_CHECK(ZydisStringAppendDecS(str, value, padding_length, force_sign, \+            (formatter)->number_format[base][0].string, \+            (formatter)->number_format[base][1].string)); \+        break; \+    case ZYDIS_NUMERIC_BASE_HEX: \+        ZYAN_CHECK(ZydisStringAppendHexS(str, value, padding_length,  \+            (formatter)->hex_uppercase, force_sign, \+            (formatter)->number_format[base][0].string, \+            (formatter)->number_format[base][1].string)); \+        break; \+    default: \+        return ZYAN_STATUS_INVALID_ARGUMENT; \+    }++/* ---------------------------------------------------------------------------------------------- */+/* Buffer                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Invokes the `ZydisFormatterBufferAppend` routine, if tokenization is enabled for the+ * current pass.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   type    The token type.+ *+ * Using this macro instead of direct calls to `ZydisFormatterBufferAppend` greatly improves the+ * performance for non-tokenizing passes.+ */+#define ZYDIS_BUFFER_APPEND_TOKEN(buffer, type) \+    if ((buffer)->is_token_list) \+    { \+        ZYAN_CHECK(ZydisFormatterBufferAppend(buffer, type)); \+    }++/**+ * Returns a snapshot of the buffer-state.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   state   Receives a snapshot of the buffer-state.+ *+ * Using this macro instead of direct calls to `ZydisFormatterBufferRemember` improves the+ * performance for non-tokenizing passes.+ */+#define ZYDIS_BUFFER_REMEMBER(buffer, state) \+    if ((buffer)->is_token_list) \+    { \+        (state) = (ZyanUPointer)(buffer)->string.vector.data; \+    } else \+    { \+        (state) = (ZyanUPointer)(buffer)->string.vector.size; \+    }++/**+ * Appends a string (`STR_`-prefix) or a predefined token-list (`TOK_`-prefix).+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   name    The base name (without prefix) of the string- or token.+ */+#define ZYDIS_BUFFER_APPEND(buffer, name) \+    if ((buffer)->is_token_list) \+    { \+        ZYAN_CHECK(ZydisFormatterBufferAppendPredefined(buffer, TOK_ ## name)); \+    } else \+    { \+        ZYAN_CHECK(ZydisStringAppendShort(&buffer->string, &STR_ ## name)); \+    }++// TODO: Implement `letter_case` for predefined tokens++/**+ * Appends a string (`STR_`-prefix) or a predefined token-list (`TOK_`-prefix).+ *+ * @param   buffer      A pointer to the `ZydisFormatterBuffer` struct.+ * @param   name        The base name (without prefix) of the string- or token.+ * @param   letter-case The desired letter-case.+ */+#define ZYDIS_BUFFER_APPEND_CASE(buffer, name, letter_case) \+    if ((buffer)->is_token_list) \+    { \+        ZYAN_CHECK(ZydisFormatterBufferAppendPredefined(buffer, TOK_ ## name)); \+    } else \+    { \+        ZYAN_CHECK(ZydisStringAppendShortCase(&buffer->string, &STR_ ## name, letter_case)); \+    }++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Helper functions                                                                               */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Buffer                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++// MSVC does not like the C99 flexible-array extension+#ifdef ZYAN_MSVC+#   pragma warning(push)+#   pragma warning(disable:4200)+#endif++#pragma pack(push, 1)++typedef struct ZydisPredefinedToken_+{+    ZyanU8 size;+    ZyanU8 next;+    ZyanU8 data[];+} ZydisPredefinedToken;++#pragma pack(pop)++#ifdef ZYAN_MSVC+#   pragma warning(pop)+#endif++/**+ * Appends a predefined token-list to the `buffer`.+ *+ * @param   buffer  A pointer to the `ZydisFormatterBuffer` struct.+ * @param   data    A pointer to the `ZydisPredefinedToken` struct.+ *+ * @return  A zycore status code.+ *+ * This function is internally used to improve performance while adding static strings or multiple+ * tokens at once.+ */+ZYAN_INLINE ZyanStatus ZydisFormatterBufferAppendPredefined(ZydisFormatterBuffer* buffer,+    const ZydisPredefinedToken* data)+{+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(data);++    const ZyanUSize len = buffer->string.vector.size;+    ZYAN_ASSERT((len > 0) && (len < 256));+    if (buffer->capacity <= len + data->size)+    {+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;+    }++    ZydisFormatterToken* const last = (ZydisFormatterToken*)buffer->string.vector.data - 1;+    last->next = (ZyanU8)len;++    ZYAN_MEMCPY((ZyanU8*)buffer->string.vector.data + len, &data->data[0], data->size);++    const ZyanUSize delta = len + data->next;+    buffer->capacity -= delta;+    buffer->string.vector.data = (ZyanU8*)buffer->string.vector.data + delta;+    buffer->string.vector.size = data->size - data->next;+    buffer->string.vector.capacity = ZYAN_MIN(buffer->capacity, 255);++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* General                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the size to be used as explicit size suffix (`AT&T`) or explicit typecast+ * (`INTEL`), if required.+ *+ * @param   formatter   A pointer to the `ZydisFormatter` instance.+ * @param   context     A pointer to the `ZydisFormatterContext` struct.+ * @param   memop_id    The operand-id of the instructions first memory operand.+ *+ * @return  Returns the explicit size, if required, or `0`, if not needed.+ *+ * This function always returns a size different to `0`, if the `ZYDIS_FORMATTER_PROP_FORCE_SIZE`+ * is set to `ZYAN_TRUE`.+ */+ZyanU32 ZydisFormatterHelperGetExplicitSize(const ZydisFormatter* formatter,+    ZydisFormatterContext* context, ZyanU8 memop_id);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Formatter functions                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Operands                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBaseFormatOperandREG(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterBaseFormatOperandPTR(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterBaseFormatOperandIMM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */+/* Elemental tokens                                                                               */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBasePrintAddressABS(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterBasePrintAddressREL(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterBasePrintIMM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */+/* Optional tokens                                                                                */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBasePrintSegment(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterBasePrintPrefixes(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterBasePrintDecorator(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisDecorator decorator);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif // ZYDIS_FORMATTER_BASE_H
+ external/zydis/include/Zydis/Internal/FormatterIntel.h view
@@ -0,0 +1,267 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Implements the `INTEL` style instruction-formatter.+ */++#ifndef ZYDIS_FORMATTER_INTEL_H+#define ZYDIS_FORMATTER_INTEL_H++#include <Zydis/Formatter.h>+#include <Zydis/Internal/FormatterBase.h>+#include <Zydis/Internal/String.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Formatter functions                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Intel                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterIntelFormatOperandMEM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterIntelPrintMnemonic(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterIntelPrintRegister(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg);++ZyanStatus ZydisFormatterIntelPrintDISP(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterIntelPrintTypecast(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */+/* MASM                                                                                           */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterIntelFormatInstructionMASM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++ZyanStatus ZydisFormatterIntelPrintAddressMASM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context);++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Fomatter presets                                                                               */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* INTEL                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++/**+ * The default formatter configuration for `INTEL` style disassembly.+ */+static const ZydisFormatter FORMATTER_INTEL =+{+    /* style                   */ ZYDIS_FORMATTER_STYLE_INTEL,+    /* force_memory_size       */ ZYAN_FALSE,+    /* force_memory_seg        */ ZYAN_FALSE,+    /* force_relative_branches */ ZYAN_FALSE,+    /* force_relative_riprel   */ ZYAN_FALSE,+    /* print_branch_size       */ ZYAN_FALSE,+    /* detailed_prefixes       */ ZYAN_FALSE,+    /* addr_base               */ ZYDIS_NUMERIC_BASE_HEX,+    /* addr_signedness         */ ZYDIS_SIGNEDNESS_SIGNED,+    /* addr_padding_absolute   */ ZYDIS_PADDING_AUTO,+    /* addr_padding_relative   */ 2,+    /* disp_base               */ ZYDIS_NUMERIC_BASE_HEX,+    /* disp_signedness         */ ZYDIS_SIGNEDNESS_SIGNED,+    /* disp_padding            */ 2,+    /* imm_base                */ ZYDIS_NUMERIC_BASE_HEX,+    /* imm_signedness          */ ZYDIS_SIGNEDNESS_UNSIGNED,+    /* imm_padding             */ 2,+    /* case_prefixes           */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_mnemonic           */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_registers          */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_typecasts          */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_decorators         */ ZYDIS_LETTER_CASE_DEFAULT,+    /* hex_uppercase           */ ZYAN_TRUE,+    /* number_format           */+    {+        // ZYDIS_NUMERIC_BASE_DEC+        {+            // Prefix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            },+            // Suffix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            }+        },+        // ZYDIS_NUMERIC_BASE_HEX+        {+            // Prefix+            {+                /* string      */ &FORMATTER_INTEL.number_format[+                                      ZYDIS_NUMERIC_BASE_HEX][0].string_data,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW("0x"),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            },+            // Suffix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            }+        }+    },+    /* func_pre_instruction    */ ZYAN_NULL,+    /* func_post_instruction   */ ZYAN_NULL,+    /* func_format_instruction */ &ZydisFormatterIntelFormatInstruction,+    /* func_pre_operand        */ ZYAN_NULL,+    /* func_post_operand       */ ZYAN_NULL,+    /* func_format_operand_reg */ &ZydisFormatterBaseFormatOperandREG,+    /* func_format_operand_mem */ &ZydisFormatterIntelFormatOperandMEM,+    /* func_format_operand_ptr */ &ZydisFormatterBaseFormatOperandPTR,+    /* func_format_operand_imm */ &ZydisFormatterBaseFormatOperandIMM,+    /* func_print_mnemonic     */ &ZydisFormatterIntelPrintMnemonic,+    /* func_print_register     */ &ZydisFormatterIntelPrintRegister,+    /* func_print_address_abs  */ &ZydisFormatterBasePrintAddressABS,+    /* func_print_address_rel  */ &ZydisFormatterBasePrintAddressREL,+    /* func_print_disp         */ &ZydisFormatterIntelPrintDISP,+    /* func_print_imm          */ &ZydisFormatterBasePrintIMM,+    /* func_print_typecast     */ &ZydisFormatterIntelPrintTypecast,+    /* func_print_segment      */ &ZydisFormatterBasePrintSegment,+    /* func_print_prefixes     */ &ZydisFormatterBasePrintPrefixes,+    /* func_print_decorator    */ &ZydisFormatterBasePrintDecorator+};++/* ---------------------------------------------------------------------------------------------- */+/* MASM                                                                                           */+/* ---------------------------------------------------------------------------------------------- */++/**+ * The default formatter configuration for `MASM` style disassembly.+ */+static const ZydisFormatter FORMATTER_INTEL_MASM =+{+    /* style                   */ ZYDIS_FORMATTER_STYLE_INTEL_MASM,+    /* force_memory_size       */ ZYAN_TRUE,+    /* force_memory_seg        */ ZYAN_FALSE,+    /* force_relative_branches */ ZYAN_FALSE,+    /* force_relative_riprel   */ ZYAN_FALSE,+    /* print_branch_size       */ ZYAN_FALSE,+    /* detailed_prefixes       */ ZYAN_FALSE,+    /* addr_base               */ ZYDIS_NUMERIC_BASE_HEX,+    /* addr_signedness         */ ZYDIS_SIGNEDNESS_SIGNED,+    /* addr_padding_absolute   */ ZYDIS_PADDING_DISABLED,+    /* addr_padding_relative   */ ZYDIS_PADDING_DISABLED,+    /* disp_base               */ ZYDIS_NUMERIC_BASE_HEX,+    /* disp_signedness         */ ZYDIS_SIGNEDNESS_SIGNED,+    /* disp_padding            */ ZYDIS_PADDING_DISABLED,+    /* imm_base                */ ZYDIS_NUMERIC_BASE_HEX,+    /* imm_signedness          */ ZYDIS_SIGNEDNESS_AUTO,+    /* imm_padding             */ ZYDIS_PADDING_DISABLED,+    /* case_prefixes           */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_mnemonic           */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_registers          */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_typecasts          */ ZYDIS_LETTER_CASE_DEFAULT,+    /* case_decorators         */ ZYDIS_LETTER_CASE_DEFAULT,+    /* hex_uppercase           */ ZYAN_TRUE,+    /* number_format           */+    {+        // ZYDIS_NUMERIC_BASE_DEC+        {+            // Prefix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            },+            // Suffix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            }+        },+        // ZYDIS_NUMERIC_BASE_HEX+        {+            // Prefix+            {+                /* string      */ ZYAN_NULL,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW(""),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            },+            // Suffix+            {+                /* string      */ &FORMATTER_INTEL_MASM.number_format[+                                      ZYDIS_NUMERIC_BASE_HEX][1].string_data,+                /* string_data */ ZYAN_DEFINE_STRING_VIEW("h"),+                /* buffer      */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },+            }+        }+    },+    /* func_pre_instruction    */ ZYAN_NULL,+    /* func_post_instruction   */ ZYAN_NULL,+    /* func_format_instruction */ &ZydisFormatterIntelFormatInstructionMASM,+    /* func_pre_operand        */ ZYAN_NULL,+    /* func_post_operand       */ ZYAN_NULL,+    /* func_format_operand_reg */ &ZydisFormatterBaseFormatOperandREG,+    /* func_format_operand_mem */ &ZydisFormatterIntelFormatOperandMEM,+    /* func_format_operand_ptr */ &ZydisFormatterBaseFormatOperandPTR,+    /* func_format_operand_imm */ &ZydisFormatterBaseFormatOperandIMM,+    /* func_print_mnemonic     */ &ZydisFormatterIntelPrintMnemonic,+    /* func_print_register     */ &ZydisFormatterIntelPrintRegister,+    /* func_print_address_abs  */ &ZydisFormatterIntelPrintAddressMASM,+    /* func_print_address_rel  */ &ZydisFormatterIntelPrintAddressMASM,+    /* func_print_disp         */ &ZydisFormatterIntelPrintDISP,+    /* func_print_imm          */ &ZydisFormatterBasePrintIMM,+    /* func_print_typecast     */ &ZydisFormatterIntelPrintTypecast,+    /* func_print_segment      */ &ZydisFormatterBasePrintSegment,+    /* func_print_prefixes     */ &ZydisFormatterBasePrintPrefixes,+    /* func_print_decorator    */ &ZydisFormatterBasePrintDecorator+};++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif // ZYDIS_FORMATTER_INTEL_H
+ external/zydis/include/Zydis/Internal/SharedData.h view
@@ -0,0 +1,969 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#ifndef ZYDIS_INTERNAL_SHAREDDATA_H+#define ZYDIS_INTERNAL_SHAREDDATA_H++#include <Zycore/Defines.h>+#include <Zydis/Mnemonic.h>+#include <Zydis/Register.h>+#include <Zydis/SharedTypes.h>+#include <Zydis/DecoderTypes.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++// MSVC does not like types other than (un-)signed int for bit-fields+#ifdef ZYAN_MSVC+#   pragma warning(push)+#   pragma warning(disable:4214)+#endif++#pragma pack(push, 1)++/* ---------------------------------------------------------------------------------------------- */+/* Operand definition                                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisSemanticOperandType` enum.+ */+typedef enum ZydisSemanticOperandType_+{+    ZYDIS_SEMANTIC_OPTYPE_UNUSED,+    ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG,+    ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM,+    ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1,+    ZYDIS_SEMANTIC_OPTYPE_GPR8,+    ZYDIS_SEMANTIC_OPTYPE_GPR16,+    ZYDIS_SEMANTIC_OPTYPE_GPR32,+    ZYDIS_SEMANTIC_OPTYPE_GPR64,+    ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64,+    ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64,+    ZYDIS_SEMANTIC_OPTYPE_GPR16_32_32,+    ZYDIS_SEMANTIC_OPTYPE_GPR_ASZ,+    ZYDIS_SEMANTIC_OPTYPE_FPR,+    ZYDIS_SEMANTIC_OPTYPE_MMX,+    ZYDIS_SEMANTIC_OPTYPE_XMM,+    ZYDIS_SEMANTIC_OPTYPE_YMM,+    ZYDIS_SEMANTIC_OPTYPE_ZMM,+    ZYDIS_SEMANTIC_OPTYPE_BND,+    ZYDIS_SEMANTIC_OPTYPE_SREG,+    ZYDIS_SEMANTIC_OPTYPE_CR,+    ZYDIS_SEMANTIC_OPTYPE_DR,+    ZYDIS_SEMANTIC_OPTYPE_MASK,+    ZYDIS_SEMANTIC_OPTYPE_MEM,+    ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX,+    ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY,+    ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ,+    ZYDIS_SEMANTIC_OPTYPE_IMM,+    ZYDIS_SEMANTIC_OPTYPE_REL,+    ZYDIS_SEMANTIC_OPTYPE_PTR,+    ZYDIS_SEMANTIC_OPTYPE_AGEN,+    ZYDIS_SEMANTIC_OPTYPE_MOFFS,+    ZYDIS_SEMANTIC_OPTYPE_MIB,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_SEMANTIC_OPTYPE_MAX_VALUE = ZYDIS_SEMANTIC_OPTYPE_MIB,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_SEMANTIC_OPTYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_SEMANTIC_OPTYPE_MAX_VALUE)+} ZydisSemanticOperandType;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisInternalElementType` enum.+ */+typedef enum ZydisInternalElementType_+{+    ZYDIS_IELEMENT_TYPE_INVALID,+    ZYDIS_IELEMENT_TYPE_VARIABLE,+    ZYDIS_IELEMENT_TYPE_STRUCT,+    ZYDIS_IELEMENT_TYPE_INT,+    ZYDIS_IELEMENT_TYPE_UINT,+    ZYDIS_IELEMENT_TYPE_INT1,+    ZYDIS_IELEMENT_TYPE_INT8,+    ZYDIS_IELEMENT_TYPE_INT16,+    ZYDIS_IELEMENT_TYPE_INT32,+    ZYDIS_IELEMENT_TYPE_INT64,+    ZYDIS_IELEMENT_TYPE_UINT8,+    ZYDIS_IELEMENT_TYPE_UINT16,+    ZYDIS_IELEMENT_TYPE_UINT32,+    ZYDIS_IELEMENT_TYPE_UINT64,+    ZYDIS_IELEMENT_TYPE_UINT128,+    ZYDIS_IELEMENT_TYPE_UINT256,+    ZYDIS_IELEMENT_TYPE_FLOAT16,+    ZYDIS_IELEMENT_TYPE_FLOAT32,+    ZYDIS_IELEMENT_TYPE_FLOAT64,+    ZYDIS_IELEMENT_TYPE_FLOAT80,+    ZYDIS_IELEMENT_TYPE_BCD80,+    ZYDIS_IELEMENT_TYPE_CC3,+    ZYDIS_IELEMENT_TYPE_CC5,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_IELEMENT_TYPE_MAX_VALUE = ZYDIS_IELEMENT_TYPE_CC5,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_IELEMENT_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_IELEMENT_TYPE_MAX_VALUE)+} ZydisInternalElementType;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisImplicitRegisterType` enum.+ */+typedef enum ZydisImplicitRegisterType_+{+    ZYDIS_IMPLREG_TYPE_STATIC,+    ZYDIS_IMPLREG_TYPE_GPR_OSZ,+    ZYDIS_IMPLREG_TYPE_GPR_ASZ,+    ZYDIS_IMPLREG_TYPE_GPR_SSZ,+    ZYDIS_IMPLREG_TYPE_IP_ASZ,+    ZYDIS_IMPLREG_TYPE_IP_SSZ,+    ZYDIS_IMPLREG_TYPE_FLAGS_SSZ,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_IMPLREG_TYPE_MAX_VALUE = ZYDIS_IMPLREG_TYPE_FLAGS_SSZ,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_IMPLREG_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_IMPLREG_TYPE_MAX_VALUE)+} ZydisImplicitRegisterType;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisImplicitMemBase` enum.+ */+typedef enum ZydisImplicitMemBase_+{+    ZYDIS_IMPLMEM_BASE_AGPR_REG,+    ZYDIS_IMPLMEM_BASE_AGPR_RM,+    ZYDIS_IMPLMEM_BASE_AAX,+    ZYDIS_IMPLMEM_BASE_ADX,+    ZYDIS_IMPLMEM_BASE_ABX,+    ZYDIS_IMPLMEM_BASE_ASP,+    ZYDIS_IMPLMEM_BASE_ABP,+    ZYDIS_IMPLMEM_BASE_ASI,+    ZYDIS_IMPLMEM_BASE_ADI,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_IMPLMEM_BASE_MAX_VALUE = ZYDIS_IMPLMEM_BASE_ADI,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_IMPLMEM_BASE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_IMPLMEM_BASE_MAX_VALUE)+} ZydisImplicitMemBase;++/* ---------------------------------------------------------------------------------------------- */++// MSVC does not correctly execute the `pragma pack(1)` compiler-directive, if we use the correct+// enum types+ZYAN_STATIC_ASSERT(ZYDIS_SEMANTIC_OPTYPE_REQUIRED_BITS     <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_OPERAND_VISIBILITY_REQUIRED_BITS  <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_OPERAND_ACTION_REQUIRED_BITS      <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_IELEMENT_TYPE_REQUIRED_BITS       <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_OPERAND_ENCODING_REQUIRED_BITS    <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_IMPLREG_TYPE_REQUIRED_BITS        <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_REGISTER_REQUIRED_BITS            <= 16);+ZYAN_STATIC_ASSERT(ZYDIS_IMPLMEM_BASE_REQUIRED_BITS        <=  8);++/**+ * Defines the `ZydisOperandDefinition` struct.+ */+typedef struct ZydisOperandDefinition_+{+    ZyanU8 type                            ZYAN_BITFIELD(ZYDIS_SEMANTIC_OPTYPE_REQUIRED_BITS);+    ZyanU8 visibility                      ZYAN_BITFIELD(ZYDIS_OPERAND_VISIBILITY_REQUIRED_BITS);+    ZyanU8 actions                         ZYAN_BITFIELD(ZYDIS_OPERAND_ACTION_REQUIRED_BITS);+    ZyanU16 size[3];+    ZyanU8 element_type                    ZYAN_BITFIELD(ZYDIS_IELEMENT_TYPE_REQUIRED_BITS);+    union+    {+        ZyanU8 encoding                    ZYAN_BITFIELD(ZYDIS_OPERAND_ENCODING_REQUIRED_BITS);+        struct+        {+            ZyanU8 type                    ZYAN_BITFIELD(ZYDIS_IMPLREG_TYPE_REQUIRED_BITS);+            union+            {+                ZyanU16 reg                ZYAN_BITFIELD(ZYDIS_REGISTER_REQUIRED_BITS);+                ZyanU8 id                  ZYAN_BITFIELD(6);+            } reg;+        } reg;+        struct+        {+            ZyanU8 seg                     ZYAN_BITFIELD(3);+            ZyanU8 base                    ZYAN_BITFIELD(ZYDIS_IMPLMEM_BASE_REQUIRED_BITS);+        } mem;+    } op;+} ZydisOperandDefinition;++/* ---------------------------------------------------------------------------------------------- */+/* Instruction definition                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisReadWriteAction` enum.+ */+typedef enum ZydisReadWriteAction_+{+    ZYDIS_RW_ACTION_NONE,+    ZYDIS_RW_ACTION_READ,+    ZYDIS_RW_ACTION_WRITE,+    ZYDIS_RW_ACTION_READWRITE,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_RW_ACTION_MAX_VALUE = ZYDIS_RW_ACTION_READWRITE,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_RW_ACTION_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_RW_ACTION_MAX_VALUE)+} ZydisReadWriteAction;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisRegisterConstraint` enum.+ */+typedef enum ZydisRegisterConstraint_+{+    ZYDIS_REG_CONSTRAINTS_UNUSED,+    ZYDIS_REG_CONSTRAINTS_NONE,+    ZYDIS_REG_CONSTRAINTS_GPR,+    ZYDIS_REG_CONSTRAINTS_SR_DEST,+    ZYDIS_REG_CONSTRAINTS_SR,+    ZYDIS_REG_CONSTRAINTS_CR,+    ZYDIS_REG_CONSTRAINTS_DR,+    ZYDIS_REG_CONSTRAINTS_MASK,+    ZYDIS_REG_CONSTRAINTS_BND,+    ZYDIS_REG_CONSTRAINTS_VSIB,+    ZYDIS_REG_CONSTRAINTS_NO_REL,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_REG_CONSTRAINTS_MAX_VALUE = ZYDIS_REG_CONSTRAINTS_NO_REL,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_REG_CONSTRAINTS_MAX_VALUE)+} ZydisRegisterConstraint;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisInternalVectorLength` enum.+ */+typedef enum ZydisInternalVectorLength_+{+    ZYDIS_IVECTOR_LENGTH_DEFAULT,+    ZYDIS_IVECTOR_LENGTH_FIXED_128,+    ZYDIS_IVECTOR_LENGTH_FIXED_256,+    ZYDIS_IVECTOR_LENGTH_FIXED_512,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_IVECTOR_LENGTH_MAX_VALUE = ZYDIS_IVECTOR_LENGTH_FIXED_512,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_IVECTOR_LENGTH_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_IVECTOR_LENGTH_MAX_VALUE)+} ZydisInternalVectorLength;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisInternalElementSize` enum.+ */+typedef enum ZydisInternalElementSize_+{+    ZYDIS_IELEMENT_SIZE_INVALID,+    ZYDIS_IELEMENT_SIZE_8,+    ZYDIS_IELEMENT_SIZE_16,+    ZYDIS_IELEMENT_SIZE_32,+    ZYDIS_IELEMENT_SIZE_64,+    ZYDIS_IELEMENT_SIZE_128,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_IELEMENT_SIZE_MAX_VALUE = ZYDIS_IELEMENT_SIZE_128,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_IELEMENT_SIZE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_IELEMENT_SIZE_MAX_VALUE)+} ZydisInternalElementSize;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisEVEXFunctionality` enum.+ */+typedef enum ZydisEVEXFunctionality_+{+    ZYDIS_EVEX_FUNC_INVALID,+    /**+     * `EVEX.b` enables broadcast functionality.+     */+    ZYDIS_EVEX_FUNC_BC,+    /**+     * `EVEX.b` enables embedded-rounding functionality.+     */+    ZYDIS_EVEX_FUNC_RC,+    /**+     * `EVEX.b` enables sae functionality.+     */+    ZYDIS_EVEX_FUNC_SAE,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_EVEX_FUNC_MAX_VALUE = ZYDIS_EVEX_FUNC_SAE,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_EVEX_FUNC_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_EVEX_FUNC_MAX_VALUE)+} ZydisEVEXFunctionality;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisEVEXTupleType` enum.+ */+typedef enum ZydisEVEXTupleType_+{+    ZYDIS_TUPLETYPE_INVALID,+    /**+     * Full Vector+     */+    ZYDIS_TUPLETYPE_FV,+    /**+     * Half Vector+     */+    ZYDIS_TUPLETYPE_HV,+    /**+     * Full Vector Mem+     */+    ZYDIS_TUPLETYPE_FVM,+    /**+     * Tuple1 Scalar+     */+    ZYDIS_TUPLETYPE_T1S,+    /**+     * Tuple1 Fixed+     */+    ZYDIS_TUPLETYPE_T1F,+    /**+     * Tuple1 4x32+     */+    ZYDIS_TUPLETYPE_T1_4X,+    /**+     * Gather / Scatter+     */+    ZYDIS_TUPLETYPE_GSCAT,+    /**+     * Tuple2+     */+    ZYDIS_TUPLETYPE_T2,+    /**+     * Tuple4+     */+    ZYDIS_TUPLETYPE_T4,+    /**+     * Tuple8+     */+    ZYDIS_TUPLETYPE_T8,+    /**+     * Half Mem+     */+    ZYDIS_TUPLETYPE_HVM,+    /**+     * QuarterMem+     */+    ZYDIS_TUPLETYPE_QVM,+    /**+     * OctMem+     */+    ZYDIS_TUPLETYPE_OVM,+    /**+     * Mem128+     */+    ZYDIS_TUPLETYPE_M128,+    /**+     * MOVDDUP+     */+    ZYDIS_TUPLETYPE_DUP,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_TUPLETYPE_MAX_VALUE = ZYDIS_TUPLETYPE_DUP,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_TUPLETYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_TUPLETYPE_MAX_VALUE)+} ZydisEVEXTupleType;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMVEXFunctionality` enum.+ */+typedef enum ZydisMVEXFunctionality_+{+    /**+     * The `MVEX.SSS` value is ignored.+     */+    ZYDIS_MVEX_FUNC_IGNORED,+    /**+     * `MVEX.SSS` must be `000b`.+     */+    ZYDIS_MVEX_FUNC_INVALID,+    /**+     * `MVEX.SSS` controls embedded-rounding functionality.+     */+    ZYDIS_MVEX_FUNC_RC,+    /**+     * `MVEX.SSS` controls sae functionality.+     */+    ZYDIS_MVEX_FUNC_SAE,+    /**+     * No special operation (32bit float elements).+     */+    ZYDIS_MVEX_FUNC_F_32,+    /**+     * No special operation (32bit uint elements).+     */+    ZYDIS_MVEX_FUNC_I_32,+    /**+     * No special operation (64bit float elements).+     */+    ZYDIS_MVEX_FUNC_F_64,+    /**+     * No special operation (64bit uint elements).+     */+    ZYDIS_MVEX_FUNC_I_64,+    /**+     * Sf32(reg) or Si32(reg).+     */+    ZYDIS_MVEX_FUNC_SWIZZLE_32,+    /**+     * Sf64(reg) or Si64(reg).+     */+    ZYDIS_MVEX_FUNC_SWIZZLE_64,+    /**+     * Sf32(mem).+     */+    ZYDIS_MVEX_FUNC_SF_32,+    /**+     * Sf32(mem) broadcast only.+     */+    ZYDIS_MVEX_FUNC_SF_32_BCST,+    /**+     * Sf32(mem) broadcast 4to16 only.+     */+    ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16,+    /**+     * Sf64(mem).+     */+    ZYDIS_MVEX_FUNC_SF_64,+    /**+     * Si32(mem).+     */+    ZYDIS_MVEX_FUNC_SI_32,+    /**+     * Si32(mem) broadcast only.+     */+    ZYDIS_MVEX_FUNC_SI_32_BCST,+    /**+     * Si32(mem) broadcast 4to16 only.+     */+    ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16,+    /**+     * Si64(mem).+     */+    ZYDIS_MVEX_FUNC_SI_64,+    /**+     * Uf32.+     */+    ZYDIS_MVEX_FUNC_UF_32,+    /**+     * Uf64.+     */+    ZYDIS_MVEX_FUNC_UF_64,+    /**+     * Ui32.+     */+    ZYDIS_MVEX_FUNC_UI_32,+    /**+     * Ui64.+     */+    ZYDIS_MVEX_FUNC_UI_64,+    /**+     * Df32.+     */+    ZYDIS_MVEX_FUNC_DF_32,+    /**+     * Df64.+     */+    ZYDIS_MVEX_FUNC_DF_64,+    /**+     * Di32.+     */+    ZYDIS_MVEX_FUNC_DI_32,+    /**+     * Di64.+     */+    ZYDIS_MVEX_FUNC_DI_64,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MVEX_FUNC_MAX_VALUE = ZYDIS_MVEX_FUNC_DI_64,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MVEX_FUNC_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MVEX_FUNC_MAX_VALUE)+} ZydisMVEXFunctionality;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisVEXStaticBroadcast` enum.+ */+typedef enum ZydisVEXStaticBroadcast+{+    ZYDIS_VEX_STATIC_BROADCAST_NONE,+    ZYDIS_VEX_STATIC_BROADCAST_1_TO_2,+    ZYDIS_VEX_STATIC_BROADCAST_1_TO_4,+    ZYDIS_VEX_STATIC_BROADCAST_1_TO_8,+    ZYDIS_VEX_STATIC_BROADCAST_1_TO_16,+    ZYDIS_VEX_STATIC_BROADCAST_1_TO_32,+    ZYDIS_VEX_STATIC_BROADCAST_2_TO_4,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_VEX_STATIC_BROADCAST_MAX_VALUE = ZYDIS_VEX_STATIC_BROADCAST_2_TO_4,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_VEX_STATIC_BROADCAST_REQUIRED_BITS =+        ZYAN_BITS_TO_REPRESENT(ZYDIS_VEX_STATIC_BROADCAST_MAX_VALUE)+} ZydisVEXStaticBroadcast;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisEVEXStaticBroadcast` enum.+ */+typedef enum ZydisEVEXStaticBroadcast_+{+    ZYDIS_EVEX_STATIC_BROADCAST_NONE,+    ZYDIS_EVEX_STATIC_BROADCAST_1_TO_2,+    ZYDIS_EVEX_STATIC_BROADCAST_1_TO_4,+    ZYDIS_EVEX_STATIC_BROADCAST_1_TO_8,+    ZYDIS_EVEX_STATIC_BROADCAST_1_TO_16,+    ZYDIS_EVEX_STATIC_BROADCAST_1_TO_32,+    ZYDIS_EVEX_STATIC_BROADCAST_1_TO_64,+    ZYDIS_EVEX_STATIC_BROADCAST_2_TO_4,+    ZYDIS_EVEX_STATIC_BROADCAST_2_TO_8,+    ZYDIS_EVEX_STATIC_BROADCAST_2_TO_16,+    ZYDIS_EVEX_STATIC_BROADCAST_4_TO_8,+    ZYDIS_EVEX_STATIC_BROADCAST_4_TO_16,+    ZYDIS_EVEX_STATIC_BROADCAST_8_TO_16,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_EVEX_STATIC_BROADCAST_MAX_VALUE = ZYDIS_EVEX_STATIC_BROADCAST_8_TO_16,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_EVEX_STATIC_BROADCAST_REQUIRED_BITS =+        ZYAN_BITS_TO_REPRESENT(ZYDIS_EVEX_STATIC_BROADCAST_MAX_VALUE)+} ZydisEVEXStaticBroadcast;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMVEXStaticBroadcast` enum.+ */+typedef enum ZydisMVEXStaticBroadcast_+{+    ZYDIS_MVEX_STATIC_BROADCAST_NONE,+    ZYDIS_MVEX_STATIC_BROADCAST_1_TO_8,+    ZYDIS_MVEX_STATIC_BROADCAST_1_TO_16,+    ZYDIS_MVEX_STATIC_BROADCAST_4_TO_8,+    ZYDIS_MVEX_STATIC_BROADCAST_4_TO_16,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MVEX_STATIC_BROADCAST_MAX_VALUE = ZYDIS_MVEX_STATIC_BROADCAST_4_TO_16,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MVEX_STATIC_BROADCAST_REQUIRED_BITS =+        ZYAN_BITS_TO_REPRESENT(ZYDIS_MVEX_STATIC_BROADCAST_MAX_VALUE)+} ZydisMVEXStaticBroadcast;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMaskPolicy` enum.+ */+typedef enum ZydisMaskPolicy_+{+    ZYDIS_MASK_POLICY_INVALID,+    /**+     * The instruction accepts mask-registers other than the default-mask (K0), but+     *          does not require them.+     */+    ZYDIS_MASK_POLICY_ALLOWED,+    /**+     * The instruction requires a mask-register other than the default-mask (K0).+     */+    ZYDIS_MASK_POLICY_REQUIRED,+    /**+     * The instruction does not allow a mask-register other than the default-mask (K0).+     */+    ZYDIS_MASK_POLICY_FORBIDDEN,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MASK_POLICY_MAX_VALUE = ZYDIS_MASK_POLICY_FORBIDDEN,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MASK_POLICY_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MASK_POLICY_MAX_VALUE)+} ZydisMaskPolicy;++/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMaskOverride` enum.+ */+typedef enum ZydisMaskOverride_+{+    ZYDIS_MASK_OVERRIDE_DEFAULT,+    ZYDIS_MASK_OVERRIDE_ZEROING,+    ZYDIS_MASK_OVERRIDE_CONTROL,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MASK_OVERRIDE_MAX_VALUE = ZYDIS_MASK_OVERRIDE_CONTROL,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MASK_OVERRIDE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MASK_OVERRIDE_MAX_VALUE)+} ZydisMaskOverride;++/* ---------------------------------------------------------------------------------------------- */++// MSVC does not correctly execute the `pragma pack(1)` compiler-directive, if we use the correct+// enum types+ZYAN_STATIC_ASSERT(ZYDIS_MNEMONIC_REQUIRED_BITS        <= 16);+ZYAN_STATIC_ASSERT(ZYDIS_CATEGORY_REQUIRED_BITS        <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_ISA_SET_REQUIRED_BITS         <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_ISA_EXT_REQUIRED_BITS         <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_BRANCH_TYPE_REQUIRED_BITS     <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_EXCEPTION_CLASS_REQUIRED_BITS <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_RW_ACTION_REQUIRED_BITS       <=  8);++#ifndef ZYDIS_MINIMAL_MODE+#   define ZYDIS_INSTRUCTION_DEFINITION_BASE \+        ZyanU16 mnemonic                       ZYAN_BITFIELD(ZYDIS_MNEMONIC_REQUIRED_BITS); \+        ZyanU8 operand_count                   ZYAN_BITFIELD( 4); \+        ZyanU16 operand_reference              ZYAN_BITFIELD(15); \+        ZyanU8 operand_size_map                ZYAN_BITFIELD( 3); \+        ZyanU8 address_size_map                ZYAN_BITFIELD( 2); \+        ZyanU8 flags_reference                 ZYAN_BITFIELD( 7); \+        ZyanBool requires_protected_mode       ZYAN_BITFIELD( 1); \+        ZyanU8 category                        ZYAN_BITFIELD(ZYDIS_CATEGORY_REQUIRED_BITS); \+        ZyanU8 isa_set                         ZYAN_BITFIELD(ZYDIS_ISA_SET_REQUIRED_BITS); \+        ZyanU8 isa_ext                         ZYAN_BITFIELD(ZYDIS_ISA_EXT_REQUIRED_BITS); \+        ZyanU8 branch_type                     ZYAN_BITFIELD(ZYDIS_BRANCH_TYPE_REQUIRED_BITS); \+        ZyanU8 exception_class                 ZYAN_BITFIELD(ZYDIS_EXCEPTION_CLASS_REQUIRED_BITS); \+        ZyanU8 constr_REG                      ZYAN_BITFIELD(ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS); \+        ZyanU8 constr_RM                       ZYAN_BITFIELD(ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS); \+        ZyanU8 cpu_state                       ZYAN_BITFIELD(ZYDIS_RW_ACTION_REQUIRED_BITS); \+        ZyanU8 fpu_state                       ZYAN_BITFIELD(ZYDIS_RW_ACTION_REQUIRED_BITS); \+        ZyanU8 xmm_state                       ZYAN_BITFIELD(ZYDIS_RW_ACTION_REQUIRED_BITS)+#else+#   define ZYDIS_INSTRUCTION_DEFINITION_BASE \+        ZyanU16 mnemonic                       ZYAN_BITFIELD(ZYDIS_MNEMONIC_REQUIRED_BITS); \+        ZyanU8 operand_size_map                ZYAN_BITFIELD( 3); \+        ZyanU8 address_size_map                ZYAN_BITFIELD( 2); \+        ZyanBool requires_protected_mode       ZYAN_BITFIELD( 1); \+        ZyanU8 constr_REG                      ZYAN_BITFIELD(ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS); \+        ZyanU8 constr_RM                       ZYAN_BITFIELD(ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS)+#endif++#define ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR \+    ZYDIS_INSTRUCTION_DEFINITION_BASE; \+    ZyanU8 constr_NDSNDD                   ZYAN_BITFIELD(ZYDIS_REG_CONSTRAINTS_REQUIRED_BITS)++#define ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR_INTEL \+    ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR; \+    ZyanBool is_gather                     ZYAN_BITFIELD( 1)++/**+ * Defines the `ZydisInstructionDefinition` struct.+ */+typedef struct ZydisInstructionDefinition_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE;+} ZydisInstructionDefinition;++/**+ * Defines the `ZydisInstructionDefinitionLEGACY` struct.+ */+typedef struct ZydisInstructionDefinitionLEGACY_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE;+#ifndef ZYDIS_MINIMAL_MODE+    ZyanBool is_privileged                 ZYAN_BITFIELD( 1);+#endif+    ZyanBool accepts_LOCK                  ZYAN_BITFIELD( 1);+#ifndef ZYDIS_MINIMAL_MODE+    ZyanBool accepts_REP                   ZYAN_BITFIELD( 1);+    ZyanBool accepts_REPEREPZ              ZYAN_BITFIELD( 1);+    ZyanBool accepts_REPNEREPNZ            ZYAN_BITFIELD( 1);+    ZyanBool accepts_BOUND                 ZYAN_BITFIELD( 1);+    ZyanBool accepts_XACQUIRE              ZYAN_BITFIELD( 1);+    ZyanBool accepts_XRELEASE              ZYAN_BITFIELD( 1);+    ZyanBool accepts_hle_without_lock      ZYAN_BITFIELD( 1);+    ZyanBool accepts_branch_hints          ZYAN_BITFIELD( 1);+    ZyanBool accepts_segment               ZYAN_BITFIELD( 1);+#endif+} ZydisInstructionDefinitionLEGACY;++/**+ * Defines the `ZydisInstructionDefinition3DNOW` struct.+ */+typedef struct ZydisInstructionDefinition3DNOW_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE;+} ZydisInstructionDefinition3DNOW;++/**+ * Defines the `ZydisInstructionDefinitionXOP` struct.+ */+typedef struct ZydisInstructionDefinitionXOP_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR;+} ZydisInstructionDefinitionXOP;++// MSVC does not correctly execute the `pragma pack(1)` compiler-directive, if we use the correct+// enum types+ZYAN_STATIC_ASSERT(ZYDIS_VEX_STATIC_BROADCAST_REQUIRED_BITS  <=  8);++/**+ * Defines the `ZydisInstructionDefinitionVEX` struct.+ */+typedef struct ZydisInstructionDefinitionVEX_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR_INTEL;+#ifndef ZYDIS_MINIMAL_MODE+    ZyanU8 broadcast                       ZYAN_BITFIELD(ZYDIS_VEX_STATIC_BROADCAST_REQUIRED_BITS);+#endif+} ZydisInstructionDefinitionVEX;++#ifndef ZYDIS_DISABLE_AVX512++// MSVC does not correctly execute the `pragma pack(1)` compiler-directive, if we use the correct+// enum types+ZYAN_STATIC_ASSERT(ZYDIS_IVECTOR_LENGTH_REQUIRED_BITS        <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_TUPLETYPE_REQUIRED_BITS             <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_IELEMENT_SIZE_REQUIRED_BITS         <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_EVEX_FUNC_REQUIRED_BITS             <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_MASK_POLICY_REQUIRED_BITS           <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_MASK_OVERRIDE_REQUIRED_BITS         <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_EVEX_STATIC_BROADCAST_REQUIRED_BITS <=  8);++/**+ * Defines the `ZydisInstructionDefinitionEVEX` struct.+ */+typedef struct ZydisInstructionDefinitionEVEX_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR_INTEL;+#ifndef ZYDIS_MINIMAL_MODE+    ZyanU8 vector_length                   ZYAN_BITFIELD(ZYDIS_IVECTOR_LENGTH_REQUIRED_BITS);+    ZyanU8 tuple_type                      ZYAN_BITFIELD(ZYDIS_TUPLETYPE_REQUIRED_BITS);+    ZyanU8 element_size                    ZYAN_BITFIELD(ZYDIS_IELEMENT_SIZE_REQUIRED_BITS);+    ZyanU8 functionality                   ZYAN_BITFIELD(ZYDIS_EVEX_FUNC_REQUIRED_BITS);+#endif+    ZyanU8 mask_policy                     ZYAN_BITFIELD(ZYDIS_MASK_POLICY_REQUIRED_BITS);+    ZyanBool accepts_zero_mask             ZYAN_BITFIELD( 1);+#ifndef ZYDIS_MINIMAL_MODE+    ZyanU8 mask_override                   ZYAN_BITFIELD(ZYDIS_MASK_OVERRIDE_REQUIRED_BITS);+    ZyanU8 broadcast                       ZYAN_BITFIELD(ZYDIS_EVEX_STATIC_BROADCAST_REQUIRED_BITS);+#endif+} ZydisInstructionDefinitionEVEX;+#endif++#ifndef ZYDIS_DISABLE_KNC++// MSVC does not correctly execute the `pragma pack(1)` compiler-directive, if we use the correct+// enum types+ZYAN_STATIC_ASSERT(ZYDIS_MVEX_FUNC_REQUIRED_BITS             <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_MASK_POLICY_REQUIRED_BITS           <=  8);+ZYAN_STATIC_ASSERT(ZYDIS_MVEX_STATIC_BROADCAST_REQUIRED_BITS <=  8);++/**+ * Defines the `ZydisInstructionDefinitionMVEX` struct.+ */+typedef struct ZydisInstructionDefinitionMVEX_+{+    ZYDIS_INSTRUCTION_DEFINITION_BASE_VECTOR_INTEL;+    ZyanU8 functionality                   ZYAN_BITFIELD(ZYDIS_MVEX_FUNC_REQUIRED_BITS);+    ZyanU8 mask_policy                     ZYAN_BITFIELD(ZYDIS_MASK_POLICY_REQUIRED_BITS);+#ifndef ZYDIS_MINIMAL_MODE+    ZyanBool has_element_granularity       ZYAN_BITFIELD( 1);+    ZyanU8 broadcast                       ZYAN_BITFIELD(ZYDIS_MVEX_STATIC_BROADCAST_REQUIRED_BITS);+#endif+} ZydisInstructionDefinitionMVEX;+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Accessed CPU flags                                                                             */+/* ---------------------------------------------------------------------------------------------- */++typedef struct ZydisAccessedFlags_+{+    ZydisCPUFlagAction action[ZYDIS_CPUFLAG_MAX_VALUE + 1];+} ZydisAccessedFlags;++/* ---------------------------------------------------------------------------------------------- */++#pragma pack(pop)++#ifdef ZYAN_MSVC+#   pragma warning(pop)+#endif++/* ============================================================================================== */+/* Functions                                                                                      */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Instruction definition                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the instruction-definition with the given `encoding` and `id`.+ *+ * @param   encoding    The instruction-encoding.+ * @param   id          The definition-id.+ * @param   definition  A pointer to the variable that receives a pointer to the instruction-+ *                      definition.+ */+ZYDIS_NO_EXPORT void ZydisGetInstructionDefinition(ZydisInstructionEncoding encoding,+    ZyanU16 id, const ZydisInstructionDefinition** definition);++/* ---------------------------------------------------------------------------------------------- */+/* Operand definition                                                                             */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Returns the the operand-definitions for the given instruction-`definition`.+ *+ * @param   definition  A pointer to the instruction-definition.+ * @param   operand     A pointer to the variable that receives a pointer to the first operand-+ *                      definition of the instruction.+ *+ * @return  The number of operands for the given instruction-definition.+ */+ZYDIS_NO_EXPORT ZyanU8 ZydisGetOperandDefinitions(const ZydisInstructionDefinition* definition,+    const ZydisOperandDefinition** operand);+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Element info                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Returns the actual type and size of an internal element-type.+ *+ * @param   element The internal element type.+ * @param   type    The actual element type.+ * @param   size    The element size.+ */+ZYDIS_NO_EXPORT void ZydisGetElementInfo(ZydisInternalElementType element, ZydisElementType* type,+    ZydisElementSize* size);+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Accessed CPU flags                                                                             */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Returns the the operand-definitions for the given instruction-`definition`.+ *+ * @param   definition  A pointer to the instruction-definition.+ * @param   flags       A pointer to the variable that receives the `ZydisAccessedFlags` struct.+ *+ * @return  `ZYAN_TRUE`, if the instruction accesses any flags, or `ZYAN_FALSE`, if not.+ */+ZYDIS_NO_EXPORT ZyanBool ZydisGetAccessedFlags(const ZydisInstructionDefinition* definition,+    const ZydisAccessedFlags** flags);+#endif++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_INTERNAL_SHAREDDATA_H */
+ external/zydis/include/Zydis/Internal/String.h view
@@ -0,0 +1,463 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Provides some internal, more performant, but unsafe helper functions for the `ZyanString`+ * data-type.+ *+ * Most of these functions are very similar to the ones in `Zycore/String.h`, but inlined and+ * without optional overhead like parameter-validation checks, etc ...+ *+ * The `ZyanString` data-type is able to dynamically allocate memory on the heap, but as `Zydis` is+ * designed to be a non-'malloc'ing library, all functions in this file assume that the instances+ * they are operating on are created with a user-defined static-buffer.+ */++#ifndef ZYDIS_INTERNAL_STRING_H+#define ZYDIS_INTERNAL_STRING_H++#include <Zycore/LibC.h>+#include <Zycore/String.h>+#include <Zycore/Types.h>+#include <Zydis/ShortString.h>+#include <Zydis/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Letter Case                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisLetterCase` enum.+ */+typedef enum ZydisLetterCase_+{+    /**+     * Uses the given text "as is".+     */+    ZYDIS_LETTER_CASE_DEFAULT,+    /**+     * Converts the given text to lowercase letters.+     */+    ZYDIS_LETTER_CASE_LOWER,+    /**+     * Converts the given text to uppercase letters.+     */+    ZYDIS_LETTER_CASE_UPPER,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_LETTER_CASE_MAX_VALUE = ZYDIS_LETTER_CASE_UPPER,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_LETTER_CASE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_LETTER_CASE_MAX_VALUE)+} ZydisLetterCase;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Internal macros                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Checks for a terminating '\0' character at the end of the string data.+ */+#define ZYDIS_STRING_ASSERT_NULLTERMINATION(string) \+      ZYAN_ASSERT(*(char*)((ZyanU8*)(string)->vector.data + (string)->vector.size - 1) == '\0');++/**+ * Writes a terminating '\0' character at the end of the string data.+ */+#define ZYDIS_STRING_NULLTERMINATE(string) \+      *(char*)((ZyanU8*)(string)->vector.data + (string)->vector.size - 1) = '\0';++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Internal Functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Appending                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Appends the content of the source string to the end of the destination string.+ *+ * @param   destination The destination string.+ * @param   source      The source string.+ *+ * @return  A zyan status code.+ */+ZYAN_INLINE ZyanStatus ZydisStringAppend(ZyanString* destination, const ZyanStringView* source)+{+    ZYAN_ASSERT(destination && source);+    ZYAN_ASSERT(!destination->vector.allocator);+    ZYAN_ASSERT(destination->vector.size && source->string.vector.size);++    if (destination->vector.size + source->string.vector.size - 1 > destination->vector.capacity)+    {+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;+    }++    ZYAN_MEMCPY((char*)destination->vector.data + destination->vector.size - 1,+        source->string.vector.data, source->string.vector.size - 1);++    destination->vector.size += source->string.vector.size - 1;+    ZYDIS_STRING_NULLTERMINATE(destination);++    return ZYAN_STATUS_SUCCESS;+}++/**+ * Appends the content of the source string to the end of the destination+ * string, converting the characters to the specified letter-case.+ *+ * @param   destination The destination string.+ * @param   source      The source string.+ * @param   letter_case The desired letter-case.+ *+ * @return  A zyan status code.+ */+ZYAN_INLINE ZyanStatus ZydisStringAppendCase(ZyanString* destination, const ZyanStringView* source,+    ZydisLetterCase letter_case)+{+    ZYAN_ASSERT(destination && source);+    ZYAN_ASSERT(!destination->vector.allocator);+    ZYAN_ASSERT(destination->vector.size && source->string.vector.size);++    if (destination->vector.size + source->string.vector.size - 1 > destination->vector.capacity)+    {+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;+    }++    ZYAN_MEMCPY((char*)destination->vector.data + destination->vector.size - 1,+        source->string.vector.data, source->string.vector.size - 1);++    switch (letter_case)+    {+    case ZYDIS_LETTER_CASE_DEFAULT:+        break;+    case ZYDIS_LETTER_CASE_LOWER:+    {+        const ZyanUSize index = destination->vector.size - 1;+        const ZyanUSize count = source->string.vector.size - 1;+        char* s = (char*)destination->vector.data + index;+        for (ZyanUSize i = index; i < index + count; ++i)+        {+            const char c = *s;+            if ((c >= 'A') && (c <= 'Z'))+            {+                *s = c | 32;+            }+            ++s;+        }+        break;+    }+    case ZYDIS_LETTER_CASE_UPPER:+    {+        const ZyanUSize index = destination->vector.size - 1;+        const ZyanUSize count = source->string.vector.size - 1;+        char* s = (char*)destination->vector.data + index;+        for (ZyanUSize i = index; i < index + count; ++i)+        {+            const char c = *s;+            if ((c >= 'a') && (c <= 'z'))+            {+                *s = c & ~32;+            }+            ++s;+        }+        break;+    }+    default:+        ZYAN_UNREACHABLE;+    }++    destination->vector.size += source->string.vector.size - 1;+    ZYDIS_STRING_NULLTERMINATE(destination);++    return ZYAN_STATUS_SUCCESS;+}++/**+ * Appends the content of the source short-string to the end of the destination string.+ *+ * @param   destination The destination string.+ * @param   source      The source string.+ *+ * @return  A zyan status code.+ */+ZYAN_INLINE ZyanStatus ZydisStringAppendShort(ZyanString* destination,+    const ZydisShortString* source)+{+    ZYAN_ASSERT(destination && source);+    ZYAN_ASSERT(!destination->vector.allocator);+    ZYAN_ASSERT(destination->vector.size && source->size);++    if (destination->vector.size + source->size > destination->vector.capacity)+    {+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;+    }++    ZYAN_MEMCPY((char*)destination->vector.data + destination->vector.size - 1, source->data,+        (ZyanUSize)source->size + 1);++    destination->vector.size += source->size;+    ZYDIS_STRING_ASSERT_NULLTERMINATION(destination);++    return ZYAN_STATUS_SUCCESS;+}++/**+ * Appends the content of the source short-string to the end of the destination string,+ * converting the characters to the specified letter-case.+ *+ * @param   destination The destination string.+ * @param   source      The source string.+ * @param   letter_case The desired letter-case.+ *+ * @return  A zyan status code.+ */+ZYAN_INLINE ZyanStatus ZydisStringAppendShortCase(ZyanString* destination,+    const ZydisShortString* source, ZydisLetterCase letter_case)+{+    ZYAN_ASSERT(destination && source);+    ZYAN_ASSERT(!destination->vector.allocator);+    ZYAN_ASSERT(destination->vector.size && source->size);++    if (destination->vector.size + source->size > destination->vector.capacity)+    {+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;+    }++    ZYAN_MEMCPY((char*)destination->vector.data + destination->vector.size - 1, source->data,+        (ZyanUSize)source->size + 1);++    switch (letter_case)+    {+    case ZYDIS_LETTER_CASE_DEFAULT:+        break;+    case ZYDIS_LETTER_CASE_LOWER:+    {+        const ZyanUSize index = destination->vector.size - 1;+        const ZyanUSize count = source->size;+        char* s = (char*)destination->vector.data + index;+        for (ZyanUSize i = index; i < index + count; ++i)+        {+            const char c = *s;+            if ((c >= 'A') && (c <= 'Z'))+            {+                *s = c | 32;+            }+            ++s;+        }+        break;+    }+    case ZYDIS_LETTER_CASE_UPPER:+    {+        const ZyanUSize index = destination->vector.size - 1;+        const ZyanUSize count = source->size;+        char* s = (char*)destination->vector.data + index;+        for (ZyanUSize i = index; i < index + count; ++i)+        {+            const char c = *s;+            if ((c >= 'a') && (c <= 'z'))+            {+                *s = c & ~32;+            }+            ++s;+        }+        break;+    }+    default:+        ZYAN_UNREACHABLE;+    }++    destination->vector.size += source->size;+    ZYDIS_STRING_ASSERT_NULLTERMINATION(destination);++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Formatting                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Formats the given unsigned ordinal `value` to its decimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ * @param   suffix          The string to use as suffix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZyanStatus ZydisStringAppendDecU(ZyanString* string, ZyanU64 value, ZyanU8 padding_length,+    const ZyanStringView* prefix, const ZyanStringView* suffix);++/**+ * Formats the given signed ordinal `value` to its decimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   force_sign      Set `ZYAN_TRUE`, to force printing of the `+` sign for positive numbers.+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ * @param   suffix          The string to use as suffix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZYAN_INLINE ZyanStatus ZydisStringAppendDecS(ZyanString* string, ZyanI64 value,+    ZyanU8 padding_length, ZyanBool force_sign, const ZyanStringView* prefix,+    const ZyanStringView* suffix)+{+    static const ZydisShortString str_add = ZYDIS_MAKE_SHORTSTRING("+");+    static const ZydisShortString str_sub = ZYDIS_MAKE_SHORTSTRING("-");++    if (value < 0)+    {+        ZYAN_CHECK(ZydisStringAppendShort(string, &str_sub));+        if (prefix)+        {+            ZYAN_CHECK(ZydisStringAppend(string, prefix));+        }+        return ZydisStringAppendDecU(string, -value, padding_length,+            (const ZyanStringView*)ZYAN_NULL, suffix);+    }++    if (force_sign)+    {+        ZYAN_ASSERT(value >= 0);+        ZYAN_CHECK(ZydisStringAppendShort(string, &str_add));+    }+    return ZydisStringAppendDecU(string, value, padding_length, prefix, suffix);+}++/**+ * Formats the given unsigned ordinal `value` to its hexadecimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the `ZyanString` instance.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length`.+ * @param   uppercase       Set `ZYAN_TRUE` to use uppercase letters ('A'-'F') instead of lowercase+ *                          ones ('a'-'f').+ * @param   prefix          The string to use as prefix or `ZYAN_NULL`, if not needed.+ * @param   suffix          The string to use as suffix or `ZYAN_NULL`, if not needed.+ *+ * @return  A zyan status code.+ *+ * This function will fail, if the `ZYAN_STRING_IS_IMMUTABLE` flag is set for the specified+ * `ZyanString` instance.+ */+ZyanStatus ZydisStringAppendHexU(ZyanString* string, ZyanU64 value, ZyanU8 padding_length,+    ZyanBool uppercase, const ZyanStringView* prefix, const ZyanStringView* suffix);++/**+ * Formats the given signed ordinal `value` to its hexadecimal text-representation and+ * appends it to the `string`.+ *+ * @param   string          A pointer to the string.+ * @param   value           The value.+ * @param   padding_length  Padds the converted value with leading zeros, if the number of chars is+ *                          less than the `padding_length` (the sign char is ignored).+ * @param   uppercase       Set `ZYAN_TRUE` to print the hexadecimal value in uppercase letters+ *                          instead of lowercase ones.+ * @param   force_sign      Set to `ZYAN_TRUE`, to force printing of the `+` sign for positive+ *                          numbers.+ * @param   prefix          The string to use as prefix or `NULL`, if not needed.+ * @param   suffix          The string to use as suffix or `NULL`, if not needed.+ *+ * @return  `ZYAN_STATUS_SUCCESS`, if the function succeeded, or+ *          `ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE`, if the size of the buffer was not+ *          sufficient to append the given `value`.+ *+ * The string-buffer pointer is increased by the number of chars written, if the call was+ * successful.+ */+ZYAN_INLINE ZyanStatus ZydisStringAppendHexS(ZyanString* string, ZyanI64 value,+    ZyanU8 padding_length, ZyanBool uppercase, ZyanBool force_sign, const ZyanStringView* prefix,+    const ZyanStringView* suffix)+{+    static const ZydisShortString str_add = ZYDIS_MAKE_SHORTSTRING("+");+    static const ZydisShortString str_sub = ZYDIS_MAKE_SHORTSTRING("-");++    if (value < 0)+    {+        ZYAN_CHECK(ZydisStringAppendShort(string, &str_sub));+        if (prefix)+        {+            ZYAN_CHECK(ZydisStringAppend(string, prefix));+        }+        return ZydisStringAppendHexU(string, -value, padding_length, uppercase,+            (const ZyanStringView*)ZYAN_NULL, suffix);+    }++    if (force_sign)+    {+        ZYAN_ASSERT(value >= 0);+        ZYAN_CHECK(ZydisStringAppendShort(string, &str_add));+    }+    return ZydisStringAppendHexU(string, value, padding_length, uppercase, prefix, suffix);+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif // ZYDIS_INTERNAL_STRING_H
+ external/zydis/include/Zydis/MetaInfo.h view
@@ -0,0 +1,88 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * @brief+ */++#ifndef ZYDIS_METAINFO_H+#define ZYDIS_METAINFO_H++#include <ZydisExportConfig.h>+#include <Zycore/Defines.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++#include <Zydis/Generated/EnumInstructionCategory.h>+#include <Zydis/Generated/EnumISASet.h>+#include <Zydis/Generated/EnumISAExt.h>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++ /**+ * Returns the specified instruction category string.+ *+ * @param   category    The instruction category.+ *+ * @return  The instruction category string or `ZYAN_NULL`, if an invalid category was passed.+ */+ZYDIS_EXPORT const char* ZydisCategoryGetString(ZydisInstructionCategory category);++/**+ * Returns the specified isa-set string.+ *+ * @param   isa_set The isa-set.+ *+ * @return  The isa-set string or `ZYAN_NULL`, if an invalid isa-set was passed.+ */+ZYDIS_EXPORT const char* ZydisISASetGetString(ZydisISASet isa_set);++/**+ * Returns the specified isa-extension string.+ *+ * @param   isa_ext The isa-extension.+ *+ * @return  The isa-extension string or `ZYAN_NULL`, if an invalid isa-extension was passed.+ */+ZYDIS_EXPORT const char* ZydisISAExtGetString(ZydisISAExt isa_ext);++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_METAINFO_H */
+ external/zydis/include/Zydis/Mnemonic.h view
@@ -0,0 +1,88 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Mnemonic constant definitions and helper functions.+ */++#ifndef ZYDIS_MNEMONIC_H+#define ZYDIS_MNEMONIC_H++#include <Zycore/Types.h>+#include <Zydis/ShortString.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++#include <Zydis/Generated/EnumMnemonic.h>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * @addtogroup mnemonic Mnemonic+ * Functions for retrieving mnemonic names.+ * @{+ */++/**+ * Returns the specified instruction mnemonic string.+ *+ * @param   mnemonic    The mnemonic.+ *+ * @return  The instruction mnemonic string or `ZYAN_NULL`, if an invalid mnemonic was passed.+ */+ZYDIS_EXPORT const char* ZydisMnemonicGetString(ZydisMnemonic mnemonic);++/**+ * Returns the specified instruction mnemonic as `ZydisShortString`.+ *+ * @param   mnemonic    The mnemonic.+ *+ * @return  The instruction mnemonic string or `ZYAN_NULL`, if an invalid mnemonic was passed.+ *+ * The `buffer` of the returned struct is guaranteed to be zero-terminated in this special case.+ */+ZYDIS_EXPORT const ZydisShortString* ZydisMnemonicGetStringWrapped(ZydisMnemonic mnemonic);++/**+ * @}+ */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_MNEMONIC_H */
+ external/zydis/include/Zydis/Register.h view
@@ -0,0 +1,289 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Utility functions and constants for registers.+ */++#ifndef ZYDIS_REGISTER_H+#define ZYDIS_REGISTER_H++#include <Zycore/Defines.h>+#include <Zycore/Types.h>+#include <Zydis/SharedTypes.h>+#include <Zydis/ShortString.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Registers                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++#include <Zydis/Generated/EnumRegister.h>++/* ---------------------------------------------------------------------------------------------- */+/* Register classes                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisRegisterClass` enum.+ *+ * Please note that this enum does not contain a matching entry for all values of the+ * `ZydisRegister` enum, but only for those registers where it makes sense to logically group them+ * for decoding/encoding purposes.+ *+ * These are mainly the registers that can be identified by an id within their corresponding+ * register-class. The `IP` and `FLAGS` values are exceptions to this rule.+ */+typedef enum ZydisRegisterClass_+{+    ZYDIS_REGCLASS_INVALID,+    /**+     * 8-bit general-purpose registers.+     */+    ZYDIS_REGCLASS_GPR8,+    /**+     * 16-bit general-purpose registers.+     */+    ZYDIS_REGCLASS_GPR16,+    /**+     * 32-bit general-purpose registers.+     */+    ZYDIS_REGCLASS_GPR32,+    /**+     * 64-bit general-purpose registers.+     */+    ZYDIS_REGCLASS_GPR64,+    /**+     * Floating point legacy registers.+     */+    ZYDIS_REGCLASS_X87,+    /**+     * Floating point multimedia registers.+     */+    ZYDIS_REGCLASS_MMX,+    /**+     * 128-bit vector registers.+     */+    ZYDIS_REGCLASS_XMM,+    /**+     * 256-bit vector registers.+     */+    ZYDIS_REGCLASS_YMM,+    /**+     * 512-bit vector registers.+     */+    ZYDIS_REGCLASS_ZMM,+    /**+     * Flags registers.+     */+    ZYDIS_REGCLASS_FLAGS,+    /**+     * Instruction-pointer registers.+     */+    ZYDIS_REGCLASS_IP,+    /**+     * Segment registers.+     */+    ZYDIS_REGCLASS_SEGMENT,+    /**+     * Test registers.+     */+    ZYDIS_REGCLASS_TEST,+    /**+     * Control registers.+     */+    ZYDIS_REGCLASS_CONTROL,+    /**+     * Debug registers.+     */+    ZYDIS_REGCLASS_DEBUG,+    /**+     * Mask registers.+     */+    ZYDIS_REGCLASS_MASK,+    /**+     * Bound registers.+     */+    ZYDIS_REGCLASS_BOUND,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_REGCLASS_MAX_VALUE = ZYDIS_REGCLASS_BOUND,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_REGCLASS_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_REGCLASS_MAX_VALUE)+} ZydisRegisterClass;++/* ---------------------------------------------------------------------------------------------- */+/* Register width                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisRegisterWidth` data-type.+ */+typedef ZyanU16 ZydisRegisterWidth;++/* ---------------------------------------------------------------------------------------------- */+/* Register context                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisRegisterContext` struct.+ */+typedef struct ZydisRegisterContext_+{+    /**+     * The values stored in the register context.+     */+    ZyanU64 values[ZYDIS_REGISTER_MAX_VALUE + 1];+} ZydisRegisterContext;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * @addtogroup register Register+ * Functions allowing retrieval of information about registers.+ * @{+ */++/* ---------------------------------------------------------------------------------------------- */+/* Register                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the register specified by the `register_class` and `id` tuple.+ *+ * @param   register_class  The register class.+ * @param   id              The register id.+ *+ * @return  The register specified by the `register_class` and `id` tuple or `ZYDIS_REGISTER_NONE`,+ *          if an invalid parameter was passed.+ */+ZYDIS_EXPORT ZydisRegister ZydisRegisterEncode(ZydisRegisterClass register_class, ZyanU8 id);++/**+ * Returns the id of the specified register.+ *+ * @param   reg The register.+ *+ * @return  The id of the specified register, or -1 if an invalid parameter was passed.+ */+ZYDIS_EXPORT ZyanI8 ZydisRegisterGetId(ZydisRegister reg);++/**+ * Returns the register-class of the specified register.+ *+ * @param   reg The register.+ *+ * @return  The register-class of the specified register.+ */+ZYDIS_EXPORT ZydisRegisterClass ZydisRegisterGetClass(ZydisRegister reg);++/**+ * Returns the width of the specified register.+ *+ * @param   mode    The active machine mode.+ * @param   reg     The register.+ *+ * @return  The width of the specified register, or `ZYDIS_REGISTER_NONE` if the register is+ *          invalid for the active machine-mode.+ */+ZYDIS_EXPORT ZydisRegisterWidth ZydisRegisterGetWidth(ZydisMachineMode mode, ZydisRegister reg);++/**+ * Returns the largest enclosing register of the given register.+ *+ * @param   mode    The active machine mode.+ * @param   reg     The register.+ *+ * @return  The largest enclosing register of the given register, or `ZYDIS_REGISTER_NONE` if the+ *          register is invalid for the active machine-mode or does not have an enclosing-register.+ */+ZYDIS_EXPORT ZydisRegister ZydisRegisterGetLargestEnclosing(ZydisMachineMode mode,+    ZydisRegister reg);++/**+ * Returns the specified register string.+ *+ * @param   reg The register.+ *+ * @return  The register string or `ZYAN_NULL`, if an invalid register was passed.+ */+ZYDIS_EXPORT const char* ZydisRegisterGetString(ZydisRegister reg);++/**+ * Returns the specified register string as `ZydisShortString`.+ *+ * @param   reg The register.+ *+ * @return  The register string or `ZYAN_NULL`, if an invalid register was passed.+ *+ * The `buffer` of the returned struct is guaranteed to be zero-terminated in this special case.+ */+ZYDIS_EXPORT const ZydisShortString* ZydisRegisterGetStringWrapped(ZydisRegister reg);++/* ---------------------------------------------------------------------------------------------- */+/* Register class                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns the width of the specified register-class.+ *+ * @param   mode            The active machine mode.+ * @param   register_class  The register class.+ *+ * @return  The width of the specified register.+ */+ZYDIS_EXPORT ZydisRegisterWidth ZydisRegisterClassGetWidth(ZydisMachineMode mode,+    ZydisRegisterClass register_class);++/* ---------------------------------------------------------------------------------------------- */++/**+ * @}+ */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_REGISTER_H */
+ external/zydis/include/Zydis/SharedTypes.h view
@@ -0,0 +1,480 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Defines decoder/encoder-shared macros and types.+ */++#ifndef ZYDIS_SHAREDTYPES_H+#define ZYDIS_SHAREDTYPES_H++#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constants                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++#define ZYDIS_MAX_INSTRUCTION_LENGTH 15+#define ZYDIS_MAX_OPERAND_COUNT      10++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Machine mode                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisMachineMode` enum.+ */+typedef enum ZydisMachineMode_+{+    /**+     * 64 bit mode.+     */+    ZYDIS_MACHINE_MODE_LONG_64,+    /**+     * 32 bit protected mode.+     */+    ZYDIS_MACHINE_MODE_LONG_COMPAT_32,+    /**+     * 16 bit protected mode.+     */+    ZYDIS_MACHINE_MODE_LONG_COMPAT_16,+    /**+     * 32 bit protected mode.+     */+    ZYDIS_MACHINE_MODE_LEGACY_32,+    /**+     * 16 bit protected mode.+     */+    ZYDIS_MACHINE_MODE_LEGACY_16,+    /**+     * 16 bit real mode.+     */+    ZYDIS_MACHINE_MODE_REAL_16,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_MACHINE_MODE_MAX_VALUE = ZYDIS_MACHINE_MODE_REAL_16,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_MACHINE_MODE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_MACHINE_MODE_MAX_VALUE)+} ZydisMachineMode;++/* ---------------------------------------------------------------------------------------------- */+/* Address width                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisAddressWidth` enum.+ */+typedef enum ZydisAddressWidth_+{+    ZYDIS_ADDRESS_WIDTH_16,+    ZYDIS_ADDRESS_WIDTH_32,+    ZYDIS_ADDRESS_WIDTH_64,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_ADDRESS_WIDTH_MAX_VALUE = ZYDIS_ADDRESS_WIDTH_64,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_ADDRESS_WIDTH_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_ADDRESS_WIDTH_MAX_VALUE)+} ZydisAddressWidth;++/* ---------------------------------------------------------------------------------------------- */+/* Element type                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisElementType` enum.+ */+typedef enum ZydisElementType_+{+    ZYDIS_ELEMENT_TYPE_INVALID,+    /**+     * A struct type.+     */+    ZYDIS_ELEMENT_TYPE_STRUCT,+    /**+     * Unsigned integer value.+     */+    ZYDIS_ELEMENT_TYPE_UINT,+    /**+     * Signed integer value.+     */+    ZYDIS_ELEMENT_TYPE_INT,+    /**+     * 16-bit floating point value (`half`).+     */+    ZYDIS_ELEMENT_TYPE_FLOAT16,+    /**+     * 32-bit floating point value (`single`).+     */+    ZYDIS_ELEMENT_TYPE_FLOAT32,+    /**+     * 64-bit floating point value (`double`).+     */+    ZYDIS_ELEMENT_TYPE_FLOAT64,+    /**+     * 80-bit floating point value (`extended`).+     */+    ZYDIS_ELEMENT_TYPE_FLOAT80,+    /**+     * Binary coded decimal value.+     */+    ZYDIS_ELEMENT_TYPE_LONGBCD,+    /**+     * A condition code (e.g. used by `CMPPD`, `VCMPPD`, ...).+     */+    ZYDIS_ELEMENT_TYPE_CC,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_ELEMENT_TYPE_MAX_VALUE = ZYDIS_ELEMENT_TYPE_CC,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_ELEMENT_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_ELEMENT_TYPE_MAX_VALUE)+} ZydisElementType;++/* ---------------------------------------------------------------------------------------------- */+/* Element size                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisElementSize` datatype.+ */+typedef ZyanU16 ZydisElementSize;++/* ---------------------------------------------------------------------------------------------- */+/* Operand type                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisOperandType` enum.+ */+typedef enum ZydisOperandType_+{+    /**+     * The operand is not used.+     */+    ZYDIS_OPERAND_TYPE_UNUSED,+    /**+     * The operand is a register operand.+     */+    ZYDIS_OPERAND_TYPE_REGISTER,+    /**+     * The operand is a memory operand.+     */+    ZYDIS_OPERAND_TYPE_MEMORY,+    /**+     * The operand is a pointer operand with a segment:offset lvalue.+     */+    ZYDIS_OPERAND_TYPE_POINTER,+    /**+     * The operand is an immediate operand.+     */+    ZYDIS_OPERAND_TYPE_IMMEDIATE,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_OPERAND_TYPE_MAX_VALUE = ZYDIS_OPERAND_TYPE_IMMEDIATE,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_OPERAND_TYPE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_OPERAND_TYPE_MAX_VALUE)+} ZydisOperandType;++/* ---------------------------------------------------------------------------------------------- */+/* Operand encoding                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisOperandEncoding` enum.+ */+typedef enum ZydisOperandEncoding_+{+    ZYDIS_OPERAND_ENCODING_NONE,+    ZYDIS_OPERAND_ENCODING_MODRM_REG,+    ZYDIS_OPERAND_ENCODING_MODRM_RM,+    ZYDIS_OPERAND_ENCODING_OPCODE,+    ZYDIS_OPERAND_ENCODING_NDSNDD,+    ZYDIS_OPERAND_ENCODING_IS4,+    ZYDIS_OPERAND_ENCODING_MASK,+    ZYDIS_OPERAND_ENCODING_DISP8,+    ZYDIS_OPERAND_ENCODING_DISP16,+    ZYDIS_OPERAND_ENCODING_DISP32,+    ZYDIS_OPERAND_ENCODING_DISP64,+    ZYDIS_OPERAND_ENCODING_DISP16_32_64,+    ZYDIS_OPERAND_ENCODING_DISP32_32_64,+    ZYDIS_OPERAND_ENCODING_DISP16_32_32,+    ZYDIS_OPERAND_ENCODING_UIMM8,+    ZYDIS_OPERAND_ENCODING_UIMM16,+    ZYDIS_OPERAND_ENCODING_UIMM32,+    ZYDIS_OPERAND_ENCODING_UIMM64,+    ZYDIS_OPERAND_ENCODING_UIMM16_32_64,+    ZYDIS_OPERAND_ENCODING_UIMM32_32_64,+    ZYDIS_OPERAND_ENCODING_UIMM16_32_32,+    ZYDIS_OPERAND_ENCODING_SIMM8,+    ZYDIS_OPERAND_ENCODING_SIMM16,+    ZYDIS_OPERAND_ENCODING_SIMM32,+    ZYDIS_OPERAND_ENCODING_SIMM64,+    ZYDIS_OPERAND_ENCODING_SIMM16_32_64,+    ZYDIS_OPERAND_ENCODING_SIMM32_32_64,+    ZYDIS_OPERAND_ENCODING_SIMM16_32_32,+    ZYDIS_OPERAND_ENCODING_JIMM8,+    ZYDIS_OPERAND_ENCODING_JIMM16,+    ZYDIS_OPERAND_ENCODING_JIMM32,+    ZYDIS_OPERAND_ENCODING_JIMM64,+    ZYDIS_OPERAND_ENCODING_JIMM16_32_64,+    ZYDIS_OPERAND_ENCODING_JIMM32_32_64,+    ZYDIS_OPERAND_ENCODING_JIMM16_32_32,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_OPERAND_ENCODING_MAX_VALUE = ZYDIS_OPERAND_ENCODING_JIMM16_32_32,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_OPERAND_ENCODING_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_OPERAND_ENCODING_MAX_VALUE)+} ZydisOperandEncoding;++/* ---------------------------------------------------------------------------------------------- */+/* Operand visibility                                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisOperandVisibility` enum.+ */+typedef enum ZydisOperandVisibility_+{+    ZYDIS_OPERAND_VISIBILITY_INVALID,+    /**+     * The operand is explicitly encoded in the instruction.+     */+    ZYDIS_OPERAND_VISIBILITY_EXPLICIT,+    /**+     * The operand is part of the opcode, but listed as an operand.+     */+    ZYDIS_OPERAND_VISIBILITY_IMPLICIT,+    /**+     * The operand is part of the opcode, and not typically listed as an operand.+     */+    ZYDIS_OPERAND_VISIBILITY_HIDDEN,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_OPERAND_VISIBILITY_MAX_VALUE = ZYDIS_OPERAND_VISIBILITY_HIDDEN,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_OPERAND_VISIBILITY_REQUIRED_BITS =+        ZYAN_BITS_TO_REPRESENT(ZYDIS_OPERAND_VISIBILITY_MAX_VALUE)+} ZydisOperandVisibility;++/* ---------------------------------------------------------------------------------------------- */+/* Operand action                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisOperandAction` enum.+ */+typedef enum ZydisOperandAction_+{+    /* ------------------------------------------------------------------------------------------ */+    /* Elemental actions                                                                          */+    /* ------------------------------------------------------------------------------------------ */++    /**+     * The operand is read by the instruction.+     */+    ZYDIS_OPERAND_ACTION_READ       = 0x01,+    /**+     * The operand is written by the instruction (must write).+     */+    ZYDIS_OPERAND_ACTION_WRITE      = 0x02,+    /**+     * The operand is conditionally read by the instruction.+     */+    ZYDIS_OPERAND_ACTION_CONDREAD   = 0x04,+    /**+     * The operand is conditionally written by the instruction (may write).+     */+    ZYDIS_OPERAND_ACTION_CONDWRITE  = 0x08,++    /* ------------------------------------------------------------------------------------------ */+    /* Combined actions                                                                           */+    /* ------------------------------------------------------------------------------------------ */++    /**+     * The operand is read (must read) and written by the instruction (must write).+     */+    ZYDIS_OPERAND_ACTION_READWRITE = ZYDIS_OPERAND_ACTION_READ | ZYDIS_OPERAND_ACTION_WRITE,+    /**+     * The operand is conditionally read (may read) and conditionally written by+     * the instruction (may write).+     */+    ZYDIS_OPERAND_ACTION_CONDREAD_CONDWRITE =+        ZYDIS_OPERAND_ACTION_CONDREAD | ZYDIS_OPERAND_ACTION_CONDWRITE,+    /**+     * The operand is read (must read) and conditionally written by the+     * instruction (may write).+     */+    ZYDIS_OPERAND_ACTION_READ_CONDWRITE =+        ZYDIS_OPERAND_ACTION_READ | ZYDIS_OPERAND_ACTION_CONDWRITE,+    /**+     * The operand is written (must write) and conditionally read by the+     * instruction (may read).+     */+    ZYDIS_OPERAND_ACTION_CONDREAD_WRITE =+        ZYDIS_OPERAND_ACTION_CONDREAD | ZYDIS_OPERAND_ACTION_WRITE,++    /**+     * Mask combining all reading access flags.+     */+    ZYDIS_OPERAND_ACTION_MASK_READ  = ZYDIS_OPERAND_ACTION_READ | ZYDIS_OPERAND_ACTION_CONDREAD,+    /**+     * Mask combining all writing access flags.+     */+    ZYDIS_OPERAND_ACTION_MASK_WRITE = ZYDIS_OPERAND_ACTION_WRITE | ZYDIS_OPERAND_ACTION_CONDWRITE,++    /* ------------------------------------------------------------------------------------------ */++    /**+     * The minimum number of bits required to represent all values of this bitset.+     */+    ZYDIS_OPERAND_ACTION_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_OPERAND_ACTION_CONDWRITE)+} ZydisOperandAction;++/**+ * Defines the `ZydisOperandActions` data-type.+ */+typedef ZyanU8 ZydisOperandActions;++/* ---------------------------------------------------------------------------------------------- */+/* Instruction encoding                                                                           */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisInstructionEncoding` enum.+ */+typedef enum ZydisInstructionEncoding_+{+    /**+     * The instruction uses the legacy encoding.+     */+    ZYDIS_INSTRUCTION_ENCODING_LEGACY,+    /**+     * The instruction uses the AMD 3DNow-encoding.+     */+    ZYDIS_INSTRUCTION_ENCODING_3DNOW,+    /**+     * The instruction uses the AMD XOP-encoding.+     */+    ZYDIS_INSTRUCTION_ENCODING_XOP,+    /**+     * The instruction uses the VEX-encoding.+     */+    ZYDIS_INSTRUCTION_ENCODING_VEX,+    /**+     * The instruction uses the EVEX-encoding.+     */+    ZYDIS_INSTRUCTION_ENCODING_EVEX,+    /**+     * The instruction uses the MVEX-encoding.+     */+    ZYDIS_INSTRUCTION_ENCODING_MVEX,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_INSTRUCTION_ENCODING_MAX_VALUE = ZYDIS_INSTRUCTION_ENCODING_MVEX,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_INSTRUCTION_ENCODING_REQUIRED_BITS =+        ZYAN_BITS_TO_REPRESENT(ZYDIS_INSTRUCTION_ENCODING_MAX_VALUE)+} ZydisInstructionEncoding;++/* ---------------------------------------------------------------------------------------------- */+/* Opcode map                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisOpcodeMap` enum.+ */+typedef enum ZydisOpcodeMap_+{+    ZYDIS_OPCODE_MAP_DEFAULT,+    ZYDIS_OPCODE_MAP_0F,+    ZYDIS_OPCODE_MAP_0F38,+    ZYDIS_OPCODE_MAP_0F3A,+    ZYDIS_OPCODE_MAP_0F0F,+    ZYDIS_OPCODE_MAP_XOP8,+    ZYDIS_OPCODE_MAP_XOP9,+    ZYDIS_OPCODE_MAP_XOPA,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_OPCODE_MAP_MAX_VALUE = ZYDIS_OPCODE_MAP_XOPA,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_OPCODE_MAP_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_OPCODE_MAP_MAX_VALUE)+} ZydisOpcodeMap;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_SHAREDTYPES_H */
+ external/zydis/include/Zydis/ShortString.h view
@@ -0,0 +1,90 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Defines the immutable and storage-efficient `ZydisShortString` struct, which+ * is used to store strings in the generated tables.+ */++#ifndef ZYDIS_SHORTSTRING_H+#define ZYDIS_SHORTSTRING_H++#include <ZydisExportConfig.h>+#include <Zycore/Defines.h>+#include <Zycore/Types.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++#pragma pack(push, 1)++/**+ * Defines the `ZydisShortString` struct.+ *+ * This compact struct is mainly used for internal string-tables to save up some bytes.+ *+ * All fields in this struct should be considered as "private". Any changes may lead to unexpected+ * behavior.+ */+typedef struct ZydisShortString_+{+    /**+     * The buffer that contains the actual (null-terminated) string.+    */+    const char* data;+    /**+     * The length (number of characters) of the string (without 0-termination).+    */+    ZyanU8 size;+} ZydisShortString;++#pragma pack(pop)++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/**+ * Declares a `ZydisShortString` from a static C-style string.+ *+ * @param   string  The C-string constant.+ */+#define ZYDIS_MAKE_SHORTSTRING(string) \+    { string, sizeof(string) - 1 }++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_SHORTSTRING_H */
+ external/zydis/include/Zydis/Status.h view
@@ -0,0 +1,159 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Status code definitions and check macros.+ */++#ifndef ZYDIS_STATUS_H+#define ZYDIS_STATUS_H++#include <Zycore/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Status codes                                                                                   */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Module IDs                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++/**+ * The zydis module id.+ */+#define ZYAN_MODULE_ZYDIS   0x002++/* ---------------------------------------------------------------------------------------------- */+/* Status codes                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++/* ---------------------------------------------------------------------------------------------- */+/* Decoder                                                                                        */+/* ---------------------------------------------------------------------------------------------- */++/**+ * An attempt was made to read data from an input data-source that has no more+ * data available.+ */+#define ZYDIS_STATUS_NO_MORE_DATA \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x00)++/**+ * An general error occured while decoding the current instruction. The+ * instruction might be undefined.+ */+#define ZYDIS_STATUS_DECODING_ERROR \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x01)++/**+ * The instruction exceeded the maximum length of 15 bytes.+ */+#define ZYDIS_STATUS_INSTRUCTION_TOO_LONG \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x02)++/**+ * The instruction encoded an invalid register.+ */+#define ZYDIS_STATUS_BAD_REGISTER \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x03)++/**+ * A lock-prefix (F0) was found while decoding an instruction that does not+ * support locking.+ */+#define ZYDIS_STATUS_ILLEGAL_LOCK \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x04)++/**+ * A legacy-prefix (F2, F3, 66) was found while decoding a XOP/VEX/EVEX/MVEX+ * instruction.+ */+#define ZYDIS_STATUS_ILLEGAL_LEGACY_PFX \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x05)++/**+ * A rex-prefix was found while decoding a XOP/VEX/EVEX/MVEX instruction.+ */+#define ZYDIS_STATUS_ILLEGAL_REX \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x06)++/**+ * An invalid opcode-map value was found while decoding a XOP/VEX/EVEX/MVEX-prefix.+ */+#define ZYDIS_STATUS_INVALID_MAP \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x07)++/**+ * An error occured while decoding the EVEX-prefix.+ */+#define ZYDIS_STATUS_MALFORMED_EVEX \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x08)++/**+ * An error occured while decoding the MVEX-prefix.+ */+#define ZYDIS_STATUS_MALFORMED_MVEX \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x09)++/**+ * An invalid write-mask was specified for an EVEX/MVEX instruction.+ */+#define ZYDIS_STATUS_INVALID_MASK \+    ZYAN_MAKE_STATUS(1, ZYAN_MODULE_ZYDIS, 0x0A)++/* ---------------------------------------------------------------------------------------------- */+/* Formatter                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returning this status code in some specified formatter callbacks will cause+ * the formatter to omit the corresponding token.+ *+ * Valid callbacks:+ * - `ZYDIS_FORMATTER_FUNC_PRE_OPERAND`+ * - `ZYDIS_FORMATTER_FUNC_POST_OPERAND`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_REG`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_MEM`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_PTR`+ * - `ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_IMM`+ */+#define ZYDIS_STATUS_SKIP_TOKEN \+    ZYAN_MAKE_STATUS(0, ZYAN_MODULE_ZYDIS, 0x0B)++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_STATUS_H */
+ external/zydis/include/Zydis/Utils.h view
@@ -0,0 +1,269 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Other utility functions.+ */++#ifndef ZYDIS_UTILS_H+#define ZYDIS_UTILS_H++#include <Zycore/Defines.h>+#include <Zydis/DecoderTypes.h>+#include <Zydis/Status.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constants                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++#define ZYDIS_MAX_INSTRUCTION_SEGMENT_COUNT 9++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZydisInstructionSegment` struct.+ */+typedef enum ZydisInstructionSegment_+{+    ZYDIS_INSTR_SEGMENT_NONE,+    /**+     * The legacy prefixes (including ignored `REX` prefixes).+     */+    ZYDIS_INSTR_SEGMENT_PREFIXES,+    /**+     * The effective `REX` prefix byte.+     */+    ZYDIS_INSTR_SEGMENT_REX,+    /**+     * The `XOP` prefix bytes.+     */+    ZYDIS_INSTR_SEGMENT_XOP,+    /**+     * The `VEX` prefix bytes.+     */+    ZYDIS_INSTR_SEGMENT_VEX,+    /**+     * The `EVEX` prefix bytes.+     */+    ZYDIS_INSTR_SEGMENT_EVEX,+    /**+     * The `MVEX` prefix bytes.+     */+    ZYDIS_INSTR_SEGMENT_MVEX,+    /**+     * The opcode bytes.+     */+    ZYDIS_INSTR_SEGMENT_OPCODE,+    /**+     * The `ModRM` byte.+     */+    ZYDIS_INSTR_SEGMENT_MODRM,+    /**+     * The `SIB` byte.+     */+    ZYDIS_INSTR_SEGMENT_SIB,+    /**+     * The displacement bytes.+     */+    ZYDIS_INSTR_SEGMENT_DISPLACEMENT,+    /**+     * The immediate bytes.+     */+    ZYDIS_INSTR_SEGMENT_IMMEDIATE,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_INSTR_SEGMENT_MAX_VALUE = ZYDIS_INSTR_SEGMENT_IMMEDIATE,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_INSTR_SEGMENT_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_INSTR_SEGMENT_MAX_VALUE)+} ZydisInstructionSegment;++/**+ * Defines the `ZydisInstructionSegments` struct.+ */+typedef struct ZydisInstructionSegments_+{+    /**+     * The number of logical instruction segments.+     */+    ZyanU8 count;+    struct+    {+        /**+         * The type of the segment.+         */+        ZydisInstructionSegment type;+        /**+         * The offset of the segment relative to the start of the instruction (in bytes).+         */+        ZyanU8 offset;+        /**+         * The size of the segment, in bytes.+         */+        ZyanU8 size;+    } segments[ZYDIS_MAX_INSTRUCTION_SEGMENT_COUNT];+} ZydisInstructionSegments;++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * @addtogroup utils Utils+ * Miscellaneous utility functions. Address translation and other helpers.+ * @{+ */++/* ---------------------------------------------------------------------------------------------- */+/* Address calculation                                                                            */+/* ---------------------------------------------------------------------------------------------- */++// TODO: Provide a function that works in minimal-mode and does not require a operand parameter++/**+ * Calculates the absolute address value for the given instruction operand.+ *+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand         A pointer to the `ZydisDecodedOperand` struct.+ * @param   runtime_address The runtime address of the instruction.+ * @param   result_address  A pointer to the memory that receives the absolute address.+ *+ * @return  A zyan status code.+ *+ * You should use this function in the following cases:+ * - `IMM` operands with relative address (e.g. `JMP`, `CALL`, ...)+ * - `MEM` operands with `RIP`/`EIP`-relative address (e.g. `MOV RAX, [RIP+0x12345678]`)+ * - `MEM` operands with absolute address (e.g. `MOV RAX, [0x12345678]`)+ *   - The displacement needs to get truncated and zero extended+ */+ZYDIS_EXPORT ZyanStatus ZydisCalcAbsoluteAddress(const ZydisDecodedInstruction* instruction,+    const ZydisDecodedOperand* operand, ZyanU64 runtime_address, ZyanU64* result_address);++/**+ * Calculates the absolute address value for the given instruction operand.+ *+ * @param   instruction         A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand             A pointer to the `ZydisDecodedOperand` struct.+ * @param   runtime_address     The runtime address of the instruction.+ * @param   register_context    A pointer to the `ZydisRegisterContext` struct.+ * @param   result_address      A pointer to the memory that receives the absolute target-address.+ *+ * @return  A zyan status code.+ *+ * This function behaves like `ZydisCalcAbsoluteAddress` but takes an additional register-context+ * argument to allow calculation of addresses depending on runtime register values.+ *+ * Note that `IP/EIP/RIP` from the register-context will be ignored in favor of the passed+ * runtime-address.+ */+ZYDIS_EXPORT ZyanStatus ZydisCalcAbsoluteAddressEx(const ZydisDecodedInstruction* instruction,+    const ZydisDecodedOperand* operand, ZyanU64 runtime_address,+    const ZydisRegisterContext* register_context, ZyanU64* result_address);++/* ---------------------------------------------------------------------------------------------- */+/* Accessed CPU flags                                                                             */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns a mask of accessed CPU-flags matching the given `action`.+ *+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   action      The CPU-flag action.+ * @param   flags       Receives the flag mask.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisGetAccessedFlagsByAction(const ZydisDecodedInstruction* instruction,+    ZydisCPUFlagAction action, ZydisCPUFlags* flags);++/**+ * Returns a mask of accessed CPU-flags that are read (tested) by the current instruction.+ *+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   flags       Receives the flag mask.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisGetAccessedFlagsRead(const ZydisDecodedInstruction* instruction,+    ZydisCPUFlags* flags);++/**+ * Returns a mask of accessed CPU-flags that are written (modified, undefined)+ * by the current instruction.+ *+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   flags       Receives the flag mask.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisGetAccessedFlagsWritten(const ZydisDecodedInstruction* instruction,+    ZydisCPUFlags* flags);++/* ---------------------------------------------------------------------------------------------- */+/* Instruction segments                                                                           */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Returns offsets and sizes of all logical instruction segments (e.g. `OPCODE`,+ * `MODRM`, ...).+ *+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   segments    Receives the instruction segments information.+ *+ * @return  A zyan status code.+ */+ZYDIS_EXPORT ZyanStatus ZydisGetInstructionSegments(const ZydisDecodedInstruction* instruction,+    ZydisInstructionSegments* segments);++/* ---------------------------------------------------------------------------------------------- */++/**+ * @}+ */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_UTILS_H */
+ external/zydis/include/Zydis/Zydis.h view
@@ -0,0 +1,169 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++/**+ * @file+ * Master include file, including everything else.+ */++#ifndef ZYDIS_H+#define ZYDIS_H++#include <Zycore/Defines.h>+#include <Zycore/Types.h>++#ifndef ZYDIS_DISABLE_DECODER+#   include <Zydis/Decoder.h>+#   include <Zydis/DecoderTypes.h>+#endif++#ifndef ZYDIS_DISABLE_FORMATTER+#   include <Zydis/Formatter.h>+#endif++#include <Zydis/MetaInfo.h>+#include <Zydis/Mnemonic.h>+#include <Zydis/Register.h>+#include <Zydis/SharedTypes.h>+#include <Zydis/Status.h>+#include <Zydis/Utils.h>++#ifdef __cplusplus+extern "C" {+#endif++/* ============================================================================================== */+/* Macros                                                                                         */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Constants                                                                                      */+/* ---------------------------------------------------------------------------------------------- */++/**+ * A macro that defines the zydis version.+ */+#define ZYDIS_VERSION (ZyanU64)0x0003000100000000++/* ---------------------------------------------------------------------------------------------- */+/* Helper macros                                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Extracts the major-part of the zydis version.+ *+ * @param   version The zydis version value+ */+#define ZYDIS_VERSION_MAJOR(version) (ZyanU16)(((version) & 0xFFFF000000000000) >> 48)++/**+ * Extracts the minor-part of the zydis version.+ *+ * @param   version The zydis version value+ */+#define ZYDIS_VERSION_MINOR(version) (ZyanU16)(((version) & 0x0000FFFF00000000) >> 32)++/**+ * Extracts the patch-part of the zydis version.+ *+ * @param   version The zydis version value+ */+#define ZYDIS_VERSION_PATCH(version) (ZyanU16)(((version) & 0x00000000FFFF0000) >> 16)++/**+ * Extracts the build-part of the zydis version.+ *+ * @param   version The zydis version value+ */+#define ZYDIS_VERSION_BUILD(version) (ZyanU16)((version) & 0x000000000000FFFF)++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Enums and types                                                                                */+/* ============================================================================================== */++/**+ * Defines the `ZydisFeature` enum.+ */+typedef enum ZydisFeature_+{+    ZYDIS_FEATURE_DECODER,+    ZYDIS_FEATURE_FORMATTER,+    ZYDIS_FEATURE_AVX512,+    ZYDIS_FEATURE_KNC,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_FEATURE_MAX_VALUE = ZYDIS_FEATURE_KNC,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_FEATURE_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_FEATURE_MAX_VALUE)+} ZydisFeature;++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/**+ * @addtogroup version Version+ * Functions for checking the library version and build options.+ * @{+ */++/**+ * Returns the zydis version.+ *+ * @return  The zydis version.+ *+ * Use the macros provided in this file to extract the major, minor, patch and build part from the+ * returned version value.+ */+ZYDIS_EXPORT ZyanU64 ZydisGetVersion(void);++/**+ * Checks, if the specified feature is enabled in the current zydis library instance.+ *+ * @param   feature The feature.+ *+ * @return  `ZYAN_STATUS_TRUE` if the feature is enabled, `ZYAN_STATUS_FALSE` if not. Another+ *          zyan status code, if an error occured.+ */+ZYDIS_EXPORT ZyanStatus ZydisIsFeatureEnabled(ZydisFeature feature);++/**+ * @}+ */++/* ============================================================================================== */++#ifdef __cplusplus+}+#endif++#endif /* ZYDIS_H */
+ external/zydis/src/Decoder.c view
@@ -0,0 +1,4928 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zycore/LibC.h>+#include <Zydis/Decoder.h>+#include <Zydis/Status.h>+#include <Zydis/Internal/DecoderData.h>+#include <Zydis/Internal/SharedData.h>++/* ============================================================================================== */+/* Internal enums and types                                                                       */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Decoder context                                                                                */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisDecoderContext` struct.+ */+typedef struct ZydisDecoderContext_+{+    /**+     * A pointer to the `ZydisDecoder` instance.+     */+    const ZydisDecoder* decoder;+    /**+     * The input buffer.+     */+    const ZyanU8* buffer;+    /**+     * The input buffer length.+     */+    ZyanUSize buffer_len;+    struct+    {+        /**+         * Signals, if the instruction has a `LOCK` prefix (`F0`).+         *+         * This prefix originally belongs to group 1, but separating it from the other ones makes+         * parsing easier for us later.+         */+        ZyanBool has_lock;+        /**+         * The effective prefix of group 1 (either `F2` or `F3`).+         */+        ZyanU8 group1;+        /**+         * The effective prefix of group 3 (`2E`,`36`, `3E`, `26`, `64` or `65`).+         */+        ZyanU8 group2;+        /**+         * Signals, if the instruction has an operand-size override prefix (`66`).+         *+         * This is the only prefix in group 3.+         */+        // ZyanBool has_osz_override;+        /**+         * Signals, if the instruction has an address-size override prefix (`67`).+         *+         * This is the only prefix in group 4.+         */+        // ZyanBool has_asz_override;+        /**+         * The effective segment prefix.+         */+        ZyanU8 effective_segment;+        /**+         * The prefix that should be treated as the mandatory-prefix, if the+         * current instruction needs one.+         *+         * The last `F3`/`F2` prefix has precedence over previous ones and+         * `F3`/`F2` in general have precedence over `66`.+         */+        ZyanU8 mandatory_candidate;+        /**+         * The offset of the effective `LOCK` prefix.+         */+        ZyanU8 offset_lock;+        /**+         * The offset of the effective prefix in group 1.+         */+        ZyanU8 offset_group1;+        /**+         * The offset of the effective prefix in group 2.+         */+        ZyanU8 offset_group2;+        /**+         * The offset of the operand-size override prefix (`66`).+         *+         * This is the only prefix in group 3.+         */+        ZyanU8 offset_osz_override;+        /**+         * The offset of the address-size override prefix (`67`).+         *+         * This is the only prefix in group 4.+         */+        ZyanU8 offset_asz_override;+        /**+         * The offset of the effective segment prefix.+         */+        ZyanU8 offset_segment;+        /**+         * The offset of the mandatory-candidate prefix.+         */+        ZyanU8 offset_mandatory;+    } prefixes;+    /**+     * Contains the effective operand-size index.+     *+     * 0 = 16 bit, 1 = 32 bit, 2 = 64 bit+     */+    ZyanU8 eosz_index;+    /**+     * Contains the effective address-size index.+     *+     * 0 = 16 bit, 1 = 32 bit, 2 = 64 bit+     */+    ZyanU8 easz_index;+    /**+     * Contains some cached REX/XOP/VEX/EVEX/MVEX values to provide uniform access.+     */+    struct+    {+        ZyanU8 W;+        ZyanU8 R;+        ZyanU8 X;+        ZyanU8 B;+        ZyanU8 L;+        ZyanU8 LL;+        ZyanU8 R2;+        ZyanU8 V2;+        ZyanU8 v_vvvv;+        ZyanU8 mask;+    } cache;+#ifndef ZYDIS_DISABLE_AVX512+    /**+     * Internal EVEX-specific information.+     */+    struct+    {+        /**+         * The EVEX tuple-type.+         */+        ZydisEVEXTupleType tuple_type;+        /**+         * The EVEX element-size.+         */+        ZyanU8 element_size;+    } evex;+#endif+#ifndef ZYDIS_DISABLE_KNC+    /**+     * Internal MVEX-specific information.+     */+    struct+    {+        /**+         * The MVEX functionality.+         */+        ZydisMVEXFunctionality functionality;+    } mvex;+#endif+#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+    /**+     * The scale factor for EVEX/MVEX compressed 8-bit displacement values.+     */+    ZyanU8 cd8_scale;+#endif+} ZydisDecoderContext;++/* ---------------------------------------------------------------------------------------------- */+/* Register encoding                                                                              */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Defines the `ZydisRegisterEncoding` enum.+ */+typedef enum ZydisRegisterEncoding_+{+    ZYDIS_REG_ENCODING_INVALID,+    /**+     * The register-id is encoded as part of the opcode.+     *+     * Possible extension by `REX/XOP/VEX/EVEX/MVEX.B`.+     */+    ZYDIS_REG_ENCODING_OPCODE,+    /**+     * The register-id is encoded in `modrm.reg`.+     *+     * Possible extension by `EVEX/MVEX.R'` (vector only) and `REX/XOP/VEX/EVEX/MVEX.R`.+     */+    ZYDIS_REG_ENCODING_REG,+    /**+     * The register-id is encoded in `XOP/VEX/EVEX/MVEX.vvvv`.+     *+     * Possible extension by `EVEX/MVEX.v'` (vector only).+     */+    ZYDIS_REG_ENCODING_NDSNDD,+    /**+     * The register-id is encoded in `modrm.rm`.+     *+     * Possible extension by `EVEX/MVEX.X` (vector only) and `REX/XOP/VEX/EVEX/MVEX.B`.+     */+    ZYDIS_REG_ENCODING_RM,+    /**+     * The register-id is encoded in `modrm.rm` or `sib.base` (if SIB is present).+     *+     * Possible extension by `REX/XOP/VEX/EVEX/MVEX.B`.+     */+    ZYDIS_REG_ENCODING_BASE,+    /**+     * The register-id is encoded in `sib.index`.+     *+     * Possible extension by `REX/XOP/VEX/EVEX/MVEX.X`.+     */+    ZYDIS_REG_ENCODING_INDEX,+    /**+     * The register-id is encoded in `sib.index`.+     *+     * Possible extension by `EVEX/MVEX.V'` (vector only) and `REX/XOP/VEX/EVEX/MVEX.X`.+     */+    ZYDIS_REG_ENCODING_VIDX,+    /**+     * The register-id is encoded in an additional 8-bit immediate value.+     *+     * Bits [7:4] in 64-bit mode with possible extension by bit [3] (vector only), bits [7:5] for+     * all other modes.+     */+    ZYDIS_REG_ENCODING_IS4,+    /**+     * The register-id is encoded in `EVEX.aaa/MVEX.kkk`.+     */+    ZYDIS_REG_ENCODING_MASK,++    /**+     * Maximum value of this enum.+     */+    ZYDIS_REG_ENCODING_MAX_VALUE = ZYDIS_REG_ENCODING_MASK,+    /**+     * The minimum number of bits required to represent all values of this enum.+     */+    ZYDIS_REG_ENCODING_REQUIRED_BITS = ZYAN_BITS_TO_REPRESENT(ZYDIS_REG_ENCODING_MAX_VALUE)+} ZydisRegisterEncoding;++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Internal functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Input helper functions                                                                         */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Reads one byte from the current read-position of the input data-source.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   value       A pointer to the memory that receives the byte from the input data-source.+ *+ * @return  A zyan status code.+ *+ * This function may fail, if the `ZYDIS_MAX_INSTRUCTION_LENGTH` limit got exceeded, or no more+ * data is available.+ */+static ZyanStatus ZydisInputPeek(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU8* value)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(value);++    if (instruction->length >= ZYDIS_MAX_INSTRUCTION_LENGTH)+    {+        return ZYDIS_STATUS_INSTRUCTION_TOO_LONG;+    }++    if (context->buffer_len > 0)+    {+        *value = context->buffer[0];+        return ZYAN_STATUS_SUCCESS;+    }++    return ZYDIS_STATUS_NO_MORE_DATA;+}++/**+ * Increases the read-position of the input data-source by one byte.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` instance+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ *+ * This function is supposed to get called ONLY after a successful call of `ZydisInputPeek`.+ *+ * This function increases the `length` field of the `ZydisDecodedInstruction` struct by one.+ */+static void ZydisInputSkip(ZydisDecoderContext* context, ZydisDecodedInstruction* instruction)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(instruction->length < ZYDIS_MAX_INSTRUCTION_LENGTH);++    ++instruction->length;+    ++context->buffer;+    --context->buffer_len;+}++/**+ * Reads one byte from the current read-position of the input data-source and increases+ *          the read-position by one byte afterwards.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   value       A pointer to the memory that receives the byte from the input data-source.+ *+ * @return  A zyan status code.+ *+ * This function acts like a subsequent call of `ZydisInputPeek` and `ZydisInputSkip`.+ */+static ZyanStatus ZydisInputNext(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU8* value)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(value);++    if (instruction->length >= ZYDIS_MAX_INSTRUCTION_LENGTH)+    {+        return ZYDIS_STATUS_INSTRUCTION_TOO_LONG;+    }++    if (context->buffer_len > 0)+    {+        *value = context->buffer++[0];+        ++instruction->length;+        --context->buffer_len;+        return ZYAN_STATUS_SUCCESS;+    }++    return ZYDIS_STATUS_NO_MORE_DATA;+}++/**+ * Reads a variable amount of bytes from the current read-position of the input+ *          data-source and increases the read-position by specified amount of bytes afterwards.+ *+ * @param   context         A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   value           A pointer to the memory that receives the byte from the input+ *                          data-source.+ * @param   number_of_bytes The number of bytes to read from the input data-source.+ *+ * @return  A zyan status code.+ *+ * This function acts like a subsequent call of `ZydisInputPeek` and `ZydisInputSkip`.+ */+static ZyanStatus ZydisInputNextBytes(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU8* value, ZyanU8 number_of_bytes)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(value);++    if (instruction->length + number_of_bytes > ZYDIS_MAX_INSTRUCTION_LENGTH)+    {+        return ZYDIS_STATUS_INSTRUCTION_TOO_LONG;+    }++    if (context->buffer_len >= number_of_bytes)+    {+        instruction->length += number_of_bytes;++        ZYAN_MEMCPY(value, context->buffer, number_of_bytes);+        context->buffer += number_of_bytes;+        context->buffer_len -= number_of_bytes;++        return ZYAN_STATUS_SUCCESS;+    }++    return ZYDIS_STATUS_NO_MORE_DATA;+}++/* ---------------------------------------------------------------------------------------------- */+/* Decode functions                                                                               */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Decodes the `REX`-prefix.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   data        The `REX` byte.+ */+static void ZydisDecodeREX(ZydisDecoderContext* context, ZydisDecodedInstruction* instruction,+    ZyanU8 data)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT((data & 0xF0) == 0x40);++    instruction->attributes |= ZYDIS_ATTRIB_HAS_REX;+    instruction->raw.rex.W       = (data >> 3) & 0x01;+    instruction->raw.rex.R       = (data >> 2) & 0x01;+    instruction->raw.rex.X       = (data >> 1) & 0x01;+    instruction->raw.rex.B       = (data >> 0) & 0x01;++    // Update internal fields+    context->cache.W = instruction->raw.rex.W;+    context->cache.R = instruction->raw.rex.R;+    context->cache.X = instruction->raw.rex.X;+    context->cache.B = instruction->raw.rex.B;+}++/**+ * Decodes the `XOP`-prefix.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   data        The `XOP` bytes.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeXOP(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZyanU8 data[3])+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(data[0] == 0x8F);+    ZYAN_ASSERT(((data[1] >> 0) & 0x1F) >= 8);+    ZYAN_ASSERT(instruction->raw.xop.offset == instruction->length - 3);++    instruction->attributes |= ZYDIS_ATTRIB_HAS_XOP;+    instruction->raw.xop.R       = (data[1] >> 7) & 0x01;+    instruction->raw.xop.X       = (data[1] >> 6) & 0x01;+    instruction->raw.xop.B       = (data[1] >> 5) & 0x01;+    instruction->raw.xop.m_mmmm  = (data[1] >> 0) & 0x1F;++    if ((instruction->raw.xop.m_mmmm < 0x08) || (instruction->raw.xop.m_mmmm > 0x0A))+    {+        // Invalid according to the AMD documentation+        return ZYDIS_STATUS_INVALID_MAP;+    }++    instruction->raw.xop.W    = (data[2] >> 7) & 0x01;+    instruction->raw.xop.vvvv = (data[2] >> 3) & 0x0F;+    instruction->raw.xop.L    = (data[2] >> 2) & 0x01;+    instruction->raw.xop.pp   = (data[2] >> 0) & 0x03;++    // Update internal fields+    context->cache.W = instruction->raw.xop.W;+    context->cache.R = 0x01 & ~instruction->raw.xop.R;+    context->cache.X = 0x01 & ~instruction->raw.xop.X;+    context->cache.B = 0x01 & ~instruction->raw.xop.B;+    context->cache.L = instruction->raw.xop.L;+    context->cache.LL = instruction->raw.xop.L;+    context->cache.v_vvvv = (0x0F & ~instruction->raw.xop.vvvv);++    return ZYAN_STATUS_SUCCESS;+}++/**+ * Decodes the `VEX`-prefix.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   data        The `VEX` bytes.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeVEX(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZyanU8 data[3])+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT((data[0] == 0xC4) || (data[0] == 0xC5));++    instruction->attributes |= ZYDIS_ATTRIB_HAS_VEX;+    switch (data[0])+    {+    case 0xC4:+        ZYAN_ASSERT(instruction->raw.vex.offset == instruction->length - 3);+        instruction->raw.vex.size    = 3;+        instruction->raw.vex.R       = (data[1] >> 7) & 0x01;+        instruction->raw.vex.X       = (data[1] >> 6) & 0x01;+        instruction->raw.vex.B       = (data[1] >> 5) & 0x01;+        instruction->raw.vex.m_mmmm  = (data[1] >> 0) & 0x1F;+        instruction->raw.vex.W       = (data[2] >> 7) & 0x01;+        instruction->raw.vex.vvvv    = (data[2] >> 3) & 0x0F;+        instruction->raw.vex.L       = (data[2] >> 2) & 0x01;+        instruction->raw.vex.pp      = (data[2] >> 0) & 0x03;+        break;+    case 0xC5:+        ZYAN_ASSERT(instruction->raw.vex.offset == instruction->length - 2);+        instruction->raw.vex.size    = 2;+        instruction->raw.vex.R       = (data[1] >> 7) & 0x01;+        instruction->raw.vex.X       = 1;+        instruction->raw.vex.B       = 1;+        instruction->raw.vex.m_mmmm  = 1;+        instruction->raw.vex.W       = 0;+        instruction->raw.vex.vvvv    = (data[1] >> 3) & 0x0F;+        instruction->raw.vex.L       = (data[1] >> 2) & 0x01;+        instruction->raw.vex.pp      = (data[1] >> 0) & 0x03;+        break;+    default:+        ZYAN_UNREACHABLE;+    }++    // Map 0 is only valid for some KNC instructions+#ifdef ZYDIS_DISABLE_KNC+    if ((instruction->raw.vex.m_mmmm == 0) || (instruction->raw.vex.m_mmmm > 0x03))+#else+    if (instruction->raw.vex.m_mmmm > 0x03)+#endif+    {+        // Invalid according to the intel documentation+        return ZYDIS_STATUS_INVALID_MAP;+    }++    // Update internal fields+    context->cache.W = instruction->raw.vex.W;+    context->cache.R = 0x01 & ~instruction->raw.vex.R;+    context->cache.X = 0x01 & ~instruction->raw.vex.X;+    context->cache.B = 0x01 & ~instruction->raw.vex.B;+    context->cache.L = instruction->raw.vex.L;+    context->cache.LL = instruction->raw.vex.L;+    context->cache.v_vvvv = (0x0F & ~instruction->raw.vex.vvvv);++    return ZYAN_STATUS_SUCCESS;+}++#ifndef ZYDIS_DISABLE_AVX512+/**+ * Decodes the `EVEX`-prefix.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   data        The `EVEX` bytes.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeEVEX(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZyanU8 data[4])+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(data[0] == 0x62);+    ZYAN_ASSERT(instruction->raw.evex.offset == instruction->length - 4);++    instruction->attributes |= ZYDIS_ATTRIB_HAS_EVEX;+    instruction->raw.evex.R         = (data[1] >> 7) & 0x01;+    instruction->raw.evex.X         = (data[1] >> 6) & 0x01;+    instruction->raw.evex.B         = (data[1] >> 5) & 0x01;+    instruction->raw.evex.R2        = (data[1] >> 4) & 0x01;++    if (((data[1] >> 2) & 0x03) != 0x00)+    {+        // Invalid according to the intel documentation+        return ZYDIS_STATUS_MALFORMED_EVEX;+    }++    instruction->raw.evex.mm        = (data[1] >> 0) & 0x03;++    if (instruction->raw.evex.mm == 0x00)+    {+        // Invalid according to the intel documentation+        return ZYDIS_STATUS_INVALID_MAP;+    }++    instruction->raw.evex.W         = (data[2] >> 7) & 0x01;+    instruction->raw.evex.vvvv      = (data[2] >> 3) & 0x0F;++    ZYAN_ASSERT(((data[2] >> 2) & 0x01) == 0x01);++    instruction->raw.evex.pp        = (data[2] >> 0) & 0x03;+    instruction->raw.evex.z         = (data[3] >> 7) & 0x01;+    instruction->raw.evex.L2        = (data[3] >> 6) & 0x01;+    instruction->raw.evex.L         = (data[3] >> 5) & 0x01;+    instruction->raw.evex.b         = (data[3] >> 4) & 0x01;+    instruction->raw.evex.V2        = (data[3] >> 3) & 0x01;++    if (!instruction->raw.evex.V2 &&+        (context->decoder->machine_mode != ZYDIS_MACHINE_MODE_LONG_64))+    {+        return ZYDIS_STATUS_MALFORMED_EVEX;+    }++    instruction->raw.evex.aaa       = (data[3] >> 0) & 0x07;++    if (instruction->raw.evex.z && !instruction->raw.evex.aaa)+    {+        return ZYDIS_STATUS_INVALID_MASK; // TODO: Dedicated status code+    }++    // Update internal fields+    context->cache.W = instruction->raw.evex.W;+    context->cache.R = 0x01 & ~instruction->raw.evex.R;+    context->cache.X = 0x01 & ~instruction->raw.evex.X;+    context->cache.B = 0x01 & ~instruction->raw.evex.B;+    context->cache.LL = (data[3] >> 5) & 0x03;+    context->cache.R2 = 0x01 & ~instruction->raw.evex.R2;+    context->cache.V2 = 0x01 & ~instruction->raw.evex.V2;+    context->cache.v_vvvv =+        ((0x01 & ~instruction->raw.evex.V2) << 4) | (0x0F & ~instruction->raw.evex.vvvv);+    context->cache.mask = instruction->raw.evex.aaa;++    if (!instruction->raw.evex.V2 && (context->decoder->machine_mode != ZYDIS_MACHINE_MODE_LONG_64))+    {+        return ZYDIS_STATUS_MALFORMED_EVEX;+    }+    if (!instruction->raw.evex.b && (context->cache.LL == 3))+    {+        // LL = 3 is only valid for instructions with embedded rounding control+        return ZYDIS_STATUS_MALFORMED_EVEX;+    }++    return ZYAN_STATUS_SUCCESS;+}+#endif++#ifndef ZYDIS_DISABLE_KNC+/**+ * Decodes the `MVEX`-prefix.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   data        The `MVEX` bytes.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeMVEX(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZyanU8 data[4])+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(data[0] == 0x62);+    ZYAN_ASSERT(instruction->raw.mvex.offset == instruction->length - 4);++    instruction->attributes |= ZYDIS_ATTRIB_HAS_MVEX;+    instruction->raw.mvex.R       = (data[1] >> 7) & 0x01;+    instruction->raw.mvex.X       = (data[1] >> 6) & 0x01;+    instruction->raw.mvex.B       = (data[1] >> 5) & 0x01;+    instruction->raw.mvex.R2      = (data[1] >> 4) & 0x01;+    instruction->raw.mvex.mmmm    = (data[1] >> 0) & 0x0F;++    if (instruction->raw.mvex.mmmm > 0x03)+    {+        // Invalid according to the intel documentation+        return ZYDIS_STATUS_INVALID_MAP;+    }++    instruction->raw.mvex.W       = (data[2] >> 7) & 0x01;+    instruction->raw.mvex.vvvv    = (data[2] >> 3) & 0x0F;++    ZYAN_ASSERT(((data[2] >> 2) & 0x01) == 0x00);++    instruction->raw.mvex.pp      = (data[2] >> 0) & 0x03;+    instruction->raw.mvex.E       = (data[3] >> 7) & 0x01;+    instruction->raw.mvex.SSS     = (data[3] >> 4) & 0x07;+    instruction->raw.mvex.V2      = (data[3] >> 3) & 0x01;+    instruction->raw.mvex.kkk     = (data[3] >> 0) & 0x07;++    // Update internal fields+    context->cache.W = instruction->raw.mvex.W;+    context->cache.R = 0x01 & ~instruction->raw.mvex.R;+    context->cache.X = 0x01 & ~instruction->raw.mvex.X;+    context->cache.B = 0x01 & ~instruction->raw.mvex.B;+    context->cache.R2 = 0x01 & ~instruction->raw.mvex.R2;+    context->cache.V2 = 0x01 & ~instruction->raw.mvex.V2;+    context->cache.LL = 2;+    context->cache.v_vvvv =+        ((0x01 & ~instruction->raw.mvex.V2) << 4) | (0x0F & ~instruction->raw.mvex.vvvv);+    context->cache.mask = instruction->raw.mvex.kkk;++    return ZYAN_STATUS_SUCCESS;+}+#endif++/**+ * Decodes the `ModRM`-byte.+ *+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   data        The `ModRM` byte.+ */+static void ZydisDecodeModRM(ZydisDecodedInstruction* instruction, ZyanU8 data)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(!(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM));+    ZYAN_ASSERT(instruction->raw.modrm.offset == instruction->length - 1);++    instruction->attributes |= ZYDIS_ATTRIB_HAS_MODRM;+    instruction->raw.modrm.mod     = (data >> 6) & 0x03;+    instruction->raw.modrm.reg     = (data >> 3) & 0x07;+    instruction->raw.modrm.rm      = (data >> 0) & 0x07;+}++/**+ * Decodes the `SIB`-byte.+ *+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct+ * @param   data        The `SIB` byte.+ */+static void ZydisDecodeSIB(ZydisDecodedInstruction* instruction, ZyanU8 data)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+    ZYAN_ASSERT(instruction->raw.modrm.rm == 4);+    ZYAN_ASSERT(!(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB));+    ZYAN_ASSERT(instruction->raw.sib.offset == instruction->length - 1);++    instruction->attributes |= ZYDIS_ATTRIB_HAS_SIB;+    instruction->raw.sib.scale   = (data >> 6) & 0x03;+    instruction->raw.sib.index   = (data >> 3) & 0x07;+    instruction->raw.sib.base    = (data >> 0) & 0x07;+}++/* ---------------------------------------------------------------------------------------------- */++/**+ * Reads a displacement value.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   size        The physical size of the displacement value.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisReadDisplacement(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU8 size)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(instruction->raw.disp.size == 0);++    instruction->raw.disp.size = size;+    instruction->raw.disp.offset = instruction->length;++    switch (size)+    {+    case 8:+    {+        ZyanU8 value;+        ZYAN_CHECK(ZydisInputNext(context, instruction, &value));+        instruction->raw.disp.value = *(ZyanI8*)&value;+        break;+    }+    case 16:+    {+        ZyanU16 value;+        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, (ZyanU8*)&value, 2));+        instruction->raw.disp.value = *(ZyanI16*)&value;+        break;+    }+    case 32:+    {+        ZyanU32 value;+        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, (ZyanU8*)&value, 4));+        instruction->raw.disp.value = *(ZyanI32*)&value;+        break;+    }+    case 64:+    {+        ZyanU64 value;+        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, (ZyanU8*)&value, 8));+        instruction->raw.disp.value = *(ZyanI64*)&value;+        break;+    }+    default:+        ZYAN_UNREACHABLE;+    }++    // TODO: Fix endianess on big-endian systems++    return ZYAN_STATUS_SUCCESS;+}++/**+ * Reads an immediate value.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   id          The immediate id (either `0` or `1`).+ * @param   size        The physical size of the immediate value.+ * @param   is_signed   Signals, if the immediate value is signed.+ * @param   is_relative Signals, if the immediate value is a relative offset.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisReadImmediate(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU8 id, ZyanU8 size, ZyanBool is_signed,+    ZyanBool is_relative)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT((id == 0) || (id == 1));+    ZYAN_ASSERT(is_signed || !is_relative);+    ZYAN_ASSERT(instruction->raw.imm[id].size == 0);++    instruction->raw.imm[id].size = size;+    instruction->raw.imm[id].offset = instruction->length;+    instruction->raw.imm[id].is_signed = is_signed;+    instruction->raw.imm[id].is_relative = is_relative;+    switch (size)+    {+    case 8:+    {+        ZyanU8 value;+        ZYAN_CHECK(ZydisInputNext(context, instruction, &value));+        if (is_signed)+        {+            instruction->raw.imm[id].value.s = (ZyanI8)value;+        } else+        {+            instruction->raw.imm[id].value.u = value;+        }+        break;+    }+    case 16:+    {+        ZyanU16 value;+        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, (ZyanU8*)&value, 2));+        if (is_signed)+        {+            instruction->raw.imm[id].value.s = (ZyanI16)value;+        } else+        {+            instruction->raw.imm[id].value.u = value;+        }+        break;+    }+    case 32:+    {+        ZyanU32 value;+        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, (ZyanU8*)&value, 4));+        if (is_signed)+        {+            instruction->raw.imm[id].value.s = (ZyanI32)value;+        } else+        {+            instruction->raw.imm[id].value.u = value;+        }+        break;+    }+    case 64:+    {+        ZyanU64 value;+        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, (ZyanU8*)&value, 8));+        if (is_signed)+        {+            instruction->raw.imm[id].value.s = (ZyanI64)value;+        } else+        {+            instruction->raw.imm[id].value.u = value;+        }+        break;+    }+    default:+        ZYAN_UNREACHABLE;+    }++    // TODO: Fix endianess on big-endian systems++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Semantical instruction decoding                                                                */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Calculates the register-id for a specific register-encoding and register-class.+ *+ * @param   context         A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction     A pointer to the ` ZydisDecodedInstruction` struct.+ * @param   encoding        The register-encoding.+ * @param   register_class  The register-class.+ *+ * @return  A zyan status code.+ *+ * This function calculates the register-id by combining different fields and flags of previously+ * decoded structs.+ */+static ZyanU8 ZydisCalcRegisterId(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZydisRegisterEncoding encoding,+    ZydisRegisterClass register_class)+{+    switch (context->decoder->machine_mode)+    {+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+    case ZYDIS_MACHINE_MODE_LEGACY_16:+    case ZYDIS_MACHINE_MODE_REAL_16:+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+    case ZYDIS_MACHINE_MODE_LEGACY_32:+        switch (encoding)+        {+        case ZYDIS_REG_ENCODING_OPCODE:+        {+            ZYAN_ASSERT((register_class == ZYDIS_REGCLASS_GPR8) ||+                        (register_class == ZYDIS_REGCLASS_GPR16) ||+                        (register_class == ZYDIS_REGCLASS_GPR32) ||+                        (register_class == ZYDIS_REGCLASS_GPR64));+            ZyanU8 value = (instruction->opcode & 0x0F);+            if (value > 7)+            {+                value = value - 8;+            }+            return value;+        }+        case ZYDIS_REG_ENCODING_REG:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            return instruction->raw.modrm.reg;+        case ZYDIS_REG_ENCODING_NDSNDD:+            return context->cache.v_vvvv & 0x07;+        case ZYDIS_REG_ENCODING_RM:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            return instruction->raw.modrm.rm;+        case ZYDIS_REG_ENCODING_BASE:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            if (instruction->raw.modrm.rm == 4)+            {+                ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+                return instruction->raw.sib.base;+            }+            return instruction->raw.modrm.rm;+        case ZYDIS_REG_ENCODING_INDEX:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+            return instruction->raw.sib.index;+        case ZYDIS_REG_ENCODING_VIDX:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+            ZYAN_ASSERT((register_class == ZYDIS_REGCLASS_XMM) ||+                        (register_class == ZYDIS_REGCLASS_YMM) ||+                        (register_class == ZYDIS_REGCLASS_ZMM));+            return instruction->raw.sib.index;+        case ZYDIS_REG_ENCODING_IS4:+            return (instruction->raw.imm[0].value.u >> 4) & 0x07;+        case ZYDIS_REG_ENCODING_MASK:+            return context->cache.mask;+        default:+            ZYAN_UNREACHABLE;+        }+    case ZYDIS_MACHINE_MODE_LONG_64:+        switch (encoding)+        {+        case ZYDIS_REG_ENCODING_OPCODE:+        {+            ZYAN_ASSERT((register_class == ZYDIS_REGCLASS_GPR8) ||+                        (register_class == ZYDIS_REGCLASS_GPR16) ||+                        (register_class == ZYDIS_REGCLASS_GPR32) ||+                        (register_class == ZYDIS_REGCLASS_GPR64));+            ZyanU8 value = (instruction->opcode & 0x0F);+            if (value > 7)+            {+                value = value - 8;+            }+            return value | (context->cache.B << 3);+        }+        case ZYDIS_REG_ENCODING_REG:+        {+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZyanU8 value = instruction->raw.modrm.reg;+            switch (register_class)+            {+            case ZYDIS_REGCLASS_GPR8:+            case ZYDIS_REGCLASS_GPR16:+            case ZYDIS_REGCLASS_GPR32:+            case ZYDIS_REGCLASS_GPR64:+            case ZYDIS_REGCLASS_XMM:+            case ZYDIS_REGCLASS_YMM:+            case ZYDIS_REGCLASS_ZMM:+            case ZYDIS_REGCLASS_CONTROL:+            case ZYDIS_REGCLASS_DEBUG:+                value |= (context->cache.R << 3);+                break;+            default:+                break;+            }+            // R' only exists for EVEX and MVEX. No encoding check needed+            switch (register_class)+            {+            case ZYDIS_REGCLASS_XMM:+            case ZYDIS_REGCLASS_YMM:+            case ZYDIS_REGCLASS_ZMM:+                value |= (context->cache.R2 << 4);+                break;+            default:+                break;+            }+            return value;+        }+        case ZYDIS_REG_ENCODING_NDSNDD:+            // v' only exists for EVEX and MVEX. No encoding check needed+            switch (register_class)+            {+            case ZYDIS_REGCLASS_XMM:+            case ZYDIS_REGCLASS_YMM:+            case ZYDIS_REGCLASS_ZMM:+                return context->cache.v_vvvv;+            case ZYDIS_REGCLASS_MASK:+                return context->cache.v_vvvv & 0x07;+            default:+                return context->cache.v_vvvv & 0x0F;+            }+        case ZYDIS_REG_ENCODING_RM:+        {+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZyanU8 value = instruction->raw.modrm.rm;+            switch (register_class)+            {+            case ZYDIS_REGCLASS_GPR8:+            case ZYDIS_REGCLASS_GPR16:+            case ZYDIS_REGCLASS_GPR32:+            case ZYDIS_REGCLASS_GPR64:+            case ZYDIS_REGCLASS_XMM:+            case ZYDIS_REGCLASS_YMM:+            case ZYDIS_REGCLASS_ZMM:+            case ZYDIS_REGCLASS_CONTROL:+            case ZYDIS_REGCLASS_DEBUG:+                value |= (context->cache.B << 3);+                break;+            default:+                break;+            }+            // We have to check the instruction-encoding, because the extension by X is only valid+            // for EVEX and MVEX instructions+            if ((instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_EVEX) ||+                (instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX))+            {+                switch (register_class)+                {+                case ZYDIS_REGCLASS_XMM:+                case ZYDIS_REGCLASS_YMM:+                case ZYDIS_REGCLASS_ZMM:+                    value |= (context->cache.X << 4);+                    break;+                default:+                    break;+                }+            }+            return value;+        }+        case ZYDIS_REG_ENCODING_BASE:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            if (instruction->raw.modrm.rm == 4)+            {+                ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+                return instruction->raw.sib.base | (context->cache.B << 3);+            }+            return instruction->raw.modrm.rm | (context->cache.B << 3);+        case ZYDIS_REG_ENCODING_INDEX:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+            return instruction->raw.sib.index | (context->cache.X << 3);+        case ZYDIS_REG_ENCODING_VIDX:+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+            ZYAN_ASSERT((register_class == ZYDIS_REGCLASS_XMM) ||+                        (register_class == ZYDIS_REGCLASS_YMM) ||+                        (register_class == ZYDIS_REGCLASS_ZMM));+            // v' only exists for EVEX and MVEX. No encoding check needed+            return instruction->raw.sib.index | (context->cache.X << 3) |+                (context->cache.V2 << 4);+        case ZYDIS_REG_ENCODING_IS4:+        {+            ZyanU8 value = (instruction->raw.imm[0].value.u >> 4) & 0x0F;+            // We have to check the instruction-encoding, because the extension by bit [3] is only+            // valid for EVEX and MVEX instructions+            if ((instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_EVEX) ||+                (instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX))+            {+                switch (register_class)+                {+                case ZYDIS_REGCLASS_XMM:+                case ZYDIS_REGCLASS_YMM:+                case ZYDIS_REGCLASS_ZMM:+                    value |= ((instruction->raw.imm[0].value.u & 0x08) << 1);+                default:+                    break;+                }+            }+            return value;+        }+        case ZYDIS_REG_ENCODING_MASK:+            return context->cache.mask;+        default:+            ZYAN_UNREACHABLE;+        }+    default:+        ZYAN_UNREACHABLE;+    }+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Sets the operand-size and element-specific information for the given operand.+ *+ * @param   context         A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand         A pointer to the `ZydisDecodedOperand` struct.+ * @param   definition      A pointer to the `ZydisOperandDefinition` struct.+ */+static void ZydisSetOperandSizeAndElementInfo(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZydisDecodedOperand* operand,+    const ZydisOperandDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(operand);+    ZYAN_ASSERT(definition);++    // Operand size+    switch (operand->type)+    {+    case ZYDIS_OPERAND_TYPE_REGISTER:+    {+        if (definition->size[context->eosz_index])+        {+            operand->size = definition->size[context->eosz_index] * 8;+        } else+        {+            operand->size = ZydisRegisterGetWidth(context->decoder->machine_mode,+                operand->reg.value);+        }+        operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+        operand->element_size = operand->size;+        break;+    }+    case ZYDIS_OPERAND_TYPE_MEMORY:+        switch (instruction->encoding)+        {+        case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        case ZYDIS_INSTRUCTION_ENCODING_3DNOW:+        case ZYDIS_INSTRUCTION_ENCODING_XOP:+        case ZYDIS_INSTRUCTION_ENCODING_VEX:+            if (operand->mem.type == ZYDIS_MEMOP_TYPE_AGEN)+            {+                ZYAN_ASSERT(definition->size[context->eosz_index] == 0);+                operand->size = instruction->address_width;+                operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+            } else+            {+                ZYAN_ASSERT(definition->size[context->eosz_index]);+                operand->size = definition->size[context->eosz_index] * 8;+            }+            break;+        case ZYDIS_INSTRUCTION_ENCODING_EVEX:+#ifndef ZYDIS_DISABLE_AVX512+            if (definition->size[context->eosz_index])+            {+                // Operand size is hardcoded+                operand->size = definition->size[context->eosz_index] * 8;+            } else+            {+                // Operand size depends on the tuple-type, the element-size and the number of+                // elements+                ZYAN_ASSERT(instruction->avx.vector_length);+                ZYAN_ASSERT(context->evex.element_size);+                switch (context->evex.tuple_type)+                {+                case ZYDIS_TUPLETYPE_FV:+                    if (instruction->avx.broadcast.mode)+                    {+                        operand->size = context->evex.element_size;+                    } else+                    {+                        operand->size = instruction->avx.vector_length;+                    }+                    break;+                case ZYDIS_TUPLETYPE_HV:+                    if (instruction->avx.broadcast.mode)+                    {+                        operand->size = context->evex.element_size;+                    } else+                    {+                        operand->size = (ZyanU16)instruction->avx.vector_length / 2;+                    }+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+            }+            ZYAN_ASSERT(operand->size);+#else+            ZYAN_UNREACHABLE;+#endif+            break;+        case ZYDIS_INSTRUCTION_ENCODING_MVEX:+#ifndef ZYDIS_DISABLE_KNC+            if (definition->size[context->eosz_index])+            {+                // Operand size is hardcoded+                operand->size = definition->size[context->eosz_index] * 8;+            } else+            {+                ZYAN_ASSERT(definition->element_type == ZYDIS_IELEMENT_TYPE_VARIABLE);+                ZYAN_ASSERT(instruction->avx.vector_length == 512);++                switch (instruction->avx.conversion.mode)+                {+                case ZYDIS_CONVERSION_MODE_INVALID:+                    operand->size = 512;+                    switch (context->mvex.functionality)+                    {+                    case ZYDIS_MVEX_FUNC_SF_32:+                    case ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16:+                    case ZYDIS_MVEX_FUNC_UF_32:+                    case ZYDIS_MVEX_FUNC_DF_32:+                        operand->element_type = ZYDIS_ELEMENT_TYPE_FLOAT32;+                        operand->element_size = 32;+                        break;+                    case ZYDIS_MVEX_FUNC_SF_32_BCST:+                        operand->size = 256;+                        operand->element_type = ZYDIS_ELEMENT_TYPE_FLOAT32;+                        operand->element_size = 32;+                        break;+                    case ZYDIS_MVEX_FUNC_SI_32:+                    case ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16:+                    case ZYDIS_MVEX_FUNC_UI_32:+                    case ZYDIS_MVEX_FUNC_DI_32:+                        operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+                        operand->element_size = 32;+                        break;+                    case ZYDIS_MVEX_FUNC_SI_32_BCST:+                        operand->size = 256;+                        operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+                        operand->element_size = 32;+                        break;+                    case ZYDIS_MVEX_FUNC_SF_64:+                    case ZYDIS_MVEX_FUNC_UF_64:+                    case ZYDIS_MVEX_FUNC_DF_64:+                        operand->element_type = ZYDIS_ELEMENT_TYPE_FLOAT64;+                        operand->element_size = 64;+                        break;+                    case ZYDIS_MVEX_FUNC_SI_64:+                    case ZYDIS_MVEX_FUNC_UI_64:+                    case ZYDIS_MVEX_FUNC_DI_64:+                        operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+                        operand->element_size = 64;+                        break;+                    default:+                        ZYAN_UNREACHABLE;+                    }+                    break;+                case ZYDIS_CONVERSION_MODE_FLOAT16:+                    operand->size = 256;+                    operand->element_type = ZYDIS_ELEMENT_TYPE_FLOAT16;+                    operand->element_size = 16;+                    break;+                case ZYDIS_CONVERSION_MODE_SINT16:+                    operand->size = 256;+                    operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+                    operand->element_size = 16;+                    break;+                case ZYDIS_CONVERSION_MODE_UINT16:+                    operand->size = 256;+                    operand->element_type = ZYDIS_ELEMENT_TYPE_UINT;+                    operand->element_size = 16;+                    break;+                case ZYDIS_CONVERSION_MODE_SINT8:+                    operand->size = 128;+                    operand->element_type = ZYDIS_ELEMENT_TYPE_INT;+                    operand->element_size = 8;+                    break;+                case ZYDIS_CONVERSION_MODE_UINT8:+                    operand->size = 128;+                    operand->element_type = ZYDIS_ELEMENT_TYPE_UINT;+                    operand->element_size = 8;+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }++                switch (instruction->avx.broadcast.mode)+                {+                case ZYDIS_BROADCAST_MODE_INVALID:+                    // Nothing to do here+                    break;+                case ZYDIS_BROADCAST_MODE_1_TO_8:+                case ZYDIS_BROADCAST_MODE_1_TO_16:+                    operand->size = operand->element_size;+                    break;+                case ZYDIS_BROADCAST_MODE_4_TO_8:+                case ZYDIS_BROADCAST_MODE_4_TO_16:+                    operand->size = operand->element_size * 4;+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+            }+#else+            ZYAN_UNREACHABLE;+#endif+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        break;+    case ZYDIS_OPERAND_TYPE_POINTER:+        ZYAN_ASSERT((instruction->raw.imm[0].size == 16) ||+                    (instruction->raw.imm[0].size == 32));+        ZYAN_ASSERT( instruction->raw.imm[1].size == 16);+        operand->size = instruction->raw.imm[0].size + instruction->raw.imm[1].size;+        break;+    case ZYDIS_OPERAND_TYPE_IMMEDIATE:+        operand->size = definition->size[context->eosz_index] * 8;+        break;+    default:+        ZYAN_UNREACHABLE;+    }++    // Element-type and -size+    if (definition->element_type && (definition->element_type != ZYDIS_IELEMENT_TYPE_VARIABLE))+    {+        ZydisGetElementInfo(definition->element_type, &operand->element_type,+            &operand->element_size);+        if (!operand->element_size)+        {+            // The element size is the same as the operand size. This is used for single element+            // scaling operands+            operand->element_size = operand->size;+        }+    }++    // Element count+    if (operand->element_size && operand->size && (operand->element_type != ZYDIS_ELEMENT_TYPE_CC))+    {+        operand->element_count = operand->size / operand->element_size;+    } else+    {+        operand->element_count = 1;+    }+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Decodes an register-operand.+ *+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand         A pointer to the `ZydisDecodedOperand` struct.+ * @param   register_class   The register class.+ * @param   register_id      The register id.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeOperandRegister(ZydisDecodedInstruction* instruction,+    ZydisDecodedOperand* operand, ZydisRegisterClass register_class, ZyanU8 register_id)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(operand);++    operand->type = ZYDIS_OPERAND_TYPE_REGISTER;++    if (register_class == ZYDIS_REGCLASS_GPR8)+    {+        if ((instruction->attributes & ZYDIS_ATTRIB_HAS_REX) && (register_id >= 4))+        {+            operand->reg.value = ZYDIS_REGISTER_SPL + (register_id - 4);+        } else+        {+            operand->reg.value = ZYDIS_REGISTER_AL + register_id;+        }+    } else+    {+        operand->reg.value = ZydisRegisterEncode(register_class, register_id);+        ZYAN_ASSERT(operand->reg.value);+        /*if (!operand->reg.value)+        {+            return ZYAN_STATUS_BAD_REGISTER;+        }*/+    }++    return ZYAN_STATUS_SUCCESS;+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Decodes a memory operand.+ *+ * @param   context             A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction         A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand             A pointer to the `ZydisDecodedOperand` struct.+ * @param   vidx_register_class The register-class to use as the index register-class for+ *                              instructions with `VSIB` addressing.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeOperandMemory(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZydisDecodedOperand* operand,+    ZydisRegisterClass vidx_register_class)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(operand);+    ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM);+    ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+    ZYAN_ASSERT(!vidx_register_class || ((instruction->raw.modrm.rm == 4) &&+        ((instruction->address_width == 32) || (instruction->address_width == 64))));++    operand->type = ZYDIS_OPERAND_TYPE_MEMORY;+    operand->mem.type = ZYDIS_MEMOP_TYPE_MEM;++    const ZyanU8 modrm_rm = instruction->raw.modrm.rm;+    ZyanU8 displacement_size = 0;+    switch (instruction->address_width)+    {+    case 16:+    {+        static const ZydisRegister bases[] =+        {+            ZYDIS_REGISTER_BX,   ZYDIS_REGISTER_BX,   ZYDIS_REGISTER_BP,   ZYDIS_REGISTER_BP,+            ZYDIS_REGISTER_SI,   ZYDIS_REGISTER_DI,   ZYDIS_REGISTER_BP,   ZYDIS_REGISTER_BX+        };+        static const ZydisRegister indices[] =+        {+            ZYDIS_REGISTER_SI,   ZYDIS_REGISTER_DI,   ZYDIS_REGISTER_SI,   ZYDIS_REGISTER_DI,+            ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE, ZYDIS_REGISTER_NONE+        };+        operand->mem.base = bases[modrm_rm];+        operand->mem.index = indices[modrm_rm];+        operand->mem.scale = (operand->mem.index == ZYDIS_REGISTER_NONE) ? 0 : 1;+        switch (instruction->raw.modrm.mod)+        {+        case 0:+            if (modrm_rm == 6)+            {+                displacement_size = 16;+                operand->mem.base = ZYDIS_REGISTER_NONE;+            }+            break;+        case 1:+            displacement_size = 8;+            break;+        case 2:+            displacement_size = 16;+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        break;+    }+    case 32:+    {+        operand->mem.base = ZYDIS_REGISTER_EAX + ZydisCalcRegisterId(context, instruction,+            ZYDIS_REG_ENCODING_BASE, ZYDIS_REGCLASS_GPR32);+        switch (instruction->raw.modrm.mod)+        {+        case 0:+            if (modrm_rm == 5)+            {+                if (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64)+                {+                    operand->mem.base = ZYDIS_REGISTER_EIP;+                } else+                {+                    operand->mem.base = ZYDIS_REGISTER_NONE;+                }+                displacement_size = 32;+            }+            break;+        case 1:+            displacement_size = 8;+            break;+        case 2:+            displacement_size = 32;+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        if (modrm_rm == 4)+        {+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+            operand->mem.index =+                ZydisRegisterEncode(vidx_register_class ? vidx_register_class : ZYDIS_REGCLASS_GPR32,+                    ZydisCalcRegisterId(context, instruction,+                        vidx_register_class ? ZYDIS_REG_ENCODING_VIDX : ZYDIS_REG_ENCODING_INDEX,+                        vidx_register_class ? vidx_register_class : ZYDIS_REGCLASS_GPR32));+            operand->mem.scale = (1 << instruction->raw.sib.scale);+            if (operand->mem.index == ZYDIS_REGISTER_ESP)+            {+                operand->mem.index = ZYDIS_REGISTER_NONE;+                operand->mem.scale = 0;+            }+            if (operand->mem.base == ZYDIS_REGISTER_EBP)+            {+                if (instruction->raw.modrm.mod == 0)+                {+                    operand->mem.base = ZYDIS_REGISTER_NONE;+                }+                displacement_size = (instruction->raw.modrm.mod == 1) ? 8 : 32;+            }+        } else+        {+            operand->mem.index = ZYDIS_REGISTER_NONE;+            operand->mem.scale = 0;+        }+        break;+    }+    case 64:+    {+        operand->mem.base = ZYDIS_REGISTER_RAX + ZydisCalcRegisterId(context, instruction,+            ZYDIS_REG_ENCODING_BASE, ZYDIS_REGCLASS_GPR64);+        switch (instruction->raw.modrm.mod)+        {+        case 0:+            if (modrm_rm == 5)+            {+                if (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64)+                {+                    operand->mem.base = ZYDIS_REGISTER_RIP;+                } else+                {+                    operand->mem.base = ZYDIS_REGISTER_NONE;+                }+                displacement_size = 32;+            }+            break;+        case 1:+            displacement_size = 8;+            break;+        case 2:+            displacement_size = 32;+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        if ((modrm_rm & 0x07) == 4)+        {+            ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_SIB);+            operand->mem.index =+                ZydisRegisterEncode(vidx_register_class ? vidx_register_class : ZYDIS_REGCLASS_GPR64,+                    ZydisCalcRegisterId(context, instruction,+                        vidx_register_class ? ZYDIS_REG_ENCODING_VIDX : ZYDIS_REG_ENCODING_INDEX,+                        vidx_register_class ? vidx_register_class : ZYDIS_REGCLASS_GPR64));+            operand->mem.scale = (1 << instruction->raw.sib.scale);;+            if (operand->mem.index == ZYDIS_REGISTER_RSP)+            {+                operand->mem.index = ZYDIS_REGISTER_NONE;+                operand->mem.scale = 0;+            }+            if ((operand->mem.base == ZYDIS_REGISTER_RBP) ||+                (operand->mem.base == ZYDIS_REGISTER_R13))+            {+                if (instruction->raw.modrm.mod == 0)+                {+                    operand->mem.base = ZYDIS_REGISTER_NONE;+                }+                displacement_size = (instruction->raw.modrm.mod == 1) ? 8 : 32;+            }+        } else+        {+            operand->mem.index = ZYDIS_REGISTER_NONE;+            operand->mem.scale = 0;+        }+        break;+    }+    default:+        ZYAN_UNREACHABLE;+    }+    if (displacement_size)+    {+        ZYAN_ASSERT(instruction->raw.disp.size == displacement_size);+        operand->mem.disp.has_displacement = ZYAN_TRUE;+        operand->mem.disp.value = instruction->raw.disp.value;+    }+    return ZYAN_STATUS_SUCCESS;+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Decodes an implicit register operand.+ *+ * @param   context         A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand         A pointer to the `ZydisDecodedOperand` struct.+ * @param   definition      A pointer to the `ZydisOperandDefinition` struct.+ */+static void ZydisDecodeOperandImplicitRegister(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZydisDecodedOperand* operand,+    const ZydisOperandDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(operand);+    ZYAN_ASSERT(definition);++    operand->type = ZYDIS_OPERAND_TYPE_REGISTER;++    switch (definition->op.reg.type)+    {+    case ZYDIS_IMPLREG_TYPE_STATIC:+        operand->reg.value = definition->op.reg.reg.reg;+        break;+    case ZYDIS_IMPLREG_TYPE_GPR_OSZ:+    {+        static const ZydisRegisterClass lookup[3] =+        {+            ZYDIS_REGCLASS_GPR16,+            ZYDIS_REGCLASS_GPR32,+            ZYDIS_REGCLASS_GPR64+        };+        operand->reg.value =+            ZydisRegisterEncode(lookup[context->eosz_index], definition->op.reg.reg.id);+        break;+    }+    case ZYDIS_IMPLREG_TYPE_GPR_ASZ:+        operand->reg.value = ZydisRegisterEncode(+            (instruction->address_width      == 16) ? ZYDIS_REGCLASS_GPR16  :+            (instruction->address_width      == 32) ? ZYDIS_REGCLASS_GPR32  : ZYDIS_REGCLASS_GPR64,+            definition->op.reg.reg.id);+        break;+    case ZYDIS_IMPLREG_TYPE_GPR_SSZ:+        operand->reg.value = ZydisRegisterEncode(+            (context->decoder->address_width == ZYDIS_ADDRESS_WIDTH_16) ? ZYDIS_REGCLASS_GPR16  :+            (context->decoder->address_width == ZYDIS_ADDRESS_WIDTH_32) ? ZYDIS_REGCLASS_GPR32  :+                                                                         ZYDIS_REGCLASS_GPR64,+            definition->op.reg.reg.id);+        break;+    case ZYDIS_IMPLREG_TYPE_IP_ASZ:+        operand->reg.value =+            (instruction->address_width      == 16) ? ZYDIS_REGISTER_IP     :+            (instruction->address_width      == 32) ? ZYDIS_REGISTER_EIP    : ZYDIS_REGISTER_RIP;+        break;+    case ZYDIS_IMPLREG_TYPE_IP_SSZ:+        operand->reg.value =+            (context->decoder->address_width == ZYDIS_ADDRESS_WIDTH_16) ? ZYDIS_REGISTER_EIP    :+            (context->decoder->address_width == ZYDIS_ADDRESS_WIDTH_32) ? ZYDIS_REGISTER_EIP    :+                                                                         ZYDIS_REGISTER_RIP;+        break;+    case ZYDIS_IMPLREG_TYPE_FLAGS_SSZ:+        operand->reg.value =+            (context->decoder->address_width == ZYDIS_ADDRESS_WIDTH_16) ? ZYDIS_REGISTER_FLAGS  :+            (context->decoder->address_width == ZYDIS_ADDRESS_WIDTH_32) ? ZYDIS_REGISTER_EFLAGS :+                                                                         ZYDIS_REGISTER_RFLAGS;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Decodes an implicit memory operand.+ *+ * @param   context         A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction     A pointer to the `ZydisDecodedInstruction` struct.+ * @param   operand         A pointer to the `ZydisDecodedOperand` struct.+ * @param   definition      A pointer to the `ZydisOperandDefinition` struct.+ */+static void ZydisDecodeOperandImplicitMemory(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZydisDecodedOperand* operand,+    const ZydisOperandDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(operand);+    ZYAN_ASSERT(definition);++    static const ZydisRegisterClass lookup[3] =+    {+        ZYDIS_REGCLASS_GPR16,+        ZYDIS_REGCLASS_GPR32,+        ZYDIS_REGCLASS_GPR64+    };++    operand->type = ZYDIS_OPERAND_TYPE_MEMORY;+    operand->mem.type = ZYDIS_MEMOP_TYPE_MEM;++    switch (definition->op.mem.base)+    {+    case ZYDIS_IMPLMEM_BASE_AGPR_REG:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index],+            ZydisCalcRegisterId(context, instruction, ZYDIS_REG_ENCODING_REG,+                lookup[context->easz_index]));+        break;+    case ZYDIS_IMPLMEM_BASE_AGPR_RM:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index],+            ZydisCalcRegisterId(context, instruction, ZYDIS_REG_ENCODING_RM,+                lookup[context->easz_index]));+        break;+    case ZYDIS_IMPLMEM_BASE_AAX:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 0);+        break;+    case ZYDIS_IMPLMEM_BASE_ADX:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 2);+        break;+    case ZYDIS_IMPLMEM_BASE_ABX:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 3);+        break;+    case ZYDIS_IMPLMEM_BASE_ASP:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 4);+        break;+    case ZYDIS_IMPLMEM_BASE_ABP:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 5);+        break;+    case ZYDIS_IMPLMEM_BASE_ASI:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 6);+        break;+    case ZYDIS_IMPLMEM_BASE_ADI:+        operand->mem.base = ZydisRegisterEncode(lookup[context->easz_index], 7);+        break;+    default:+        ZYAN_UNREACHABLE;+    }++    if (definition->op.mem.seg)+    {+        operand->mem.segment =+            ZydisRegisterEncode(ZYDIS_REGCLASS_SEGMENT, definition->op.mem.seg - 1);+        ZYAN_ASSERT(operand->mem.segment);+    }+}+#endif++/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Decodes the instruction operands.+ *+ * @param   context     A pointer to the`ZydisDecoderContext` struct.+ * @param   instruction A pointer to the`ZydisDecodedInstruction` struct.+ * @param   definition  A pointer to the`ZydisInstructionDefinition` struct.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeOperands(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZydisInstructionDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(definition);++    ZyanU8 imm_id = 0;+    const ZydisOperandDefinition* operand;+    instruction->operand_count = ZydisGetOperandDefinitions(definition, &operand);++    ZYAN_ASSERT(instruction->operand_count <= ZYAN_ARRAY_LENGTH(instruction->operands));++    for (ZyanU8 i = 0; i < instruction->operand_count; ++i)+    {+        ZydisRegisterClass register_class = ZYDIS_REGCLASS_INVALID;++        instruction->operands[i].id = i;+        instruction->operands[i].visibility = operand->visibility;+        instruction->operands[i].actions = operand->actions;+        ZYAN_ASSERT(!(operand->actions &+                        ZYDIS_OPERAND_ACTION_READ & ZYDIS_OPERAND_ACTION_CONDREAD) ||+                     (operand->actions & ZYDIS_OPERAND_ACTION_READ) ^+                     (operand->actions & ZYDIS_OPERAND_ACTION_CONDREAD));+        ZYAN_ASSERT(!(operand->actions &+                        ZYDIS_OPERAND_ACTION_WRITE & ZYDIS_OPERAND_ACTION_CONDWRITE) ||+                     (operand->actions & ZYDIS_OPERAND_ACTION_WRITE) ^+                     (operand->actions & ZYDIS_OPERAND_ACTION_CONDWRITE));++        // Implicit operands+        switch (operand->type)+        {+        case ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG:+            ZydisDecodeOperandImplicitRegister(context, instruction, &instruction->operands[i],+                operand);+            break;+        case ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM:+            ZydisDecodeOperandImplicitMemory(context, instruction, &instruction->operands[i],+                operand);+            break;+        case ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1:+            instruction->operands[i].type = ZYDIS_OPERAND_TYPE_IMMEDIATE;+            instruction->operands[i].size = 8;+            instruction->operands[i].imm.value.u = 1;+            instruction->operands[i].imm.is_signed = ZYAN_FALSE;+            instruction->operands[i].imm.is_relative = ZYAN_FALSE;+            break;+        default:+            break;+        }+        if (instruction->operands[i].type)+        {+            goto FinalizeOperand;+        }++        instruction->operands[i].encoding = operand->op.encoding;++        // Register operands+        switch (operand->type)+        {+        case ZYDIS_SEMANTIC_OPTYPE_GPR8:+            register_class = ZYDIS_REGCLASS_GPR8;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR16:+            register_class = ZYDIS_REGCLASS_GPR16;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR32:+            register_class = ZYDIS_REGCLASS_GPR32;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR64:+            register_class = ZYDIS_REGCLASS_GPR64;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64:+            ZYAN_ASSERT((instruction->operand_width == 16) || (instruction->operand_width == 32) ||+                        (instruction->operand_width == 64));+            register_class =+                (instruction->operand_width == 16) ? ZYDIS_REGCLASS_GPR16 : (+                (instruction->operand_width == 32) ? ZYDIS_REGCLASS_GPR32 : ZYDIS_REGCLASS_GPR64);+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64:+            ZYAN_ASSERT((instruction->operand_width == 16) || (instruction->operand_width == 32) ||+                        (instruction->operand_width == 64));+            register_class =+                (instruction->operand_width == 16) ? ZYDIS_REGCLASS_GPR32 : (+                (instruction->operand_width == 32) ? ZYDIS_REGCLASS_GPR32: ZYDIS_REGCLASS_GPR64);+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR16_32_32:+            ZYAN_ASSERT((instruction->operand_width == 16) || (instruction->operand_width == 32) ||+                        (instruction->operand_width == 64));+            register_class =+                (instruction->operand_width == 16) ? ZYDIS_REGCLASS_GPR16 : ZYDIS_REGCLASS_GPR32;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_GPR_ASZ:+            ZYAN_ASSERT((instruction->address_width == 16) || (instruction->address_width == 32) ||+                        (instruction->address_width == 64));+            register_class =+                (instruction->address_width == 16) ? ZYDIS_REGCLASS_GPR16 : (+                (instruction->address_width == 32) ? ZYDIS_REGCLASS_GPR32 : ZYDIS_REGCLASS_GPR64);+            break;+        case ZYDIS_SEMANTIC_OPTYPE_FPR:+            register_class = ZYDIS_REGCLASS_X87;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MMX:+            register_class = ZYDIS_REGCLASS_MMX;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_XMM:+            register_class = ZYDIS_REGCLASS_XMM;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_YMM:+            register_class = ZYDIS_REGCLASS_YMM;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_ZMM:+            register_class = ZYDIS_REGCLASS_ZMM;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_BND:+            register_class = ZYDIS_REGCLASS_BOUND;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_SREG:+            register_class = ZYDIS_REGCLASS_SEGMENT;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_CR:+            register_class = ZYDIS_REGCLASS_CONTROL;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_DR:+            register_class = ZYDIS_REGCLASS_DEBUG;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MASK:+            register_class = ZYDIS_REGCLASS_MASK;+            break;+        default:+            break;+        }+        if (register_class)+        {+            switch (operand->op.encoding)+            {+            case ZYDIS_OPERAND_ENCODING_MODRM_REG:+                ZYAN_CHECK(+                    ZydisDecodeOperandRegister(+                        instruction, &instruction->operands[i], register_class,+                    ZydisCalcRegisterId(+                        context, instruction, ZYDIS_REG_ENCODING_REG, register_class)));+                break;+            case ZYDIS_OPERAND_ENCODING_MODRM_RM:+                ZYAN_CHECK(+                    ZydisDecodeOperandRegister(+                        instruction, &instruction->operands[i], register_class,+                    ZydisCalcRegisterId(+                        context, instruction, ZYDIS_REG_ENCODING_RM, register_class)));+                break;+            case ZYDIS_OPERAND_ENCODING_OPCODE:+                ZYAN_CHECK(+                    ZydisDecodeOperandRegister(+                        instruction, &instruction->operands[i], register_class,+                    ZydisCalcRegisterId(+                        context, instruction, ZYDIS_REG_ENCODING_OPCODE, register_class)));+                break;+            case ZYDIS_OPERAND_ENCODING_NDSNDD:+                ZYAN_CHECK(+                    ZydisDecodeOperandRegister(+                        instruction, &instruction->operands[i], register_class,+                    ZydisCalcRegisterId(+                        context, instruction, ZYDIS_REG_ENCODING_NDSNDD, register_class)));+                break;+            case ZYDIS_OPERAND_ENCODING_MASK:+                ZYAN_CHECK(+                    ZydisDecodeOperandRegister(+                        instruction, &instruction->operands[i], register_class,+                    ZydisCalcRegisterId(+                        context, instruction, ZYDIS_REG_ENCODING_MASK, register_class)));+                break;+            case ZYDIS_OPERAND_ENCODING_IS4:+                ZYAN_CHECK(+                    ZydisDecodeOperandRegister(+                        instruction, &instruction->operands[i], register_class,+                    ZydisCalcRegisterId(+                        context, instruction, ZYDIS_REG_ENCODING_IS4, register_class)));+                break;+            default:+                ZYAN_UNREACHABLE;+            }++            goto FinalizeOperand;+        }++        // Memory operands+        switch (operand->type)+        {+        case ZYDIS_SEMANTIC_OPTYPE_MEM:+            ZYAN_CHECK(+                ZydisDecodeOperandMemory(+                    context, instruction, &instruction->operands[i], ZYDIS_REGCLASS_INVALID));+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX:+            ZYAN_CHECK(+                ZydisDecodeOperandMemory(+                    context, instruction, &instruction->operands[i], ZYDIS_REGCLASS_XMM));+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY:+            ZYAN_CHECK(+                ZydisDecodeOperandMemory(+                    context, instruction, &instruction->operands[i], ZYDIS_REGCLASS_YMM));+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ:+            ZYAN_CHECK(+                ZydisDecodeOperandMemory(+                    context, instruction, &instruction->operands[i], ZYDIS_REGCLASS_ZMM));+            break;+        case ZYDIS_SEMANTIC_OPTYPE_PTR:+            ZYAN_ASSERT((instruction->raw.imm[0].size == 16) ||+                         (instruction->raw.imm[0].size == 32));+            ZYAN_ASSERT( instruction->raw.imm[1].size == 16);+            instruction->operands[i].type = ZYDIS_OPERAND_TYPE_POINTER;+            instruction->operands[i].ptr.offset  = (ZyanU32)instruction->raw.imm[0].value.u;+            instruction->operands[i].ptr.segment = (ZyanU16)instruction->raw.imm[1].value.u;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_AGEN:+            instruction->operands[i].actions = 0; // TODO: Remove after generator update+            ZYAN_CHECK(+                ZydisDecodeOperandMemory(+                    context, instruction, &instruction->operands[i], ZYDIS_REGCLASS_INVALID));+            instruction->operands[i].mem.type = ZYDIS_MEMOP_TYPE_AGEN;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MOFFS:+            ZYAN_ASSERT(instruction->raw.disp.size);+            instruction->operands[i].type = ZYDIS_OPERAND_TYPE_MEMORY;+            instruction->operands[i].mem.type = ZYDIS_MEMOP_TYPE_MEM;+            instruction->operands[i].mem.disp.has_displacement = ZYAN_TRUE;+            instruction->operands[i].mem.disp.value = instruction->raw.disp.value;+            break;+        case ZYDIS_SEMANTIC_OPTYPE_MIB:+            instruction->operands[i].actions = 0; // TODO: Remove after generator update+            ZYAN_CHECK(+                ZydisDecodeOperandMemory(+                    context, instruction, &instruction->operands[i], ZYDIS_REGCLASS_INVALID));+            instruction->operands[i].mem.type = ZYDIS_MEMOP_TYPE_MIB;+            break;+        default:+            break;+        }+        if (instruction->operands[i].type)+        {+#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+            // Handle compressed 8-bit displacement+            if (((instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_EVEX) ||+                 (instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX)) &&+                 (instruction->raw.disp.size == 8))+            {+                instruction->operands[i].mem.disp.value *= context->cd8_scale;+            }+#endif++            goto FinalizeOperand;+        }++        // Immediate operands+        switch (operand->type)+        {+        case ZYDIS_SEMANTIC_OPTYPE_REL:+            ZYAN_ASSERT(instruction->raw.imm[imm_id].is_relative);+        case ZYDIS_SEMANTIC_OPTYPE_IMM:+            ZYAN_ASSERT((imm_id == 0) || (imm_id == 1));+            instruction->operands[i].type = ZYDIS_OPERAND_TYPE_IMMEDIATE;+            instruction->operands[i].size = operand->size[context->eosz_index] * 8;+            if (operand->op.encoding == ZYDIS_OPERAND_ENCODING_IS4)+            {+                // The upper half of the 8-bit immediate is used to encode a register specifier+                ZYAN_ASSERT(instruction->raw.imm[imm_id].size == 8);+                instruction->operands[i].imm.value.u =+                    (ZyanU8)instruction->raw.imm[imm_id].value.u & 0x0F;+            } else+            {+                instruction->operands[i].imm.value.u = instruction->raw.imm[imm_id].value.u;+            }+            instruction->operands[i].imm.is_signed = instruction->raw.imm[imm_id].is_signed;+            instruction->operands[i].imm.is_relative = instruction->raw.imm[imm_id].is_relative;+            ++imm_id;+            break;+        default:+            break;+        }+        ZYAN_ASSERT(instruction->operands[i].type == ZYDIS_OPERAND_TYPE_IMMEDIATE);++FinalizeOperand:+        // Set segment-register for memory operands+        if (instruction->operands[i].type == ZYDIS_OPERAND_TYPE_MEMORY)+        {+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_CS)+            {+                instruction->operands[i].mem.segment = ZYDIS_REGISTER_CS;+            } else+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_SS)+            {+                instruction->operands[i].mem.segment = ZYDIS_REGISTER_SS;+            } else+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_DS)+            {+                instruction->operands[i].mem.segment = ZYDIS_REGISTER_DS;+            } else+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_ES)+            {+                instruction->operands[i].mem.segment = ZYDIS_REGISTER_ES;+            } else+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_FS)+            {+                instruction->operands[i].mem.segment = ZYDIS_REGISTER_FS;+            } else+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_GS)+            {+                instruction->operands[i].mem.segment = ZYDIS_REGISTER_GS;+            } else+            {+                if (instruction->operands[i].mem.segment == ZYDIS_REGISTER_NONE)+                {+                    if ((instruction->operands[i].mem.base == ZYDIS_REGISTER_RSP) ||+                        (instruction->operands[i].mem.base == ZYDIS_REGISTER_RBP) ||+                        (instruction->operands[i].mem.base == ZYDIS_REGISTER_ESP) ||+                        (instruction->operands[i].mem.base == ZYDIS_REGISTER_EBP) ||+                        (instruction->operands[i].mem.base == ZYDIS_REGISTER_SP)  ||+                        (instruction->operands[i].mem.base == ZYDIS_REGISTER_BP))+                    {+                        instruction->operands[i].mem.segment = ZYDIS_REGISTER_SS;+                    } else+                    {+                        instruction->operands[i].mem.segment = ZYDIS_REGISTER_DS;+                    }+                }+            }+        }++        ZydisSetOperandSizeAndElementInfo(context, instruction, &instruction->operands[i], operand);+        ++operand;+    }++#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+    // Fix operand-action for EVEX/MVEX instructions with merge-mask+    if (instruction->avx.mask.mode == ZYDIS_MASK_MODE_MERGING)+    {+        ZYAN_ASSERT(instruction->operand_count >= 1);+        switch (instruction->operands[0].actions)+        {+        case ZYDIS_OPERAND_ACTION_WRITE:+            if (instruction->operands[0].type == ZYDIS_OPERAND_TYPE_MEMORY)+            {+                instruction->operands[0].actions = ZYDIS_OPERAND_ACTION_CONDWRITE;+            } else+            {+                instruction->operands[0].actions = ZYDIS_OPERAND_ACTION_READ_CONDWRITE;+            }+            break;+        case ZYDIS_OPERAND_ACTION_READWRITE:+            instruction->operands[0].actions = ZYDIS_OPERAND_ACTION_READ_CONDWRITE;+            break;+        default:+            break;+        }+    }+#endif++    return ZYAN_STATUS_SUCCESS;+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Sets attributes for the given instruction.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   definition  A pointer to the `ZydisInstructionDefinition` struct.+ */+static void ZydisSetAttributes(ZydisDecoderContext* context, ZydisDecodedInstruction* instruction,+    const ZydisInstructionDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(definition);++    if (definition->cpu_state != ZYDIS_RW_ACTION_NONE)+    {+        static const ZydisInstructionAttributes mapping[ZYDIS_RW_ACTION_MAX_VALUE + 1] =+        {+            /* NONE      */ 0,+            /* READ      */ ZYDIS_ATTRIB_CPU_STATE_CR,+            /* WRITE     */ ZYDIS_ATTRIB_CPU_STATE_CW,+            /* READWRITE */ ZYDIS_ATTRIB_CPU_STATE_CR | ZYDIS_ATTRIB_CPU_STATE_CW+        };+        ZYAN_ASSERT(definition->cpu_state < ZYAN_ARRAY_LENGTH(mapping));+        instruction->attributes |= mapping[definition->cpu_state];+    }++    if (definition->fpu_state != ZYDIS_RW_ACTION_NONE)+    {+        static const ZydisInstructionAttributes mapping[ZYDIS_RW_ACTION_MAX_VALUE + 1] =+        {+            /* NONE      */ 0,+            /* READ      */ ZYDIS_ATTRIB_FPU_STATE_CR,+            /* WRITE     */ ZYDIS_ATTRIB_FPU_STATE_CW,+            /* READWRITE */ ZYDIS_ATTRIB_FPU_STATE_CR | ZYDIS_ATTRIB_FPU_STATE_CW+        };+        ZYAN_ASSERT(definition->fpu_state < ZYAN_ARRAY_LENGTH(mapping));+        instruction->attributes |= mapping[definition->fpu_state];+    }++    if (definition->xmm_state != ZYDIS_RW_ACTION_NONE)+    {+        static const ZydisInstructionAttributes mapping[ZYDIS_RW_ACTION_MAX_VALUE + 1] =+        {+            /* NONE      */ 0,+            /* READ      */ ZYDIS_ATTRIB_XMM_STATE_CR,+            /* WRITE     */ ZYDIS_ATTRIB_XMM_STATE_CW,+            /* READWRITE */ ZYDIS_ATTRIB_XMM_STATE_CR | ZYDIS_ATTRIB_XMM_STATE_CW+        };+        ZYAN_ASSERT(definition->xmm_state < ZYAN_ARRAY_LENGTH(mapping));+        instruction->attributes |= mapping[definition->xmm_state];+    }++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+    {+        const ZydisInstructionDefinitionLEGACY* def =+            (const ZydisInstructionDefinitionLEGACY*)definition;++        if (def->is_privileged)+        {+            instruction->attributes |= ZYDIS_ATTRIB_IS_PRIVILEGED;+        }+        if (def->accepts_LOCK)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_LOCK;+            if (context->prefixes.has_lock)+            {+                instruction->attributes |= ZYDIS_ATTRIB_HAS_LOCK;+                instruction->raw.prefixes[context->prefixes.offset_lock].type =+                    ZYDIS_PREFIX_TYPE_EFFECTIVE;+            }+        }+        if (def->accepts_REP)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_REP;+        }+        if (def->accepts_REPEREPZ)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_REPE;+        }+        if (def->accepts_REPNEREPNZ)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_REPNE;+        }+        if (def->accepts_BOUND)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_BND;+        }+        if (def->accepts_XACQUIRE)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_XACQUIRE;+        }+        if (def->accepts_XRELEASE)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_XRELEASE;+        }+        if (def->accepts_hle_without_lock)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_HLE_WITHOUT_LOCK;+        }++        switch (context->prefixes.group1)+        {+        case 0xF2:+            if (instruction->attributes & ZYDIS_ATTRIB_ACCEPTS_REPNE)+            {+                instruction->attributes |= ZYDIS_ATTRIB_HAS_REPNE;+                break;+            }+            if (instruction->attributes & ZYDIS_ATTRIB_ACCEPTS_XACQUIRE)+            {+                if ((instruction->attributes & ZYDIS_ATTRIB_HAS_LOCK) ||+                    (def->accepts_hle_without_lock))+                {+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_XACQUIRE;+                    break;+                }+            }+            if (context->decoder->decoder_mode[ZYDIS_DECODER_MODE_MPX] &&+                instruction->attributes & ZYDIS_ATTRIB_ACCEPTS_BND)+            {+                instruction->attributes |= ZYDIS_ATTRIB_HAS_BND;+                break;+            }+            break;+        case 0xF3:+            if (instruction->attributes & ZYDIS_ATTRIB_ACCEPTS_REP)+            {+                instruction->attributes |= ZYDIS_ATTRIB_HAS_REP;+                break;+            }+            if (instruction->attributes & ZYDIS_ATTRIB_ACCEPTS_REPE)+            {+                instruction->attributes |= ZYDIS_ATTRIB_HAS_REPE;+                break;+            }+            if (instruction->attributes & ZYDIS_ATTRIB_ACCEPTS_XRELEASE)+            {+                if ((instruction->attributes & ZYDIS_ATTRIB_HAS_LOCK) ||+                    (def->accepts_hle_without_lock))+                {+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_XRELEASE;+                    break;+                }+            }+            break;+        default:+            break;+        }+        if ((instruction->raw.prefixes[context->prefixes.offset_group1].type ==+             ZYDIS_PREFIX_TYPE_IGNORED) &&+            (instruction->attributes & (+             ZYDIS_ATTRIB_HAS_REP | ZYDIS_ATTRIB_HAS_REPE | ZYDIS_ATTRIB_HAS_REPNE |+             ZYDIS_ATTRIB_HAS_BND | ZYDIS_ATTRIB_HAS_XACQUIRE | ZYDIS_ATTRIB_HAS_XRELEASE)))+        {+            instruction->raw.prefixes[context->prefixes.offset_group1].type =+                ZYDIS_PREFIX_TYPE_EFFECTIVE;+        }++        if (def->accepts_branch_hints)+        {+            instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_BRANCH_HINTS;+            switch (context->prefixes.group2)+            {+            case 0x2E:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_BRANCH_NOT_TAKEN;+                instruction->raw.prefixes[context->prefixes.offset_group2].type =+                    ZYDIS_PREFIX_TYPE_EFFECTIVE;+                break;+            case 0x3E:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_BRANCH_TAKEN;+                instruction->raw.prefixes[context->prefixes.offset_group2].type =+                    ZYDIS_PREFIX_TYPE_EFFECTIVE;+                break;+            default:+                break;+            }+        } else+        {+            if (def->accepts_segment)+            {+                instruction->attributes |= ZYDIS_ATTRIB_ACCEPTS_SEGMENT;+            }+            if (context->prefixes.effective_segment && def->accepts_segment)+            {+                switch (context->prefixes.effective_segment)+                {+                case 0x2E:+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_CS;+                    break;+                case 0x36:+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_SS;+                    break;+                case 0x3E:+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_DS;+                    break;+                case 0x26:+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_ES;+                    break;+                case 0x64:+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_FS;+                    break;+                case 0x65:+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_GS;+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+            }+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT)+            {+                instruction->raw.prefixes[context->prefixes.offset_segment].type =+                    ZYDIS_PREFIX_TYPE_EFFECTIVE;+            }+        }++        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_3DNOW:+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        if (context->prefixes.effective_segment)+        {+            switch (context->prefixes.effective_segment)+            {+            case 0x2E:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_CS;+                break;+            case 0x36:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_SS;+                break;+            case 0x3E:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_DS;+                break;+            case 0x26:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_ES;+                break;+            case 0x64:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_FS;+                break;+            case 0x65:+                instruction->attributes |= ZYDIS_ATTRIB_HAS_SEGMENT_GS;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            if (instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT)+            {+                instruction->raw.prefixes[context->prefixes.offset_segment].type =+                    ZYDIS_PREFIX_TYPE_EFFECTIVE;+            }+        }+        break;+    default:+        ZYAN_UNREACHABLE;+    }+}+#endif++#ifndef ZYDIS_MINIMAL_MODE+/**+ * Sets AVX-specific information for the given instruction.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   definition  A pointer to the `ZydisInstructionDefinition` struct.+ *+ * Information set for `XOP`:+ * - Vector Length+ *+ * Information set for `VEX`:+ * - Vector length+ * - Static broadcast-factor+ *+ * Information set for `EVEX`:+ * - Vector length+ * - Broadcast-factor (static and dynamic)+ * - Rounding-mode and SAE+ * - Mask mode+ * - Compressed 8-bit displacement scale-factor+ *+ * Information set for `MVEX`:+ * - Vector length+ * - Broadcast-factor (static and dynamic)+ * - Rounding-mode and SAE+ * - Swizzle- and conversion-mode+ * - Mask mode+ * - Eviction hint+ * - Compressed 8-bit displacement scale-factor+ */+static void ZydisSetAVXInformation(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZydisInstructionDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(definition);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+    {+        // Vector length+        static const ZyanU16 lookup[2] =+        {+            128,+            256+        };+        ZYAN_ASSERT(context->cache.LL < ZYAN_ARRAY_LENGTH(lookup));+        instruction->avx.vector_length = lookup[context->cache.LL];+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+    {+        // Vector length+        static const ZyanU16 lookup[2] =+        {+            128,+            256+        };+        ZYAN_ASSERT(context->cache.LL < ZYAN_ARRAY_LENGTH(lookup));+        instruction->avx.vector_length = lookup[context->cache.LL];++        // Static broadcast-factor+        const ZydisInstructionDefinitionVEX* def =+            (const ZydisInstructionDefinitionVEX*)definition;+        if (def->broadcast)+        {+            instruction->avx.broadcast.is_static = ZYAN_TRUE;+            static ZydisBroadcastMode broadcasts[ZYDIS_VEX_STATIC_BROADCAST_MAX_VALUE + 1] =+            {+                ZYDIS_BROADCAST_MODE_INVALID,+                ZYDIS_BROADCAST_MODE_1_TO_2,+                ZYDIS_BROADCAST_MODE_1_TO_4,+                ZYDIS_BROADCAST_MODE_1_TO_8,+                ZYDIS_BROADCAST_MODE_1_TO_16,+                ZYDIS_BROADCAST_MODE_1_TO_32,+                ZYDIS_BROADCAST_MODE_2_TO_4+            };+            instruction->avx.broadcast.mode = broadcasts[def->broadcast];+        }+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+    {+#ifndef ZYDIS_DISABLE_AVX512+        const ZydisInstructionDefinitionEVEX* def =+            (const ZydisInstructionDefinitionEVEX*)definition;++        // Vector length+        ZyanU8 vector_length = context->cache.LL;+        if (def->vector_length)+        {+            vector_length = def->vector_length - 1;+        }+        static const ZyanU16 lookup[3] =+        {+            128,+            256,+            512+        };+        ZYAN_ASSERT(vector_length < ZYAN_ARRAY_LENGTH(lookup));+        instruction->avx.vector_length = lookup[vector_length];++        context->evex.tuple_type = def->tuple_type;+        if (def->tuple_type)+        {+            ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+            ZYAN_ASSERT(def->element_size);++            // Element size+            static const ZyanU8 element_sizes[ZYDIS_IELEMENT_SIZE_MAX_VALUE + 1] =+            {+                  0,   8,  16,  32,  64, 128+            };+            ZYAN_ASSERT(def->element_size < ZYAN_ARRAY_LENGTH(element_sizes));+            context->evex.element_size = element_sizes[def->element_size];++            // Compressed disp8 scale and broadcast-factor+            switch (def->tuple_type)+            {+            case ZYDIS_TUPLETYPE_FV:+            {+                const ZyanU8 evex_b = instruction->raw.evex.b;+                const ZyanU8 evex_w = context->cache.W;+                ZYAN_ASSERT(evex_b < 2);+                ZYAN_ASSERT(evex_w < 2);+                ZYAN_ASSERT(!evex_b || ((!evex_w && context->evex.element_size == 32) ||+                                        ( evex_w && context->evex.element_size == 64)));+                ZYAN_ASSERT(!evex_b || def->functionality == ZYDIS_EVEX_FUNC_BC);++                static const ZyanU8 scales[2][2][3] =+                {+                    /*B0*/ { /*W0*/ { 16, 32, 64 }, /*W1*/ { 16, 32, 64 } },+                    /*B1*/ { /*W0*/ {  4,  4,  4 }, /*W1*/ {  8,  8,  8 } }+                };+                static const ZydisBroadcastMode broadcasts[2][2][3] =+                {+                    /*B0*/+                    {+                        /*W0*/+                        {+                            ZYDIS_BROADCAST_MODE_INVALID,+                            ZYDIS_BROADCAST_MODE_INVALID,+                            ZYDIS_BROADCAST_MODE_INVALID+                        },+                        /*W1*/+                        {+                            ZYDIS_BROADCAST_MODE_INVALID,+                            ZYDIS_BROADCAST_MODE_INVALID,+                            ZYDIS_BROADCAST_MODE_INVALID+                        }+                    },+                    /*B1*/+                    {+                        /*W0*/+                        {+                            ZYDIS_BROADCAST_MODE_1_TO_4,+                            ZYDIS_BROADCAST_MODE_1_TO_8,+                            ZYDIS_BROADCAST_MODE_1_TO_16+                        },+                        /*W1*/+                        {+                            ZYDIS_BROADCAST_MODE_1_TO_2,+                            ZYDIS_BROADCAST_MODE_1_TO_4,+                            ZYDIS_BROADCAST_MODE_1_TO_8+                        }+                    }+                };+                context->cd8_scale = scales[evex_b][evex_w][vector_length];+                instruction->avx.broadcast.mode = broadcasts[evex_b][evex_w][vector_length];+                break;+            }+            case ZYDIS_TUPLETYPE_HV:+            {+                const ZyanU8 evex_b = instruction->raw.evex.b;+                ZYAN_ASSERT(evex_b < 2);+                ZYAN_ASSERT(!context->cache.W);+                ZYAN_ASSERT(context->evex.element_size == 32);+                ZYAN_ASSERT(!evex_b || def->functionality == ZYDIS_EVEX_FUNC_BC);++                static const ZyanU8 scales[2][3] =+                {+                    /*B0*/ {  8, 16, 32 },+                    /*B1*/ {  4,  4,  4 }+                };+                static const ZydisBroadcastMode broadcasts[2][3] =+                {+                    /*B0*/+                    {+                        ZYDIS_BROADCAST_MODE_INVALID,+                        ZYDIS_BROADCAST_MODE_INVALID,+                        ZYDIS_BROADCAST_MODE_INVALID+                    },+                    /*B1*/+                    {+                        ZYDIS_BROADCAST_MODE_1_TO_2,+                        ZYDIS_BROADCAST_MODE_1_TO_4,+                        ZYDIS_BROADCAST_MODE_1_TO_8+                    }+                };+                context->cd8_scale = scales[evex_b][vector_length];+                instruction->avx.broadcast.mode = broadcasts[evex_b][vector_length];+                break;+            }+            case ZYDIS_TUPLETYPE_FVM:+            {+                static const ZyanU8 scales[3] =+                {+                    16, 32, 64+                };+                context->cd8_scale = scales[vector_length];+                break;+            }+            case ZYDIS_TUPLETYPE_GSCAT:+                switch (context->cache.W)+                {+                case 0:+                    ZYAN_ASSERT(context->evex.element_size == 32);+                    break;+                case 1:+                    ZYAN_ASSERT(context->evex.element_size == 64);+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+                ZYAN_FALLTHROUGH;+            case ZYDIS_TUPLETYPE_T1S:+            {+                static const ZyanU8 scales[6] =+                {+                    /*   */  0,+                    /*  8*/  1,+                    /* 16*/  2,+                    /* 32*/  4,+                    /* 64*/  8,+                    /*128*/ 16,+                };+                ZYAN_ASSERT(def->element_size < ZYAN_ARRAY_LENGTH(scales));+                context->cd8_scale = scales[def->element_size];+                break;+            };+            case ZYDIS_TUPLETYPE_T1F:+                switch (context->evex.element_size)+                {+                case 32:+                    context->cd8_scale = 4;+                    break;+                case 64:+                    context->cd8_scale = 8;+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+                break;+            case ZYDIS_TUPLETYPE_T1_4X:+                ZYAN_ASSERT(context->evex.element_size == 32);+                ZYAN_ASSERT(context->cache.W == 0);+                context->cd8_scale = 16;+                break;+            case ZYDIS_TUPLETYPE_T2:+                switch (context->cache.W)+                {+                case 0:+                    ZYAN_ASSERT(context->evex.element_size == 32);+                    context->cd8_scale = 8;+                    break;+                case 1:+                    ZYAN_ASSERT(context->evex.element_size == 64);+                    ZYAN_ASSERT((instruction->avx.vector_length == 256) ||+                                (instruction->avx.vector_length == 512));+                    context->cd8_scale = 16;+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+                break;+            case ZYDIS_TUPLETYPE_T4:+                switch (context->cache.W)+                {+                case 0:+                    ZYAN_ASSERT(context->evex.element_size == 32);+                    ZYAN_ASSERT((instruction->avx.vector_length == 256) ||+                                (instruction->avx.vector_length == 512));+                    context->cd8_scale = 16;+                    break;+                case 1:+                    ZYAN_ASSERT(context->evex.element_size == 64);+                    ZYAN_ASSERT(instruction->avx.vector_length == 512);+                    context->cd8_scale = 32;+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+                break;+            case ZYDIS_TUPLETYPE_T8:+                ZYAN_ASSERT(!context->cache.W);+                ZYAN_ASSERT(instruction->avx.vector_length == 512);+                ZYAN_ASSERT(context->evex.element_size == 32);+                context->cd8_scale = 32;+                break;+            case ZYDIS_TUPLETYPE_HVM:+            {+                static const ZyanU8 scales[3] =+                {+                     8, 16, 32+                };+                context->cd8_scale = scales[vector_length];+                break;+            }+            case ZYDIS_TUPLETYPE_QVM:+            {+                static const ZyanU8 scales[3] =+                {+                     4,  8, 16+                };+                context->cd8_scale = scales[vector_length];+                break;+            }+            case ZYDIS_TUPLETYPE_OVM:+            {+                static const ZyanU8 scales[3] =+                {+                     2,  4,  8+                };+                context->cd8_scale = scales[vector_length];+                break;+            }+            case ZYDIS_TUPLETYPE_M128:+                context->cd8_scale = 16;+                break;+            case ZYDIS_TUPLETYPE_DUP:+            {+                static const ZyanU8 scales[3] =+                {+                     8, 32, 64+                };+                context->cd8_scale = scales[vector_length];+                break;+            }+            default:+                ZYAN_UNREACHABLE;+            }+        } else+        {+            ZYAN_ASSERT(instruction->raw.modrm.mod == 3);+        }++        // Static broadcast-factor+        if (def->broadcast)+        {+            ZYAN_ASSERT(!instruction->avx.broadcast.mode);+            instruction->avx.broadcast.is_static = ZYAN_TRUE;+            static const ZydisBroadcastMode broadcasts[ZYDIS_EVEX_STATIC_BROADCAST_MAX_VALUE + 1] =+            {+                ZYDIS_BROADCAST_MODE_INVALID,+                ZYDIS_BROADCAST_MODE_1_TO_2,+                ZYDIS_BROADCAST_MODE_1_TO_4,+                ZYDIS_BROADCAST_MODE_1_TO_8,+                ZYDIS_BROADCAST_MODE_1_TO_16,+                ZYDIS_BROADCAST_MODE_1_TO_32,+                ZYDIS_BROADCAST_MODE_1_TO_64,+                ZYDIS_BROADCAST_MODE_2_TO_4,+                ZYDIS_BROADCAST_MODE_2_TO_8,+                ZYDIS_BROADCAST_MODE_2_TO_16,+                ZYDIS_BROADCAST_MODE_4_TO_8,+                ZYDIS_BROADCAST_MODE_4_TO_16,+                ZYDIS_BROADCAST_MODE_8_TO_16+            };+            ZYAN_ASSERT(def->broadcast < ZYAN_ARRAY_LENGTH(broadcasts));+            instruction->avx.broadcast.mode = broadcasts[def->broadcast];+        }++        // Rounding mode and SAE+        if (instruction->raw.evex.b)+        {+            switch (def->functionality)+            {+            case ZYDIS_EVEX_FUNC_INVALID:+            case ZYDIS_EVEX_FUNC_BC:+                // Noting to do here+                break;+            case ZYDIS_EVEX_FUNC_RC:+                instruction->avx.rounding.mode = ZYDIS_ROUNDING_MODE_RN + context->cache.LL;+                // Intentional fallthrough+            case ZYDIS_EVEX_FUNC_SAE:+                instruction->avx.has_sae = ZYAN_TRUE;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+        }++        // Mask+        instruction->avx.mask.reg = ZYDIS_REGISTER_K0 + instruction->raw.evex.aaa;+        switch (def->mask_override)+        {+        case ZYDIS_MASK_OVERRIDE_DEFAULT:+            instruction->avx.mask.mode = ZYDIS_MASK_MODE_MERGING + instruction->raw.evex.z;+            break;+        case ZYDIS_MASK_OVERRIDE_ZEROING:+            instruction->avx.mask.mode = ZYDIS_MASK_MODE_ZEROING;+            break;+        case ZYDIS_MASK_OVERRIDE_CONTROL:+            instruction->avx.mask.mode = ZYDIS_MASK_MODE_CONTROL + instruction->raw.evex.z;+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        if (!instruction->raw.evex.aaa)+        {+            instruction->avx.mask.mode = ZYDIS_MASK_MODE_DISABLED;+        }+#else+        ZYAN_UNREACHABLE;+#endif+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+    {+#ifndef ZYDIS_DISABLE_KNC+        // Vector length+        instruction->avx.vector_length = 512;++        const ZydisInstructionDefinitionMVEX* def =+            (const ZydisInstructionDefinitionMVEX*)definition;++        // Static broadcast-factor+        ZyanU8 index = def->has_element_granularity;+        ZYAN_ASSERT(!index || !def->broadcast);+        if (!index && def->broadcast)+        {+            instruction->avx.broadcast.is_static = ZYAN_TRUE;+            switch (def->broadcast)+            {+            case ZYDIS_MVEX_STATIC_BROADCAST_1_TO_8:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_1_TO_8;+                index = 1;+                break;+            case ZYDIS_MVEX_STATIC_BROADCAST_1_TO_16:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_1_TO_16;+                index = 1;+                break;+            case ZYDIS_MVEX_STATIC_BROADCAST_4_TO_8:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_4_TO_8;+                index = 2;+                break;+            case ZYDIS_MVEX_STATIC_BROADCAST_4_TO_16:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_4_TO_16;+                index = 2;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+        }++        // Compressed disp8 scale and broadcast-factor+        switch (def->functionality)+        {+        case ZYDIS_MVEX_FUNC_IGNORED:+        case ZYDIS_MVEX_FUNC_INVALID:+        case ZYDIS_MVEX_FUNC_RC:+        case ZYDIS_MVEX_FUNC_SAE:+        case ZYDIS_MVEX_FUNC_SWIZZLE_32:+        case ZYDIS_MVEX_FUNC_SWIZZLE_64:+            // Nothing to do here+            break;+        case ZYDIS_MVEX_FUNC_F_32:+        case ZYDIS_MVEX_FUNC_I_32:+        case ZYDIS_MVEX_FUNC_F_64:+        case ZYDIS_MVEX_FUNC_I_64:+            context->cd8_scale = 64;+            break;+        case ZYDIS_MVEX_FUNC_SF_32:+        case ZYDIS_MVEX_FUNC_SF_32_BCST:+        case ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16:+        case ZYDIS_MVEX_FUNC_UF_32:+        {+            static const ZyanU8 lookup[3][8] =+            {+                { 64,  4, 16, 32, 16, 16, 32, 32 },+                {  4,  0,  0,  2,  1,  1,  2,  2 },+                { 16,  0,  0,  8,  4,  4,  8,  8 }+            };+            ZYAN_ASSERT(instruction->raw.mvex.SSS < ZYAN_ARRAY_LENGTH(lookup[index]));+            context->cd8_scale = lookup[index][instruction->raw.mvex.SSS];+            break;+        }+        case ZYDIS_MVEX_FUNC_SI_32:+        case ZYDIS_MVEX_FUNC_UI_32:+        case ZYDIS_MVEX_FUNC_SI_32_BCST:+        case ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16:+        {+            static const ZyanU8 lookup[3][8] =+            {+                { 64,  4, 16,  0, 16, 16, 32, 32 },+                {  4,  0,  0,  0,  1,  1,  2,  2 },+                { 16,  0,  0,  0,  4,  4,  8,  8 }+            };+            ZYAN_ASSERT(instruction->raw.mvex.SSS < ZYAN_ARRAY_LENGTH(lookup[index]));+            context->cd8_scale = lookup[index][instruction->raw.mvex.SSS];+            break;+        }+        case ZYDIS_MVEX_FUNC_SF_64:+        case ZYDIS_MVEX_FUNC_UF_64:+        case ZYDIS_MVEX_FUNC_SI_64:+        case ZYDIS_MVEX_FUNC_UI_64:+        {+            static const ZyanU8 lookup[3][3] =+            {+                { 64,  8, 32 },+                {  8,  0,  0 },+                { 32,  0,  0 }+            };+            ZYAN_ASSERT(instruction->raw.mvex.SSS < ZYAN_ARRAY_LENGTH(lookup[index]));+            context->cd8_scale = lookup[index][instruction->raw.mvex.SSS];+            break;+        }+        case ZYDIS_MVEX_FUNC_DF_32:+        case ZYDIS_MVEX_FUNC_DI_32:+        {+            static const ZyanU8 lookup[2][8] =+            {+                { 64,  0,  0, 32, 16, 16, 32, 32 },+                {  4,  0,  0,  2,  1,  1,  2,  2 }+            };+            ZYAN_ASSERT(index < 2);+            ZYAN_ASSERT(instruction->raw.mvex.SSS < ZYAN_ARRAY_LENGTH(lookup[index]));+            context->cd8_scale = lookup[index][instruction->raw.mvex.SSS];+            break;+        }+        case ZYDIS_MVEX_FUNC_DF_64:+        case ZYDIS_MVEX_FUNC_DI_64:+        {+            static const ZyanU8 lookup[2][1] =+            {+                { 64 },+                {  8 }+            };+            ZYAN_ASSERT(index < 2);+            ZYAN_ASSERT(instruction->raw.mvex.SSS < ZYAN_ARRAY_LENGTH(lookup[index]));+            context->cd8_scale = lookup[index][instruction->raw.mvex.SSS];+            break;+        }+        default:+            ZYAN_UNREACHABLE;+        }++        // Rounding mode, sae, swizzle, convert+        context->mvex.functionality = def->functionality;+        switch (def->functionality)+        {+        case ZYDIS_MVEX_FUNC_IGNORED:+        case ZYDIS_MVEX_FUNC_INVALID:+        case ZYDIS_MVEX_FUNC_F_32:+        case ZYDIS_MVEX_FUNC_I_32:+        case ZYDIS_MVEX_FUNC_F_64:+        case ZYDIS_MVEX_FUNC_I_64:+            // Nothing to do here+            break;+        case ZYDIS_MVEX_FUNC_RC:+            instruction->avx.rounding.mode = ZYDIS_ROUNDING_MODE_RN + instruction->raw.mvex.SSS;+            break;+        case ZYDIS_MVEX_FUNC_SAE:+            if (instruction->raw.mvex.SSS >= 4)+            {+                instruction->avx.has_sae = ZYAN_TRUE;+            }+            break;+        case ZYDIS_MVEX_FUNC_SWIZZLE_32:+        case ZYDIS_MVEX_FUNC_SWIZZLE_64:+            instruction->avx.swizzle.mode = ZYDIS_SWIZZLE_MODE_DCBA + instruction->raw.mvex.SSS;+            break;+        case ZYDIS_MVEX_FUNC_SF_32:+        case ZYDIS_MVEX_FUNC_SF_32_BCST:+        case ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16:+            switch (instruction->raw.mvex.SSS)+            {+            case 0:+                break;+            case 1:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_1_TO_16;+                break;+            case 2:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_4_TO_16;+                break;+            case 3:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_FLOAT16;+                break;+            case 4:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT8;+                break;+            case 5:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT8;+                break;+            case 6:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT16;+                break;+            case 7:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT16;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            break;+        case ZYDIS_MVEX_FUNC_SI_32:+        case ZYDIS_MVEX_FUNC_SI_32_BCST:+        case ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16:+            switch (instruction->raw.mvex.SSS)+            {+            case 0:+                break;+            case 1:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_1_TO_16;+                break;+            case 2:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_4_TO_16;+                break;+            case 4:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT8;+                break;+            case 5:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT8;+                break;+            case 6:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT16;+                break;+            case 7:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT16;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            break;+        case ZYDIS_MVEX_FUNC_SF_64:+        case ZYDIS_MVEX_FUNC_SI_64:+            switch (instruction->raw.mvex.SSS)+            {+            case 0:+                break;+            case 1:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_1_TO_8;+                break;+            case 2:+                instruction->avx.broadcast.mode = ZYDIS_BROADCAST_MODE_4_TO_8;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            break;+        case ZYDIS_MVEX_FUNC_UF_32:+        case ZYDIS_MVEX_FUNC_DF_32:+            switch (instruction->raw.mvex.SSS)+            {+            case 0:+                break;+            case 3:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_FLOAT16;+                break;+            case 4:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT8;+                break;+            case 5:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT8;+                break;+            case 6:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT16;+                break;+            case 7:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT16;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            break;+        case ZYDIS_MVEX_FUNC_UF_64:+        case ZYDIS_MVEX_FUNC_DF_64:+            break;+        case ZYDIS_MVEX_FUNC_UI_32:+        case ZYDIS_MVEX_FUNC_DI_32:+            switch (instruction->raw.mvex.SSS)+            {+            case 0:+                break;+            case 4:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT8;+                break;+            case 5:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT8;+                break;+            case 6:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_UINT16;+                break;+            case 7:+                instruction->avx.conversion.mode = ZYDIS_CONVERSION_MODE_SINT16;+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            break;+        case ZYDIS_MVEX_FUNC_UI_64:+        case ZYDIS_MVEX_FUNC_DI_64:+            break;+        default:+            ZYAN_UNREACHABLE;+        }++        // Eviction hint+        if ((instruction->raw.modrm.mod != 3) && instruction->raw.mvex.E)+        {+            instruction->avx.has_eviction_hint = ZYAN_TRUE;+        }++        // Mask+        instruction->avx.mask.mode = ZYDIS_MASK_MODE_MERGING;+        instruction->avx.mask.reg = ZYDIS_REGISTER_K0 + instruction->raw.mvex.kkk;+#else+        ZYAN_UNREACHABLE;+#endif+        break;+    }+    default:+        // Nothing to do here+        break;+    }+}+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Physical instruction decoding                                                                  */+/* ---------------------------------------------------------------------------------------------- */++/**+ * Collects optional instruction prefixes.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ *+ * @return  A zyan status code.+ *+ * This function sets the corresponding flag for each prefix and automatically decodes the last+ * `REX`-prefix (if exists).+ */+static ZyanStatus ZydisCollectOptionalPrefixes(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(instruction->raw.prefix_count == 0);++    ZyanU8 rex = 0x00;+    ZyanU8 offset = 0;+    ZyanBool done = ZYAN_FALSE;+    do+    {+        ZyanU8 prefix_byte;+        ZYAN_CHECK(ZydisInputPeek(context, instruction, &prefix_byte));+        switch (prefix_byte)+        {+        case 0xF0:+            context->prefixes.has_lock = ZYAN_TRUE;+            context->prefixes.offset_lock = offset;+            break;+        case 0xF2:+            ZYAN_FALLTHROUGH;+        case 0xF3:+            context->prefixes.group1 = prefix_byte;+            context->prefixes.mandatory_candidate = prefix_byte;+            context->prefixes.offset_group1 = offset;+            context->prefixes.offset_mandatory = offset;+            break;+        case 0x2E:+            ZYAN_FALLTHROUGH;+        case 0x36:+            ZYAN_FALLTHROUGH;+        case 0x3E:+            ZYAN_FALLTHROUGH;+        case 0x26:+            context->prefixes.group2 = prefix_byte;+            context->prefixes.offset_group2 = offset;+            if ((context->decoder->machine_mode != ZYDIS_MACHINE_MODE_LONG_64) ||+               ((context->prefixes.effective_segment != 0x64) &&+                (context->prefixes.effective_segment != 0x65)))+            {+                context->prefixes.effective_segment = prefix_byte;+                context->prefixes.offset_segment = offset;+            }+            break;+        case 0x64:+            ZYAN_FALLTHROUGH;+        case 0x65:+            context->prefixes.group2 = prefix_byte;+            context->prefixes.offset_group2 = offset;+            context->prefixes.effective_segment = prefix_byte;+            context->prefixes.offset_segment = offset;+            break;+        case 0x66:+            // context->prefixes.has_osz_override = ZYAN_TRUE;+            context->prefixes.offset_osz_override = offset;+            if (!context->prefixes.mandatory_candidate)+            {+                context->prefixes.mandatory_candidate = 0x66;+                context->prefixes.offset_mandatory = offset;+            }+            instruction->attributes |= ZYDIS_ATTRIB_HAS_OPERANDSIZE;+            break;+        case 0x67:+            // context->prefixes.has_asz_override = ZYAN_TRUE;+            context->prefixes.offset_asz_override = offset;+            instruction->attributes |= ZYDIS_ATTRIB_HAS_ADDRESSSIZE;+            break;+        default:+            if ((context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) &&+                (prefix_byte & 0xF0) == 0x40)+            {+                rex = prefix_byte;+                instruction->raw.rex.offset = offset;+            } else+            {+                done = ZYAN_TRUE;+            }+            break;+        }+        if (!done)+        {+            // Invalidate `REX`, if it's not the last legacy prefix+            if (rex && (rex != prefix_byte))+            {+                rex = 0x00;+                instruction->raw.rex.offset = 0;+            }+            instruction->raw.prefixes[instruction->raw.prefix_count++].value = prefix_byte;+            ZydisInputSkip(context, instruction);+            ++offset;+        }+    } while (!done);++    if (instruction->attributes & ZYDIS_ATTRIB_HAS_OPERANDSIZE)+    {+        instruction->raw.prefixes[context->prefixes.offset_osz_override].type =+            ZYDIS_PREFIX_TYPE_EFFECTIVE;+    }+    if (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE)+    {+        instruction->raw.prefixes[context->prefixes.offset_asz_override].type =+            ZYDIS_PREFIX_TYPE_EFFECTIVE;+    }+    if (rex)+    {+        instruction->raw.prefixes[instruction->raw.rex.offset].type = ZYDIS_PREFIX_TYPE_EFFECTIVE;+        ZydisDecodeREX(context, instruction, rex);+    }++    return ZYAN_STATUS_SUCCESS;+}++/**+ * Decodes optional instruction parts like the ModRM byte, the SIB byte and+ * additional displacements and/or immediate values.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   info        A pointer to the `ZydisInstructionEncodingInfo` struct.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeOptionalInstructionParts(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZydisInstructionEncodingInfo* info)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(info);++    if (info->flags & ZYDIS_INSTR_ENC_FLAG_HAS_MODRM)+    {+        if (!instruction->raw.modrm.offset)+        {+            instruction->raw.modrm.offset = instruction->length;+            ZyanU8 modrm_byte;+            ZYAN_CHECK(ZydisInputNext(context, instruction, &modrm_byte));+            ZydisDecodeModRM(instruction, modrm_byte);+        }+        ZyanU8 has_sib = 0;+        ZyanU8 displacement_size = 0;+        if (!(info->flags & ZYDIS_INSTR_ENC_FLAG_FORCE_REG_FORM))+        {+            switch (instruction->address_width)+            {+            case 16:+                switch (instruction->raw.modrm.mod)+                {+                case 0:+                    if (instruction->raw.modrm.rm == 6)+                    {+                        displacement_size = 16;+                    }+                    break;+                case 1:+                    displacement_size = 8;+                    break;+                case 2:+                    displacement_size = 16;+                    break;+                case 3:+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+                break;+            case 32:+            case 64:+                has_sib =+                    (instruction->raw.modrm.mod != 3) && (instruction->raw.modrm.rm == 4);+                switch (instruction->raw.modrm.mod)+                {+                case 0:+                    if (instruction->raw.modrm.rm == 5)+                    {+                        if (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64)+                        {+                            instruction->attributes |= ZYDIS_ATTRIB_IS_RELATIVE;+                        }+                        displacement_size = 32;+                    }+                    break;+                case 1:+                    displacement_size = 8;+                    break;+                case 2:+                    displacement_size = 32;+                    break;+                case 3:+                    break;+                default:+                    ZYAN_UNREACHABLE;+                }+                break;+            default:+                ZYAN_UNREACHABLE;+            }+            if (has_sib)+            {+                instruction->raw.sib.offset = instruction->length;+                ZyanU8 sib_byte;+                ZYAN_CHECK(ZydisInputNext(context, instruction, &sib_byte));+                ZydisDecodeSIB(instruction, sib_byte);+                if (instruction->raw.sib.base == 5)+                {+                    displacement_size = (instruction->raw.modrm.mod == 1) ? 8 : 32;+                }+            }+            if (displacement_size)+            {+                ZYAN_CHECK(ZydisReadDisplacement(context, instruction, displacement_size));+            }+        }+    }++    if (info->flags & ZYDIS_INSTR_ENC_FLAG_HAS_DISP)+    {+        ZYAN_CHECK(ZydisReadDisplacement(+            context, instruction, info->disp.size[context->easz_index]));+    }++    if (info->flags & ZYDIS_INSTR_ENC_FLAG_HAS_IMM0)+    {+        if (info->imm[0].is_relative)+        {+            instruction->attributes |= ZYDIS_ATTRIB_IS_RELATIVE;+        }+        ZYAN_CHECK(ZydisReadImmediate(context, instruction, 0,+            info->imm[0].size[context->eosz_index], info->imm[0].is_signed,+            info->imm[0].is_relative));+    }++    if (info->flags & ZYDIS_INSTR_ENC_FLAG_HAS_IMM1)+    {+        ZYAN_ASSERT(!(info->flags & ZYDIS_INSTR_ENC_FLAG_HAS_DISP));+        ZYAN_CHECK(ZydisReadImmediate(context, instruction, 1,+            info->imm[1].size[context->eosz_index], info->imm[1].is_signed,+            info->imm[1].is_relative));+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/**+ * Sets the effective operand size for the given instruction.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   definition  A pointer to the `ZydisInstructionDefinition` struct.+ */+static void ZydisSetEffectiveOperandWidth(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZydisInstructionDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(definition);++    static const ZyanU8 operand_size_map[8][8] =+    {+        // Default for most instructions+        {+            16, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            16, // 32 66 W0+            32, // 64 __ W0+            16, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        },+        // Operand size is forced to 8-bit (this is done later to preserve the `eosz_index`)+        {+            16, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            16, // 32 66 W0+            32, // 64 __ W0+            16, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        },+        // Operand size override 0x66 is ignored+        {+            16, // 16 __ W0+            16, // 16 66 W0+            32, // 32 __ W0+            32, // 32 66 W0+            32, // 64 __ W0+            32, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        },+        // REX.W promotes to 32-bit instead of 64-bit+        {+            16, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            16, // 32 66 W0+            32, // 64 __ W0+            16, // 64 66 W0+            32, // 64 __ W1+            32  // 64 66 W1+        },+        // Operand size defaults to 64-bit in 64-bit mode+        {+            16, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            16, // 32 66 W0+            64, // 64 __ W0+            16, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        },+        // Operand size is forced to 64-bit in 64-bit mode+        {+            16, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            16, // 32 66 W0+            64, // 64 __ W0+            64, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        },+        // Operand size is forced to 32-bit, if no REX.W is present.+        {+            32, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            32, // 32 66 W0+            32, // 64 __ W0+            32, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        },+        // Operand size is forced to 64-bit in 64-bit mode and forced to 32-bit in all other modes.+        // This is used for e.g. `mov CR, GPR` and `mov GPR, CR`.+        {+            32, // 16 __ W0+            32, // 16 66 W0+            32, // 32 __ W0+            32, // 32 66 W0+            64, // 64 __ W0+            64, // 64 66 W0+            64, // 64 __ W1+            64  // 64 66 W1+        }+    };++    ZyanU8 index = (instruction->attributes & ZYDIS_ATTRIB_HAS_OPERANDSIZE) ? 1 : 0;+    switch (context->decoder->machine_mode)+    {+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+    case ZYDIS_MACHINE_MODE_LEGACY_16:+    case ZYDIS_MACHINE_MODE_REAL_16:+        index += 0;+        break;+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+    case ZYDIS_MACHINE_MODE_LEGACY_32:+        index += 2;+        break;+    case ZYDIS_MACHINE_MODE_LONG_64:+        index += 4;+        index += (context->cache.W & 0x01) << 1;+        break;+    default:+        ZYAN_UNREACHABLE;+    }++    ZYAN_ASSERT(definition->operand_size_map < ZYAN_ARRAY_LENGTH(operand_size_map));+    ZYAN_ASSERT(index < ZYAN_ARRAY_LENGTH(operand_size_map[definition->operand_size_map]));++    instruction->operand_width = operand_size_map[definition->operand_size_map][index];++    switch (instruction->operand_width)+    {+    case 16:+        context->eosz_index = 0;+        break;+    case 32:+        context->eosz_index = 1;+        break;+    case 64:+        context->eosz_index = 2;+        break;+    default:+        ZYAN_UNREACHABLE;+    }++    // TODO: Cleanup code and remove hardcoded condition+    if (definition->operand_size_map == 1)+    {+        instruction->operand_width = 8;+    }+}++/**+ * Sets the effective address width for the given instruction.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` struct.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   definition  A pointer to the `ZydisInstructionDefinition` struct.+ */+static void ZydisSetEffectiveAddressWidth(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZydisInstructionDefinition* definition)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);++    static const ZyanU8 address_size_map[3][8] =+    {+        // Default for most instructions+        {+            16, // 16 __+            32, // 16 67+            32, // 32 __+            16, // 32 67+            64, // 64 __+            32, // 64 67+        },+        // The address-size override is ignored+        {+            16, // 16 __+            16, // 16 67+            32, // 32 __+            32, // 32 67+            64, // 64 __+            64, // 64 67+        },+        // The address-size is forced to 64-bit in 64-bit mode and 32-bit in non 64-bit mode. This+        // is used by e.g. `ENCLS`, `ENCLV`, `ENCLU`.+        {+            32, // 16 __+            32, // 16 67+            32, // 32 __+            32, // 32 67+            64, // 64 __+            64 // 64 67+        }+    };++    ZyanU8 index = (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE) ? 1 : 0;+    switch (context->decoder->address_width)+    {+    case ZYDIS_ADDRESS_WIDTH_16:+        index += 0;+        break;+    case ZYDIS_ADDRESS_WIDTH_32:+        index += 2;+        break;+    case ZYDIS_ADDRESS_WIDTH_64:+        index += 4;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    ZYAN_ASSERT(definition->address_size_map < ZYAN_ARRAY_LENGTH(address_size_map));+    ZYAN_ASSERT(index < ZYAN_ARRAY_LENGTH(address_size_map[definition->address_size_map]));++    instruction->address_width = address_size_map[definition->address_size_map][index];++    switch (instruction->address_width)+    {+    case 16:+        context->easz_index = 0;+        break;+    case 32:+        context->easz_index = 1;+        break;+    case 64:+        context->easz_index = 2;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+}++/* ---------------------------------------------------------------------------------------------- */++static ZyanStatus ZydisNodeHandlerXOP(ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        *index = 0;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_XOP);+        *index = (instruction->raw.xop.m_mmmm - 0x08) + (instruction->raw.xop.pp * 3) + 1;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerVEX(ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        *index = 0;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_VEX);+        *index = instruction->raw.vex.m_mmmm + (instruction->raw.vex.pp << 2) + 1;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerEMVEX(ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        *index = 0;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_EVEX);+        *index = instruction->raw.evex.mm + (instruction->raw.evex.pp << 2) + 1;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MVEX);+        *index = instruction->raw.mvex.mmmm + (instruction->raw.mvex.pp << 2) + 17;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerOpcode(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    // Handle possible encoding-prefix and opcode-map changes+    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        ZYAN_CHECK(ZydisInputNext(context, instruction, &instruction->opcode));+        switch (instruction->opcode_map)+        {+        case ZYDIS_OPCODE_MAP_DEFAULT:+            switch (instruction->opcode)+            {+            case 0x0F:+                instruction->opcode_map = ZYDIS_OPCODE_MAP_0F;+                break;+            case 0xC4:+            case 0xC5:+            case 0x62:+            {+                ZyanU8 next_input;+                ZYAN_CHECK(ZydisInputPeek(context, instruction, &next_input));+                if (((next_input & 0xF0) >= 0xC0) ||+                    (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64))+                {+                    if (instruction->attributes & ZYDIS_ATTRIB_HAS_REX)+                    {+                        return ZYDIS_STATUS_ILLEGAL_REX;+                    }+                    if (context->prefixes.has_lock)+                    {+                        return ZYDIS_STATUS_ILLEGAL_LOCK;+                    }+                    if (context->prefixes.mandatory_candidate)+                    {+                        return ZYDIS_STATUS_ILLEGAL_LEGACY_PFX;+                    }+                    ZyanU8 prefix_bytes[4] = { 0, 0, 0, 0 };+                    prefix_bytes[0] = instruction->opcode;+                    switch (instruction->opcode)+                    {+                    case 0xC4:+                        instruction->raw.vex.offset = instruction->length - 1;+                        // Read additional 3-byte VEX-prefix data+                        ZYAN_ASSERT(!(instruction->attributes & ZYDIS_ATTRIB_HAS_VEX));+                        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, &prefix_bytes[1], 2));+                        break;+                    case 0xC5:+                        instruction->raw.vex.offset = instruction->length - 1;+                        // Read additional 2-byte VEX-prefix data+                        ZYAN_ASSERT(!(instruction->attributes & ZYDIS_ATTRIB_HAS_VEX));+                        ZYAN_CHECK(ZydisInputNext(context, instruction, &prefix_bytes[1]));+                        break;+                    case 0x62:+#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+                        // Read additional EVEX/MVEX-prefix data+                        ZYAN_ASSERT(!(instruction->attributes & ZYDIS_ATTRIB_HAS_EVEX));+                        ZYAN_ASSERT(!(instruction->attributes & ZYDIS_ATTRIB_HAS_MVEX));+                        ZYAN_CHECK(ZydisInputNextBytes(context, instruction, &prefix_bytes[1], 3));+                        break;+#else+                        return ZYDIS_STATUS_DECODING_ERROR;+#endif+                    default:+                        ZYAN_UNREACHABLE;+                    }+                    switch (instruction->opcode)+                    {+                    case 0xC4:+                    case 0xC5:+                        // Decode VEX-prefix+                        instruction->encoding = ZYDIS_INSTRUCTION_ENCODING_VEX;+                        ZYAN_CHECK(ZydisDecodeVEX(context, instruction, prefix_bytes));+                        instruction->opcode_map =+                            ZYDIS_OPCODE_MAP_DEFAULT + instruction->raw.vex.m_mmmm;+                        break;+                    case 0x62:+#if defined(ZYDIS_DISABLE_AVX512) && defined(ZYDIS_DISABLE_KNC)+                        return ZYDIS_STATUS_DECODING_ERROR;+#else+                        switch ((prefix_bytes[2] >> 2) & 0x01)+                        {+                        case 0:+#ifndef ZYDIS_DISABLE_KNC+                            instruction->raw.mvex.offset = instruction->length - 4;+                            // `KNC` instructions are only valid in 64-bit mode.+                            // This condition catches the `MVEX` encoded ones to save a bunch of+                            // `mode` filters in the data-tables.+                            // `KNC` instructions with `VEX` encoding still require a `mode` filter.+                            if (context->decoder->machine_mode != ZYDIS_MACHINE_MODE_LONG_64)+                            {+                                return ZYDIS_STATUS_DECODING_ERROR;+                            }+                            // Decode MVEX-prefix+                            instruction->encoding = ZYDIS_INSTRUCTION_ENCODING_MVEX;+                            ZYAN_CHECK(ZydisDecodeMVEX(context, instruction, prefix_bytes));+                            instruction->opcode_map =+                                ZYDIS_OPCODE_MAP_DEFAULT + instruction->raw.mvex.mmmm;+                            break;+#else+                            return ZYDIS_STATUS_DECODING_ERROR;+#endif+                        case 1:+#ifndef ZYDIS_DISABLE_AVX512+                            instruction->raw.evex.offset = instruction->length - 4;+                            // Decode EVEX-prefix+                            instruction->encoding = ZYDIS_INSTRUCTION_ENCODING_EVEX;+                            ZYAN_CHECK(ZydisDecodeEVEX(context, instruction, prefix_bytes));+                            instruction->opcode_map =+                                ZYDIS_OPCODE_MAP_DEFAULT + instruction->raw.evex.mm;+                            break;+#else+                            return ZYDIS_STATUS_DECODING_ERROR;+#endif+                        default:+                            ZYAN_UNREACHABLE;+                        }+                        break;+#endif+                    default:+                        ZYAN_UNREACHABLE;+                    }+                }+                break;+            }+            case 0x8F:+            {+                ZyanU8 next_input;+                ZYAN_CHECK(ZydisInputPeek(context, instruction, &next_input));+                if ((next_input & 0x1F) >= 8)+                {+                    if (instruction->attributes & ZYDIS_ATTRIB_HAS_REX)+                    {+                        return ZYDIS_STATUS_ILLEGAL_REX;+                    }+                    if (context->prefixes.has_lock)+                    {+                        return ZYDIS_STATUS_ILLEGAL_LOCK;+                    }+                    if (context->prefixes.mandatory_candidate)+                    {+                        return ZYDIS_STATUS_ILLEGAL_LEGACY_PFX;+                    }+                    instruction->raw.xop.offset = instruction->length - 1;+                    ZyanU8 prefixBytes[3] = { 0x8F, 0x00, 0x00 };+                    // Read additional xop-prefix data+                    ZYAN_CHECK(ZydisInputNextBytes(context, instruction, &prefixBytes[1], 2));+                    // Decode xop-prefix+                    instruction->encoding = ZYDIS_INSTRUCTION_ENCODING_XOP;+                    ZYAN_CHECK(ZydisDecodeXOP(context, instruction, prefixBytes));+                    instruction->opcode_map =+                        ZYDIS_OPCODE_MAP_XOP8 + instruction->raw.xop.m_mmmm - 0x08;+                }+                break;+            }+            default:+                break;+            }+            break;+        case ZYDIS_OPCODE_MAP_0F:+            switch (instruction->opcode)+            {+            case 0x0F:+                if (context->prefixes.has_lock)+                {+                    return ZYDIS_STATUS_ILLEGAL_LOCK;+                }+                instruction->encoding = ZYDIS_INSTRUCTION_ENCODING_3DNOW;+                instruction->opcode_map = ZYDIS_OPCODE_MAP_0F0F;+                break;+            case 0x38:+                instruction->opcode_map = ZYDIS_OPCODE_MAP_0F38;+                break;+            case 0x3A:+                instruction->opcode_map = ZYDIS_OPCODE_MAP_0F3A;+                break;+            default:+                break;+            }+            break;+        case ZYDIS_OPCODE_MAP_0F38:+        case ZYDIS_OPCODE_MAP_0F3A:+        case ZYDIS_OPCODE_MAP_XOP8:+        case ZYDIS_OPCODE_MAP_XOP9:+        case ZYDIS_OPCODE_MAP_XOPA:+            // Nothing to do here+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        break;+    case ZYDIS_INSTRUCTION_ENCODING_3DNOW:+        // All 3DNOW (0x0F 0x0F) instructions are using the same operand encoding. We just+        // decode a random (pi2fw) instruction and extract the actual opcode later.+        *index = 0x0C;+        return ZYAN_STATUS_SUCCESS;+    default:+        ZYAN_CHECK(ZydisInputNext(context, instruction, &instruction->opcode));+        break;+    }++    *index = instruction->opcode;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerMode(ZydisDecoderContext* context, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(index);++    switch (context->decoder->machine_mode)+    {+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+    case ZYDIS_MACHINE_MODE_LEGACY_16:+    case ZYDIS_MACHINE_MODE_REAL_16:+        *index = 0;+        break;+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+    case ZYDIS_MACHINE_MODE_LEGACY_32:+        *index = 1;+        break;+    case ZYDIS_MACHINE_MODE_LONG_64:+        *index = 2;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerModeCompact(ZydisDecoderContext* context, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(index);++    *index = (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) ? 0 : 1;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerModrmMod(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    if (!instruction->raw.modrm.offset)+    {+        instruction->raw.modrm.offset = instruction->length;+        ZyanU8 modrm_byte;+        ZYAN_CHECK(ZydisInputNext(context, instruction, &modrm_byte));+        ZydisDecodeModRM(instruction, modrm_byte);+    }+    *index = instruction->raw.modrm.mod;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerModrmModCompact(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_CHECK(ZydisNodeHandlerModrmMod(context, instruction, index));+    *index = (*index == 0x3) ? 0 : 1;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerModrmReg(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    if (!instruction->raw.modrm.offset)+    {+        instruction->raw.modrm.offset = instruction->length;+        ZyanU8 modrm_byte;+        ZYAN_CHECK(ZydisInputNext(context, instruction, &modrm_byte));+        ZydisDecodeModRM(instruction, modrm_byte);+    }+    *index = instruction->raw.modrm.reg;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerModrmRm(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    if (!instruction->raw.modrm.offset)+    {+        instruction->raw.modrm.offset = instruction->length;+        ZyanU8 modrm_byte;+        ZYAN_CHECK(ZydisInputNext(context, instruction, &modrm_byte));+        ZydisDecodeModRM(instruction, modrm_byte);+    }+    *index = instruction->raw.modrm.rm;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerMandatoryPrefix(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (context->prefixes.mandatory_candidate)+    {+    case 0x66:+        instruction->raw.prefixes[context->prefixes.offset_mandatory].type =+            ZYDIS_PREFIX_TYPE_MANDATORY;+        instruction->attributes &= ~ZYDIS_ATTRIB_HAS_OPERANDSIZE;+        *index = 2;+        break;+    case 0xF3:+        instruction->raw.prefixes[context->prefixes.offset_mandatory].type =+            ZYDIS_PREFIX_TYPE_MANDATORY;+        *index = 3;+        break;+    case 0xF2:+        instruction->raw.prefixes[context->prefixes.offset_mandatory].type =+            ZYDIS_PREFIX_TYPE_MANDATORY;+        *index = 4;+        break;+    default:+        *index = 1;+        break;+    }+    // TODO: Consume prefix and make sure it's available again, if we need to fallback++    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerOperandSize(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    if ((context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) && (context->cache.W))+    {+        *index = 2;+    } else+    {+        if (instruction->attributes & ZYDIS_ATTRIB_HAS_OPERANDSIZE)+        {+            instruction->raw.prefixes[context->prefixes.offset_osz_override].type =+                ZYDIS_PREFIX_TYPE_EFFECTIVE;+        }+        switch (context->decoder->machine_mode)+        {+        case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+        case ZYDIS_MACHINE_MODE_LEGACY_16:+        case ZYDIS_MACHINE_MODE_REAL_16:+            *index = (instruction->attributes & ZYDIS_ATTRIB_HAS_OPERANDSIZE) ? 1 : 0;+            break;+        case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+        case ZYDIS_MACHINE_MODE_LEGACY_32:+        case ZYDIS_MACHINE_MODE_LONG_64:+            *index = (instruction->attributes & ZYDIS_ATTRIB_HAS_OPERANDSIZE) ? 0 : 1;+            break;+        default:+            ZYAN_UNREACHABLE;+        }+    }++    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerAddressSize(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    /*if (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE)+    {+        instruction->raw.prefixes[context->prefixes.offset_asz_override].type =+            ZYDIS_PREFIX_TYPE_EFFECTIVE;+    }*/+    switch (context->decoder->address_width)+    {+    case ZYDIS_ADDRESS_WIDTH_16:+        *index = (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE) ? 1 : 0;+        break;+    case ZYDIS_ADDRESS_WIDTH_32:+        *index = (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE) ? 0 : 1;+        break;+    case ZYDIS_ADDRESS_WIDTH_64:+        *index = (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE) ? 1 : 2;+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerVectorLength(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_XOP);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_VEX);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_EVEX);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MVEX);+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    *index = context->cache.LL;+    if (*index == 3)+    {+        return ZYDIS_STATUS_DECODING_ERROR;+    }+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerRexW(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        // nothing to do here+        break;+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_XOP);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_VEX);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_EVEX);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MVEX);+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    *index = context->cache.W;+    return ZYAN_STATUS_SUCCESS;+}++static ZyanStatus ZydisNodeHandlerRexB(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        // nothing to do here+        break;+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_XOP);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_VEX);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_EVEX);+        break;+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MVEX);+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    *index = context->cache.B;+    return ZYAN_STATUS_SUCCESS;+}++#ifndef ZYDIS_DISABLE_AVX512+static ZyanStatus ZydisNodeHandlerEvexB(ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    ZYAN_ASSERT(instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_EVEX);+    ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_EVEX);+    *index = instruction->raw.evex.b;+    return ZYAN_STATUS_SUCCESS;+}+#endif++#ifndef ZYDIS_DISABLE_KNC+static ZyanStatus ZydisNodeHandlerMvexE(ZydisDecodedInstruction* instruction, ZyanU16* index)+{+    ZYAN_ASSERT(instruction);+    ZYAN_ASSERT(index);++    ZYAN_ASSERT(instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX);+    ZYAN_ASSERT(instruction->attributes & ZYDIS_ATTRIB_HAS_MVEX);+    *index = instruction->raw.mvex.E;+    return ZYAN_STATUS_SUCCESS;+}+#endif++/* ---------------------------------------------------------------------------------------------- */++/**+ * Checks for certain post-decode error-conditions.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ * @param   definition  A pointer to the `ZydisInstructionDefinition` struct.+ *+ * @return  A zyan status code.+ *+ * This function is called immediately after a valid instruction-definition was found.+ */+static ZyanStatus ZydisCheckErrorConditions(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction, const ZydisInstructionDefinition* definition)+{+    const ZydisRegisterConstraint constr_REG = definition->constr_REG;+    const ZydisRegisterConstraint constr_RM  = definition->constr_RM;+    // We set this to `NONE` instead of `UNUSED` to save up some unnecessary runtime checks+    ZydisRegisterConstraint constr_NDSNDD = ZYDIS_REG_CONSTRAINTS_NONE;+    ZyanBool has_VSIB  = ZYAN_FALSE;+    ZyanBool is_gather = ZYAN_FALSE;+#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+    ZydisMaskPolicy mask_policy = ZYDIS_MASK_POLICY_INVALID;+#endif++    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+    {+        const ZydisInstructionDefinitionLEGACY* def =+            (const ZydisInstructionDefinitionLEGACY*)definition;++        if (def->requires_protected_mode &&+            (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_REAL_16))+        {+            return ZYDIS_STATUS_DECODING_ERROR;+        }++        if (context->prefixes.has_lock && !def->accepts_LOCK)+        {+            return ZYDIS_STATUS_ILLEGAL_LOCK;+        }+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_3DNOW:+    {+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+    {+        const ZydisInstructionDefinitionXOP* def =+            (const ZydisInstructionDefinitionXOP*)definition;+        constr_NDSNDD = def->constr_NDSNDD;+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+    {+        const ZydisInstructionDefinitionVEX* def =+            (const ZydisInstructionDefinitionVEX*)definition;+        constr_NDSNDD = def->constr_NDSNDD;+        is_gather = def->is_gather;+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+    {+#ifndef ZYDIS_DISABLE_AVX512+        const ZydisInstructionDefinitionEVEX* def =+            (const ZydisInstructionDefinitionEVEX*)definition;+        constr_NDSNDD = def->constr_NDSNDD;+        is_gather = def->is_gather;+        mask_policy = def->mask_policy;++        // Check for invalid zero-mask+        if ((instruction->raw.evex.z) && (!def->accepts_zero_mask))+        {+            return ZYDIS_STATUS_INVALID_MASK; // TODO: Dedicated status code+        }+#else+        ZYAN_UNREACHABLE;+#endif+        break;+    }+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+    {+#ifndef ZYDIS_DISABLE_KNC+        const ZydisInstructionDefinitionMVEX* def =+            (const ZydisInstructionDefinitionMVEX*)definition;+        constr_NDSNDD = def->constr_NDSNDD;+        is_gather = def->is_gather;+        mask_policy = def->mask_policy;++        // Check for invalid MVEX.SSS values+        static const ZyanU8 lookup[26][8] =+        {+            // ZYDIS_MVEX_FUNC_IGNORED+            { 1, 1, 1, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_INVALID+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_RC+            { 1, 1, 1, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_SAE+            { 1, 1, 1, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_F_32+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_I_32+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_F_64+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_I_64+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_SWIZZLE_32+            { 1, 1, 1, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_SWIZZLE_64+            { 1, 1, 1, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_SF_32+            { 1, 1, 1, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_SF_32_BCST+            { 1, 1, 1, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_SF_32_BCST_4TO16+            { 1, 0, 1, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_SF_64+            { 1, 1, 1, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_SI_32+            { 1, 1, 1, 0, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_SI_32_BCST+            { 1, 1, 1, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_SI_32_BCST_4TO16+            { 1, 0, 1, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_SI_64+            { 1, 1, 1, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_UF_32+            { 1, 0, 0, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_UF_64+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_UI_32+            { 1, 0, 0, 0, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_UI_64+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_DF_32+            { 1, 0, 0, 1, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_DF_64+            { 1, 0, 0, 0, 0, 0, 0, 0 },+            // ZYDIS_MVEX_FUNC_DI_32+            { 1, 0, 0, 0, 1, 1, 1, 1 },+            // ZYDIS_MVEX_FUNC_DI_64+            { 1, 0, 0, 0, 0, 0, 0, 0 }+        };+        ZYAN_ASSERT(def->functionality < ZYAN_ARRAY_LENGTH(lookup));+        ZYAN_ASSERT(instruction->raw.mvex.SSS < 8);+        if (!lookup[def->functionality][instruction->raw.mvex.SSS])+        {+            return ZYDIS_STATUS_DECODING_ERROR;+        }+#else+        ZYAN_UNREACHABLE;+#endif+        break;+    }+    default:+        ZYAN_UNREACHABLE;+    }++    // Validate register constraints+    switch (constr_REG)+    {+    case ZYDIS_REG_CONSTRAINTS_UNUSED:+    case ZYDIS_REG_CONSTRAINTS_NONE:+        break;+    case ZYDIS_REG_CONSTRAINTS_GPR:+        if ((context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) && context->cache.R2)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    case ZYDIS_REG_CONSTRAINTS_SR_DEST:+        // `ZYDIS_REGISTER_CR` is not allowed as `MOV` target+        if (instruction->raw.modrm.reg == 1)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        ZYAN_FALLTHROUGH;+    case ZYDIS_REG_CONSTRAINTS_SR:+    {+        if (instruction->raw.modrm.reg > 5)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    }+    case ZYDIS_REG_CONSTRAINTS_CR:+    {+        // Attempts to reference CR1, CR5, CR6, CR7, and CR9CR15 result in undefined opcode (#UD)+        // exceptions+        const ZyanU8 value = instruction->raw.modrm.reg | (context->cache.R << 3);+        static const ZyanU8 lookup[16] =+        {+            1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0+        };+        ZYAN_ASSERT(value < ZYAN_ARRAY_LENGTH(lookup));+        if (!lookup[value])+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    }+    case ZYDIS_REG_CONSTRAINTS_DR:+        // Attempts to reference DR8DR15 result in undefined opcode (#UD) exceptions. DR4 and DR5+        // are only valid, if the debug extension (DE) flag in CR4 is set. As we can't check this,+        // we just allow them.+        if (context->cache.R)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    case ZYDIS_REG_CONSTRAINTS_MASK:+        if ((context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) &&+            (context->cache.R || context->cache.R2))+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    case ZYDIS_REG_CONSTRAINTS_BND:+        ZYAN_ASSERT(!context->cache.R2);+        if (context->cache.R || instruction->raw.modrm.reg > 3)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    switch (constr_RM)+    {+    case ZYDIS_REG_CONSTRAINTS_UNUSED:+    case ZYDIS_REG_CONSTRAINTS_NONE:+        break;+    case ZYDIS_REG_CONSTRAINTS_SR_DEST:+        // `ZYDIS_REGISTER_CR` is not allowed as `MOV` target+        if (instruction->raw.modrm.rm == 1)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        ZYAN_FALLTHROUGH;+    case ZYDIS_REG_CONSTRAINTS_SR:+    {+        if (instruction->raw.modrm.rm > 6)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    }+    case ZYDIS_REG_CONSTRAINTS_MASK:+        break;+    case ZYDIS_REG_CONSTRAINTS_BND:+        if (context->cache.B || instruction->raw.modrm.rm > 3)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    case ZYDIS_REG_CONSTRAINTS_VSIB:+        has_VSIB = ZYAN_TRUE;+        break;+    case ZYDIS_REG_CONSTRAINTS_NO_REL:+        if ((context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) &&+            (instruction->raw.modrm.mod == 0) &&+            (instruction->raw.modrm.rm  == 5))+        {+            return ZYDIS_STATUS_DECODING_ERROR;+        }+        break;+    default:+        ZYAN_UNREACHABLE;+    }+    switch (constr_NDSNDD)+    {+    case ZYDIS_REG_CONSTRAINTS_UNUSED:+        // `.vvvv` is not allowed, if the instruction does not encode a NDS/NDD operand+        if (context->cache.v_vvvv & 0x0F)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        // `.v'` is not allowed, if the instruction does not encode a NDS/NDD or VSIB operand+        if (!has_VSIB && context->cache.V2)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    case ZYDIS_REG_CONSTRAINTS_NONE:+        ZYAN_ASSERT(!has_VSIB || ((instruction->encoding != ZYDIS_INSTRUCTION_ENCODING_EVEX) &&+                                  (instruction->encoding != ZYDIS_INSTRUCTION_ENCODING_MVEX)));+        break;+    case ZYDIS_REG_CONSTRAINTS_GPR:+        // `.v'` is invalid for GPR-registers+        if (context->cache.V2)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    case ZYDIS_REG_CONSTRAINTS_MASK:+        if ((context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64) &&+            (context->cache.v_vvvv > 7))+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+        break;+    default:+        ZYAN_UNREACHABLE;+    }++    // Check gather registers+    if (is_gather)+    {+        ZYAN_ASSERT(has_VSIB);+        ZYAN_ASSERT(instruction->raw.modrm.mod != 3);+        ZYAN_ASSERT(instruction->raw.modrm.rm  == 4);++        ZyanU8 dest  = instruction->raw.modrm.reg;+        ZyanU8 index = instruction->raw.sib.index;+        if (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64)+        {+            dest  = dest  | (context->cache.R << 3) | (context->cache.R2 << 4);+            index = index | (context->cache.X << 3) | (context->cache.V2 << 4);+        }+        ZyanU8 mask  = 0xF0;++        switch (instruction->encoding)+        {+        case ZYDIS_INSTRUCTION_ENCODING_VEX:+            ZYAN_ASSERT((constr_REG    == ZYDIS_REG_CONSTRAINTS_NONE) &&+                        (constr_RM     == ZYDIS_REG_CONSTRAINTS_VSIB) &&+                        (constr_NDSNDD == ZYDIS_REG_CONSTRAINTS_NONE));+            if (context->decoder->machine_mode == ZYDIS_MACHINE_MODE_LONG_64)+            {+                mask = context->cache.v_vvvv;+            } else+            {+                // Ignore the high-register bits in 16- and 32-bit mode+                mask = context->cache.v_vvvv & 0x07;+            }+            break;+        case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        case ZYDIS_INSTRUCTION_ENCODING_MVEX:+            ZYAN_ASSERT(((constr_REG    == ZYDIS_REG_CONSTRAINTS_UNUSED) ||+                         (constr_REG    == ZYDIS_REG_CONSTRAINTS_NONE)) &&+                         (constr_RM     == ZYDIS_REG_CONSTRAINTS_VSIB) &&+                         (constr_NDSNDD == ZYDIS_REG_CONSTRAINTS_UNUSED));++            // Some gather instructions (like `VGATHERPF0{D|Q}{PS|PD}`) do not have a destination+            // operand+            if (constr_REG == ZYDIS_REG_CONSTRAINTS_UNUSED)+            {+                dest = 0xF1;+            }+            break;+        default:+            ZYAN_UNREACHABLE;+        }+        // If any pair of the index, mask, or destination registers are the same, the instruction+        // results a UD fault.+        if (dest == index || dest == mask || index == mask)+        {+            return ZYDIS_STATUS_BAD_REGISTER;+        }+    }++#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+    // Check for invalid MASK registers+    switch (mask_policy)+    {+    case ZYDIS_MASK_POLICY_INVALID:+    case ZYDIS_MASK_POLICY_ALLOWED:+        // Nothing to do here+        break;+    case ZYDIS_MASK_POLICY_REQUIRED:+        if (!context->cache.mask)+        {+            return ZYDIS_STATUS_INVALID_MASK;+        }+        break;+    case ZYDIS_MASK_POLICY_FORBIDDEN:+        if (context->cache.mask)+        {+            return ZYDIS_STATUS_INVALID_MASK;+        }+        break;+    default:+        ZYAN_UNREACHABLE;+    }+#endif++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/**+ * Uses the decoder-tree to decode the current instruction.+ *+ * @param   context     A pointer to the `ZydisDecoderContext` instance.+ * @param   instruction A pointer to the `ZydisDecodedInstruction` struct.+ *+ * @return  A zyan status code.+ */+static ZyanStatus ZydisDecodeInstruction(ZydisDecoderContext* context,+    ZydisDecodedInstruction* instruction)+{+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(instruction);++    // Iterate through the decoder tree+    const ZydisDecoderTreeNode* node = ZydisDecoderTreeGetRootNode();+    const ZydisDecoderTreeNode* temp = ZYAN_NULL;+    ZydisDecoderTreeNodeType node_type;+    do+    {+        node_type = node->type;+        ZyanU16 index = 0;+        ZyanStatus status = 0;+        switch (node_type)+        {+        case ZYDIS_NODETYPE_INVALID:+            if (temp)+            {+                node = temp;+                temp = ZYAN_NULL;+                node_type = ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX;+                if (context->prefixes.mandatory_candidate != 0x00)+                {+                    instruction->raw.prefixes[context->prefixes.offset_mandatory].type =+                        ZYDIS_PREFIX_TYPE_IGNORED;+                }+                if (context->prefixes.mandatory_candidate == 0x66)+                {+                    if (context->prefixes.offset_osz_override ==+                        context->prefixes.offset_mandatory)+                    {+                        instruction->raw.prefixes[context->prefixes.offset_mandatory].type =+                            ZYDIS_PREFIX_TYPE_EFFECTIVE;+                    }+                    instruction->attributes |= ZYDIS_ATTRIB_HAS_OPERANDSIZE;+                }+                continue;+            }+            return ZYDIS_STATUS_DECODING_ERROR;+        case ZYDIS_NODETYPE_FILTER_XOP:+            status = ZydisNodeHandlerXOP(instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_VEX:+            status = ZydisNodeHandlerVEX(instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_EMVEX:+            status = ZydisNodeHandlerEMVEX(instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_OPCODE:+            status = ZydisNodeHandlerOpcode(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_MODE:+            status = ZydisNodeHandlerMode(context, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_COMPACT:+            status = ZydisNodeHandlerModeCompact(context, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_MODRM_MOD:+            status = ZydisNodeHandlerModrmMod(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT:+            status = ZydisNodeHandlerModrmModCompact(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_MODRM_REG:+            status = ZydisNodeHandlerModrmReg(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_MODRM_RM:+            status = ZydisNodeHandlerModrmRm(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1:+            index = context->prefixes.group1 ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX:+            status = ZydisNodeHandlerMandatoryPrefix(context, instruction, &index);+            temp = ZydisDecoderTreeGetChildNode(node, 0);+            // TODO: Return to this point, if index == 0 contains a value and the previous path+            // TODO: was not successfull+            // TODO: Restore consumed prefix+            break;+        case ZYDIS_NODETYPE_FILTER_OPERAND_SIZE:+            status = ZydisNodeHandlerOperandSize(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE:+            status = ZydisNodeHandlerAddressSize(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH:+            status = ZydisNodeHandlerVectorLength(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_REX_W:+            status = ZydisNodeHandlerRexW(context, instruction, &index);+            break;+        case ZYDIS_NODETYPE_FILTER_REX_B:+            status = ZydisNodeHandlerRexB(context, instruction, &index);+            break;+#ifndef ZYDIS_DISABLE_AVX512+        case ZYDIS_NODETYPE_FILTER_EVEX_B:+            status = ZydisNodeHandlerEvexB(instruction, &index);+            break;+#endif+#ifndef ZYDIS_DISABLE_KNC+        case ZYDIS_NODETYPE_FILTER_MVEX_E:+            status = ZydisNodeHandlerMvexE(instruction, &index);+            break;+#endif+        case ZYDIS_NODETYPE_FILTER_MODE_AMD:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_AMD_BRANCHES] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_KNC:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_KNC] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_MPX:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_MPX] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_CET:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_CET] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_LZCNT:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_LZCNT] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_TZCNT:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_TZCNT] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_WBNOINVD:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_WBNOINVD] ? 1 : 0;+            break;+        case ZYDIS_NODETYPE_FILTER_MODE_CLDEMOTE:+            index = context->decoder->decoder_mode[ZYDIS_DECODER_MODE_CLDEMOTE] ? 1 : 0;+            break;+        default:+            if (node_type & ZYDIS_NODETYPE_DEFINITION_MASK)+            {+                const ZydisInstructionDefinition* definition;+                ZydisGetInstructionDefinition(instruction->encoding, node->value, &definition);+                ZydisSetEffectiveOperandWidth(context, instruction, definition);+                ZydisSetEffectiveAddressWidth(context, instruction, definition);++                const ZydisInstructionEncodingInfo* info;+                ZydisGetInstructionEncodingInfo(node, &info);+                ZYAN_CHECK(ZydisDecodeOptionalInstructionParts(context, instruction, info));+                ZYAN_CHECK(ZydisCheckErrorConditions(context, instruction, definition));++                if (instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_3DNOW)+                {+                    // Get actual 3dnow opcode and definition+                    ZYAN_CHECK(ZydisInputNext(context, instruction, &instruction->opcode));+                    node = ZydisDecoderTreeGetRootNode();+                    node = ZydisDecoderTreeGetChildNode(node, 0x0F);+                    node = ZydisDecoderTreeGetChildNode(node, 0x0F);+                    node = ZydisDecoderTreeGetChildNode(node, instruction->opcode);+                    if (node->type == ZYDIS_NODETYPE_INVALID)+                    {+                        return ZYDIS_STATUS_DECODING_ERROR;+                    }+                    ZYAN_ASSERT(node->type == ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT);+                    node = ZydisDecoderTreeGetChildNode(+                        node, (instruction->raw.modrm.mod == 0x3) ? 0 : 1);+                    ZYAN_ASSERT(node->type & ZYDIS_NODETYPE_DEFINITION_MASK);+                    ZydisGetInstructionDefinition(instruction->encoding, node->value, &definition);+                }++                instruction->mnemonic = definition->mnemonic;+#ifndef ZYDIS_MINIMAL_MODE+                instruction->meta.category = definition->category;+                instruction->meta.isa_set = definition->isa_set;+                instruction->meta.isa_ext = definition->isa_ext;+                instruction->meta.branch_type = definition->branch_type;+                ZYAN_ASSERT((instruction->meta.branch_type == ZYDIS_BRANCH_TYPE_NONE) ||+                        ((instruction->meta.category == ZYDIS_CATEGORY_CALL) ||+                         (instruction->meta.category == ZYDIS_CATEGORY_COND_BR) ||+                         (instruction->meta.category == ZYDIS_CATEGORY_UNCOND_BR) ||+                         (instruction->meta.category == ZYDIS_CATEGORY_RET)));+                instruction->meta.exception_class = definition->exception_class;++                if (!context->decoder->decoder_mode[ZYDIS_DECODER_MODE_MINIMAL])+                {+                    ZydisSetAttributes(context, instruction, definition);+                    switch (instruction->encoding)+                    {+                    case ZYDIS_INSTRUCTION_ENCODING_XOP:+                    case ZYDIS_INSTRUCTION_ENCODING_VEX:+                    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+                    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+                        ZydisSetAVXInformation(context, instruction, definition);+                        break;+                    default:+                        break;+                    }+                    ZYAN_CHECK(ZydisDecodeOperands(context, instruction, definition));+                    const ZydisAccessedFlags* flags;+                    if (ZydisGetAccessedFlags(definition, &flags))+                    {+                        instruction->attributes |= ZYDIS_ATTRIB_CPUFLAG_ACCESS;+                        ZYAN_ASSERT((ZYAN_ARRAY_LENGTH(instruction->accessed_flags) ==+                                     ZYAN_ARRAY_LENGTH(flags->action             )) &&+                                    (sizeof           (instruction->accessed_flags) ==+                                     sizeof           (flags->action             )));+                        ZYAN_MEMCPY(&instruction->accessed_flags, &flags->action,+                            sizeof(flags->action));+                    }+                }+#endif++                return ZYAN_STATUS_SUCCESS;+            }+            ZYAN_UNREACHABLE;+        }+        ZYAN_CHECK(status);+        node = ZydisDecoderTreeGetChildNode(node, index);+    } while ((node_type != ZYDIS_NODETYPE_INVALID) && !(node_type & ZYDIS_NODETYPE_DEFINITION_MASK));+    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++ZyanStatus ZydisDecoderInit(ZydisDecoder* decoder, ZydisMachineMode machine_mode,+    ZydisAddressWidth address_width)+{+    static const ZyanBool decoderModes[ZYDIS_DECODER_MODE_MAX_VALUE + 1] =+    {+#ifdef ZYDIS_MINIMAL_MODE+        ZYAN_TRUE , // ZYDIS_DECODER_MODE_MINIMAL+#else+        ZYAN_FALSE, // ZYDIS_DECODER_MODE_MINIMAL+#endif+        ZYAN_FALSE, // ZYDIS_DECODER_MODE_AMD_BRANCHES+        ZYAN_FALSE, // ZYDIS_DECODER_MODE_KNC+        ZYAN_TRUE , // ZYDIS_DECODER_MODE_MPX+        ZYAN_TRUE , // ZYDIS_DECODER_MODE_CET+        ZYAN_TRUE , // ZYDIS_DECODER_MODE_LZCNT+        ZYAN_TRUE , // ZYDIS_DECODER_MODE_TZCNT+        ZYAN_FALSE, // ZYDIS_DECODER_MODE_WBNOINVD+        ZYAN_TRUE   // ZYDIS_DECODER_MODE_CLDEMOTE+    };++    if (!decoder)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }+    switch (machine_mode)+    {+    case ZYDIS_MACHINE_MODE_LONG_64:+        if (address_width != ZYDIS_ADDRESS_WIDTH_64)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        break;+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+    case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+    case ZYDIS_MACHINE_MODE_LEGACY_32:+    case ZYDIS_MACHINE_MODE_LEGACY_16:+    case ZYDIS_MACHINE_MODE_REAL_16:+        if ((address_width != ZYDIS_ADDRESS_WIDTH_16) && (address_width != ZYDIS_ADDRESS_WIDTH_32))+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    decoder->machine_mode = machine_mode;+    decoder->address_width = address_width;+    ZYAN_MEMCPY(&decoder->decoder_mode, &decoderModes, sizeof(decoderModes));++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisDecoderEnableMode(ZydisDecoder* decoder, ZydisDecoderMode mode, ZyanBool enabled)+{+    if (!decoder || (mode > ZYDIS_DECODER_MODE_MAX_VALUE))+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++#ifdef ZYDIS_MINIMAL_MODE+    if ((mode == ZYDIS_DECODER_MODE_MINIMAL) && !enabled)+    {+        return ZYAN_STATUS_INVALID_OPERATION;+    }+#endif++    decoder->decoder_mode[mode] = enabled;++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisDecoderDecodeBuffer(const ZydisDecoder* decoder, const void* buffer,+    ZyanUSize length, ZydisDecodedInstruction* instruction)+{+    if (!decoder || !instruction)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (!buffer || !length)+    {+        return ZYDIS_STATUS_NO_MORE_DATA;+    }++    ZydisDecoderContext context;+    ZYAN_MEMSET(&context, 0, sizeof(context));+    context.decoder = decoder;+    context.buffer = (ZyanU8*)buffer;+    context.buffer_len = length;++    ZYAN_MEMSET(instruction, 0, sizeof(*instruction));+    instruction->machine_mode = decoder->machine_mode;+    static const ZyanU8 lookup[ZYDIS_ADDRESS_WIDTH_MAX_VALUE + 1] =+    {+        16, 32, 64+    };+    instruction->stack_width = lookup[decoder->address_width];++    ZYAN_CHECK(ZydisCollectOptionalPrefixes(&context, instruction));+    ZYAN_CHECK(ZydisDecodeInstruction(&context, instruction));++    return ZYAN_STATUS_SUCCESS;+}++/* ============================================================================================== */
+ external/zydis/src/DecoderData.c view
@@ -0,0 +1,174 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Internal/DecoderData.h>++/* ============================================================================================== */+/* Data tables                                                                                    */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Physical instruction encodings                                                                 */+/* ---------------------------------------------------------------------------------------------- */++#include <Generated/InstructionEncodings.inc>++/* ---------------------------------------------------------------------------------------------- */+/* Decoder tree                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++#define ZYDIS_INVALID \+    { ZYDIS_NODETYPE_INVALID, 0x00000000 }+#define ZYDIS_FILTER(type, id) \+    { type, id }+#define ZYDIS_DEFINITION(encoding_id, id) \+    { ZYDIS_NODETYPE_DEFINITION_MASK | encoding_id, id }++#include <Generated/DecoderTables.inc>++#undef ZYDIS_INVALID+#undef ZYDIS_FILTER+#undef ZYDIS_DEFINITION++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Functions                                                                                      */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Decoder tree                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++const ZydisDecoderTreeNode zydis_decoder_tree_root = { ZYDIS_NODETYPE_FILTER_OPCODE, 0x0000 };++const ZydisDecoderTreeNode* ZydisDecoderTreeGetChildNode(const ZydisDecoderTreeNode* parent,+    ZyanU16 index)+{+    switch (parent->type)+    {+    case ZYDIS_NODETYPE_FILTER_XOP:+        ZYAN_ASSERT(index <  13);+        return &FILTERS_XOP[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_VEX:+        ZYAN_ASSERT(index <  17);+        return &FILTERS_VEX[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_EMVEX:+        ZYAN_ASSERT(index <  33);+        return &FILTERS_EMVEX[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_OPCODE:+        ZYAN_ASSERT(index < 256);+        return &FILTERS_OPCODE[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE:+        ZYAN_ASSERT(index <   4);+        return &FILTERS_MODE[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_COMPACT:+        ZYAN_ASSERT(index <   3);+        return &FILTERS_MODE_COMPACT[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODRM_MOD:+        ZYAN_ASSERT(index <   4);+        return &FILTERS_MODRM_MOD[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODRM_MOD_COMPACT[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODRM_REG:+        ZYAN_ASSERT(index <   8);+        return &FILTERS_MODRM_REG[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODRM_RM:+        ZYAN_ASSERT(index <   8);+        return &FILTERS_MODRM_RM[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1:+        ZYAN_ASSERT(index < 2);+        return &FILTERS_PREFIX_GROUP1[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX:+        ZYAN_ASSERT(index <   5);+        return &FILTERS_MANDATORY_PREFIX[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_OPERAND_SIZE:+        ZYAN_ASSERT(index <   3);+        return &FILTERS_OPERAND_SIZE[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE:+        ZYAN_ASSERT(index <   3);+        return &FILTERS_ADDRESS_SIZE[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH:+        ZYAN_ASSERT(index <   3);+        return &FILTERS_VECTOR_LENGTH[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_REX_W:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_REX_W[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_REX_B:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_REX_B[parent->value][index];+#ifndef ZYDIS_DISABLE_AVX512+    case ZYDIS_NODETYPE_FILTER_EVEX_B:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_EVEX_B[parent->value][index];+#endif+#ifndef ZYDIS_DISABLE_KNC+    case ZYDIS_NODETYPE_FILTER_MVEX_E:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MVEX_E[parent->value][index];+#endif+    case ZYDIS_NODETYPE_FILTER_MODE_AMD:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_AMD[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_KNC:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_KNC[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_MPX:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_MPX[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_CET:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_CET[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_LZCNT:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_LZCNT[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_TZCNT:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_TZCNT[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_WBNOINVD:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_WBNOINVD[parent->value][index];+    case ZYDIS_NODETYPE_FILTER_MODE_CLDEMOTE:+        ZYAN_ASSERT(index <   2);+        return &FILTERS_MODE_CLDEMOTE[parent->value][index];+    default:+        ZYAN_UNREACHABLE;+    }+}++void ZydisGetInstructionEncodingInfo(const ZydisDecoderTreeNode* node,+    const ZydisInstructionEncodingInfo** info)+{+    ZYAN_ASSERT(node->type & ZYDIS_NODETYPE_DEFINITION_MASK);+    const ZyanU8 class = (node->type) & 0x7F;+    ZYAN_ASSERT(class < ZYAN_ARRAY_LENGTH(INSTR_ENCODINGS));+    *info = &INSTR_ENCODINGS[class];+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/Formatter.c view
@@ -0,0 +1,646 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zycore/LibC.h>+#include <Zydis/Formatter.h>+#include <Zydis/Internal/FormatterATT.h>+#include <Zydis/Internal/FormatterIntel.h>+#include <Zydis/Internal/String.h>++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Formatter presets                                                                              */+/* ---------------------------------------------------------------------------------------------- */++static const ZydisFormatter* const FORMATTER_PRESETS[ZYDIS_FORMATTER_STYLE_MAX_VALUE + 1] =+{+    &FORMATTER_ATT,+    &FORMATTER_INTEL,+    &FORMATTER_INTEL_MASM+};++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Internal functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Helper functions                                                                               */+/* ---------------------------------------------------------------------------------------------- */++void ZydisFormatterBufferInit(ZydisFormatterBuffer* buffer, char* user_buffer,+    ZyanUSize length)+{+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(user_buffer);+    ZYAN_ASSERT(length);++    buffer->is_token_list              = ZYAN_FALSE;+    buffer->string.flags               = ZYAN_STRING_HAS_FIXED_CAPACITY;+    buffer->string.vector.allocator    = ZYAN_NULL;+    buffer->string.vector.element_size = sizeof(char);+    buffer->string.vector.size         = 1;+    buffer->string.vector.capacity     = length;+    buffer->string.vector.data         = user_buffer;+    *user_buffer = '\0';+}++void ZydisFormatterBufferInitTokenized(ZydisFormatterBuffer* buffer,+    ZydisFormatterToken** first_token, void* user_buffer, ZyanUSize length)+{+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(first_token);+    ZYAN_ASSERT(user_buffer);+    ZYAN_ASSERT(length);++    *first_token = user_buffer;+    (*first_token)->type = ZYDIS_TOKEN_INVALID;+    (*first_token)->next = 0;++    user_buffer = (ZyanU8*)user_buffer + sizeof(ZydisFormatterToken);+    length -= sizeof(ZydisFormatterToken);++    buffer->is_token_list              = ZYAN_TRUE;+    buffer->capacity                   = length;+    buffer->string.flags               = ZYAN_STRING_HAS_FIXED_CAPACITY;+    buffer->string.vector.allocator    = ZYAN_NULL;+    buffer->string.vector.element_size = sizeof(char);+    buffer->string.vector.size         = 1;+    buffer->string.vector.capacity     = length;+    buffer->string.vector.data         = user_buffer;+    *(char*)user_buffer = '\0';+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Initialization                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterInit(ZydisFormatter* formatter, ZydisFormatterStyle style)+{+    if (!formatter || (style > ZYDIS_FORMATTER_STYLE_MAX_VALUE))+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZYAN_MEMCPY(formatter, FORMATTER_PRESETS[style], sizeof(*formatter));++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Setter                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterSetProperty(ZydisFormatter* formatter, ZydisFormatterProperty property,+    ZyanUPointer value)+{+    if (!formatter)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZydisNumericBase base = (ZydisNumericBase)(-1);+    ZyanU8 index = 0xFF;++    switch (property)+    {+    case ZYDIS_FORMATTER_PROP_FORCE_SIZE:+    {+        formatter->force_memory_size = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_FORCE_SEGMENT:+    {+        formatter->force_memory_segment = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_FORCE_RELATIVE_BRANCHES:+    {+        formatter->force_relative_branches = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_FORCE_RELATIVE_RIPREL:+    {+        formatter->force_relative_riprel = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_PRINT_BRANCH_SIZE:+    {+        formatter->print_branch_size = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_DETAILED_PREFIXES:+    {+        formatter->detailed_prefixes = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_ADDR_BASE:+    {+        if ((ZydisNumericBase)value > ZYDIS_NUMERIC_BASE_MAX_VALUE)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        formatter->addr_base = (ZydisNumericBase)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_ADDR_SIGNEDNESS:+    {+        if ((ZydisSignedness)value > ZYDIS_SIGNEDNESS_MAX_VALUE)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        formatter->addr_signedness = (ZydisSignedness)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_ADDR_PADDING_ABSOLUTE:+    {+        formatter->addr_padding_absolute = (ZydisPadding)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_ADDR_PADDING_RELATIVE:+    {+        formatter->addr_padding_relative = (ZydisPadding)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_DISP_BASE:+    {+        if ((ZydisNumericBase)value > ZYDIS_NUMERIC_BASE_MAX_VALUE)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        formatter->disp_base = (ZydisNumericBase)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_DISP_SIGNEDNESS:+    {+        if ((ZydisSignedness)value > ZYDIS_SIGNEDNESS_MAX_VALUE)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        formatter->disp_signedness = (ZydisSignedness)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_DISP_PADDING:+    {+        if ((ZydisPadding)value == ZYDIS_PADDING_AUTO)+        {+            if (formatter->style > ZYDIS_FORMATTER_STYLE_MAX_VALUE)+            {+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+            formatter->disp_padding = FORMATTER_PRESETS[formatter->style]->disp_padding;+        }+        formatter->disp_padding = (ZydisPadding)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_IMM_BASE:+    {+        if ((ZydisNumericBase)value > ZYDIS_NUMERIC_BASE_MAX_VALUE)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        formatter->imm_base = (ZydisNumericBase)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_IMM_SIGNEDNESS:+    {+        if ((ZydisSignedness)value  > ZYDIS_SIGNEDNESS_MAX_VALUE)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        formatter->imm_signedness  = (ZydisSignedness)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_IMM_PADDING:+    {+        if ((ZydisPadding)value == ZYDIS_PADDING_AUTO)+        {+            if (formatter->style > ZYDIS_FORMATTER_STYLE_MAX_VALUE)+            {+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+            formatter->imm_padding = FORMATTER_PRESETS[formatter->style]->imm_padding;+        }+        formatter->imm_padding = (ZydisPadding)value;+        break;+    }+    case ZYDIS_FORMATTER_PROP_UPPERCASE_PREFIXES:+    {+        formatter->case_prefixes = (value) ? ZYDIS_LETTER_CASE_UPPER : ZYDIS_LETTER_CASE_DEFAULT;+        break;+    }+    case ZYDIS_FORMATTER_PROP_UPPERCASE_MNEMONIC:+    {+        formatter->case_mnemonic = (value) ? ZYDIS_LETTER_CASE_UPPER : ZYDIS_LETTER_CASE_DEFAULT;+        break;+    }+    case ZYDIS_FORMATTER_PROP_UPPERCASE_REGISTERS:+    {+        formatter->case_registers = (value) ? ZYDIS_LETTER_CASE_UPPER : ZYDIS_LETTER_CASE_DEFAULT;+        break;+    }+    case ZYDIS_FORMATTER_PROP_UPPERCASE_TYPECASTS:+    {+        formatter->case_typecasts = (value) ? ZYDIS_LETTER_CASE_UPPER : ZYDIS_LETTER_CASE_DEFAULT;+        break;+    }+    case ZYDIS_FORMATTER_PROP_UPPERCASE_DECORATORS:+    {+        formatter->case_decorators = (value) ? ZYDIS_LETTER_CASE_UPPER : ZYDIS_LETTER_CASE_DEFAULT;+        break;+    }+    case ZYDIS_FORMATTER_PROP_DEC_PREFIX:+    {+        base  = ZYDIS_NUMERIC_BASE_DEC;+        index = 0;+        break;+    }+    case ZYDIS_FORMATTER_PROP_DEC_SUFFIX:+    {+        base  = ZYDIS_NUMERIC_BASE_DEC;+        index = 1;+        break;+    }+    case ZYDIS_FORMATTER_PROP_HEX_UPPERCASE:+    {+        formatter->hex_uppercase = (value) ? ZYAN_TRUE : ZYAN_FALSE;+        break;+    }+    case ZYDIS_FORMATTER_PROP_HEX_PREFIX:+    {+        base  = ZYDIS_NUMERIC_BASE_HEX;+        index = 0;+        break;+    }+    case ZYDIS_FORMATTER_PROP_HEX_SUFFIX:+    {+        base  = ZYDIS_NUMERIC_BASE_HEX;+        index = 1;+        break;+    }+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    // Set prefix or suffix+    if (base != (ZydisNumericBase)(-1))+    {+        if (value)+        {+            const ZyanUSize len = ZYAN_STRLEN((char*)value);+            if (len > 10)+            {+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+            ZYAN_MEMCPY(formatter->number_format[base][index].buffer, (void*)value, len);+            formatter->number_format[base][index].buffer[len] = '\0';+            formatter->number_format[base][index].string_data.string.vector.data =+                formatter->number_format[base][index].buffer;+            formatter->number_format[base][index].string_data.string.vector.size = len + 1;+            formatter->number_format[base][index].string =+                &formatter->number_format[base][index].string_data;+        } else+        {+            formatter->number_format[base][index].string = ZYAN_NULL;+        }+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterSetHook(ZydisFormatter* formatter, ZydisFormatterFunction type,+    const void** callback)+{+    if (!formatter || !callback || (type > ZYDIS_FORMATTER_FUNC_MAX_VALUE))+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    const void* const temp = *callback;++    // The following code relies on the order of the enum values and the function fields inside+    // the `ZydisFormatter` struct++#ifdef ZYAN_DEBUG+    const ZyanUPointer* test = (ZyanUPointer*)(&formatter->func_pre_instruction + type);+    switch (type)+    {+    case ZYDIS_FORMATTER_FUNC_PRE_INSTRUCTION:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_pre_instruction   ); break;+    case ZYDIS_FORMATTER_FUNC_POST_INSTRUCTION:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_post_instruction  ); break;+    case ZYDIS_FORMATTER_FUNC_FORMAT_INSTRUCTION:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_format_instruction); break;+    case ZYDIS_FORMATTER_FUNC_PRE_OPERAND:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_pre_operand       ); break;+    case ZYDIS_FORMATTER_FUNC_POST_OPERAND:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_post_operand      ); break;+    case ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_REG:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_format_operand_reg); break;+    case ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_MEM:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_format_operand_mem); break;+    case ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_PTR:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_format_operand_ptr); break;+    case ZYDIS_FORMATTER_FUNC_FORMAT_OPERAND_IMM:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_format_operand_imm); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_MNEMONIC:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_mnemonic    ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_REGISTER:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_register    ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_ABS:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_address_abs ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_ADDRESS_REL:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_address_rel ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_DISP:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_disp        ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_IMM:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_imm         ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_TYPECAST:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_typecast    ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_SEGMENT:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_segment     ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_PREFIXES:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_prefixes    ); break;+    case ZYDIS_FORMATTER_FUNC_PRINT_DECORATOR:+        ZYAN_ASSERT(test == (ZyanUPointer*)&formatter->func_print_decorator   ); break;+    default:+        ZYAN_UNREACHABLE;+    }+#endif++    *callback = *(const void**)(&formatter->func_pre_instruction + type);+    if (!temp)+    {+        return ZYAN_STATUS_SUCCESS;+    }+    ZYAN_MEMCPY(&formatter->func_pre_instruction + type, &temp, sizeof(ZyanUPointer));++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Formatting                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterFormatInstruction(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address)+{+     return ZydisFormatterFormatInstructionEx(formatter, instruction, buffer, length,+         runtime_address, ZYAN_NULL);+}++ZyanStatus ZydisFormatterFormatInstructionEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address, void* user_data)+{+    if (!formatter || !instruction || !buffer || (length == 0))+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZydisFormatterBuffer formatter_buffer;+    ZydisFormatterBufferInit(&formatter_buffer, buffer, length);++    ZydisFormatterContext context;+    context.instruction     = instruction;+    context.runtime_address = runtime_address;+    context.operand         = ZYAN_NULL;+    context.user_data       = user_data;++    if (formatter->func_pre_instruction)+    {+        ZYAN_CHECK(formatter->func_pre_instruction(formatter, &formatter_buffer, &context));+    }++    ZYAN_CHECK(formatter->func_format_instruction(formatter, &formatter_buffer, &context));++    if (formatter->func_post_instruction)+    {+        ZYAN_CHECK(formatter->func_post_instruction(formatter, &formatter_buffer, &context));+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterFormatOperand(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address)+{+    return ZydisFormatterFormatOperandEx(formatter, instruction, index, buffer, length,+        runtime_address, ZYAN_NULL);+}++ZyanStatus ZydisFormatterFormatOperandEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, char* buffer, ZyanUSize length,+    ZyanU64 runtime_address, void* user_data)+{+    if (!formatter || !instruction || index >= instruction->operand_count || !buffer ||+        (length == 0))+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZydisFormatterBuffer formatter_buffer;+    ZydisFormatterBufferInit(&formatter_buffer, buffer, length);++    ZydisFormatterContext context;+    context.instruction     = instruction;+    context.runtime_address = runtime_address;+    context.operand         = &instruction->operands[index];+    context.user_data       = user_data;++    // We ignore `ZYDIS_STATUS_SKIP_TOKEN` for all operand-functions as it does not make any sense+    // to skip the only operand printed by this function++    if (formatter->func_pre_operand)+    {+        ZYAN_CHECK(formatter->func_pre_operand(formatter, &formatter_buffer, &context));+    }++    switch (context.operand->type)+    {+    case ZYDIS_OPERAND_TYPE_REGISTER:+        ZYAN_CHECK(formatter->func_format_operand_reg(formatter, &formatter_buffer, &context));+        break;+    case ZYDIS_OPERAND_TYPE_MEMORY:+        ZYAN_CHECK(formatter->func_format_operand_mem(formatter, &formatter_buffer, &context));+        break;+    case ZYDIS_OPERAND_TYPE_IMMEDIATE:+        ZYAN_CHECK(formatter->func_format_operand_imm(formatter, &formatter_buffer, &context));+        break;+    case ZYDIS_OPERAND_TYPE_POINTER:+        ZYAN_CHECK(formatter->func_format_operand_ptr(formatter, &formatter_buffer, &context));+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (formatter->func_post_operand)+    {+        ZYAN_CHECK(formatter->func_post_operand(formatter, &formatter_buffer, &context));+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Tokenizing                                                                                     */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterTokenizeInstruction(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token)+{+    return ZydisFormatterTokenizeInstructionEx(formatter, instruction, buffer, length,+        runtime_address, token, ZYAN_NULL);+}++ZyanStatus ZydisFormatterTokenizeInstructionEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token, void* user_data)+{+    if (!formatter || !instruction || !buffer || (length <= sizeof(ZydisFormatterToken)) || !token)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZydisFormatterBuffer formatter_buffer;+    ZydisFormatterToken* first_token;+    ZydisFormatterBufferInitTokenized(&formatter_buffer, &first_token, buffer, length);++    ZydisFormatterContext context;+    context.instruction     = instruction;+    context.runtime_address = runtime_address;+    context.operand         = ZYAN_NULL;+    context.user_data       = user_data;++    if (formatter->func_pre_instruction)+    {+        ZYAN_CHECK(formatter->func_pre_instruction(formatter, &formatter_buffer, &context));+    }++    ZYAN_CHECK(formatter->func_format_instruction(formatter, &formatter_buffer, &context));++    if (formatter->func_post_instruction)+    {+        ZYAN_CHECK(formatter->func_post_instruction(formatter, &formatter_buffer, &context));+    }++    if (first_token->next)+    {+        *token = (ZydisFormatterTokenConst*)((ZyanU8*)first_token + sizeof(ZydisFormatterToken) ++            first_token->next);+        return ZYAN_STATUS_SUCCESS;+    }++    *token = first_token;+    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterTokenizeOperand(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token)+{+    return ZydisFormatterTokenizeOperandEx(formatter, instruction, index, buffer, length,+        runtime_address, token, ZYAN_NULL);+}++ZyanStatus ZydisFormatterTokenizeOperandEx(const ZydisFormatter* formatter,+    const ZydisDecodedInstruction* instruction, ZyanU8 index, void* buffer, ZyanUSize length,+    ZyanU64 runtime_address, ZydisFormatterTokenConst** token, void* user_data)+{+    if (!formatter || !instruction || (index >= instruction->operand_count) || !buffer ||+        (length <= sizeof(ZydisFormatterToken)) || !token)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZydisFormatterToken* first_token;+    ZydisFormatterBuffer formatter_buffer;+    ZydisFormatterBufferInitTokenized(&formatter_buffer, &first_token, buffer, length);++    ZydisFormatterContext context;+    context.instruction     = instruction;+    context.runtime_address = runtime_address;+    context.operand         = &instruction->operands[index];+    context.user_data       = user_data;++    // We ignore `ZYDIS_STATUS_SKIP_TOKEN` for all operand-functions as it does not make any sense+    // to skip the only operand printed by this function++    if (formatter->func_pre_operand)+    {+        ZYAN_CHECK(formatter->func_pre_operand(formatter, &formatter_buffer, &context));+    }++    switch (context.operand->type)+    {+    case ZYDIS_OPERAND_TYPE_REGISTER:+        ZYAN_CHECK(formatter->func_format_operand_reg(formatter, &formatter_buffer, &context));+        break;+    case ZYDIS_OPERAND_TYPE_MEMORY:+        ZYAN_CHECK(formatter->func_format_operand_mem(formatter, &formatter_buffer, &context));+        break;+    case ZYDIS_OPERAND_TYPE_IMMEDIATE:+        ZYAN_CHECK(formatter->func_format_operand_imm(formatter, &formatter_buffer, &context));+        break;+    case ZYDIS_OPERAND_TYPE_POINTER:+        ZYAN_CHECK(formatter->func_format_operand_ptr(formatter, &formatter_buffer, &context));+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (formatter->func_post_operand)+    {+        ZYAN_CHECK(formatter->func_post_operand(formatter, &formatter_buffer, &context));+    }++    if (first_token->next)+    {+        *token = (ZydisFormatterTokenConst*)((ZyanU8*)first_token + sizeof(ZydisFormatterToken) ++            first_token->next);+        return ZYAN_STATUS_SUCCESS;+    }++    *token = first_token;+    return ZYAN_STATUS_SUCCESS;+}++/* ============================================================================================== */++/* ============================================================================================== */
+ external/zydis/src/FormatterATT.c view
@@ -0,0 +1,395 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Internal/FormatterATT.h>++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++#include <Generated/FormatterStrings.inc>++/* ============================================================================================== */+/* Formatter functions                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Instruction                                                                                    */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYAN_CHECK(formatter->func_print_prefixes(formatter, buffer, context));+    ZYAN_CHECK(formatter->func_print_mnemonic(formatter, buffer, context));++    ZyanUPointer state_mnemonic;+    ZYDIS_BUFFER_REMEMBER(buffer, state_mnemonic);+    ZyanI8 c = (ZyanI8)context->instruction->operand_count - 1;+    for (; c >= 0; --c)+    {+        if (context->instruction->operands[c].visibility != ZYDIS_OPERAND_VISIBILITY_HIDDEN)+        {+            break;+        }+    }++    for (ZyanI8 i = c; i >= 0; --i)+    {+        const ZydisDecodedOperand* const operand = &context->instruction->operands[i];++        // Print embedded-mask registers as decorator instead of a regular operand+        if ((i == 1) && (operand->type == ZYDIS_OPERAND_TYPE_REGISTER) &&+            (operand->encoding == ZYDIS_OPERAND_ENCODING_MASK))+        {+            continue;+        }++        ZyanUPointer buffer_state;+        ZYDIS_BUFFER_REMEMBER(buffer, buffer_state);++        if (buffer_state != state_mnemonic)+        {+            ZYDIS_BUFFER_APPEND(buffer, DELIM_OPERAND);+        } else+        {+            ZYDIS_BUFFER_APPEND(buffer, DELIM_MNEMONIC);+        }++        // Set current operand+        context->operand = operand;++        ZyanStatus status;+        if (formatter->func_pre_operand)+        {+            status = formatter->func_pre_operand(formatter, buffer, context);+            if (status == ZYDIS_STATUS_SKIP_TOKEN)+            {+                ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state));+                continue;+            }+            if (!ZYAN_SUCCESS(status))+            {+                return status;+            }+        }++        switch (operand->type)+        {+        case ZYDIS_OPERAND_TYPE_REGISTER:+            status = formatter->func_format_operand_reg(formatter, buffer, context);+            break;+        case ZYDIS_OPERAND_TYPE_MEMORY:+            status = formatter->func_format_operand_mem(formatter, buffer, context);+            break;+        case ZYDIS_OPERAND_TYPE_POINTER:+            status = formatter->func_format_operand_ptr(formatter, buffer, context);+            break;+        case ZYDIS_OPERAND_TYPE_IMMEDIATE:+            status = formatter->func_format_operand_imm(formatter, buffer, context);+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        if (status == ZYDIS_STATUS_SKIP_TOKEN)+        {+            ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state));+            continue;+        }+        if (!ZYAN_SUCCESS(status))+        {+            return status;+        }++        if (formatter->func_post_operand)+        {+            status = formatter->func_post_operand(formatter, buffer, context);+            if (status == ZYDIS_STATUS_SKIP_TOKEN)+            {+                ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state));+                continue;+            }+            if (ZYAN_SUCCESS(status))+            {+                return status;+            }+        }++#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+        if ((context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_EVEX) ||+            (context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX))+        {+            if  ((i == 0) &&+                 (context->instruction->operands[i + 1].encoding == ZYDIS_OPERAND_ENCODING_MASK))+            {+                ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                    ZYDIS_DECORATOR_MASK));+            }+            if (operand->type == ZYDIS_OPERAND_TYPE_MEMORY)+            {+                ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                    ZYDIS_DECORATOR_BC));+                if (context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX)+                {+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_CONVERSION));+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_EH));+                }+            } else+            {+                if ((i == (context->instruction->operand_count - 1)) ||+                    (context->instruction->operands[i + 1].type == ZYDIS_OPERAND_TYPE_IMMEDIATE))+                {+                    if (context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX)+                    {+                        ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                            ZYDIS_DECORATOR_SWIZZLE));+                    }+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_RC));+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_SAE));+                }+            }+        }+#endif+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Operands                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterATTFormatOperandMEM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYAN_CHECK(formatter->func_print_segment(formatter, buffer, context));++    const ZyanBool absolute = !formatter->force_relative_riprel &&+        (context->runtime_address != ZYDIS_RUNTIME_ADDRESS_NONE);+    if (absolute && context->operand->mem.disp.has_displacement &&+        (context->operand->mem.index == ZYDIS_REGISTER_NONE) &&+       ((context->operand->mem.base  == ZYDIS_REGISTER_NONE) ||+        (context->operand->mem.base  == ZYDIS_REGISTER_EIP ) ||+        (context->operand->mem.base  == ZYDIS_REGISTER_RIP )))+    {+        // EIP/RIP-relative or absolute-displacement address operand+        ZYAN_CHECK(formatter->func_print_address_abs(formatter, buffer, context));+    } else+    {+        ZyanBool should_print_reg = context->operand->mem.base != ZYDIS_REGISTER_NONE;+        ZyanBool should_print_idx = (context->operand->mem.index != ZYDIS_REGISTER_NONE) &&+            (context->operand->mem.type != ZYDIS_MEMOP_TYPE_MIB);+        ZyanBool neither_reg_nor_idx = !should_print_reg && !should_print_idx;++        // Regular memory operand+        if (context->operand->mem.disp.has_displacement && (context->operand->mem.disp.value+            || neither_reg_nor_idx))+        {+            ZYAN_CHECK(formatter->func_print_disp(formatter, buffer, context));+        }++        if (neither_reg_nor_idx)+        {+            return ZYAN_STATUS_SUCCESS;+        }++        ZYDIS_BUFFER_APPEND(buffer, MEMORY_BEGIN_ATT);++        if (should_print_reg)+        {+            ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                context->operand->mem.base));+        }+        if (should_print_idx)+        {+            ZYDIS_BUFFER_APPEND(buffer, DELIM_MEMORY);+            ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                context->operand->mem.index));+            if (context->operand->mem.scale)+            {+                ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_DELIMITER);+                ZYDIS_BUFFER_APPEND(buffer, DELIM_MEMORY);+                ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_IMMEDIATE);+                ZYAN_CHECK(ZydisStringAppendDecU(&buffer->string, context->operand->mem.scale, 0,+                    ZYAN_NULL, ZYAN_NULL));+            }+        }++        ZYDIS_BUFFER_APPEND(buffer, MEMORY_END_ATT);+        return ZYAN_STATUS_SUCCESS;+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Elemental tokens                                                                               */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterATTPrintMnemonic(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    const ZydisShortString* mnemonic = ZydisMnemonicGetStringWrapped(+        context->instruction->mnemonic);+    if (!mnemonic)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, INVALID_MNEMONIC, formatter->case_mnemonic);+        return ZYAN_STATUS_SUCCESS;+    }++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_MNEMONIC);+    if (context->instruction->meta.branch_type == ZYDIS_BRANCH_TYPE_FAR)+    {+        ZYAN_CHECK(ZydisStringAppendShortCase(&buffer->string, &STR_FAR_ATT,+            formatter->case_mnemonic));+    }+    ZYAN_CHECK(ZydisStringAppendShortCase(&buffer->string, mnemonic, formatter->case_mnemonic));++    // Append operand-size suffix+    ZyanU32 size = 0;+    for (ZyanU8 i = 0; i < context->instruction->operand_count; ++i)+    {+        const ZydisDecodedOperand* const operand = &context->instruction->operands[i];+        if (operand->visibility == ZYDIS_OPERAND_VISIBILITY_HIDDEN)+        {+            break;+        }+        if ((operand->type == ZYDIS_OPERAND_TYPE_MEMORY) &&+            (operand->mem.type == ZYDIS_MEMOP_TYPE_MEM))+        {+            size = ZydisFormatterHelperGetExplicitSize(formatter, context, i);+            break;+        }+    }++    switch (size)+    {+    case   8: ZydisStringAppendShort(&buffer->string, &STR_SIZE_8_ATT  ); break;+    case  16: ZydisStringAppendShort(&buffer->string, &STR_SIZE_16_ATT ); break;+    case  32: ZydisStringAppendShort(&buffer->string, &STR_SIZE_32_ATT ); break;+    case  64: ZydisStringAppendShort(&buffer->string, &STR_SIZE_64_ATT ); break;+    case 128: ZydisStringAppendShort(&buffer->string, &STR_SIZE_128_ATT); break;+    case 256: ZydisStringAppendShort(&buffer->string, &STR_SIZE_256_ATT); break;+    case 512: ZydisStringAppendShort(&buffer->string, &STR_SIZE_512_ATT); break;+    default:+        break;+    }++    if (formatter->print_branch_size)+    {+        switch (context->instruction->meta.branch_type)+        {+        case ZYDIS_BRANCH_TYPE_NONE:+            break;+        case ZYDIS_BRANCH_TYPE_SHORT:+            return ZydisStringAppendShortCase(&buffer->string, &STR_SHORT,+                formatter->case_mnemonic);+        case ZYDIS_BRANCH_TYPE_NEAR:+            return ZydisStringAppendShortCase(&buffer->string, &STR_NEAR,+                formatter->case_mnemonic);+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterATTPrintRegister(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg)+{+    ZYAN_UNUSED(context);++    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYDIS_BUFFER_APPEND(buffer, REGISTER);+    const ZydisShortString* str = ZydisRegisterGetStringWrapped(reg);+    if (!str)+    {+        return ZydisStringAppendShortCase(&buffer->string, &STR_INVALID_REG,+            formatter->case_registers);+    }+    return ZydisStringAppendShortCase(&buffer->string, str, formatter->case_registers);+}++ZyanStatus ZydisFormatterATTPrintDISP(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_DISPLACEMENT);+    switch (formatter->disp_signedness)+    {+    case ZYDIS_SIGNEDNESS_AUTO:+    case ZYDIS_SIGNEDNESS_SIGNED:+        ZYDIS_STRING_APPEND_NUM_S(formatter, formatter->disp_base, &buffer->string,+            context->operand->mem.disp.value, formatter->disp_padding, ZYAN_FALSE);+        break;+    case ZYDIS_SIGNEDNESS_UNSIGNED:+        ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->disp_base, &buffer->string,+            context->operand->mem.disp.value, formatter->disp_padding);+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterATTPrintIMM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYDIS_BUFFER_APPEND(buffer, IMMEDIATE);+    return ZydisFormatterBasePrintIMM(formatter, buffer, context);+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/FormatterBase.c view
@@ -0,0 +1,756 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Internal/FormatterBase.h>+#include <Zydis/Utils.h>++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++#include <Generated/FormatterStrings.inc>++static const ZydisShortString* const STR_PREF_REX[16] =+{+    &STR_PREF_REX_40,+    &STR_PREF_REX_41,+    &STR_PREF_REX_42,+    &STR_PREF_REX_43,+    &STR_PREF_REX_44,+    &STR_PREF_REX_45,+    &STR_PREF_REX_46,+    &STR_PREF_REX_47,+    &STR_PREF_REX_48,+    &STR_PREF_REX_49,+    &STR_PREF_REX_4A,+    &STR_PREF_REX_4B,+    &STR_PREF_REX_4C,+    &STR_PREF_REX_4D,+    &STR_PREF_REX_4E,+    &STR_PREF_REX_4F+};++static const ZydisPredefinedToken* const TOK_PREF_REX[16] =+{+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_40,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_41,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_42,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_43,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_44,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_45,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_46,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_47,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_48,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_49,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4A,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4B,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4C,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4D,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4E,+    (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4F+};++/* ============================================================================================== */+/* Helper functions                                                                               */+/* ============================================================================================== */++ZyanU32 ZydisFormatterHelperGetExplicitSize(const ZydisFormatter* formatter,+    ZydisFormatterContext* context, ZyanU8 memop_id)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(context);+    ZYAN_ASSERT(memop_id < context->instruction->operand_count);++    const ZydisDecodedOperand* const operand = &context->instruction->operands[memop_id];+    ZYAN_ASSERT(operand->type == ZYDIS_OPERAND_TYPE_MEMORY);+    ZYAN_ASSERT(operand->mem.type == ZYDIS_MEMOP_TYPE_MEM);++    if (formatter->force_memory_size)+    {+        return operand->size;+    }++    switch (operand->id)+    {+    case 0:+        if ((context->instruction->operands[1].type == ZYDIS_OPERAND_TYPE_UNUSED) ||+            (context->instruction->operands[1].type == ZYDIS_OPERAND_TYPE_IMMEDIATE))+        {+            return context->instruction->operands[0].size;+        }+        if (context->instruction->operands[0].size != context->instruction->operands[1].size)+        {+            return context->instruction->operands[0].size;+        }+        if ((context->instruction->operands[1].type == ZYDIS_OPERAND_TYPE_REGISTER) &&+            (context->instruction->operands[1].visibility == ZYDIS_OPERAND_VISIBILITY_IMPLICIT) &&+            (context->instruction->operands[1].reg.value == ZYDIS_REGISTER_CL))+        {+            return context->instruction->operands[0].size;+        }+        break;+    case 1:+    case 2:+        if (context->instruction->operands[operand->id - 1].size !=+            context->instruction->operands[operand->id].size)+        {+            return context->instruction->operands[operand->id].size;+        }+        break;+    default:+        break;+    }++    return 0;+}++/* ============================================================================================== */+/* Formatter functions                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Operands                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBaseFormatOperandREG(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    return formatter->func_print_register(formatter, buffer, context, context->operand->reg.value);+}++ZyanStatus ZydisFormatterBaseFormatOperandPTR(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_IMMEDIATE);+    ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->addr_base, &buffer->string,+        context->operand->ptr.segment, 4);+    ZYDIS_BUFFER_APPEND(buffer, DELIM_SEGMENT);+    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_IMMEDIATE);+    ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->addr_base, &buffer->string,+        context->operand->ptr.offset , 8);++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBaseFormatOperandIMM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    // The immediate operand contains an address+    if (context->operand->imm.is_relative)+    {+        const ZyanBool absolute = !formatter->force_relative_branches &&+            (context->runtime_address != ZYDIS_RUNTIME_ADDRESS_NONE);+        if (absolute)+        {+            return formatter->func_print_address_abs(formatter, buffer, context);+        }+        return formatter->func_print_address_rel(formatter, buffer, context);+    }++    // The immediate operand contains an actual ordinal value+    return formatter->func_print_imm(formatter, buffer, context);+}++/* ---------------------------------------------------------------------------------------------- */+/* Elemental tokens                                                                               */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBasePrintAddressABS(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZyanU64 address;+    ZYAN_CHECK(ZydisCalcAbsoluteAddress(context->instruction, context->operand,+        context->runtime_address, &address));+    ZyanU8 padding = (formatter->addr_padding_absolute ==+        ZYDIS_PADDING_AUTO) ? 0 : (ZyanU8)formatter->addr_padding_absolute;+    if ((formatter->addr_padding_absolute == ZYDIS_PADDING_AUTO) &&+        (formatter->addr_base == ZYDIS_NUMERIC_BASE_HEX))+    {+        switch (context->instruction->stack_width)+        {+        case 16:+            padding =  4;+            address = (ZyanU16)address;+            break;+        case 32:+            padding =  8;+            address = (ZyanU32)address;+            break;+        case 64:+            padding = 16;+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+    }++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_ADDRESS_ABS);+    ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->addr_base, &buffer->string, address, padding);++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBasePrintAddressREL(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZyanU64 address;+    ZYAN_CHECK(ZydisCalcAbsoluteAddress(context->instruction, context->operand, 0, &address));++    ZyanU8 padding = (formatter->addr_padding_relative ==+        ZYDIS_PADDING_AUTO) ? 0 : (ZyanU8)formatter->addr_padding_relative;+    if ((formatter->addr_padding_relative == ZYDIS_PADDING_AUTO) &&+        (formatter->addr_base == ZYDIS_NUMERIC_BASE_HEX))+    {+        switch (context->instruction->stack_width)+        {+        case 16:+            padding =  4;+            address = (ZyanU16)address;+            break;+        case 32:+            padding =  8;+            address = (ZyanU32)address;+            break;+        case 64:+            padding = 16;+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+    }++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_ADDRESS_REL);+    switch (formatter->addr_signedness)+    {+    case ZYDIS_SIGNEDNESS_AUTO:+    case ZYDIS_SIGNEDNESS_SIGNED:+        ZYDIS_STRING_APPEND_NUM_S(formatter, formatter->addr_base, &buffer->string, address,+            padding, ZYAN_TRUE);+        break;+    case ZYDIS_SIGNEDNESS_UNSIGNED:+        ZYAN_CHECK(ZydisStringAppendShort(&buffer->string, &STR_ADD));+        ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->addr_base, &buffer->string, address,+            padding);+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBasePrintIMM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_IMMEDIATE);++    const ZyanBool is_signed =+        (formatter->imm_signedness == ZYDIS_SIGNEDNESS_SIGNED) ||+        (formatter->imm_signedness == ZYDIS_SIGNEDNESS_AUTO && (context->operand->imm.is_signed));+    if (is_signed && (context->operand->imm.value.s < 0))+    {+        ZYDIS_STRING_APPEND_NUM_S(formatter, formatter->imm_base, &buffer->string,+            context->operand->imm.value.s, formatter->imm_padding, ZYAN_FALSE);+        return ZYAN_STATUS_SUCCESS;+    }+    ZyanU64 value;+    ZyanU8 padding = (formatter->imm_padding ==+        ZYDIS_PADDING_AUTO) ? 0 : (ZyanU8)formatter->imm_padding;+    switch (context->instruction->operand_width)+    {+    case 8:+        if (formatter->imm_padding == ZYDIS_PADDING_AUTO)+        {+            padding =  2;+        }+        value = (ZyanU8 )context->operand->imm.value.u;+        break;+    case 16:+        if (formatter->imm_padding == ZYDIS_PADDING_AUTO)+        {+            padding =  4;+        }+        value = (ZyanU16)context->operand->imm.value.u;+        break;+    case 32:+        if (formatter->imm_padding == ZYDIS_PADDING_AUTO)+        {+            padding =  8;+        }+        value = (ZyanU32)context->operand->imm.value.u;+        break;+    case 64:+        if (formatter->imm_padding == ZYDIS_PADDING_AUTO)+        {+            padding = 16;+        }+        value = (ZyanU64)context->operand->imm.value.u;+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }+    ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->imm_base, &buffer->string, value, padding);++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Optional tokens                                                                                */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBasePrintSegment(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZyanBool printed_segment = ZYAN_FALSE;+    switch (context->operand->mem.segment)+    {+    case ZYDIS_REGISTER_ES:+    case ZYDIS_REGISTER_CS:+    case ZYDIS_REGISTER_FS:+    case ZYDIS_REGISTER_GS:+        ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+            context->operand->mem.segment));+        printed_segment = ZYAN_TRUE;+        break;+    case ZYDIS_REGISTER_SS:+        if ((formatter->force_memory_segment) ||+            (context->instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_SS))+        {+            ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                context->operand->mem.segment));+            printed_segment = ZYAN_TRUE;+        }+        break;+    case ZYDIS_REGISTER_DS:+        if ((formatter->force_memory_segment) ||+            (context->instruction->attributes & ZYDIS_ATTRIB_HAS_SEGMENT_DS))+        {+            ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                context->operand->mem.segment));+            printed_segment = ZYAN_TRUE;+        }+        break;+    default:+        break;+    }+    if (printed_segment)+    {+        ZYDIS_BUFFER_APPEND(buffer, DELIM_SEGMENT);+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBasePrintPrefixes(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    if (formatter->detailed_prefixes)+    {+        for (ZyanU8 i = 0; i < context->instruction->raw.prefix_count; ++i)+        {+            const ZyanU8 value = context->instruction->raw.prefixes[i].value;+            switch (context->instruction->raw.prefixes[i].type)+            {+            case ZYDIS_PREFIX_TYPE_IGNORED:+            case ZYDIS_PREFIX_TYPE_MANDATORY:+            {+                if ((value & 0xF0) == 0x40)+                {+                    if (buffer->is_token_list)+                    {+                        // TODO: Case+                        ZYAN_CHECK(ZydisFormatterBufferAppendPredefined(buffer,+                            TOK_PREF_REX[value & 0x0F]));+                    } else+                    {+                        ZYAN_CHECK(ZydisStringAppendShortCase(&buffer->string,+                            STR_PREF_REX[value & 0x0F], formatter->case_prefixes));+                    }+                } else+                {+                    switch (value)+                    {+                    case 0xF0:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_LOCK, formatter->case_prefixes);+                        break;+                    case 0x2E:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_SEG_CS, formatter->case_prefixes);+                        break;+                    case 0x36:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_SEG_SS, formatter->case_prefixes);+                        break;+                    case 0x3E:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_SEG_DS, formatter->case_prefixes);+                        break;+                    case 0x26:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_SEG_ES, formatter->case_prefixes);+                        break;+                    case 0x64:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_SEG_FS, formatter->case_prefixes);+                        break;+                    case 0x65:+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_SEG_GS, formatter->case_prefixes);+                        break;+                    default:+                        ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_PREFIX);+                        ZYAN_CHECK(ZydisStringAppendHexU(&buffer->string, value, 0,+                            formatter->hex_uppercase, ZYAN_NULL, ZYAN_NULL));+                        ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_WHITESPACE);+                        ZYAN_CHECK(ZydisStringAppendShort(&buffer->string, &STR_WHITESPACE));+                        break;+                    }+                }+                break;+            }+            case ZYDIS_PREFIX_TYPE_EFFECTIVE:+                switch (value)+                {+                case 0xF0:+                    ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_LOCK, formatter->case_prefixes);+                    break;+                case 0xF2:+                    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_XACQUIRE)+                    {+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_XACQUIRE, formatter->case_prefixes);+                    }+                    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_REPNE)+                    {+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_REPNE, formatter->case_prefixes);+                    }++                    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_BND)+                    {+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_BND, formatter->case_prefixes);+                    }+                    break;+                case 0xF3:+                    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_XRELEASE)+                    {+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_XRELEASE, formatter->case_prefixes);+                    }+                    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_REP)+                    {+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_REP, formatter->case_prefixes);+                    }+                    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_REPE)+                    {+                        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_REPE, formatter->case_prefixes);+                    }+                    break;+                default:+                    break;+                }+                break;+            default:+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+        }+        return ZYAN_STATUS_SUCCESS;+    }++    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_XACQUIRE)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_XACQUIRE, formatter->case_prefixes);+    }+    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_XRELEASE)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_XRELEASE, formatter->case_prefixes);+    }++    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_LOCK)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_LOCK, formatter->case_prefixes);+        return ZYAN_STATUS_SUCCESS;+    }++    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_REP)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_REP, formatter->case_prefixes);+        return ZYAN_STATUS_SUCCESS;+    }+    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_REPE)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_REPE, formatter->case_prefixes);+        return ZYAN_STATUS_SUCCESS;+    }+    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_REPNE)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_REPNE, formatter->case_prefixes);+        return ZYAN_STATUS_SUCCESS;+    }++    if (context->instruction->attributes & ZYDIS_ATTRIB_HAS_BND)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, PREF_BND, formatter->case_prefixes);+        return ZYAN_STATUS_SUCCESS;+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBasePrintDecorator(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisDecorator decorator)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++#if defined(ZYDIS_DISABLE_AVX512) && defined(ZYDIS_DISABLE_KNC)+    ZYAN_UNUSED(formatter);+    ZYAN_UNUSED(buffer);+    ZYAN_UNUSED(context);+#endif++    switch (decorator)+    {+    case ZYDIS_DECORATOR_MASK:+    {+#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+        if (context->instruction->avx.mask.reg != ZYDIS_REGISTER_K0)+        {+            if (buffer->is_token_list)+            {+                ZYDIS_BUFFER_APPEND(buffer, DECO_BEGIN);+                ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                    context->instruction->avx.mask.reg));+                ZYDIS_BUFFER_APPEND(buffer, DECO_END);+            } else+            {+                ZYAN_CHECK(ZydisStringAppendShort(&buffer->string, &STR_DECO_BEGIN));+                ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                    context->instruction->avx.mask.reg));+                ZYAN_CHECK(ZydisStringAppendShort(&buffer->string, &STR_DECO_END));+            }++            // Only print the zeroing decorator, if the instruction is not a "zeroing masking only"+            // instruction (e.g. `vcmpsd`)+            if ((context->instruction->avx.mask.mode == ZYDIS_MASK_MODE_ZEROING ||+                 context->instruction->avx.mask.mode == ZYDIS_MASK_MODE_CONTROL_ZEROING) &&+                (context->instruction->raw.evex.z))+            {+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_ZERO, formatter->case_decorators);+            }+        }+#endif+        break;+    }+    case ZYDIS_DECORATOR_BC:+#if !defined(ZYDIS_DISABLE_AVX512)+        if (!context->instruction->avx.broadcast.is_static)+        {+            switch (context->instruction->avx.broadcast.mode)+            {+            case ZYDIS_BROADCAST_MODE_INVALID:+                break;+            case ZYDIS_BROADCAST_MODE_1_TO_2:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_1TO2, formatter->case_decorators);+                break;+            case ZYDIS_BROADCAST_MODE_1_TO_4:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_1TO4, formatter->case_decorators);+                break;+            case ZYDIS_BROADCAST_MODE_1_TO_8:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_1TO8, formatter->case_decorators);+                break;+            case ZYDIS_BROADCAST_MODE_1_TO_16:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_1TO16, formatter->case_decorators);+                break;+            case ZYDIS_BROADCAST_MODE_4_TO_8:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_4TO8, formatter->case_decorators);+                break;+            case ZYDIS_BROADCAST_MODE_4_TO_16:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_4TO16, formatter->case_decorators);+                break;+            default:+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+        }+#endif+        break;+    case ZYDIS_DECORATOR_RC:+#if !defined(ZYDIS_DISABLE_AVX512)+        if (context->instruction->avx.has_sae)+        {+            switch (context->instruction->avx.rounding.mode)+            {+            case ZYDIS_ROUNDING_MODE_INVALID:+                break;+            case ZYDIS_ROUNDING_MODE_RN:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RN_SAE, formatter->case_decorators);+                break;+            case ZYDIS_ROUNDING_MODE_RD:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RD_SAE, formatter->case_decorators);+                break;+            case ZYDIS_ROUNDING_MODE_RU:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RU_SAE, formatter->case_decorators);+                break;+            case ZYDIS_ROUNDING_MODE_RZ:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RZ_SAE, formatter->case_decorators);+                break;+            default:+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+        } else+        {+            switch (context->instruction->avx.rounding.mode)+            {+            case ZYDIS_ROUNDING_MODE_INVALID:+                break;+            case ZYDIS_ROUNDING_MODE_RN:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RN, formatter->case_decorators);+                break;+            case ZYDIS_ROUNDING_MODE_RD:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RD, formatter->case_decorators);+                break;+            case ZYDIS_ROUNDING_MODE_RU:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RU, formatter->case_decorators);+                break;+            case ZYDIS_ROUNDING_MODE_RZ:+                ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_RZ, formatter->case_decorators);+                break;+            default:+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+        }+#endif+        break;+    case ZYDIS_DECORATOR_SAE:+#if !defined(ZYDIS_DISABLE_AVX512)+        if (context->instruction->avx.has_sae && !context->instruction->avx.rounding.mode)+        {+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_SAE, formatter->case_decorators);+        }+#endif+        break;+    case ZYDIS_DECORATOR_SWIZZLE:+#if !defined(ZYDIS_DISABLE_KNC)+        switch (context->instruction->avx.swizzle.mode)+        {+        case ZYDIS_SWIZZLE_MODE_INVALID:+        case ZYDIS_SWIZZLE_MODE_DCBA:+            // Nothing to do here+            break;+        case ZYDIS_SWIZZLE_MODE_CDAB:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_CDAB, formatter->case_decorators);+            break;+        case ZYDIS_SWIZZLE_MODE_BADC:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_BADC, formatter->case_decorators);+            break;+        case ZYDIS_SWIZZLE_MODE_DACB:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_DACB, formatter->case_decorators);+            break;+        case ZYDIS_SWIZZLE_MODE_AAAA:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_AAAA, formatter->case_decorators);+            break;+        case ZYDIS_SWIZZLE_MODE_BBBB:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_BBBB, formatter->case_decorators);+            break;+        case ZYDIS_SWIZZLE_MODE_CCCC:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_CCCC, formatter->case_decorators);+            break;+        case ZYDIS_SWIZZLE_MODE_DDDD:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_DDDD, formatter->case_decorators);+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+#endif+        break;+    case ZYDIS_DECORATOR_CONVERSION:+#if !defined(ZYDIS_DISABLE_KNC)+        switch (context->instruction->avx.conversion.mode)+        {+        case ZYDIS_CONVERSION_MODE_INVALID:+            break;+        case ZYDIS_CONVERSION_MODE_FLOAT16:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_FLOAT16, formatter->case_decorators);+            break;+        case ZYDIS_CONVERSION_MODE_SINT8:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_SINT8, formatter->case_decorators);+            break;+        case ZYDIS_CONVERSION_MODE_UINT8:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_UINT8, formatter->case_decorators);+            break;+        case ZYDIS_CONVERSION_MODE_SINT16:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_SINT16, formatter->case_decorators);+            break;+        case ZYDIS_CONVERSION_MODE_UINT16:+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_UINT16, formatter->case_decorators);+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+#endif+        break;+    case ZYDIS_DECORATOR_EH:+#if !defined(ZYDIS_DISABLE_KNC)+        if (context->instruction->avx.has_eviction_hint)+        {+            ZYDIS_BUFFER_APPEND_CASE(buffer, DECO_EH, formatter->case_decorators);+        }+#endif+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/FormatterBuffer.c view
@@ -0,0 +1,191 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Internal/String.h>+#include <Zydis/FormatterBuffer.h>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Token                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterTokenGetValue(const ZydisFormatterToken* token,+    ZydisTokenType* type, ZyanConstCharPointer* value)+{+    if (!token || !type || !value)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    *type = token->type;+    *value = (ZyanConstCharPointer)((ZyanU8*)token + sizeof(ZydisFormatterToken));++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterTokenNext(ZydisFormatterTokenConst** token)+{+    if (!token || !*token)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    const ZyanU8 next = (*token)->next;+    if (!next)+    {+        return ZYAN_STATUS_OUT_OF_RANGE;+    }+    *token = (ZydisFormatterTokenConst*)((ZyanU8*)*token + sizeof(ZydisFormatterToken) + next);++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Buffer                                                                                         */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterBufferGetToken(const ZydisFormatterBuffer* buffer,+    ZydisFormatterTokenConst** token)+{+    if (!buffer || !token)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    *token = ((ZydisFormatterTokenConst*)buffer->string.vector.data - 1);+    if ((*token)->type == ZYDIS_TOKEN_INVALID)+    {+        return ZYAN_STATUS_INVALID_OPERATION;+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBufferGetString(ZydisFormatterBuffer* buffer, ZyanString** string)+{+    if (!buffer || !string)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (buffer->is_token_list &&+        ((ZydisFormatterTokenConst*)buffer->string.vector.data - 1)->type == ZYDIS_TOKEN_INVALID)+    {+        return ZYAN_STATUS_INVALID_OPERATION;+    }++    ZYAN_ASSERT(buffer->string.vector.data);+    ZYAN_ASSERT(buffer->string.vector.size);++    *string = &buffer->string;++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBufferAppend(ZydisFormatterBuffer* buffer, ZydisTokenType type)+{+    if (!buffer)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (!buffer->is_token_list)+    {+        return ZYAN_STATUS_SUCCESS;+    }++    const ZyanUSize len = buffer->string.vector.size;+    ZYAN_ASSERT((len > 0) && (len < 256));+    if (buffer->capacity <= len + sizeof(ZydisFormatterToken))+    {+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;+    }++    ZydisFormatterToken* const last  = (ZydisFormatterToken*)buffer->string.vector.data - 1;+    last->next = (ZyanU8)len;++    const ZyanUSize delta = len + sizeof(ZydisFormatterToken);+    buffer->capacity -= delta;+    buffer->string.vector.data = (ZyanU8*)buffer->string.vector.data + delta;+    buffer->string.vector.size = 1;+    buffer->string.vector.capacity = ZYAN_MIN(buffer->capacity, 255);+    *(char*)buffer->string.vector.data = '\0';++    ZydisFormatterToken* const token = (ZydisFormatterToken*)buffer->string.vector.data - 1;+    token->type = type;+    token->next = 0;++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBufferRemember(const ZydisFormatterBuffer* buffer, ZyanUPointer* state)+{+    if (!buffer || !state)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (buffer->is_token_list)+    {+        *state = (ZyanUPointer)buffer->string.vector.data;+    } else+    {+        *state = (ZyanUPointer)buffer->string.vector.size;+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterBufferRestore(ZydisFormatterBuffer* buffer, ZyanUPointer state)+{+    if (!buffer)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if (buffer->is_token_list)+    {+        const ZyanUSize delta = (ZyanUPointer)buffer->string.vector.data - state;+        buffer->capacity += delta;+        buffer->string.vector.data = (void*)state;+        buffer->string.vector.size = 1; // TODO: Restore size?+        buffer->string.vector.capacity = ZYAN_MIN(buffer->capacity, 255);+        *(char*)buffer->string.vector.data = '\0';+    } else+    {+        buffer->string.vector.size = (ZyanUSize)state;+        ZYDIS_STRING_NULLTERMINATE(&buffer->string);+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/FormatterIntel.c view
@@ -0,0 +1,441 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd, Joel Hoener++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Internal/FormatterIntel.h>+#include <Zydis/Utils.h>++/* ============================================================================================== */+/* Constants                                                                                      */+/* ============================================================================================== */++#include <Generated/FormatterStrings.inc>++/* ============================================================================================== */+/* Formatter functions                                                                            */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Intel                                                                                          */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZYAN_CHECK(formatter->func_print_prefixes(formatter, buffer, context));+    ZYAN_CHECK(formatter->func_print_mnemonic(formatter, buffer, context));++    ZyanUPointer state_mnemonic;+    ZYDIS_BUFFER_REMEMBER(buffer, state_mnemonic);+    for (ZyanU8 i = 0; i < context->instruction->operand_count; ++i)+    {+        const ZydisDecodedOperand* const operand = &context->instruction->operands[i];++        if (operand->visibility == ZYDIS_OPERAND_VISIBILITY_HIDDEN)+        {+            break;+        }++        // Print embedded-mask registers as decorator instead of a regular operand+        if ((i == 1) && (operand->type == ZYDIS_OPERAND_TYPE_REGISTER) &&+            (operand->encoding == ZYDIS_OPERAND_ENCODING_MASK))+        {+            continue;+        }++        ZyanUPointer buffer_state;+        ZYDIS_BUFFER_REMEMBER(buffer, buffer_state);++        if (buffer_state != state_mnemonic)+        {+            ZYDIS_BUFFER_APPEND(buffer, DELIM_OPERAND);+        } else+        {+            ZYDIS_BUFFER_APPEND(buffer, DELIM_MNEMONIC);+        }++        // Set current operand+        context->operand = operand;++        ZyanStatus status;+        if (formatter->func_pre_operand)+        {+            status = formatter->func_pre_operand(formatter, buffer, context);+            if (status == ZYDIS_STATUS_SKIP_TOKEN)+            {+                ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state));+                continue;+            }+            if (!ZYAN_SUCCESS(status))+            {+                return status;+            }+        }++        switch (operand->type)+        {+        case ZYDIS_OPERAND_TYPE_REGISTER:+            status = formatter->func_format_operand_reg(formatter, buffer, context);+            break;+        case ZYDIS_OPERAND_TYPE_MEMORY:+            status = formatter->func_format_operand_mem(formatter, buffer, context);+            break;+        case ZYDIS_OPERAND_TYPE_POINTER:+            status = formatter->func_format_operand_ptr(formatter, buffer, context);+            break;+        case ZYDIS_OPERAND_TYPE_IMMEDIATE:+            status = formatter->func_format_operand_imm(formatter, buffer, context);+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        if (status == ZYDIS_STATUS_SKIP_TOKEN)+        {+            ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state));+            continue;+        }+        if (!ZYAN_SUCCESS(status))+        {+            return status;+        }++        if (formatter->func_post_operand)+        {+            status = formatter->func_post_operand(formatter, buffer, context);+            if (status == ZYDIS_STATUS_SKIP_TOKEN)+            {+                ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state));+                continue;+            }+            if (ZYAN_SUCCESS(status))+            {+                return status;+            }+        }++#if !defined(ZYDIS_DISABLE_AVX512) || !defined(ZYDIS_DISABLE_KNC)+        if ((context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_EVEX) ||+            (context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX))+        {+            if  ((i == 0) &&+                 (context->instruction->operands[i + 1].encoding == ZYDIS_OPERAND_ENCODING_MASK))+            {+                ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                    ZYDIS_DECORATOR_MASK));+            }+            if (operand->type == ZYDIS_OPERAND_TYPE_MEMORY)+            {+                ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                    ZYDIS_DECORATOR_BC));+                if (context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX)+                {+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_CONVERSION));+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_EH));+                }+            } else+            {+                // TODO: `sae` is displayed twice e.g. for `62 E30D1B 0A D3 A5`+                // TODO: Checking the `operand_count` does not work for instructions with hidden operands+                if ((i == (context->instruction->operand_count - 1)) ||+                    (context->instruction->operands[i + 1].type == ZYDIS_OPERAND_TYPE_IMMEDIATE))+                {+                    if (context->instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_MVEX)+                    {+                        ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                            ZYDIS_DECORATOR_SWIZZLE));+                    }+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_RC));+                    ZYAN_CHECK(formatter->func_print_decorator(formatter, buffer, context,+                        ZYDIS_DECORATOR_SAE));+                }+            }+        }+#endif+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterIntelFormatOperandMEM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    if (context->operand->mem.type == ZYDIS_MEMOP_TYPE_MEM)+    {+        ZYAN_CHECK(formatter->func_print_typecast(formatter, buffer, context));+    }+    ZYAN_CHECK(formatter->func_print_segment(formatter, buffer, context));++    ZYDIS_BUFFER_APPEND(buffer, MEMORY_BEGIN_INTEL);++    const ZyanBool absolute = !formatter->force_relative_riprel &&+        (context->runtime_address != ZYDIS_RUNTIME_ADDRESS_NONE);+    if (absolute && context->operand->mem.disp.has_displacement &&+        (context->operand->mem.index == ZYDIS_REGISTER_NONE) &&+       ((context->operand->mem.base  == ZYDIS_REGISTER_NONE) ||+        (context->operand->mem.base  == ZYDIS_REGISTER_EIP ) ||+        (context->operand->mem.base  == ZYDIS_REGISTER_RIP )))+    {+        // EIP/RIP-relative or absolute-displacement address operand+        ZYAN_CHECK(formatter->func_print_address_abs(formatter, buffer, context));+    } else+    {+        ZyanBool should_print_reg = context->operand->mem.base != ZYDIS_REGISTER_NONE;+        ZyanBool should_print_idx = (context->operand->mem.index != ZYDIS_REGISTER_NONE) &&+            (context->operand->mem.type  != ZYDIS_MEMOP_TYPE_MIB);+        ZyanBool neither_reg_nor_idx = !should_print_reg && !should_print_idx;++        // Regular memory operand+        if (should_print_reg)+        {+            ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                context->operand->mem.base));+        }+        if (should_print_idx)+        {+            if (context->operand->mem.base != ZYDIS_REGISTER_NONE)+            {+                ZYDIS_BUFFER_APPEND(buffer, ADD);+            }+            ZYAN_CHECK(formatter->func_print_register(formatter, buffer, context,+                context->operand->mem.index));+            if (context->operand->mem.scale)+            {+                ZYDIS_BUFFER_APPEND(buffer, MUL);+                ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_IMMEDIATE);+                ZYAN_CHECK(ZydisStringAppendDecU(&buffer->string, context->operand->mem.scale, 0,+                    ZYAN_NULL, ZYAN_NULL));+            }+        }+        if (context->operand->mem.disp.has_displacement && (context->operand->mem.disp.value+            || neither_reg_nor_idx))+        {+            ZYAN_CHECK(formatter->func_print_disp(formatter, buffer, context));+        }+    }++    ZYDIS_BUFFER_APPEND(buffer, MEMORY_END_INTEL);+    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterIntelPrintMnemonic(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    const ZydisShortString* mnemonic = ZydisMnemonicGetStringWrapped(+        context->instruction->mnemonic);+    if (!mnemonic)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, INVALID_MNEMONIC, formatter->case_mnemonic);+        return ZYAN_STATUS_SUCCESS;+    }++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_MNEMONIC);+    ZYAN_CHECK(ZydisStringAppendShortCase(&buffer->string, mnemonic, formatter->case_mnemonic));+    if (context->instruction->meta.branch_type == ZYDIS_BRANCH_TYPE_FAR)+    {+        return ZydisStringAppendShortCase(&buffer->string, &STR_FAR, formatter->case_mnemonic);+    }+    if (formatter->print_branch_size)+    {+        switch (context->instruction->meta.branch_type)+        {+        case ZYDIS_BRANCH_TYPE_NONE:+            break;+        case ZYDIS_BRANCH_TYPE_SHORT:+            return ZydisStringAppendShortCase(&buffer->string, &STR_SHORT,+                formatter->case_mnemonic);+        case ZYDIS_BRANCH_TYPE_NEAR:+            return ZydisStringAppendShortCase(&buffer->string, &STR_NEAR,+                formatter->case_mnemonic);+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterIntelPrintRegister(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg)+{+    ZYAN_UNUSED(context);++    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    const ZydisShortString* str = ZydisRegisterGetStringWrapped(reg);+    if (!str)+    {+        ZYDIS_BUFFER_APPEND_CASE(buffer, INVALID_REG, formatter->case_registers);+        return ZYAN_STATUS_SUCCESS;+    }++    ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_REGISTER);+    return ZydisStringAppendShortCase(&buffer->string, str, formatter->case_registers);+}++ZyanStatus ZydisFormatterIntelPrintDISP(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    switch (formatter->disp_signedness)+    {+    case ZYDIS_SIGNEDNESS_AUTO:+    case ZYDIS_SIGNEDNESS_SIGNED:+        if (context->operand->mem.disp.value < 0)+        {+            if ((context->operand->mem.base  != ZYDIS_REGISTER_NONE) ||+                (context->operand->mem.index != ZYDIS_REGISTER_NONE))+            {+                ZYDIS_BUFFER_APPEND(buffer, SUB);+            }+            ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_DISPLACEMENT);+            ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->disp_base, &buffer->string,+                -context->operand->mem.disp.value, formatter->disp_padding);+            break;+        }+        ZYAN_FALLTHROUGH;+    case ZYDIS_SIGNEDNESS_UNSIGNED:+        if ((context->operand->mem.base  != ZYDIS_REGISTER_NONE) ||+            (context->operand->mem.index != ZYDIS_REGISTER_NONE))+        {+            ZYDIS_BUFFER_APPEND(buffer, ADD);+        }+        ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_DISPLACEMENT);+        ZYDIS_STRING_APPEND_NUM_U(formatter, formatter->disp_base, &buffer->string,+            context->operand->mem.disp.value, formatter->disp_padding);+        break;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisFormatterIntelPrintTypecast(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    switch (ZydisFormatterHelperGetExplicitSize(formatter, context, context->operand->id))+    {+    case   8: ZYDIS_BUFFER_APPEND(buffer, SIZE_8_INTEL  ); break;+    case  16: ZYDIS_BUFFER_APPEND(buffer, SIZE_16_INTEL ); break;+    case  32: ZYDIS_BUFFER_APPEND(buffer, SIZE_32_INTEL ); break;+    case  48: ZYDIS_BUFFER_APPEND(buffer, SIZE_48       ); break;+    case  64: ZYDIS_BUFFER_APPEND(buffer, SIZE_64_INTEL ); break;+    case  80: ZYDIS_BUFFER_APPEND(buffer, SIZE_80       ); break;+    case 128: ZYDIS_BUFFER_APPEND(buffer, SIZE_128_INTEL); break;+    case 256: ZYDIS_BUFFER_APPEND(buffer, SIZE_256_INTEL); break;+    case 512: ZYDIS_BUFFER_APPEND(buffer, SIZE_512_INTEL); break;+    default:+        break;+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* MASM                                                                                           */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisFormatterIntelFormatInstructionMASM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    // Force the formatter to always call our MASM `ZYDIS_FORMATTER_PRINT_ADDRESS_ABS` function.+    // This implicitly omits printing of the `RIP`/`EIP` registers for `RIP`/`EIP`-relative+    // memory operands+    context->runtime_address = 0;++    return ZydisFormatterIntelFormatInstruction(formatter, buffer, context);+}++ZyanStatus ZydisFormatterIntelPrintAddressMASM(const ZydisFormatter* formatter,+    ZydisFormatterBuffer* buffer, ZydisFormatterContext* context)+{+    ZYAN_ASSERT(formatter);+    ZYAN_ASSERT(buffer);+    ZYAN_ASSERT(context);++    ZyanU64 address;+    ZYAN_CHECK(ZydisCalcAbsoluteAddress(context->instruction, context->operand, 0, &address));++    ZyanU8 padding = (formatter->addr_padding_relative ==+        ZYDIS_PADDING_AUTO) ? 0 : (ZyanU8)formatter->addr_padding_relative;+    if ((formatter->addr_padding_relative == ZYDIS_PADDING_AUTO) &&+        (formatter->addr_base == ZYDIS_NUMERIC_BASE_HEX))+    {+        switch (context->instruction->stack_width)+        {+        case 16:+            padding =  4;+            address = (ZyanU16)address;+            break;+        case 32:+            padding =  8;+            address = (ZyanU32)address;+            break;+        case 64:+            padding = 16;+            break;+        default:+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+    }++    ZYDIS_BUFFER_APPEND(buffer, ADDR_RELATIVE);+    ZYDIS_STRING_APPEND_NUM_S(formatter, formatter->addr_base, &buffer->string, address, padding,+        ZYAN_TRUE);++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/Generated/AccessedFlags.inc view
@@ -0,0 +1,77 @@+#ifndef ZYDIS_MINIMAL_MODE+static const ZydisAccessedFlags ACCESSED_FLAGS[] =+{+    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_1, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_1, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_TESTED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_SET_0, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_SET_1, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_MODIFIED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }, +    { { ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_UNDEFINED, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE, ZYDIS_CPUFLAG_ACTION_NONE } }+};+#endif
+ external/zydis/src/Generated/DecoderTables.inc view
@@ -0,0 +1,6840 @@+const ZydisDecoderTreeNode FILTERS_XOP[][13] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x16), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x17), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x18), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_VEX[][17] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x19), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x20), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x22), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x23) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x19), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x21), ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_EMVEX[][33] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x154), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x8), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0xA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0xC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0xE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0xF), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x10), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x12), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x13), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x14), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x15) }+};++const ZydisDecoderTreeNode FILTERS_OPCODE[][256] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3), ZYDIS_DEFINITION(0x6, 0x22), ZYDIS_DEFINITION(0x7, 0x23), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7), ZYDIS_DEFINITION(0x3, 0x3DF), ZYDIS_DEFINITION(0x7, 0x3E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13F), ZYDIS_DEFINITION(0x6, 0xC), ZYDIS_DEFINITION(0x7, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x140), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x141), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x142), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x143), ZYDIS_DEFINITION(0x6, 0x62E), ZYDIS_DEFINITION(0x7, 0x62F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x144), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x145), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x147), ZYDIS_DEFINITION(0x6, 0x50), ZYDIS_DEFINITION(0x7, 0x51), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x148), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x149), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14B), ZYDIS_DEFINITION(0x6, 0x6D1), ZYDIS_DEFINITION(0x7, 0x6D2), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14F), ZYDIS_DEFINITION(0x3, 0x751), ZYDIS_DEFINITION(0x7, 0x752), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x150), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x151), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x152), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x153), ZYDIS_DEFINITION(0x6, 0xDE), ZYDIS_DEFINITION(0x7, 0xDF), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x51), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x56), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x57), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x58), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x60), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x5B3), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_DEFINITION(0x0, 0x50A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x61), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EMVEX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x7, 0x5B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36E), ZYDIS_DEFINITION(0x6, 0x5B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x87), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x88), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x89), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x90), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x91), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x92), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x93), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x94), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x95), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x96), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x370), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x371), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x372), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x373), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x374), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x375), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x376), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x377), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x378), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x379), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_XOP, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A4), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_DEFINITION(0x0, 0x740), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB1), ZYDIS_DEFINITION(0x0, 0x1FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB3), ZYDIS_DEFINITION(0x0, 0x617), ZYDIS_DEFINITION(0x0, 0x2B0), ZYDIS_DEFINITION(0x2, 0x2FE), ZYDIS_DEFINITION(0x2, 0x2FF), ZYDIS_DEFINITION(0x2, 0x300), ZYDIS_DEFINITION(0x2, 0x301), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A8), ZYDIS_DEFINITION(0x6, 0x6F1), ZYDIS_DEFINITION(0x7, 0x6F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AE), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x3, 0x302), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_DEFINITION(0x5, 0x303), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D5), ZYDIS_DEFINITION(0x4, 0x5ED), ZYDIS_DEFINITION(0x0, 0x5EE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VEX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VEX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6AD), ZYDIS_DEFINITION(0x11, 0x169), ZYDIS_DEFINITION(0x0, 0x2B7), ZYDIS_DEFINITION(0x4, 0x5EF), ZYDIS_DEFINITION(0x0, 0x5F0), ZYDIS_DEFINITION(0x0, 0x245), ZYDIS_DEFINITION(0x3, 0x243), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x20), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF9), ZYDIS_DEFINITION(0x0, 0x748), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B9), ZYDIS_DEFINITION(0x8, 0x2D2), ZYDIS_DEFINITION(0x8, 0x2D1), ZYDIS_DEFINITION(0x8, 0x2D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xFA), ZYDIS_DEFINITION(0x3, 0x226), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x25), ZYDIS_DEFINITION(0x3, 0x3ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xFB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xFC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xFD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xFE), ZYDIS_DEFINITION(0x0, 0x229), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x27), ZYDIS_DEFINITION(0x0, 0x3F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x28), ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x244), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x213), ZYDIS_DEFINITION(0x0, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6BB), ZYDIS_DEFINITION(0x0, 0xAA), ZYDIS_DEFINITION(0x0, 0x6B6), ZYDIS_DEFINITION(0x0, 0xB0), ZYDIS_DEFINITION(0x0, 0x6B9), ZYDIS_DEFINITION(0x0, 0xAB), ZYDIS_DEFINITION(0x0, 0x6B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF), ZYDIS_DEFINITION(0x0, 0xB2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x10), ZYDIS_DEFINITION(0x0, 0x247), ZYDIS_DEFINITION(0x0, 0x72C), ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x707), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC), ZYDIS_DEFINITION(0x0, 0x199), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_MPX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_MPX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x20), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E), ZYDIS_DEFINITION(0x0, 0x72F), ZYDIS_DEFINITION(0x0, 0x5EB), ZYDIS_DEFINITION(0x0, 0x5E1), ZYDIS_DEFINITION(0x0, 0x5E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x22), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x3), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x125), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x33), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x37), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x40), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x41), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x42), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE9), ZYDIS_DEFINITION(0x0, 0x5B8), ZYDIS_DEFINITION(0x0, 0x50D), ZYDIS_DEFINITION(0x0, 0x107), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEE), ZYDIS_DEFINITION(0x0, 0x5B9), ZYDIS_DEFINITION(0x0, 0x50E), ZYDIS_DEFINITION(0x0, 0x611), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x100), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x101), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x102), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x103), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x104), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x105), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x106), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x107), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x108), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x109), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10B), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_DEFINITION(0x0, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x110), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x111), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x112), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x113), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x114), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x115), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x116), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x117), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x119), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x120), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x121), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x122), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x123), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x124), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x125), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x126), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x127), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x128), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x129), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x130), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x131), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x132), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x133), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x134), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x135), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x136), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x137), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x138), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x139), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13B) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x70), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x72), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x73), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x74), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x75), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x76), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x77), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x78), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x79), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7F), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x80), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x81), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x83), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x84), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x86), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x87), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x88), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x89), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x90), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x91), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x92), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x93), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x94), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x95), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x96), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x97), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x98), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x99), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x155), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x156), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x157), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x158), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x159), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x160), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x161), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x162), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x163), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x164), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x165), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x166), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x167), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x168), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x169), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x170), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x171), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x172), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x173), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x174), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x175), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x176), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x177), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x178), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x179), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17C), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x180), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x181), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x182), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x183), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x184), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x185), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x186), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x187), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x188), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x189), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x190), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x191), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x192), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x193), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x194), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x195), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x196), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x197), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x198), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x199), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A3), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A7), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A9), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1AA), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1AD), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B3), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1BB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1BF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1CB), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1CD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1CE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1CF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D1), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D9), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1DA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1DC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1DD), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1DE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E4), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1EC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1EE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1FA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1FF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x200), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x201), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x202), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x203), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x204), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x205), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x206), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x207), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x208), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x209), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20B), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x210), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x211), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x212), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x213), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x214), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x215), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x216), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x217), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x218), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x219), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x220), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x221), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x222), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x223), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x224), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x225), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x226), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x227), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x228), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x229), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x230), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x231), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x232), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x233), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x234), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x235), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x236), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x237), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x238), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x239), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x240), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x241), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x242), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x243), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x244), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x245), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x246), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x247), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x248), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x249), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x250), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x251), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x252), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x253), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x254), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x255), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x256), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x257), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x258), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x259), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x260), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x261), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x262), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x263), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x264), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x265), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x266), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x267), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x268), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x269), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x270), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x271), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x272), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x273), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x274), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x275), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x276), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x277), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x278), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x279), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x280), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x281), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x282), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x283), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x284), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x285), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x286), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x287), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x288), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x289), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x290), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x291), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x292), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x293), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x294), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x295), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x296), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x297), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x298), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x299), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A2), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A6), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A7), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A9), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2AA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B2), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2BA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2BB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2BC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2BF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C2), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2CB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2CD), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2CE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2CF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D3), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D6), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D7), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2DA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2DB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2DC), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2DE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2DF), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E2), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E6), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2EC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2ED), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2EE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2EF), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F2), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F3), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F7), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2FA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2FD), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2FE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2FF), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x300), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x301), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x302), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x303), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x304), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x305), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x306), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x307), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x308), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x309), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x310), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x311), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x312), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x313), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x314), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x315), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x316), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x317), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x318), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x319), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31F), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x320), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x321), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x322), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x323), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x324), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x325), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x326), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x327), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x328), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x329), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32B), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x330), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x331), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x332), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x333), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x334), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x335), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x336), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x337), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x338), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x339), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33C), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33F), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x340), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x341), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x342), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x343), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x344), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x345), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x346), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x347), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x348), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x349), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34F), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x350), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x351), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x352), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x353), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x354), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x355), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x356), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x357), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x358), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x359), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x360), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x361), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x362), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x363), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x364), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x365), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x366), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x367), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x368), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x369), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3CD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3CE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3CF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D3), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D7), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D9), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3DA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3DC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3DD), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3DE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x40), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x41), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3FF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x400), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x401), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x402), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x403), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x404), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x405), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x406), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x407), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x408), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x409), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x410), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x42), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB6), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x413), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x414), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x415), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x416), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x417), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x418), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x419), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x47), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x423), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x424), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x425), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F2), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x426), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x427), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x428), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x429), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x430), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x431), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x432), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x433), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x434), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x435), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x436), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x437), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x438), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x439), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x440), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x441), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC9), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x442), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x443), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x444), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x445), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x446), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x447), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x448), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x449), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x48), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x49), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x452), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x453), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x454), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x455), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x456), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x457), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x458), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x459), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x454), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x455), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x460), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x461), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x462), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x463), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x464), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x465), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x466), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x467), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x468), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x469), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x470), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x471), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x472), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x473), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x474), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x475), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x476), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x477), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x478), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x479), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x480), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x481), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x482), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x483), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x484), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x485), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x490), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x491), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x492), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x493), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x494), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x495), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x496), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x497), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x498), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x499), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4BB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4BF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C0), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4CB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4CD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4CE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4CF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4DA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4DC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4DE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4DF), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E4), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E7), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4EC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4ED), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4EE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4FF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x500), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x501), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x502), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x503), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x504), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x505), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x506), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x507), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x508), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x509), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x510), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x511), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x30), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x516), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x517), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x518), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x519), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5BB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x520), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x521), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5CB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x522), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x523), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x524), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x525), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x526), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5DB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x528), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x529), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x530), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x531), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x532), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x533), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x534), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x535), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x536), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x537), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x538), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x539), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x540), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x541), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x542), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x543), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x544), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x545), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x546), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x547), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x548), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x549), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54B), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54F), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x550), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x551), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x552), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x553), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x554), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x555), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x556), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x557), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x558), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x559), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x639), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x560), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x561), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x640), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x562), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x563), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x645), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x646), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x564), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x565), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x566), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x567), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x568), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x652), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x653), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x569), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xDF), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x660), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x661), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x662), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x663), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x666), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x667), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x668), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x669), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x572), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x573), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x574), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x676), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x575), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x576), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x577), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x578), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE9), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xEA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xEB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x687), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x688), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x689), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x579), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x580), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x581), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x582), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x583), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x584), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x585), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x586), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x587), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_MODE[][3] =+{+    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_MODE_COMPACT[][2] =+{+    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x5AF) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x507) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x5B0) }, +    { ZYDIS_DEFINITION(0x1, 0x6E3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x163), ZYDIS_DEFINITION(0x1, 0x164) }, +    { ZYDIS_DEFINITION(0x1, 0x2ED), ZYDIS_DEFINITION(0x1, 0x2EE) }, +    { ZYDIS_DEFINITION(0x1, 0x397), ZYDIS_DEFINITION(0x1, 0x398) }, +    { ZYDIS_DEFINITION(0x1, 0x15F), ZYDIS_DEFINITION(0x1, 0x160) }, +    { ZYDIS_DEFINITION(0x1, 0x161), ZYDIS_DEFINITION(0x1, 0x162) }, +    { ZYDIS_DEFINITION(0x1, 0x2EF), ZYDIS_DEFINITION(0x1, 0x2F0) }, +    { ZYDIS_DEFINITION(0x1, 0x399), ZYDIS_DEFINITION(0x1, 0x39A) }, +    { ZYDIS_DEFINITION(0x1, 0x666), ZYDIS_DEFINITION(0x1, 0x667) }, +    { ZYDIS_DEFINITION(0x1, 0x6A6), ZYDIS_DEFINITION(0x1, 0x6A7) }, +    { ZYDIS_DEFINITION(0x1, 0x2BB), ZYDIS_DEFINITION(0x1, 0x2BC) }, +    { ZYDIS_DEFINITION(0x1, 0x2BE), ZYDIS_DEFINITION(0x1, 0x2BF) }, +    { ZYDIS_DEFINITION(0x0, 0x6E4), ZYDIS_DEFINITION(0x0, 0x6E5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x0), ZYDIS_DEFINITION(0x0, 0x6EC) }, +    { ZYDIS_DEFINITION(0x1, 0x6C), ZYDIS_DEFINITION(0x1, 0x6E) }, +    { ZYDIS_DEFINITION(0x1, 0x74), ZYDIS_DEFINITION(0x1, 0x76) }, +    { ZYDIS_DEFINITION(0x1, 0x78), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x0) }, +    { ZYDIS_DEFINITION(0x1, 0x7D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1) }, +    { ZYDIS_DEFINITION(0x1, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2) }, +    { ZYDIS_DEFINITION(0x1, 0x75), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x3) }, +    { ZYDIS_DEFINITION(0x1, 0x70), ZYDIS_DEFINITION(0x1, 0x72) }, +    { ZYDIS_DEFINITION(0x1, 0x82), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x4) }, +    { ZYDIS_DEFINITION(0x1, 0x80), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x5) }, +    { ZYDIS_DEFINITION(0x1, 0x7A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x6) }, +    { ZYDIS_DEFINITION(0x1, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1) }, +    { ZYDIS_DEFINITION(0x10, 0x308), ZYDIS_DEFINITION(0x10, 0x309) }, +    { ZYDIS_DEFINITION(0x10, 0x30A), ZYDIS_DEFINITION(0x10, 0x30B) }, +    { ZYDIS_DEFINITION(0x10, 0x30C), ZYDIS_DEFINITION(0x10, 0x30D) }, +    { ZYDIS_DEFINITION(0x10, 0x30E), ZYDIS_DEFINITION(0x10, 0x30F) }, +    { ZYDIS_DEFINITION(0x0, 0x6E6), ZYDIS_DEFINITION(0x0, 0x6E7) }, +    { ZYDIS_DEFINITION(0x0, 0x6E8), ZYDIS_DEFINITION(0x0, 0x6E9) }, +    { ZYDIS_DEFINITION(0x1, 0x248), ZYDIS_DEFINITION(0x1, 0x249) }, +    { ZYDIS_DEFINITION(0x1, 0x24E), ZYDIS_DEFINITION(0x1, 0x24F) }, +    { ZYDIS_DEFINITION(0x1, 0x24C), ZYDIS_DEFINITION(0x1, 0x24D) }, +    { ZYDIS_DEFINITION(0x1, 0x32C), ZYDIS_DEFINITION(0x1, 0x32D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F), ZYDIS_DEFINITION(0x1, 0x31C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20), ZYDIS_DEFINITION(0x1, 0x320) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21), ZYDIS_DEFINITION(0x1, 0x31D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22), ZYDIS_DEFINITION(0x1, 0x321) }, +    { ZYDIS_DEFINITION(0x1, 0x71F), ZYDIS_DEFINITION(0x1, 0x721) }, +    { ZYDIS_DEFINITION(0x1, 0x720), ZYDIS_DEFINITION(0x1, 0x722) }, +    { ZYDIS_DEFINITION(0x1, 0x726), ZYDIS_DEFINITION(0x1, 0x728) }, +    { ZYDIS_DEFINITION(0x1, 0x727), ZYDIS_DEFINITION(0x1, 0x729) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23), ZYDIS_DEFINITION(0x1, 0x324) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24), ZYDIS_DEFINITION(0x1, 0x328) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25), ZYDIS_DEFINITION(0x1, 0x325) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26), ZYDIS_DEFINITION(0x1, 0x329) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x0), ZYDIS_DEFINITION(0x9, 0x29F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x1), ZYDIS_DEFINITION(0x9, 0x28B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x2), ZYDIS_DEFINITION(0x9, 0x257) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x3), ZYDIS_DEFINITION(0x9, 0x277) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x4), ZYDIS_DEFINITION(0x9, 0x2AF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x5), ZYDIS_DEFINITION(0x9, 0x29A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x6), ZYDIS_DEFINITION(0x9, 0x25C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x7), ZYDIS_DEFINITION(0x9, 0x27C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x8), ZYDIS_DEFINITION(0x9, 0x2AA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x9), ZYDIS_DEFINITION(0x9, 0x295) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xA), ZYDIS_DEFINITION(0x9, 0x2A4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xB), ZYDIS_DEFINITION(0x9, 0x290) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xC), ZYDIS_DEFINITION(0x9, 0x264) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xD), ZYDIS_DEFINITION(0x9, 0x281) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xE), ZYDIS_DEFINITION(0x9, 0x269) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xF), ZYDIS_DEFINITION(0x9, 0x286) }, +    { ZYDIS_DEFINITION(0x1, 0x5DF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5E0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x72D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x72E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5E2), ZYDIS_DEFINITION(0x1, 0x5E3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F), ZYDIS_DEFINITION(0x1, 0x102) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x5B1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x508) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x5B2) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x509) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x147) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x148) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x0) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x3) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x149) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x60), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x61) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x64) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x90) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x267), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x268) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x289), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2EB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2EE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x310), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x311) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x313), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x314) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x318), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x319) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x363), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x364) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x366), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x367) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x369), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x370) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x372), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x373) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x391), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x392) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x394), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x395) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x398), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x399) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39C) }, +    { ZYDIS_DEFINITION(0x1, 0x37B), ZYDIS_DEFINITION(0x1, 0x62) }, +    { ZYDIS_DEFINITION(0x1, 0x37C), ZYDIS_DEFINITION(0x1, 0x63) }, +    { ZYDIS_DEFINITION(0x8, 0x29B), ZYDIS_DEFINITION(0x8, 0x29C) }, +    { ZYDIS_DEFINITION(0x8, 0x287), ZYDIS_DEFINITION(0x8, 0x288) }, +    { ZYDIS_DEFINITION(0x8, 0x253), ZYDIS_DEFINITION(0x8, 0x254) }, +    { ZYDIS_DEFINITION(0x8, 0x273), ZYDIS_DEFINITION(0x8, 0x274) }, +    { ZYDIS_DEFINITION(0x8, 0x2AB), ZYDIS_DEFINITION(0x8, 0x2AC) }, +    { ZYDIS_DEFINITION(0x8, 0x296), ZYDIS_DEFINITION(0x8, 0x297) }, +    { ZYDIS_DEFINITION(0x8, 0x258), ZYDIS_DEFINITION(0x8, 0x259) }, +    { ZYDIS_DEFINITION(0x8, 0x278), ZYDIS_DEFINITION(0x8, 0x279) }, +    { ZYDIS_DEFINITION(0x8, 0x2A6), ZYDIS_DEFINITION(0x8, 0x2A7) }, +    { ZYDIS_DEFINITION(0x8, 0x291), ZYDIS_DEFINITION(0x8, 0x292) }, +    { ZYDIS_DEFINITION(0x8, 0x2A0), ZYDIS_DEFINITION(0x8, 0x2A1) }, +    { ZYDIS_DEFINITION(0x8, 0x28C), ZYDIS_DEFINITION(0x8, 0x28D) }, +    { ZYDIS_DEFINITION(0x8, 0x260), ZYDIS_DEFINITION(0x8, 0x261) }, +    { ZYDIS_DEFINITION(0x8, 0x27D), ZYDIS_DEFINITION(0x8, 0x27E) }, +    { ZYDIS_DEFINITION(0x8, 0x265), ZYDIS_DEFINITION(0x8, 0x266) }, +    { ZYDIS_DEFINITION(0x8, 0x282), ZYDIS_DEFINITION(0x8, 0x283) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x28) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x3E5) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x12) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x634) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x56) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x6D7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x757) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0xE4) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x29) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x3E6) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x13) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x635) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x57) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0x6D8) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x758) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xD, 0xE5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3AA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3AC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x12, 0x9F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x10) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2B8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x423), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x424), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3EA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3FA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3FC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3FE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x400), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x401), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x436), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x437), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x424), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x425) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x427), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x428) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x429), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x436), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x437) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x438), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x439) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x440), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x441) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x496), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x497) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x602), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x603) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x613), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x630), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x631) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x633), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x634) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x658), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x659) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x671), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x672), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x673), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x674), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x675), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x679), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x681), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x682) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x683), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x684) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x685), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x686) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x695), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x696) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x697), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x698) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x699), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6AA) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2B5) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x246) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x3, 0x2) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x3, 0x1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x618) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x38), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x39) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x10), ZYDIS_DEFINITION(0x9, 0xA2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x11), ZYDIS_DEFINITION(0x9, 0x26C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x12, 0x26D) }, +    { ZYDIS_DEFINITION(0x8, 0x26E), ZYDIS_DEFINITION(0x8, 0x26F) }+};++const ZydisDecoderTreeNode FILTERS_PREFIX_GROUP1[][2] =+{+    { ZYDIS_DEFINITION(0x1, 0x318), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9D) }, +    { ZYDIS_DEFINITION(0x1, 0x319), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x16), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x133) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x144) }+};++const ZydisDecoderTreeNode FILTERS_MODRM_MOD[][4] =+{+    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_MODRM_MOD_COMPACT[][2] =+{+    { ZYDIS_DEFINITION(0x1, 0x1A), ZYDIS_DEFINITION(0x1, 0x1B) }, +    { ZYDIS_DEFINITION(0x1, 0x1C), ZYDIS_DEFINITION(0x1, 0x1D) }, +    { ZYDIS_DEFINITION(0x1, 0x1E), ZYDIS_DEFINITION(0x1, 0x1F) }, +    { ZYDIS_DEFINITION(0x1, 0x20), ZYDIS_DEFINITION(0x1, 0x21) }, +    { ZYDIS_DEFINITION(0x1, 0x3D7), ZYDIS_DEFINITION(0x1, 0x3D8) }, +    { ZYDIS_DEFINITION(0x1, 0x3D9), ZYDIS_DEFINITION(0x1, 0x3DA) }, +    { ZYDIS_DEFINITION(0x1, 0x3DB), ZYDIS_DEFINITION(0x1, 0x3DC) }, +    { ZYDIS_DEFINITION(0x1, 0x3DD), ZYDIS_DEFINITION(0x1, 0x3DE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1) }, +    { ZYDIS_DEFINITION(0x1, 0x2B1), ZYDIS_DEFINITION(0x1, 0x2B2) }, +    { ZYDIS_DEFINITION(0x1, 0x2D3), ZYDIS_DEFINITION(0x1, 0x2D4) }, +    { ZYDIS_DEFINITION(0x1, 0x3A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0x2A), ZYDIS_DEFINITION(0x1, 0x2B) }, +    { ZYDIS_DEFINITION(0x1, 0x28), ZYDIS_DEFINITION(0x1, 0x29) }, +    { ZYDIS_DEFINITION(0x1, 0x4), ZYDIS_DEFINITION(0x1, 0x5) }, +    { ZYDIS_DEFINITION(0x1, 0x2), ZYDIS_DEFINITION(0x1, 0x3) }, +    { ZYDIS_DEFINITION(0x1, 0x18), ZYDIS_DEFINITION(0x1, 0x19) }, +    { ZYDIS_DEFINITION(0x1, 0x1A), ZYDIS_DEFINITION(0x1, 0x1B) }, +    { ZYDIS_DEFINITION(0x1, 0xC), ZYDIS_DEFINITION(0x1, 0xD) }, +    { ZYDIS_DEFINITION(0x1, 0x14), ZYDIS_DEFINITION(0x1, 0x15) }, +    { ZYDIS_DEFINITION(0x1, 0x1C), ZYDIS_DEFINITION(0x1, 0x1D) }, +    { ZYDIS_DEFINITION(0x1, 0x22), ZYDIS_DEFINITION(0x1, 0x23) }, +    { ZYDIS_DEFINITION(0x1, 0x24), ZYDIS_DEFINITION(0x1, 0x25) }, +    { ZYDIS_DEFINITION(0x1, 0x8), ZYDIS_DEFINITION(0x1, 0x9) }, +    { ZYDIS_DEFINITION(0x1, 0xE), ZYDIS_DEFINITION(0x1, 0xF) }, +    { ZYDIS_DEFINITION(0x1, 0x12), ZYDIS_DEFINITION(0x1, 0x13) }, +    { ZYDIS_DEFINITION(0x1, 0x10), ZYDIS_DEFINITION(0x1, 0x11) }, +    { ZYDIS_DEFINITION(0x1, 0x20), ZYDIS_DEFINITION(0x1, 0x21) }, +    { ZYDIS_DEFINITION(0x1, 0x26), ZYDIS_DEFINITION(0x1, 0x27) }, +    { ZYDIS_DEFINITION(0x1, 0x6), ZYDIS_DEFINITION(0x1, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0xA), ZYDIS_DEFINITION(0x1, 0xB) }, +    { ZYDIS_DEFINITION(0x1, 0x16), ZYDIS_DEFINITION(0x1, 0x17) }, +    { ZYDIS_DEFINITION(0x1, 0x1E), ZYDIS_DEFINITION(0x1, 0x1F) }, +    { ZYDIS_DEFINITION(0x1, 0x2C), ZYDIS_DEFINITION(0x1, 0x2D) }, +    { ZYDIS_DEFINITION(0x1, 0x2E), ZYDIS_DEFINITION(0x1, 0x2F) }, +    { ZYDIS_DEFINITION(0x1, 0x0), ZYDIS_DEFINITION(0x1, 0x1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x9) }, +    { ZYDIS_DEFINITION(0x1, 0x3AD), ZYDIS_DEFINITION(0x1, 0x3AE) }, +    { ZYDIS_DEFINITION(0x1, 0x3AF), ZYDIS_DEFINITION(0x1, 0x3B0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11) }, +    { ZYDIS_DEFINITION(0x1, 0x3B2), ZYDIS_DEFINITION(0x1, 0x3B3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13) }, +    { ZYDIS_DEFINITION(0x1, 0x3B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_CLDEMOTE, 0x0) }, +    { ZYDIS_DEFINITION(0x1, 0x3B8), ZYDIS_DEFINITION(0x1, 0x3B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15), ZYDIS_DEFINITION(0x1, 0x3BA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0xD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x20) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x22) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x23), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x24) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x27) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x28), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x29) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x2F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x31) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x32), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x33) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x35) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x37) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x38), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x39) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x3F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x40), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x41) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x42), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x43) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x44), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x45) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x47) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x49) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x4F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x51) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x53) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x55) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x56), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x57) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x58), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x59) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x60) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x61), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x62) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x64) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x66) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x68) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x6F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x70) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x72) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x73), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x74) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x75), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x76) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x77), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x78) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x79), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x7F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x80) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x81) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x82) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x83) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x84), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x85) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x86), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x87) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x88), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x89) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x8F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x90), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x91) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x92), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x93) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x94), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x95) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x96), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x97) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x98), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x99) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1, 0x0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x9E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1, 0x1) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xA9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xAA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xAC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xAE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xAF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xBA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xBB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xBC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xBE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xCA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xCC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xCE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xD9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xDA) }, +    { ZYDIS_DEFINITION(0x1, 0xCE), ZYDIS_DEFINITION(0x1, 0xCF) }, +    { ZYDIS_DEFINITION(0x1, 0xC6), ZYDIS_DEFINITION(0x1, 0xC7) }, +    { ZYDIS_DEFINITION(0x1, 0xB6), ZYDIS_DEFINITION(0x1, 0xB7) }, +    { ZYDIS_DEFINITION(0x1, 0xBE), ZYDIS_DEFINITION(0x1, 0xBF) }, +    { ZYDIS_DEFINITION(0x1, 0xD4), ZYDIS_DEFINITION(0x1, 0xD5) }, +    { ZYDIS_DEFINITION(0x1, 0xCC), ZYDIS_DEFINITION(0x1, 0xCD) }, +    { ZYDIS_DEFINITION(0x1, 0xB8), ZYDIS_DEFINITION(0x1, 0xB9) }, +    { ZYDIS_DEFINITION(0x1, 0xC0), ZYDIS_DEFINITION(0x1, 0xC1) }, +    { ZYDIS_DEFINITION(0x1, 0xD2), ZYDIS_DEFINITION(0x1, 0xD3) }, +    { ZYDIS_DEFINITION(0x1, 0xCA), ZYDIS_DEFINITION(0x1, 0xCB) }, +    { ZYDIS_DEFINITION(0x1, 0xD0), ZYDIS_DEFINITION(0x1, 0xD1) }, +    { ZYDIS_DEFINITION(0x1, 0xC8), ZYDIS_DEFINITION(0x1, 0xC9) }, +    { ZYDIS_DEFINITION(0x1, 0xBA), ZYDIS_DEFINITION(0x1, 0xBB) }, +    { ZYDIS_DEFINITION(0x1, 0xC2), ZYDIS_DEFINITION(0x1, 0xC3) }, +    { ZYDIS_DEFINITION(0x1, 0xBC), ZYDIS_DEFINITION(0x1, 0xBD) }, +    { ZYDIS_DEFINITION(0x1, 0xC4), ZYDIS_DEFINITION(0x1, 0xC5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xDB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xDC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xDD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xDF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xE9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xEA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xEB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xEC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xED) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xEE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xEF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xF9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xFA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xFB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xFC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xFD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xFE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0xFF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x100), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x101) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x102), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x103) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x104), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x105) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x106), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x107) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x108), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x109) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x10F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x110), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x111) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x112), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x113) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x114), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x115) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x116), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x117) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x119) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x11F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x120) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x121), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x122) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x123), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x124) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x126), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x127) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x128), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x129) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x130), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x131) }, +    { ZYDIS_DEFINITION(0x1, 0x65C), ZYDIS_DEFINITION(0x1, 0x65D) }, +    { ZYDIS_DEFINITION(0x1, 0x654), ZYDIS_DEFINITION(0x1, 0x655) }, +    { ZYDIS_DEFINITION(0x1, 0x644), ZYDIS_DEFINITION(0x1, 0x645) }, +    { ZYDIS_DEFINITION(0x1, 0x64C), ZYDIS_DEFINITION(0x1, 0x64D) }, +    { ZYDIS_DEFINITION(0x1, 0x663), ZYDIS_DEFINITION(0x1, 0x664) }, +    { ZYDIS_DEFINITION(0x1, 0x65A), ZYDIS_DEFINITION(0x1, 0x65B) }, +    { ZYDIS_DEFINITION(0x1, 0x646), ZYDIS_DEFINITION(0x1, 0x647) }, +    { ZYDIS_DEFINITION(0x1, 0x64E), ZYDIS_DEFINITION(0x1, 0x64F) }, +    { ZYDIS_DEFINITION(0x1, 0x660), ZYDIS_DEFINITION(0x1, 0x661) }, +    { ZYDIS_DEFINITION(0x1, 0x658), ZYDIS_DEFINITION(0x1, 0x659) }, +    { ZYDIS_DEFINITION(0x1, 0x65E), ZYDIS_DEFINITION(0x1, 0x65F) }, +    { ZYDIS_DEFINITION(0x1, 0x656), ZYDIS_DEFINITION(0x1, 0x657) }, +    { ZYDIS_DEFINITION(0x1, 0x648), ZYDIS_DEFINITION(0x1, 0x649) }, +    { ZYDIS_DEFINITION(0x1, 0x650), ZYDIS_DEFINITION(0x1, 0x651) }, +    { ZYDIS_DEFINITION(0x1, 0x64A), ZYDIS_DEFINITION(0x1, 0x64B) }, +    { ZYDIS_DEFINITION(0x1, 0x652), ZYDIS_DEFINITION(0x1, 0x653) }, +    { ZYDIS_DEFINITION(0x1, 0x8F), ZYDIS_DEFINITION(0x1, 0x90) }, +    { ZYDIS_DEFINITION(0xB, 0x68E), ZYDIS_DEFINITION(0xB, 0x68F) }, +    { ZYDIS_DEFINITION(0x1, 0x690), ZYDIS_DEFINITION(0x1, 0x691) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x132), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1, 0x2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x9B), ZYDIS_DEFINITION(0x1, 0x9C) }, +    { ZYDIS_DEFINITION(0xB, 0x69E), ZYDIS_DEFINITION(0xB, 0x69F) }, +    { ZYDIS_DEFINITION(0x1, 0x6A0), ZYDIS_DEFINITION(0x1, 0x6A1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x134), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x135) }, +    { ZYDIS_DEFINITION(0x1, 0x224), ZYDIS_DEFINITION(0x1, 0x225) }, +    { ZYDIS_DEFINITION(0x1, 0xFC), ZYDIS_DEFINITION(0x1, 0xFD) }, +    { ZYDIS_DEFINITION(0x1, 0xFE), ZYDIS_DEFINITION(0x1, 0xFF) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2D5) }, +    { ZYDIS_DEFINITION(0x1, 0x97), ZYDIS_DEFINITION(0x1, 0x98) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2BA) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2BD) }, +    { ZYDIS_DEFINITION(0x1, 0x385), ZYDIS_DEFINITION(0x1, 0x386) }, +    { ZYDIS_DEFINITION(0x1, 0x387), ZYDIS_DEFINITION(0x1, 0x388) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x136), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x137) }, +    { ZYDIS_DEFINITION(0x1, 0x705), ZYDIS_DEFINITION(0x1, 0x706) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x20) }, +    { ZYDIS_DEFINITION(0x1, 0x95), ZYDIS_DEFINITION(0x1, 0x96) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x138), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x139) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13B) }, +    { ZYDIS_DEFINITION(0x1, 0x377), ZYDIS_DEFINITION(0x1, 0x378) }, +    { ZYDIS_DEFINITION(0x1, 0x379), ZYDIS_DEFINITION(0x1, 0x37A) }, +    { ZYDIS_DEFINITION(0x1, 0x736), ZYDIS_DEFINITION(0x1, 0x737) }, +    { ZYDIS_DEFINITION(0x1, 0x738), ZYDIS_DEFINITION(0x1, 0x739) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x13F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x140) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x141), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x142), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x143) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_PREFIX_GROUP1, 0x3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x145) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x147) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x148), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x149) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x150), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x151) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x152), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x153) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x154), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x155), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x156) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x157), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x158) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x159), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x15F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x160) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x161), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x162) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x163), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x164) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x165), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x166) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x167), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x168) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x169), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x16F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x170) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x171), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x172) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x173) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x174), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x175) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x176), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x177) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x178), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x179) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x17F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x180), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x181) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x182), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x183) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x184) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x185), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x186) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x187), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x188) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x189), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x18F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x190) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x191), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x192), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x193) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x194), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x195) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x196), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x197) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x198), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x199) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x19F) }, +    { ZYDIS_DEFINITION(0x1, 0x703), ZYDIS_DEFINITION(0x1, 0x704) }, +    { ZYDIS_DEFINITION(0x1, 0x4), ZYDIS_DEFINITION(0x1, 0x5) }, +    { ZYDIS_DEFINITION(0x1, 0x6), ZYDIS_DEFINITION(0x1, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0x8), ZYDIS_DEFINITION(0x1, 0x9) }, +    { ZYDIS_DEFINITION(0x1, 0xA), ZYDIS_DEFINITION(0x1, 0xB) }, +    { ZYDIS_DEFINITION(0x1, 0x626), ZYDIS_DEFINITION(0x1, 0x627) }, +    { ZYDIS_DEFINITION(0x1, 0x628), ZYDIS_DEFINITION(0x1, 0x629) }, +    { ZYDIS_DEFINITION(0x1, 0x62A), ZYDIS_DEFINITION(0x1, 0x62B) }, +    { ZYDIS_DEFINITION(0x1, 0x62C), ZYDIS_DEFINITION(0x1, 0x62D) }, +    { ZYDIS_DEFINITION(0x1, 0x48), ZYDIS_DEFINITION(0x1, 0x49) }, +    { ZYDIS_DEFINITION(0x1, 0x4A), ZYDIS_DEFINITION(0x1, 0x4B) }, +    { ZYDIS_DEFINITION(0x1, 0x4C), ZYDIS_DEFINITION(0x1, 0x4D) }, +    { ZYDIS_DEFINITION(0x1, 0x4E), ZYDIS_DEFINITION(0x1, 0x4F) }, +    { ZYDIS_DEFINITION(0x1, 0x6C9), ZYDIS_DEFINITION(0x1, 0x6CA) }, +    { ZYDIS_DEFINITION(0x1, 0x6CB), ZYDIS_DEFINITION(0x1, 0x6CC) }, +    { ZYDIS_DEFINITION(0x1, 0x6CD), ZYDIS_DEFINITION(0x1, 0x6CE) }, +    { ZYDIS_DEFINITION(0x1, 0x6CF), ZYDIS_DEFINITION(0x1, 0x6D0) }, +    { ZYDIS_DEFINITION(0x1, 0x749), ZYDIS_DEFINITION(0x1, 0x74A) }, +    { ZYDIS_DEFINITION(0x1, 0x74B), ZYDIS_DEFINITION(0x1, 0x74C) }, +    { ZYDIS_DEFINITION(0x1, 0x74D), ZYDIS_DEFINITION(0x1, 0x74E) }, +    { ZYDIS_DEFINITION(0x1, 0x74F), ZYDIS_DEFINITION(0x1, 0x750) }, +    { ZYDIS_DEFINITION(0x1, 0xD6), ZYDIS_DEFINITION(0x1, 0xD7) }, +    { ZYDIS_DEFINITION(0x1, 0xD8), ZYDIS_DEFINITION(0x1, 0xD9) }, +    { ZYDIS_DEFINITION(0x1, 0xDA), ZYDIS_DEFINITION(0x1, 0xDB) }, +    { ZYDIS_DEFINITION(0x1, 0xDC), ZYDIS_DEFINITION(0x1, 0xDD) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x63) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x60), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x61) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x63) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x64), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x65) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x66), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x67) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x68), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x69) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x70) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x71) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x72), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x73) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x74), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x75) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x76) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x77) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x78), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x79) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x80) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x81), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x82) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x83), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x84) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x86) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x87), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x88) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x89), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x90) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x91), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x92) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x93), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x94) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x95), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x96) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x97), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x98) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x99), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x51) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x53) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x56) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x57), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x58) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xAA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xAC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x28) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x29), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x80), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x81) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xBB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xBC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xBE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xCA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x96), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x97) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x98), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xCC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xCE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xAA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xAE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xAF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xDA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xBE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xDB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xDC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xDD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xCA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xDF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xCE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xDC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xDD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xDF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xEA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xEB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xEC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xED) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xEB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xEC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xEE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xEF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xEE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xEF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xFA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xFB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xFC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xFD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xFE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xFF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x100), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x101) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x102), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x103) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x104) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x105) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x106), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x107) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x108), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x109) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x111), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x112) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x113), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x114) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x115), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x116) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x117), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x118) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x119), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x110), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x111) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x112), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x113) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x114) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x115), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x116) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x117), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x118) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x119), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x130) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x131), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x132) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x133), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x134) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x135), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x136) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x120) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x121), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x122) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x140), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x141) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x123), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x124) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x144), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x145) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x125), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x126) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x148), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x149) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x127), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x128) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x129), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x130) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x131), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x132) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x133), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x134) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x135), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x136) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x137), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x138) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x139), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x140) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x141), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x142) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x143), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x144) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x145), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x146) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x147), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x148) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x149), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x150) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x151), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x152) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x153), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x154) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x155), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x156) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x157), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x158) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x159), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x160) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x161), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x162) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x163), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x164) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x165), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x166) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x167), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x168) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x169), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x170), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x171) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x172), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x173) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x174), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x175) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x176), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x177) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x178), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x179) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x180), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x181) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x182), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x183) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x13) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x14) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x15) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x16) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x188), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x189) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x190), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x191) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x192), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x193) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x194), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x195) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x196), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x197) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x198), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x199) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x17) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x18) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x19) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1AB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1AD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1AF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1BB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1BF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1CB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1CD) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1DA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1DB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1DC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1DD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1DE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1DF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x250), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x251) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x252), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x253) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1EB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1EC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1ED) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1EE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1EF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x260), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x261) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x262), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x263) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x264), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x265) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1F9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1FB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1FD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1FF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x200), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x201) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x202), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x203) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x284), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x285) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x204), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x205) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x206), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x207) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x208), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x209) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x20F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x210), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x211) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x212), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x213) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x214), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x215) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x216), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x217) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x218), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x219) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x21F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x220), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x221) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x222), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x223) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x224), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x225) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x226), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x227) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x228), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x229) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x22F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x230), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x231) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x232), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x233) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x234), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x235) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x236), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x237) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x238), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x239) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x23F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x240), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x241) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x242), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x243) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x244), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x245) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x246), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x247) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x248), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x249) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x24F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x250), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x251) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x252), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x253) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x254), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x255) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x256), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x257) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x258), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x259) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x307), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x308) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x25F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x260), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x261) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x262), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x263) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x264), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x265) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x266), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x267) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x268), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x269) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x270), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x271) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x272), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x273) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x274), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x275) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x276), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x277) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x278), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x279) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x280), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x281) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x282), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x283) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x284), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x285) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x286), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x287) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x288), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x289) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x290) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x291), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x292) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x293), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x294) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x295), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x296) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x297), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x298) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x299), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2AB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2AD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2AF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2BB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x388), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x389) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2BF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2CB) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2CC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2CD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2CE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2CF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D1) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D4) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D5) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D7) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2DA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2DC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2DE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E4) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E5) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2EA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2EC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2ED) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2EE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2EF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2F9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2FB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x31) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x302), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x303) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x304) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x305), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x306) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x307), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x308) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x309), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x310) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x311), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x312) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x313) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x314) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x315) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x316) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x317), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x318) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x319), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x320) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x321), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x322) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x323), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x324) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x325), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x326) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x327), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x328) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x329), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x330) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x331), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x332) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x333), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x334) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x335), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x336) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x337) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x338) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x339) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x340) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x341), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x342) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x343), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x344) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x345), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x346) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x347), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x348) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x349), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x350) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x351), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x352) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x353), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x354) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x355), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x356) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x23) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x24) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x359), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x360) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x25) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x26) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x363), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x364) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x365), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x366) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x367), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x368) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x369), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x370) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x371), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x372) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x373), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x374) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x375), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x376) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x377), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x378) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x32) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x380) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x381), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x382) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x383), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x384) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x385), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x386) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x387), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x388) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x389), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38A) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x390) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x391), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x392) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x393), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x394) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x395), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x396) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x397), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x398) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x399), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A1) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x33) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A4) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x34) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x86) }, +    { ZYDIS_DEFINITION(0xE, 0x21C), ZYDIS_DEFINITION(0xE, 0x21D) }, +    { ZYDIS_DEFINITION(0xD, 0x21E), ZYDIS_DEFINITION(0xD, 0x21F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x36) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x37), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x38) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3C) }, +    { ZYDIS_DEFINITION(0x1, 0x6ED), ZYDIS_DEFINITION(0x1, 0x6EE) }, +    { ZYDIS_DEFINITION(0x1, 0x6EF), ZYDIS_DEFINITION(0x1, 0x6F0) }, +    { ZYDIS_DEFINITION(0x1, 0x73B), ZYDIS_DEFINITION(0x1, 0x73C) }, +    { ZYDIS_DEFINITION(0x1, 0x73D), ZYDIS_DEFINITION(0x1, 0x73E) }, +    { ZYDIS_DEFINITION(0x1, 0x2F2), ZYDIS_DEFINITION(0x1, 0x2F3) }, +    { ZYDIS_DEFINITION(0x1, 0x2F4), ZYDIS_DEFINITION(0x1, 0x2F5) }, +    { ZYDIS_DEFINITION(0x1, 0x2F6), ZYDIS_DEFINITION(0x1, 0x2F7) }, +    { ZYDIS_DEFINITION(0x1, 0x2F8), ZYDIS_DEFINITION(0x1, 0x2F9) }, +    { ZYDIS_DEFINITION(0x1, 0x2FA), ZYDIS_DEFINITION(0x1, 0x2FB) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2B6) }, +    { ZYDIS_DEFINITION(0x1, 0x2FC), ZYDIS_DEFINITION(0x1, 0x2FD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3AA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3AC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3AE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3BA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3BB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3BC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3BE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3BF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3CA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3CB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3CC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3CD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3CE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3CF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3DA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3DC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3DE) }, +    { ZYDIS_DEFINITION(0x1, 0x4), ZYDIS_DEFINITION(0x1, 0x5) }, +    { ZYDIS_DEFINITION(0x1, 0x6), ZYDIS_DEFINITION(0x1, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0x18), ZYDIS_DEFINITION(0x1, 0x19) }, +    { ZYDIS_DEFINITION(0x1, 0x1A), ZYDIS_DEFINITION(0x1, 0x1B) }, +    { ZYDIS_DEFINITION(0x1, 0x14), ZYDIS_DEFINITION(0x1, 0x15) }, +    { ZYDIS_DEFINITION(0x1, 0x16), ZYDIS_DEFINITION(0x1, 0x17) }, +    { ZYDIS_DEFINITION(0x1, 0x2A), ZYDIS_DEFINITION(0x1, 0x2B) }, +    { ZYDIS_DEFINITION(0x1, 0x2C), ZYDIS_DEFINITION(0x1, 0x2D) }, +    { ZYDIS_DEFINITION(0x1, 0xC), ZYDIS_DEFINITION(0x1, 0xD) }, +    { ZYDIS_DEFINITION(0x1, 0xE), ZYDIS_DEFINITION(0x1, 0xF) }, +    { ZYDIS_DEFINITION(0x1, 0x1C), ZYDIS_DEFINITION(0x1, 0x1D) }, +    { ZYDIS_DEFINITION(0x1, 0x1E), ZYDIS_DEFINITION(0x1, 0x1F) }, +    { ZYDIS_DEFINITION(0x1, 0x26), ZYDIS_DEFINITION(0x1, 0x27) }, +    { ZYDIS_DEFINITION(0x1, 0x28), ZYDIS_DEFINITION(0x1, 0x29) }, +    { ZYDIS_DEFINITION(0x1, 0x10), ZYDIS_DEFINITION(0x1, 0x11) }, +    { ZYDIS_DEFINITION(0x1, 0x12), ZYDIS_DEFINITION(0x1, 0x13) }, +    { ZYDIS_DEFINITION(0x1, 0x8), ZYDIS_DEFINITION(0x1, 0x9) }, +    { ZYDIS_DEFINITION(0x1, 0xA), ZYDIS_DEFINITION(0x1, 0xB) }, +    { ZYDIS_DEFINITION(0x1, 0x20), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x25), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3EA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3EC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3EE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3FA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3FC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3FE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3FF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x400) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x401), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x402) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x403), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x404) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x405), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x406) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x407), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x408) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x409), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x410) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x411), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x412) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x413), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x414) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x415), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x416) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x417), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x418) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x419), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x420) }, +    { ZYDIS_DEFINITION(0xC, 0x0), ZYDIS_DEFINITION(0xC, 0x1) }, +    { ZYDIS_DEFINITION(0xC, 0x2), ZYDIS_DEFINITION(0xC, 0x3) }, +    { ZYDIS_DEFINITION(0xC, 0x21), ZYDIS_DEFINITION(0xC, 0x22) }, +    { ZYDIS_DEFINITION(0xC, 0x23), ZYDIS_DEFINITION(0xC, 0x24) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x43), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x44) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x45), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x46) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB4) }, +    { ZYDIS_DEFINITION(0x1, 0x36D), ZYDIS_DEFINITION(0x1, 0x36F) }, +    { ZYDIS_DEFINITION(0x1, 0x36E), ZYDIS_DEFINITION(0x1, 0x370) }, +    { ZYDIS_DEFINITION(0x1, 0x371), ZYDIS_DEFINITION(0x1, 0x373) }, +    { ZYDIS_DEFINITION(0x1, 0x372), ZYDIS_DEFINITION(0x1, 0x374) }, +    { ZYDIS_DEFINITION(0x1, 0x337), ZYDIS_DEFINITION(0x1, 0x33F) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x340) }, +    { ZYDIS_DEFINITION(0x1, 0x62F), ZYDIS_DEFINITION(0x1, 0x631) }, +    { ZYDIS_DEFINITION(0x1, 0x630), ZYDIS_DEFINITION(0x1, 0x632) }, +    { ZYDIS_DEFINITION(0x1, 0x627), ZYDIS_DEFINITION(0x1, 0x629) }, +    { ZYDIS_DEFINITION(0x1, 0x628), ZYDIS_DEFINITION(0x1, 0x62A) }, +    { ZYDIS_DEFINITION(0x1, 0x33C), ZYDIS_DEFINITION(0x1, 0x33A) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x33B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x52D) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x526) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x527) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x528) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x52C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x529) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x52A) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x52B) }, +    { ZYDIS_DEFINITION(0x1, 0x313), ZYDIS_DEFINITION(0x1, 0x315) }, +    { ZYDIS_DEFINITION(0x1, 0x314), ZYDIS_DEFINITION(0x1, 0x316) }, +    { ZYDIS_DEFINITION(0x1, 0x317), ZYDIS_DEFINITION(0x1, 0x319) }, +    { ZYDIS_DEFINITION(0x1, 0x318), ZYDIS_DEFINITION(0x1, 0x31A) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x34B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x34C) }, +    { ZYDIS_DEFINITION(0x1, 0x621), ZYDIS_DEFINITION(0x1, 0x622) }, +    { ZYDIS_DEFINITION(0x1, 0x113), ZYDIS_DEFINITION(0x1, 0x114) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x425), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x426), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x427), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x428), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x429), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x430), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x431), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x432), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x433), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x434), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x435), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x343), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x344), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x602), ZYDIS_DEFINITION(0x1, 0x604) }, +    { ZYDIS_DEFINITION(0x1, 0x603), ZYDIS_DEFINITION(0x1, 0x605) }, +    { ZYDIS_DEFINITION(0x1, 0x5F0), ZYDIS_DEFINITION(0x1, 0x5F2) }, +    { ZYDIS_DEFINITION(0x1, 0x5F1), ZYDIS_DEFINITION(0x1, 0x5F3) }, +    { ZYDIS_DEFINITION(0x1, 0x5DE), ZYDIS_DEFINITION(0x1, 0x5E0) }, +    { ZYDIS_DEFINITION(0x1, 0x5DF), ZYDIS_DEFINITION(0x1, 0x5E1) }, +    { ZYDIS_DEFINITION(0x1, 0xE9), ZYDIS_DEFINITION(0x1, 0xEB) }, +    { ZYDIS_DEFINITION(0x1, 0xEA), ZYDIS_DEFINITION(0x1, 0xEC) }, +    { ZYDIS_DEFINITION(0x1, 0xE1), ZYDIS_DEFINITION(0x1, 0xE3) }, +    { ZYDIS_DEFINITION(0x1, 0xE2), ZYDIS_DEFINITION(0x1, 0xE4) }, +    { ZYDIS_DEFINITION(0x1, 0x389), ZYDIS_DEFINITION(0x1, 0x38B) }, +    { ZYDIS_DEFINITION(0x1, 0x38A), ZYDIS_DEFINITION(0x1, 0x38C) }, +    { ZYDIS_DEFINITION(0x1, 0x637), ZYDIS_DEFINITION(0x1, 0x639) }, +    { ZYDIS_DEFINITION(0x1, 0x638), ZYDIS_DEFINITION(0x1, 0x63A) }, +    { ZYDIS_DEFINITION(0x1, 0xB9), ZYDIS_DEFINITION(0x1, 0xBB) }, +    { ZYDIS_DEFINITION(0x1, 0xBA), ZYDIS_DEFINITION(0x1, 0xBC) }, +    { ZYDIS_DEFINITION(0x1, 0x37D), ZYDIS_DEFINITION(0x1, 0x37F) }, +    { ZYDIS_DEFINITION(0x1, 0x37E), ZYDIS_DEFINITION(0x1, 0x380) }, +    { ZYDIS_DEFINITION(0x1, 0x12D), ZYDIS_DEFINITION(0x1, 0x12F) }, +    { ZYDIS_DEFINITION(0x1, 0x12E), ZYDIS_DEFINITION(0x1, 0x130) }, +    { ZYDIS_DEFINITION(0x1, 0x119), ZYDIS_DEFINITION(0x1, 0x11B) }, +    { ZYDIS_DEFINITION(0x1, 0x11A), ZYDIS_DEFINITION(0x1, 0x11C) }, +    { ZYDIS_DEFINITION(0x1, 0x60F), ZYDIS_DEFINITION(0x1, 0x611) }, +    { ZYDIS_DEFINITION(0x1, 0x610), ZYDIS_DEFINITION(0x1, 0x612) }, +    { ZYDIS_DEFINITION(0x1, 0x303), ZYDIS_DEFINITION(0x1, 0x305) }, +    { ZYDIS_DEFINITION(0x1, 0x304), ZYDIS_DEFINITION(0x1, 0x306) }, +    { ZYDIS_DEFINITION(0x1, 0x169), ZYDIS_DEFINITION(0x1, 0x16B) }, +    { ZYDIS_DEFINITION(0x1, 0x16A), ZYDIS_DEFINITION(0x1, 0x16C) }, +    { ZYDIS_DEFINITION(0x1, 0x2F7), ZYDIS_DEFINITION(0x1, 0x2F9) }, +    { ZYDIS_DEFINITION(0x1, 0x2F8), ZYDIS_DEFINITION(0x1, 0x2FA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x438), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x439) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x43F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x440), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x441), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x442), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x443), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x444), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x445), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2E9) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x60A) }, +    { ZYDIS_DEFINITION(0xB, 0x109), ZYDIS_DEFINITION(0xB, 0x10B) }, +    { ZYDIS_DEFINITION(0xB, 0x10A), ZYDIS_DEFINITION(0xB, 0x10C) }, +    { ZYDIS_DEFINITION(0xB, 0x5FA), ZYDIS_DEFINITION(0xB, 0x5FC) }, +    { ZYDIS_DEFINITION(0xB, 0x5FB), ZYDIS_DEFINITION(0xB, 0x5FD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x446), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x447) }, +    { ZYDIS_DEFINITION(0x1, 0x4), ZYDIS_DEFINITION(0x1, 0x5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x448), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x449) }, +    { ZYDIS_DEFINITION(0x1, 0x1C), ZYDIS_DEFINITION(0x1, 0x1D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44B) }, +    { ZYDIS_DEFINITION(0x1, 0x16), ZYDIS_DEFINITION(0x1, 0x17) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44D) }, +    { ZYDIS_DEFINITION(0x1, 0x10), ZYDIS_DEFINITION(0x1, 0x11) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x44F) }, +    { ZYDIS_DEFINITION(0x1, 0x22), ZYDIS_DEFINITION(0x1, 0x23) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x450), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x451) }, +    { ZYDIS_DEFINITION(0x1, 0xA), ZYDIS_DEFINITION(0x1, 0xB) }, +    { ZYDIS_DEFINITION(0x1, 0x365), ZYDIS_DEFINITION(0x1, 0x367) }, +    { ZYDIS_DEFINITION(0x1, 0x366), ZYDIS_DEFINITION(0x1, 0x368) }, +    { ZYDIS_DEFINITION(0x1, 0x369), ZYDIS_DEFINITION(0x1, 0x36B) }, +    { ZYDIS_DEFINITION(0x1, 0x36A), ZYDIS_DEFINITION(0x1, 0x36C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x33D) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x33E) }, +    { ZYDIS_DEFINITION(0x1, 0x62B), ZYDIS_DEFINITION(0x1, 0x62D) }, +    { ZYDIS_DEFINITION(0x1, 0x62C), ZYDIS_DEFINITION(0x1, 0x62E) }, +    { ZYDIS_DEFINITION(0x1, 0x623), ZYDIS_DEFINITION(0x1, 0x625) }, +    { ZYDIS_DEFINITION(0x1, 0x624), ZYDIS_DEFINITION(0x1, 0x626) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x338) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x339) }, +    { ZYDIS_DEFINITION(0x1, 0x30B), ZYDIS_DEFINITION(0x1, 0x30D) }, +    { ZYDIS_DEFINITION(0x1, 0x30C), ZYDIS_DEFINITION(0x1, 0x30E) }, +    { ZYDIS_DEFINITION(0x1, 0x30F), ZYDIS_DEFINITION(0x1, 0x311) }, +    { ZYDIS_DEFINITION(0x1, 0x310), ZYDIS_DEFINITION(0x1, 0x312) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x349) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x34A) }, +    { ZYDIS_DEFINITION(0x1, 0x61F), ZYDIS_DEFINITION(0x1, 0x620) }, +    { ZYDIS_DEFINITION(0x1, 0x111), ZYDIS_DEFINITION(0x1, 0x112) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x452), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x453), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x454), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x455), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x456), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x457), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x458), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x459), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x341), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x342), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5FE), ZYDIS_DEFINITION(0x1, 0x600) }, +    { ZYDIS_DEFINITION(0x1, 0x5FF), ZYDIS_DEFINITION(0x1, 0x601) }, +    { ZYDIS_DEFINITION(0x1, 0xE5), ZYDIS_DEFINITION(0x1, 0xE7) }, +    { ZYDIS_DEFINITION(0x1, 0xE6), ZYDIS_DEFINITION(0x1, 0xE8) }, +    { ZYDIS_DEFINITION(0x1, 0xDD), ZYDIS_DEFINITION(0x1, 0xDF) }, +    { ZYDIS_DEFINITION(0x1, 0xDE), ZYDIS_DEFINITION(0x1, 0xE0) }, +    { ZYDIS_DEFINITION(0x1, 0x385), ZYDIS_DEFINITION(0x1, 0x387) }, +    { ZYDIS_DEFINITION(0x1, 0x386), ZYDIS_DEFINITION(0x1, 0x388) }, +    { ZYDIS_DEFINITION(0x1, 0x633), ZYDIS_DEFINITION(0x1, 0x635) }, +    { ZYDIS_DEFINITION(0x1, 0x634), ZYDIS_DEFINITION(0x1, 0x636) }, +    { ZYDIS_DEFINITION(0x1, 0xB5), ZYDIS_DEFINITION(0x1, 0xB7) }, +    { ZYDIS_DEFINITION(0x1, 0xB6), ZYDIS_DEFINITION(0x1, 0xB8) }, +    { ZYDIS_DEFINITION(0x1, 0x379), ZYDIS_DEFINITION(0x1, 0x37B) }, +    { ZYDIS_DEFINITION(0x1, 0x37A), ZYDIS_DEFINITION(0x1, 0x37C) }, +    { ZYDIS_DEFINITION(0x1, 0x121), ZYDIS_DEFINITION(0x1, 0x123) }, +    { ZYDIS_DEFINITION(0x1, 0x122), ZYDIS_DEFINITION(0x1, 0x124) }, +    { ZYDIS_DEFINITION(0x1, 0x129), ZYDIS_DEFINITION(0x1, 0x12B) }, +    { ZYDIS_DEFINITION(0x1, 0x12A), ZYDIS_DEFINITION(0x1, 0x12C) }, +    { ZYDIS_DEFINITION(0x1, 0x60B), ZYDIS_DEFINITION(0x1, 0x60D) }, +    { ZYDIS_DEFINITION(0x1, 0x60C), ZYDIS_DEFINITION(0x1, 0x60E) }, +    { ZYDIS_DEFINITION(0x1, 0x2FF), ZYDIS_DEFINITION(0x1, 0x301) }, +    { ZYDIS_DEFINITION(0x1, 0x300), ZYDIS_DEFINITION(0x1, 0x302) }, +    { ZYDIS_DEFINITION(0x1, 0x165), ZYDIS_DEFINITION(0x1, 0x167) }, +    { ZYDIS_DEFINITION(0x1, 0x166), ZYDIS_DEFINITION(0x1, 0x168) }, +    { ZYDIS_DEFINITION(0x1, 0x2F3), ZYDIS_DEFINITION(0x1, 0x2F5) }, +    { ZYDIS_DEFINITION(0x1, 0x2F4), ZYDIS_DEFINITION(0x1, 0x2F6) }, +    { ZYDIS_DEFINITION(0x1, 0x5CA), ZYDIS_DEFINITION(0x1, 0x5CC) }, +    { ZYDIS_DEFINITION(0x1, 0x5CB), ZYDIS_DEFINITION(0x1, 0x5CD) }, +    { ZYDIS_DEFINITION(0x1, 0x5D6), ZYDIS_DEFINITION(0x1, 0x5D8) }, +    { ZYDIS_DEFINITION(0x1, 0x5D7), ZYDIS_DEFINITION(0x1, 0x5D9) }, +    { ZYDIS_DEFINITION(0x1, 0x5CE), ZYDIS_DEFINITION(0x1, 0x5D0) }, +    { ZYDIS_DEFINITION(0x1, 0x5CF), ZYDIS_DEFINITION(0x1, 0x5D1) }, +    { ZYDIS_DEFINITION(0x1, 0x39D), ZYDIS_DEFINITION(0x1, 0x39F) }, +    { ZYDIS_DEFINITION(0x1, 0x39E), ZYDIS_DEFINITION(0x1, 0x3A0) }, +    { ZYDIS_DEFINITION(0x1, 0x419), ZYDIS_DEFINITION(0x1, 0x41B) }, +    { ZYDIS_DEFINITION(0x1, 0x41A), ZYDIS_DEFINITION(0x1, 0x41C) }, +    { ZYDIS_DEFINITION(0x1, 0x425), ZYDIS_DEFINITION(0x1, 0x427) }, +    { ZYDIS_DEFINITION(0x1, 0x426), ZYDIS_DEFINITION(0x1, 0x428) }, +    { ZYDIS_DEFINITION(0x1, 0x41D), ZYDIS_DEFINITION(0x1, 0x41F) }, +    { ZYDIS_DEFINITION(0x1, 0x41E), ZYDIS_DEFINITION(0x1, 0x420) }, +    { ZYDIS_DEFINITION(0x1, 0x3A5), ZYDIS_DEFINITION(0x1, 0x3A7) }, +    { ZYDIS_DEFINITION(0x1, 0x3A6), ZYDIS_DEFINITION(0x1, 0x3A8) }, +    { ZYDIS_DEFINITION(0x1, 0x5BA), ZYDIS_DEFINITION(0x1, 0x5BC) }, +    { ZYDIS_DEFINITION(0x1, 0x5BB), ZYDIS_DEFINITION(0x1, 0x5BD) }, +    { ZYDIS_DEFINITION(0x1, 0x5C6), ZYDIS_DEFINITION(0x1, 0x5C8) }, +    { ZYDIS_DEFINITION(0x1, 0x5C7), ZYDIS_DEFINITION(0x1, 0x5C9) }, +    { ZYDIS_DEFINITION(0x1, 0x5BE), ZYDIS_DEFINITION(0x1, 0x5C0) }, +    { ZYDIS_DEFINITION(0x1, 0x5BF), ZYDIS_DEFINITION(0x1, 0x5C1) }, +    { ZYDIS_DEFINITION(0x1, 0x399), ZYDIS_DEFINITION(0x1, 0x39B) }, +    { ZYDIS_DEFINITION(0x1, 0x39A), ZYDIS_DEFINITION(0x1, 0x39C) }, +    { ZYDIS_DEFINITION(0x1, 0x5D2), ZYDIS_DEFINITION(0x1, 0x5D4) }, +    { ZYDIS_DEFINITION(0x1, 0x5D3), ZYDIS_DEFINITION(0x1, 0x5D5) }, +    { ZYDIS_DEFINITION(0x1, 0x5C2), ZYDIS_DEFINITION(0x1, 0x5C4) }, +    { ZYDIS_DEFINITION(0x1, 0x5C3), ZYDIS_DEFINITION(0x1, 0x5C5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45B) }, +    { ZYDIS_DEFINITION(0x1, 0x31D), ZYDIS_DEFINITION(0x1, 0x31E) }, +    { ZYDIS_DEFINITION(0x1, 0x327), ZYDIS_DEFINITION(0x1, 0x329) }, +    { ZYDIS_DEFINITION(0x1, 0x328), ZYDIS_DEFINITION(0x1, 0x32A) }, +    { ZYDIS_DEFINITION(0xB, 0x536), ZYDIS_DEFINITION(0xB, 0x538) }, +    { ZYDIS_DEFINITION(0xB, 0x537), ZYDIS_DEFINITION(0xB, 0x539) }, +    { ZYDIS_DEFINITION(0xB, 0x590), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x591), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x574), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x575), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x564), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x565), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x57A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x57B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x56A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x56B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x54E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x54F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x582), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x583), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x580), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x581), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x556), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x557), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x554), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x555), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3FD), ZYDIS_DEFINITION(0x1, 0x3FF) }, +    { ZYDIS_DEFINITION(0x1, 0x3FE), ZYDIS_DEFINITION(0x1, 0x400) }, +    { ZYDIS_DEFINITION(0x1, 0x409), ZYDIS_DEFINITION(0x1, 0x40B) }, +    { ZYDIS_DEFINITION(0x1, 0x40A), ZYDIS_DEFINITION(0x1, 0x40C) }, +    { ZYDIS_DEFINITION(0x1, 0x401), ZYDIS_DEFINITION(0x1, 0x403) }, +    { ZYDIS_DEFINITION(0x1, 0x402), ZYDIS_DEFINITION(0x1, 0x404) }, +    { ZYDIS_DEFINITION(0x1, 0x2D1), ZYDIS_DEFINITION(0x1, 0x2D3) }, +    { ZYDIS_DEFINITION(0x1, 0x2D2), ZYDIS_DEFINITION(0x1, 0x2D4) }, +    { ZYDIS_DEFINITION(0x1, 0x2D9), ZYDIS_DEFINITION(0x1, 0x2DB) }, +    { ZYDIS_DEFINITION(0x1, 0x2DA), ZYDIS_DEFINITION(0x1, 0x2DC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45D) }, +    { ZYDIS_DEFINITION(0x1, 0x321), ZYDIS_DEFINITION(0x1, 0x322) }, +    { ZYDIS_DEFINITION(0x1, 0x32B), ZYDIS_DEFINITION(0x1, 0x32D) }, +    { ZYDIS_DEFINITION(0x1, 0x32C), ZYDIS_DEFINITION(0x1, 0x32E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x45F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x460) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x461), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x462), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x463), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x464), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x105), ZYDIS_DEFINITION(0xB, 0x107) }, +    { ZYDIS_DEFINITION(0xB, 0x106), ZYDIS_DEFINITION(0xB, 0x108) }, +    { ZYDIS_DEFINITION(0xB, 0x492), ZYDIS_DEFINITION(0xB, 0x493) }, +    { ZYDIS_DEFINITION(0xB, 0x465), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x5F6), ZYDIS_DEFINITION(0xB, 0x5F8) }, +    { ZYDIS_DEFINITION(0xB, 0x5F7), ZYDIS_DEFINITION(0xB, 0x5F9) }, +    { ZYDIS_DEFINITION(0x1, 0xC1), ZYDIS_DEFINITION(0x1, 0xC3) }, +    { ZYDIS_DEFINITION(0x1, 0xC2), ZYDIS_DEFINITION(0x1, 0xC4) }, +    { ZYDIS_DEFINITION(0x1, 0x592), ZYDIS_DEFINITION(0x1, 0x594) }, +    { ZYDIS_DEFINITION(0x1, 0x593), ZYDIS_DEFINITION(0x1, 0x595) }, +    { ZYDIS_DEFINITION(0x1, 0x57C), ZYDIS_DEFINITION(0x1, 0x57E) }, +    { ZYDIS_DEFINITION(0x1, 0x57D), ZYDIS_DEFINITION(0x1, 0x57F) }, +    { ZYDIS_DEFINITION(0x1, 0x584), ZYDIS_DEFINITION(0x1, 0x586) }, +    { ZYDIS_DEFINITION(0x1, 0x585), ZYDIS_DEFINITION(0x1, 0x587) }, +    { ZYDIS_DEFINITION(0x1, 0x3B1), ZYDIS_DEFINITION(0x1, 0x3B3) }, +    { ZYDIS_DEFINITION(0x1, 0x3B2), ZYDIS_DEFINITION(0x1, 0x3B4) }, +    { ZYDIS_DEFINITION(0x1, 0x51A), ZYDIS_DEFINITION(0x1, 0x51C) }, +    { ZYDIS_DEFINITION(0x1, 0x51B), ZYDIS_DEFINITION(0x1, 0x51D) }, +    { ZYDIS_DEFINITION(0x1, 0x353), ZYDIS_DEFINITION(0x1, 0x354) }, +    { ZYDIS_DEFINITION(0x1, 0x4D4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4D5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5AA), ZYDIS_DEFINITION(0x1, 0x5AC) }, +    { ZYDIS_DEFINITION(0x1, 0x5AB), ZYDIS_DEFINITION(0x1, 0x5AD) }, +    { ZYDIS_DEFINITION(0x1, 0x5AE), ZYDIS_DEFINITION(0x1, 0x5B0) }, +    { ZYDIS_DEFINITION(0x1, 0x5AF), ZYDIS_DEFINITION(0x1, 0x5B1) }, +    { ZYDIS_DEFINITION(0x1, 0x4C8), ZYDIS_DEFINITION(0x1, 0x4CA) }, +    { ZYDIS_DEFINITION(0x1, 0x4C9), ZYDIS_DEFINITION(0x1, 0x4CB) }, +    { ZYDIS_DEFINITION(0x1, 0x3CD), ZYDIS_DEFINITION(0x1, 0x3CF) }, +    { ZYDIS_DEFINITION(0x1, 0x3CE), ZYDIS_DEFINITION(0x1, 0x3D0) }, +    { ZYDIS_DEFINITION(0x1, 0x3BD), ZYDIS_DEFINITION(0x1, 0x3BF) }, +    { ZYDIS_DEFINITION(0x1, 0x3BE), ZYDIS_DEFINITION(0x1, 0x3C0) }, +    { ZYDIS_DEFINITION(0x1, 0x3C1), ZYDIS_DEFINITION(0x1, 0x3C3) }, +    { ZYDIS_DEFINITION(0x1, 0x3C2), ZYDIS_DEFINITION(0x1, 0x3C4) }, +    { ZYDIS_DEFINITION(0x1, 0x4B0), ZYDIS_DEFINITION(0x1, 0x4B2) }, +    { ZYDIS_DEFINITION(0x1, 0x4B1), ZYDIS_DEFINITION(0x1, 0x4B3) }, +    { ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D3) }, +    { ZYDIS_DEFINITION(0x1, 0x3D2), ZYDIS_DEFINITION(0x1, 0x3D4) }, +    { ZYDIS_DEFINITION(0x1, 0x3D5), ZYDIS_DEFINITION(0x1, 0x3D7) }, +    { ZYDIS_DEFINITION(0x1, 0x3D6), ZYDIS_DEFINITION(0x1, 0x3D8) }, +    { ZYDIS_DEFINITION(0x1, 0x576), ZYDIS_DEFINITION(0x1, 0x578) }, +    { ZYDIS_DEFINITION(0x1, 0x577), ZYDIS_DEFINITION(0x1, 0x579) }, +    { ZYDIS_DEFINITION(0x1, 0x56C), ZYDIS_DEFINITION(0x1, 0x56E) }, +    { ZYDIS_DEFINITION(0x1, 0x56D), ZYDIS_DEFINITION(0x1, 0x56F) }, +    { ZYDIS_DEFINITION(0x1, 0x3D9), ZYDIS_DEFINITION(0x1, 0x3DB) }, +    { ZYDIS_DEFINITION(0x1, 0x3DA), ZYDIS_DEFINITION(0x1, 0x3DC) }, +    { ZYDIS_DEFINITION(0x1, 0x50E), ZYDIS_DEFINITION(0x1, 0x510) }, +    { ZYDIS_DEFINITION(0x1, 0x50F), ZYDIS_DEFINITION(0x1, 0x511) }, +    { ZYDIS_DEFINITION(0x1, 0x512), ZYDIS_DEFINITION(0x1, 0x514) }, +    { ZYDIS_DEFINITION(0x1, 0x513), ZYDIS_DEFINITION(0x1, 0x515) }, +    { ZYDIS_DEFINITION(0x1, 0x151), ZYDIS_DEFINITION(0x1, 0x153) }, +    { ZYDIS_DEFINITION(0x1, 0x152), ZYDIS_DEFINITION(0x1, 0x154) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x345) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x346) }, +    { ZYDIS_DEFINITION(0x1, 0x5A2), ZYDIS_DEFINITION(0x1, 0x5A4) }, +    { ZYDIS_DEFINITION(0x1, 0x5A3), ZYDIS_DEFINITION(0x1, 0x5A5) }, +    { ZYDIS_DEFINITION(0x1, 0x5A6), ZYDIS_DEFINITION(0x1, 0x5A8) }, +    { ZYDIS_DEFINITION(0x1, 0x5A7), ZYDIS_DEFINITION(0x1, 0x5A9) }, +    { ZYDIS_DEFINITION(0x1, 0x4C4), ZYDIS_DEFINITION(0x1, 0x4C6) }, +    { ZYDIS_DEFINITION(0x1, 0x4C5), ZYDIS_DEFINITION(0x1, 0x4C7) }, +    { ZYDIS_DEFINITION(0x1, 0x522), ZYDIS_DEFINITION(0x1, 0x524) }, +    { ZYDIS_DEFINITION(0x1, 0x523), ZYDIS_DEFINITION(0x1, 0x525) }, +    { ZYDIS_DEFINITION(0x1, 0x3B5), ZYDIS_DEFINITION(0x1, 0x3B7) }, +    { ZYDIS_DEFINITION(0x1, 0x3B6), ZYDIS_DEFINITION(0x1, 0x3B8) }, +    { ZYDIS_DEFINITION(0x1, 0x3B9), ZYDIS_DEFINITION(0x1, 0x3BB) }, +    { ZYDIS_DEFINITION(0x1, 0x3BA), ZYDIS_DEFINITION(0x1, 0x3BC) }, +    { ZYDIS_DEFINITION(0x1, 0x4AC), ZYDIS_DEFINITION(0x1, 0x4AE) }, +    { ZYDIS_DEFINITION(0x1, 0x4AD), ZYDIS_DEFINITION(0x1, 0x4AF) }, +    { ZYDIS_DEFINITION(0x1, 0x5DA), ZYDIS_DEFINITION(0x1, 0x5DC) }, +    { ZYDIS_DEFINITION(0x1, 0x5DB), ZYDIS_DEFINITION(0x1, 0x5DD) }, +    { ZYDIS_DEFINITION(0x1, 0x566), ZYDIS_DEFINITION(0x1, 0x568) }, +    { ZYDIS_DEFINITION(0x1, 0x567), ZYDIS_DEFINITION(0x1, 0x569) }, +    { ZYDIS_DEFINITION(0x1, 0x550), ZYDIS_DEFINITION(0x1, 0x552) }, +    { ZYDIS_DEFINITION(0x1, 0x551), ZYDIS_DEFINITION(0x1, 0x553) }, +    { ZYDIS_DEFINITION(0x1, 0x558), ZYDIS_DEFINITION(0x1, 0x55A) }, +    { ZYDIS_DEFINITION(0x1, 0x559), ZYDIS_DEFINITION(0x1, 0x55B) }, +    { ZYDIS_DEFINITION(0x1, 0x51E), ZYDIS_DEFINITION(0x1, 0x520) }, +    { ZYDIS_DEFINITION(0x1, 0x51F), ZYDIS_DEFINITION(0x1, 0x521) }, +    { ZYDIS_DEFINITION(0x1, 0x498), ZYDIS_DEFINITION(0x1, 0x49A) }, +    { ZYDIS_DEFINITION(0x1, 0x499), ZYDIS_DEFINITION(0x1, 0x49B) }, +    { ZYDIS_DEFINITION(0x1, 0x52E), ZYDIS_DEFINITION(0x1, 0x530) }, +    { ZYDIS_DEFINITION(0x1, 0x52F), ZYDIS_DEFINITION(0x1, 0x531) }, +    { ZYDIS_DEFINITION(0x1, 0x2EA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x596), ZYDIS_DEFINITION(0x1, 0x598) }, +    { ZYDIS_DEFINITION(0x1, 0x597), ZYDIS_DEFINITION(0x1, 0x599) }, +    { ZYDIS_DEFINITION(0x1, 0x5B2), ZYDIS_DEFINITION(0x1, 0x5B4) }, +    { ZYDIS_DEFINITION(0x1, 0x5B3), ZYDIS_DEFINITION(0x1, 0x5B5) }, +    { ZYDIS_DEFINITION(0x1, 0x59A), ZYDIS_DEFINITION(0x1, 0x59C) }, +    { ZYDIS_DEFINITION(0x1, 0x59B), ZYDIS_DEFINITION(0x1, 0x59D) }, +    { ZYDIS_DEFINITION(0x1, 0x59E), ZYDIS_DEFINITION(0x1, 0x5A0) }, +    { ZYDIS_DEFINITION(0x1, 0x59F), ZYDIS_DEFINITION(0x1, 0x5A1) }, +    { ZYDIS_DEFINITION(0x1, 0x3A9), ZYDIS_DEFINITION(0x1, 0x3AB) }, +    { ZYDIS_DEFINITION(0x1, 0x3AA), ZYDIS_DEFINITION(0x1, 0x3AC) }, +    { ZYDIS_DEFINITION(0x1, 0x3C5), ZYDIS_DEFINITION(0x1, 0x3C7) }, +    { ZYDIS_DEFINITION(0x1, 0x3C6), ZYDIS_DEFINITION(0x1, 0x3C8) }, +    { ZYDIS_DEFINITION(0x1, 0x3AD), ZYDIS_DEFINITION(0x1, 0x3AF) }, +    { ZYDIS_DEFINITION(0x1, 0x3AE), ZYDIS_DEFINITION(0x1, 0x3B0) }, +    { ZYDIS_DEFINITION(0x1, 0x532), ZYDIS_DEFINITION(0x1, 0x534) }, +    { ZYDIS_DEFINITION(0x1, 0x533), ZYDIS_DEFINITION(0x1, 0x535) }, +    { ZYDIS_DEFINITION(0x1, 0x478), ZYDIS_DEFINITION(0x1, 0x47A) }, +    { ZYDIS_DEFINITION(0x1, 0x479), ZYDIS_DEFINITION(0x1, 0x47B) }, +    { ZYDIS_DEFINITION(0x1, 0x470), ZYDIS_DEFINITION(0x1, 0x472) }, +    { ZYDIS_DEFINITION(0x1, 0x471), ZYDIS_DEFINITION(0x1, 0x473) }, +    { ZYDIS_DEFINITION(0x1, 0x474), ZYDIS_DEFINITION(0x1, 0x476) }, +    { ZYDIS_DEFINITION(0x1, 0x475), ZYDIS_DEFINITION(0x1, 0x477) }, +    { ZYDIS_DEFINITION(0x1, 0x494), ZYDIS_DEFINITION(0x1, 0x496) }, +    { ZYDIS_DEFINITION(0x1, 0x495), ZYDIS_DEFINITION(0x1, 0x497) }, +    { ZYDIS_DEFINITION(0x1, 0x486), ZYDIS_DEFINITION(0x1, 0x488) }, +    { ZYDIS_DEFINITION(0x1, 0x487), ZYDIS_DEFINITION(0x1, 0x489) }, +    { ZYDIS_DEFINITION(0x1, 0x47E), ZYDIS_DEFINITION(0x1, 0x480) }, +    { ZYDIS_DEFINITION(0x1, 0x47F), ZYDIS_DEFINITION(0x1, 0x481) }, +    { ZYDIS_DEFINITION(0x1, 0x482), ZYDIS_DEFINITION(0x1, 0x484) }, +    { ZYDIS_DEFINITION(0x1, 0x483), ZYDIS_DEFINITION(0x1, 0x485) }, +    { ZYDIS_DEFINITION(0x1, 0x542), ZYDIS_DEFINITION(0x1, 0x544) }, +    { ZYDIS_DEFINITION(0x1, 0x543), ZYDIS_DEFINITION(0x1, 0x545) }, +    { ZYDIS_DEFINITION(0x1, 0x54A), ZYDIS_DEFINITION(0x1, 0x54C) }, +    { ZYDIS_DEFINITION(0x1, 0x54B), ZYDIS_DEFINITION(0x1, 0x54D) }, +    { ZYDIS_DEFINITION(0x1, 0x546), ZYDIS_DEFINITION(0x1, 0x548) }, +    { ZYDIS_DEFINITION(0x1, 0x547), ZYDIS_DEFINITION(0x1, 0x549) }, +    { ZYDIS_DEFINITION(0x1, 0x50A), ZYDIS_DEFINITION(0x1, 0x50C) }, +    { ZYDIS_DEFINITION(0x1, 0x50B), ZYDIS_DEFINITION(0x1, 0x50D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x465), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x466) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x467), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x468) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x469), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x46F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x470) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x471), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x472) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x473), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x474) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x475), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x476) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x477), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x478) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x479), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47A) }, +    { ZYDIS_DEFINITION(0x1, 0x5B6), ZYDIS_DEFINITION(0x1, 0x5B8) }, +    { ZYDIS_DEFINITION(0x1, 0x5B7), ZYDIS_DEFINITION(0x1, 0x5B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x47F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x480) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x481) }, +    { ZYDIS_DEFINITION(0x1, 0x38D), ZYDIS_DEFINITION(0x1, 0x38F) }, +    { ZYDIS_DEFINITION(0x1, 0x38E), ZYDIS_DEFINITION(0x1, 0x390) }, +    { ZYDIS_DEFINITION(0x1, 0x395), ZYDIS_DEFINITION(0x1, 0x397) }, +    { ZYDIS_DEFINITION(0x1, 0x396), ZYDIS_DEFINITION(0x1, 0x398) }, +    { ZYDIS_DEFINITION(0x1, 0x391), ZYDIS_DEFINITION(0x1, 0x393) }, +    { ZYDIS_DEFINITION(0x1, 0x392), ZYDIS_DEFINITION(0x1, 0x394) }, +    { ZYDIS_DEFINITION(0x1, 0x4DE), ZYDIS_DEFINITION(0x1, 0x4E0) }, +    { ZYDIS_DEFINITION(0x1, 0x4DF), ZYDIS_DEFINITION(0x1, 0x4E1) }, +    { ZYDIS_DEFINITION(0x1, 0x4D6), ZYDIS_DEFINITION(0x1, 0x4D8) }, +    { ZYDIS_DEFINITION(0x1, 0x4D7), ZYDIS_DEFINITION(0x1, 0x4D9) }, +    { ZYDIS_DEFINITION(0x1, 0x4DA), ZYDIS_DEFINITION(0x1, 0x4DC) }, +    { ZYDIS_DEFINITION(0x1, 0x4DB), ZYDIS_DEFINITION(0x1, 0x4DD) }, +    { ZYDIS_DEFINITION(0x1, 0x4E6), ZYDIS_DEFINITION(0x1, 0x4E8) }, +    { ZYDIS_DEFINITION(0x1, 0x4E7), ZYDIS_DEFINITION(0x1, 0x4E9) }, +    { ZYDIS_DEFINITION(0x1, 0x4EA), ZYDIS_DEFINITION(0x1, 0x4EC) }, +    { ZYDIS_DEFINITION(0x1, 0x4EB), ZYDIS_DEFINITION(0x1, 0x4ED) }, +    { ZYDIS_DEFINITION(0x1, 0x4E2), ZYDIS_DEFINITION(0x1, 0x4E4) }, +    { ZYDIS_DEFINITION(0x1, 0x4E3), ZYDIS_DEFINITION(0x1, 0x4E5) }, +    { ZYDIS_DEFINITION(0x1, 0x506), ZYDIS_DEFINITION(0x1, 0x508) }, +    { ZYDIS_DEFINITION(0x1, 0x507), ZYDIS_DEFINITION(0x1, 0x509) }, +    { ZYDIS_DEFINITION(0x1, 0x405), ZYDIS_DEFINITION(0x1, 0x407) }, +    { ZYDIS_DEFINITION(0x1, 0x406), ZYDIS_DEFINITION(0x1, 0x408) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x347) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x348) }, +    { ZYDIS_DEFINITION(0x1, 0x3A1), ZYDIS_DEFINITION(0x1, 0x3A3) }, +    { ZYDIS_DEFINITION(0x1, 0x3A2), ZYDIS_DEFINITION(0x1, 0x3A4) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x482) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x483) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x484) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x485) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x486) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x487) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x488) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x489) }, +    { ZYDIS_DEFINITION(0x1, 0x4F6), ZYDIS_DEFINITION(0x1, 0x4F8) }, +    { ZYDIS_DEFINITION(0x1, 0x4F7), ZYDIS_DEFINITION(0x1, 0x4F9) }, +    { ZYDIS_DEFINITION(0x1, 0x4EE), ZYDIS_DEFINITION(0x1, 0x4F0) }, +    { ZYDIS_DEFINITION(0x1, 0x4EF), ZYDIS_DEFINITION(0x1, 0x4F1) }, +    { ZYDIS_DEFINITION(0x1, 0x4F2), ZYDIS_DEFINITION(0x1, 0x4F4) }, +    { ZYDIS_DEFINITION(0x1, 0x4F3), ZYDIS_DEFINITION(0x1, 0x4F5) }, +    { ZYDIS_DEFINITION(0x1, 0x4FE), ZYDIS_DEFINITION(0x1, 0x500) }, +    { ZYDIS_DEFINITION(0x1, 0x4FF), ZYDIS_DEFINITION(0x1, 0x501) }, +    { ZYDIS_DEFINITION(0x1, 0x502), ZYDIS_DEFINITION(0x1, 0x504) }, +    { ZYDIS_DEFINITION(0x1, 0x503), ZYDIS_DEFINITION(0x1, 0x505) }, +    { ZYDIS_DEFINITION(0x1, 0x4FA), ZYDIS_DEFINITION(0x1, 0x4FC) }, +    { ZYDIS_DEFINITION(0x1, 0x4FB), ZYDIS_DEFINITION(0x1, 0x4FD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48B) }, +    { ZYDIS_DEFINITION(0x1, 0x421), ZYDIS_DEFINITION(0x1, 0x423) }, +    { ZYDIS_DEFINITION(0x1, 0x422), ZYDIS_DEFINITION(0x1, 0x424) }, +    { ZYDIS_DEFINITION(0x1, 0x4BC), ZYDIS_DEFINITION(0x1, 0x4BE) }, +    { ZYDIS_DEFINITION(0x1, 0x4BD), ZYDIS_DEFINITION(0x1, 0x4BF) }, +    { ZYDIS_DEFINITION(0x1, 0x4C0), ZYDIS_DEFINITION(0x1, 0x4C2) }, +    { ZYDIS_DEFINITION(0x1, 0x4C1), ZYDIS_DEFINITION(0x1, 0x4C3) }, +    { ZYDIS_DEFINITION(0x1, 0x4D0), ZYDIS_DEFINITION(0x1, 0x4D2) }, +    { ZYDIS_DEFINITION(0x1, 0x4D1), ZYDIS_DEFINITION(0x1, 0x4D3) }, +    { ZYDIS_DEFINITION(0x1, 0x4CC), ZYDIS_DEFINITION(0x1, 0x4CE) }, +    { ZYDIS_DEFINITION(0x1, 0x4CD), ZYDIS_DEFINITION(0x1, 0x4CF) }, +    { ZYDIS_DEFINITION(0x1, 0x4A4), ZYDIS_DEFINITION(0x1, 0x4A6) }, +    { ZYDIS_DEFINITION(0x1, 0x4A5), ZYDIS_DEFINITION(0x1, 0x4A7) }, +    { ZYDIS_DEFINITION(0x1, 0x4A8), ZYDIS_DEFINITION(0x1, 0x4AA) }, +    { ZYDIS_DEFINITION(0x1, 0x4A9), ZYDIS_DEFINITION(0x1, 0x4AB) }, +    { ZYDIS_DEFINITION(0x1, 0x4B8), ZYDIS_DEFINITION(0x1, 0x4BA) }, +    { ZYDIS_DEFINITION(0x1, 0x4B9), ZYDIS_DEFINITION(0x1, 0x4BB) }, +    { ZYDIS_DEFINITION(0x1, 0x4B4), ZYDIS_DEFINITION(0x1, 0x4B6) }, +    { ZYDIS_DEFINITION(0x1, 0x4B5), ZYDIS_DEFINITION(0x1, 0x4B7) }, +    { ZYDIS_DEFINITION(0x1, 0x516), ZYDIS_DEFINITION(0x1, 0x518) }, +    { ZYDIS_DEFINITION(0x1, 0x517), ZYDIS_DEFINITION(0x1, 0x519) }, +    { ZYDIS_DEFINITION(0x1, 0x47C), ZYDIS_DEFINITION(0x1, 0x47D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x48F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x490), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x491) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x492), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x493) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x494), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x495) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x496), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x497) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x498), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x499) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x49F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A8) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4A9) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4AA) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4AB) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4AC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4AD) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4AE) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4AF) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B0) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B1) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4BA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4BB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4BC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4BE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4BF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4CA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4CB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4CC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4CD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4CE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4CF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4DA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4DC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4DE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4EA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4EC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4EE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4FA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4FC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4FE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4FF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x500) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x501), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x502) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x503), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x504) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x505), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x506) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x507), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x508) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x509), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x50F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x510) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x511), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x512) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x513), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x514) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x515), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x516) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x517), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x518) }, +    { ZYDIS_DEFINITION(0x1, 0xD9), ZYDIS_DEFINITION(0x1, 0xDA) }, +    { ZYDIS_DEFINITION(0x1, 0xD1), ZYDIS_DEFINITION(0x1, 0xD3) }, +    { ZYDIS_DEFINITION(0x1, 0xD2), ZYDIS_DEFINITION(0x1, 0xD4) }, +    { ZYDIS_DEFINITION(0x1, 0xD5), ZYDIS_DEFINITION(0x1, 0xD7) }, +    { ZYDIS_DEFINITION(0x1, 0xD6), ZYDIS_DEFINITION(0x1, 0xD8) }, +    { ZYDIS_DEFINITION(0x1, 0xC9), ZYDIS_DEFINITION(0x1, 0xCB) }, +    { ZYDIS_DEFINITION(0x1, 0xCA), ZYDIS_DEFINITION(0x1, 0xCC) }, +    { ZYDIS_DEFINITION(0x1, 0xCD), ZYDIS_DEFINITION(0x1, 0xCF) }, +    { ZYDIS_DEFINITION(0x1, 0xCE), ZYDIS_DEFINITION(0x1, 0xD0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x519), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51A) }, +    { ZYDIS_DEFINITION(0x1, 0xA7), ZYDIS_DEFINITION(0x1, 0xA8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x51F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x520) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x521), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x522) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x523), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x524) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x525), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x526) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x528) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x529), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52C) }, +    { ZYDIS_DEFINITION(0xB, 0x5E8), ZYDIS_DEFINITION(0xB, 0x5EA) }, +    { ZYDIS_DEFINITION(0xB, 0x5E9), ZYDIS_DEFINITION(0xB, 0x5EB) }, +    { ZYDIS_DEFINITION(0xB, 0x5E4), ZYDIS_DEFINITION(0xB, 0x5E6) }, +    { ZYDIS_DEFINITION(0xB, 0x5E5), ZYDIS_DEFINITION(0xB, 0x5E7) }, +    { ZYDIS_DEFINITION(0xB, 0x5EE), ZYDIS_DEFINITION(0xB, 0x5EF) }, +    { ZYDIS_DEFINITION(0xB, 0x5EC), ZYDIS_DEFINITION(0xB, 0x5ED) }, +    { ZYDIS_DEFINITION(0xB, 0xF1), ZYDIS_DEFINITION(0xB, 0xF3) }, +    { ZYDIS_DEFINITION(0xB, 0xF2), ZYDIS_DEFINITION(0xB, 0xF4) }, +    { ZYDIS_DEFINITION(0xB, 0xED), ZYDIS_DEFINITION(0xB, 0xEF) }, +    { ZYDIS_DEFINITION(0xB, 0xEE), ZYDIS_DEFINITION(0xB, 0xF0) }, +    { ZYDIS_DEFINITION(0xB, 0x3E5), ZYDIS_DEFINITION(0xB, 0x3E7) }, +    { ZYDIS_DEFINITION(0xB, 0x3E6), ZYDIS_DEFINITION(0xB, 0x3E8) }, +    { ZYDIS_DEFINITION(0xB, 0x3C9), ZYDIS_DEFINITION(0xB, 0x3CB) }, +    { ZYDIS_DEFINITION(0xB, 0x3CA), ZYDIS_DEFINITION(0xB, 0x3CC) }, +    { ZYDIS_DEFINITION(0xB, 0x45D), ZYDIS_DEFINITION(0xB, 0x45E) }, +    { ZYDIS_DEFINITION(0xB, 0x466), ZYDIS_DEFINITION(0xB, 0x467) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52E) }, +    { ZYDIS_DEFINITION(0xB, 0x461), ZYDIS_DEFINITION(0xB, 0x462) }, +    { ZYDIS_DEFINITION(0xB, 0x17B), ZYDIS_DEFINITION(0xB, 0x17C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x52F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x530) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x531), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x532) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x533), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x534) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x535), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x536) }, +    { ZYDIS_DEFINITION(0xB, 0x48A), ZYDIS_DEFINITION(0xB, 0x48B) }, +    { ZYDIS_DEFINITION(0xB, 0x2E5), ZYDIS_DEFINITION(0xB, 0x2E6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x537), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x538) }, +    { ZYDIS_DEFINITION(0xB, 0x48E), ZYDIS_DEFINITION(0xB, 0x48F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x539), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x53F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x540) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x541), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x173), ZYDIS_DEFINITION(0xB, 0x175) }, +    { ZYDIS_DEFINITION(0xB, 0x174), ZYDIS_DEFINITION(0xB, 0x176) }, +    { ZYDIS_DEFINITION(0xB, 0x171), ZYDIS_DEFINITION(0xB, 0x172) }, +    { ZYDIS_DEFINITION(0xB, 0x375), ZYDIS_DEFINITION(0xB, 0x377) }, +    { ZYDIS_DEFINITION(0xB, 0x376), ZYDIS_DEFINITION(0xB, 0x378) }, +    { ZYDIS_DEFINITION(0xB, 0x3F9), ZYDIS_DEFINITION(0xB, 0x3FB) }, +    { ZYDIS_DEFINITION(0xB, 0x3FA), ZYDIS_DEFINITION(0xB, 0x3FC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x542), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x543) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x544), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x545) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x546), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x547) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x548), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x549) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x550), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x551) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x552), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x553) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x554), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x555) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x556), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x557) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x558), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x559) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x55F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x560), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x561) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x562), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x563) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x564), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x565) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x566), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x567) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x568), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x569) }, +    { ZYDIS_DEFINITION(0xB, 0x417), ZYDIS_DEFINITION(0xB, 0x418) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56B) }, +    { ZYDIS_DEFINITION(0xB, 0x411), ZYDIS_DEFINITION(0xB, 0x412) }, +    { ZYDIS_DEFINITION(0xB, 0x42F), ZYDIS_DEFINITION(0xB, 0x430) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56D) }, +    { ZYDIS_DEFINITION(0xB, 0x42D), ZYDIS_DEFINITION(0xB, 0x42E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x56F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x570), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x571) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x572), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x573) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x574), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x575) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x576), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x577) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x578), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x579) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x57F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x580), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x581) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x582), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x583) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x584), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x585) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x586), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x587) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x588), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x589) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x58F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x590), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x591) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x592), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x593) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x594), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x595) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x596), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x597) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x598), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x599) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x59F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A5) }, +    { ZYDIS_DEFINITION(0xB, 0xDB), ZYDIS_DEFINITION(0xB, 0xDC) }, +    { ZYDIS_DEFINITION(0x1, 0x361), ZYDIS_DEFINITION(0x1, 0x362) }, +    { ZYDIS_DEFINITION(0x1, 0x363), ZYDIS_DEFINITION(0x1, 0x364) }, +    { ZYDIS_DEFINITION(0x1, 0x35D), ZYDIS_DEFINITION(0x1, 0x35F) }, +    { ZYDIS_DEFINITION(0x1, 0x35E), ZYDIS_DEFINITION(0x1, 0x360) }, +    { ZYDIS_DEFINITION(0x1, 0x359), ZYDIS_DEFINITION(0x1, 0x35B) }, +    { ZYDIS_DEFINITION(0x1, 0x35A), ZYDIS_DEFINITION(0x1, 0x35C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A7) }, +    { ZYDIS_DEFINITION(0x1, 0x147), ZYDIS_DEFINITION(0x1, 0x148) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5A9) }, +    { ZYDIS_DEFINITION(0x1, 0x163), ZYDIS_DEFINITION(0x1, 0x164) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5AB) }, +    { ZYDIS_DEFINITION(0x1, 0x14F), ZYDIS_DEFINITION(0x1, 0x150) }, +    { ZYDIS_DEFINITION(0x1, 0x608), ZYDIS_DEFINITION(0x1, 0x609) }, +    { ZYDIS_DEFINITION(0x1, 0x5F4), ZYDIS_DEFINITION(0x1, 0x5F5) }, +    { ZYDIS_DEFINITION(0x1, 0x5E2), ZYDIS_DEFINITION(0x1, 0x5E3) }, +    { ZYDIS_DEFINITION(0x1, 0xBF), ZYDIS_DEFINITION(0x1, 0xC0) }, +    { ZYDIS_DEFINITION(0x1, 0x383), ZYDIS_DEFINITION(0x1, 0x384) }, +    { ZYDIS_DEFINITION(0x1, 0x149), ZYDIS_DEFINITION(0x1, 0x14A) }, +    { ZYDIS_DEFINITION(0x1, 0x155), ZYDIS_DEFINITION(0x1, 0x157) }, +    { ZYDIS_DEFINITION(0x1, 0x156), ZYDIS_DEFINITION(0x1, 0x158) }, +    { ZYDIS_DEFINITION(0x1, 0x615), ZYDIS_DEFINITION(0x1, 0x616) }, +    { ZYDIS_DEFINITION(0x1, 0x309), ZYDIS_DEFINITION(0x1, 0x30A) }, +    { ZYDIS_DEFINITION(0x1, 0x16F), ZYDIS_DEFINITION(0x1, 0x170) }, +    { ZYDIS_DEFINITION(0x1, 0x2FD), ZYDIS_DEFINITION(0x1, 0x2FE) }, +    { ZYDIS_DEFINITION(0x1, 0x32F), ZYDIS_DEFINITION(0x1, 0x331) }, +    { ZYDIS_DEFINITION(0x1, 0x330), ZYDIS_DEFINITION(0x1, 0x332) }, +    { ZYDIS_DEFINITION(0xB, 0x53A), ZYDIS_DEFINITION(0xB, 0x53C) }, +    { ZYDIS_DEFINITION(0xB, 0x53B), ZYDIS_DEFINITION(0xB, 0x53D) }, +    { ZYDIS_DEFINITION(0x1, 0x351), ZYDIS_DEFINITION(0x1, 0x352) }, +    { ZYDIS_DEFINITION(0x1, 0x333), ZYDIS_DEFINITION(0x1, 0x335) }, +    { ZYDIS_DEFINITION(0x1, 0x334), ZYDIS_DEFINITION(0x1, 0x336) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5AC), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x25) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5AD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5AE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5AF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x10F), ZYDIS_DEFINITION(0xB, 0x110) }, +    { ZYDIS_DEFINITION(0x1, 0x115), ZYDIS_DEFINITION(0x1, 0x117) }, +    { ZYDIS_DEFINITION(0x1, 0x116), ZYDIS_DEFINITION(0x1, 0x118) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B1) }, +    { ZYDIS_DEFINITION(0x1, 0x93), ZYDIS_DEFINITION(0x1, 0x94) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B3) }, +    { ZYDIS_DEFINITION(0x1, 0xA1), ZYDIS_DEFINITION(0x1, 0xA2) }, +    { ZYDIS_DEFINITION(0x1, 0x355), ZYDIS_DEFINITION(0x1, 0x356) }, +    { ZYDIS_DEFINITION(0x1, 0x357), ZYDIS_DEFINITION(0x1, 0x358) }, +    { ZYDIS_DEFINITION(0x1, 0x323), ZYDIS_DEFINITION(0x1, 0x325) }, +    { ZYDIS_DEFINITION(0x1, 0x324), ZYDIS_DEFINITION(0x1, 0x326) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B5) }, +    { ZYDIS_DEFINITION(0x1, 0x141), ZYDIS_DEFINITION(0x1, 0x142) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B7) }, +    { ZYDIS_DEFINITION(0x1, 0x15D), ZYDIS_DEFINITION(0x1, 0x15E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5B9) }, +    { ZYDIS_DEFINITION(0x1, 0x139), ZYDIS_DEFINITION(0x1, 0x13A) }, +    { ZYDIS_DEFINITION(0x1, 0x606), ZYDIS_DEFINITION(0x1, 0x607) }, +    { ZYDIS_DEFINITION(0x1, 0xBD), ZYDIS_DEFINITION(0x1, 0xBE) }, +    { ZYDIS_DEFINITION(0x1, 0x381), ZYDIS_DEFINITION(0x1, 0x382) }, +    { ZYDIS_DEFINITION(0x1, 0x13B), ZYDIS_DEFINITION(0x1, 0x13C) }, +    { ZYDIS_DEFINITION(0x1, 0x613), ZYDIS_DEFINITION(0x1, 0x614) }, +    { ZYDIS_DEFINITION(0x1, 0x307), ZYDIS_DEFINITION(0x1, 0x308) }, +    { ZYDIS_DEFINITION(0x1, 0x16D), ZYDIS_DEFINITION(0x1, 0x16E) }, +    { ZYDIS_DEFINITION(0x1, 0x2FB), ZYDIS_DEFINITION(0x1, 0x2FC) }, +    { ZYDIS_DEFINITION(0xB, 0x53E), ZYDIS_DEFINITION(0xB, 0x540) }, +    { ZYDIS_DEFINITION(0xB, 0x53F), ZYDIS_DEFINITION(0xB, 0x541) }, +    { ZYDIS_DEFINITION(0x1, 0x2D5), ZYDIS_DEFINITION(0x1, 0x2D7) }, +    { ZYDIS_DEFINITION(0x1, 0x2D6), ZYDIS_DEFINITION(0x1, 0x2D8) }, +    { ZYDIS_DEFINITION(0x1, 0x2DD), ZYDIS_DEFINITION(0x1, 0x2DF) }, +    { ZYDIS_DEFINITION(0x1, 0x2DE), ZYDIS_DEFINITION(0x1, 0x2E0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5BA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5BB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5BC), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x24) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5BD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x10D), ZYDIS_DEFINITION(0xB, 0x10E) }, +    { ZYDIS_DEFINITION(0x1, 0xC5), ZYDIS_DEFINITION(0x1, 0xC7) }, +    { ZYDIS_DEFINITION(0x1, 0xC6), ZYDIS_DEFINITION(0x1, 0xC8) }, +    { ZYDIS_DEFINITION(0x1, 0x11D), ZYDIS_DEFINITION(0x1, 0x11F) }, +    { ZYDIS_DEFINITION(0x1, 0x11E), ZYDIS_DEFINITION(0x1, 0x120) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2E7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5BF) }, +    { ZYDIS_DEFINITION(0x1, 0x8D), ZYDIS_DEFINITION(0x1, 0x8E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C1) }, +    { ZYDIS_DEFINITION(0x1, 0x87), ZYDIS_DEFINITION(0x1, 0x88) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C3) }, +    { ZYDIS_DEFINITION(0x1, 0xAD), ZYDIS_DEFINITION(0x1, 0xAE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5C5) }, +    { ZYDIS_DEFINITION(0xB, 0x9B), ZYDIS_DEFINITION(0xB, 0x9C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x50) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x51), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x52) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x54) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x56) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x57), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x58) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x60) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x61), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x62) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x64) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x66) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x68) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x70) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x72) }+};++const ZydisDecoderTreeNode FILTERS_MODRM_REG[][8] =+{+    { ZYDIS_DEFINITION(0x1, 0x6A9), ZYDIS_DEFINITION(0x1, 0x6C7), ZYDIS_DEFINITION(0x1, 0x2C0), ZYDIS_DEFINITION(0x1, 0x2D6), ZYDIS_DEFINITION(0x1, 0x713), ZYDIS_DEFINITION(0x1, 0x715), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6AA), ZYDIS_DEFINITION(0x1, 0x6C8), ZYDIS_DEFINITION(0x1, 0x2C1), ZYDIS_DEFINITION(0x1, 0x2D7), ZYDIS_DEFINITION(0x1, 0x714), ZYDIS_DEFINITION(0x1, 0x716), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x0), ZYDIS_DEFINITION(0x1, 0x6AB), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x5), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x6) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE), ZYDIS_DEFINITION(0x1, 0x6AC), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C3), ZYDIS_DEFINITION(0x1, 0x24A) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x616), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x51A), ZYDIS_DEFINITION(0x1, 0x51F), ZYDIS_DEFINITION(0x1, 0x520), ZYDIS_DEFINITION(0x1, 0x51A), ZYDIS_DEFINITION(0x1, 0x51A), ZYDIS_DEFINITION(0x1, 0x51A), ZYDIS_DEFINITION(0x1, 0x51A), ZYDIS_DEFINITION(0x1, 0x51A) }, +    { ZYDIS_DEFINITION(0x1, 0x3A1), ZYDIS_DEFINITION(0x1, 0x3A2), ZYDIS_DEFINITION(0x1, 0x3A3), ZYDIS_DEFINITION(0x1, 0x3A4), ZYDIS_DEFINITION(0x1, 0x3A5), ZYDIS_DEFINITION(0x1, 0x3A6), ZYDIS_DEFINITION(0x1, 0x3A7), ZYDIS_DEFINITION(0x1, 0x3A8) }, +    { ZYDIS_DEFINITION(0x1, 0x51B), ZYDIS_DEFINITION(0x1, 0x51C), ZYDIS_DEFINITION(0x1, 0x51D), ZYDIS_DEFINITION(0x1, 0x51E), ZYDIS_DEFINITION(0x1, 0x3A9), ZYDIS_DEFINITION(0x1, 0x3AA), ZYDIS_DEFINITION(0x1, 0x3AB), ZYDIS_DEFINITION(0x1, 0x3AC) }, +    { ZYDIS_DEFINITION(0x1, 0xAC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1C), ZYDIS_DEFINITION(0x1, 0x3BF), ZYDIS_DEFINITION(0x1, 0x3C0), ZYDIS_DEFINITION(0x1, 0x3C1), ZYDIS_DEFINITION(0x1, 0x3C2), ZYDIS_DEFINITION(0x1, 0x3C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x0), ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3CF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x1), ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D1) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x569), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x556), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x54A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x56A), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x557), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x54B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x55C), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x550), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x53D), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x55D), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x551), ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x53E), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x563), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x544), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x564), ZYDIS_DEFINITION(0xB, 0x562), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x545), ZYDIS_DEFINITION(0xB, 0x543) }, +    { ZYDIS_DEFINITION(0x13, 0x16C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0xB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0xC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0xE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x10), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x12), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2B9), ZYDIS_DEFINITION(0x1, 0x2E4), ZYDIS_DEFINITION(0x1, 0x665) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x43), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x44), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x45), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x46), ZYDIS_DEFINITION(0x1, 0x591), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28), ZYDIS_DEFINITION(0x1, 0x708), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B), ZYDIS_DEFINITION(0x1, 0x2B4), ZYDIS_DEFINITION(0x1, 0x6BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E), ZYDIS_DEFINITION(0x1, 0xAD) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB3), ZYDIS_DEFINITION(0x1, 0xAE) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x592), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB1), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x91), ZYDIS_DEFINITION(0xB, 0x9D), ZYDIS_DEFINITION(0xB, 0x99), ZYDIS_DEFINITION(0xB, 0x93) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x92), ZYDIS_DEFINITION(0xB, 0x9E), ZYDIS_DEFINITION(0xB, 0x9A), ZYDIS_DEFINITION(0xB, 0x94) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5E7), ZYDIS_DEFINITION(0x1, 0x5E8) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x47) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x48), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32), ZYDIS_DEFINITION(0x1, 0x71D), ZYDIS_DEFINITION(0x1, 0x71E) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x718), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x72B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6B), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6C), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xAE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xAF), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB0), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB4), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB5), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB6), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x79), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7B) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xBA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1E), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x1F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x20), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x22), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C9) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2FC), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2FD), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2FE), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2FF), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x300), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x301), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x28), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x29), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x2C), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3CA) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3CB) }, +    { ZYDIS_DEFINITION(0xD, 0x24), ZYDIS_DEFINITION(0xD, 0x3E1), ZYDIS_DEFINITION(0xD, 0xE), ZYDIS_DEFINITION(0xD, 0x630), ZYDIS_DEFINITION(0xB, 0x52), ZYDIS_DEFINITION(0xD, 0x6D3), ZYDIS_DEFINITION(0xB, 0x753), ZYDIS_DEFINITION(0xD, 0xE0) }, +    { ZYDIS_DEFINITION(0xD, 0x25), ZYDIS_DEFINITION(0xD, 0x3E2), ZYDIS_DEFINITION(0xD, 0xF), ZYDIS_DEFINITION(0xD, 0x631), ZYDIS_DEFINITION(0xB, 0x53), ZYDIS_DEFINITION(0xD, 0x6D4), ZYDIS_DEFINITION(0xB, 0x754), ZYDIS_DEFINITION(0xD, 0xE1) }, +    { ZYDIS_DEFINITION(0xE, 0x26), ZYDIS_DEFINITION(0xE, 0x3E3), ZYDIS_DEFINITION(0xE, 0x10), ZYDIS_DEFINITION(0xE, 0x632), ZYDIS_DEFINITION(0xE, 0x54), ZYDIS_DEFINITION(0xE, 0x6D5), ZYDIS_DEFINITION(0xE, 0x755), ZYDIS_DEFINITION(0xE, 0xE2) }, +    { ZYDIS_DEFINITION(0xE, 0x27), ZYDIS_DEFINITION(0xE, 0x3E4), ZYDIS_DEFINITION(0xE, 0x11), ZYDIS_DEFINITION(0xE, 0x633), ZYDIS_DEFINITION(0xE, 0x55), ZYDIS_DEFINITION(0xE, 0x6D6), ZYDIS_DEFINITION(0xE, 0x756), ZYDIS_DEFINITION(0xE, 0xE3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x97), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x98), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x99), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA6) }, +    { ZYDIS_DEFINITION(0xD, 0x2A), ZYDIS_DEFINITION(0xD, 0x3E7), ZYDIS_DEFINITION(0xD, 0x14), ZYDIS_DEFINITION(0xD, 0x636), ZYDIS_DEFINITION(0xD, 0x58), ZYDIS_DEFINITION(0xD, 0x6D9), ZYDIS_DEFINITION(0xD, 0x759), ZYDIS_DEFINITION(0xD, 0xE6) }, +    { ZYDIS_DEFINITION(0xD, 0x2B), ZYDIS_DEFINITION(0xD, 0x3E8), ZYDIS_DEFINITION(0xD, 0x15), ZYDIS_DEFINITION(0xD, 0x637), ZYDIS_DEFINITION(0xD, 0x59), ZYDIS_DEFINITION(0xD, 0x6DA), ZYDIS_DEFINITION(0xD, 0x75A), ZYDIS_DEFINITION(0xD, 0xE7) }, +    { ZYDIS_DEFINITION(0x1, 0x50B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x50C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3EC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3ED), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3EE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x411), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x412), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x5F1), ZYDIS_DEFINITION(0xB, 0x5FD), ZYDIS_DEFINITION(0xB, 0x5C3), ZYDIS_DEFINITION(0xB, 0x5D3), ZYDIS_DEFINITION(0xB, 0x676), ZYDIS_DEFINITION(0xB, 0x692), ZYDIS_DEFINITION(0xB, 0x677), ZYDIS_DEFINITION(0xB, 0x619) }, +    { ZYDIS_DEFINITION(0xB, 0x5F2), ZYDIS_DEFINITION(0xB, 0x5FE), ZYDIS_DEFINITION(0xB, 0x5C4), ZYDIS_DEFINITION(0xB, 0x5D4), ZYDIS_DEFINITION(0xB, 0x678), ZYDIS_DEFINITION(0xB, 0x693), ZYDIS_DEFINITION(0xB, 0x679), ZYDIS_DEFINITION(0xB, 0x61A) }, +    { ZYDIS_DEFINITION(0xB, 0x5F3), ZYDIS_DEFINITION(0xB, 0x5FF), ZYDIS_DEFINITION(0xB, 0x5C5), ZYDIS_DEFINITION(0xB, 0x5D5), ZYDIS_DEFINITION(0xB, 0x67A), ZYDIS_DEFINITION(0xB, 0x694), ZYDIS_DEFINITION(0xB, 0x67B), ZYDIS_DEFINITION(0xB, 0x61B) }, +    { ZYDIS_DEFINITION(0xB, 0x5F4), ZYDIS_DEFINITION(0xB, 0x600), ZYDIS_DEFINITION(0xB, 0x5C6), ZYDIS_DEFINITION(0xB, 0x5D6), ZYDIS_DEFINITION(0xB, 0x67C), ZYDIS_DEFINITION(0xB, 0x695), ZYDIS_DEFINITION(0xB, 0x67D), ZYDIS_DEFINITION(0xB, 0x61C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x420), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x421), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x422) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x450), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x451), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x486), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x487), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x488), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x489), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48F) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x570), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x571) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57F) }, +    { ZYDIS_DEFINITION(0xB, 0x304), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x31) }, +    { ZYDIS_DEFINITION(0xB, 0x305), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xE, 0x306), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x32) }, +    { ZYDIS_DEFINITION(0xE, 0x307), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5F5), ZYDIS_DEFINITION(0x1, 0x601), ZYDIS_DEFINITION(0x1, 0x5C7), ZYDIS_DEFINITION(0x1, 0x5D7), ZYDIS_DEFINITION(0x1, 0x67E), ZYDIS_DEFINITION(0x1, 0x696), ZYDIS_DEFINITION(0x1, 0x67F), ZYDIS_DEFINITION(0x1, 0x61D) }, +    { ZYDIS_DEFINITION(0x1, 0x5F6), ZYDIS_DEFINITION(0x1, 0x602), ZYDIS_DEFINITION(0x1, 0x5C8), ZYDIS_DEFINITION(0x1, 0x5D8), ZYDIS_DEFINITION(0x1, 0x680), ZYDIS_DEFINITION(0x1, 0x697), ZYDIS_DEFINITION(0x1, 0x681), ZYDIS_DEFINITION(0x1, 0x61E) }, +    { ZYDIS_DEFINITION(0x1, 0x5F7), ZYDIS_DEFINITION(0x1, 0x603), ZYDIS_DEFINITION(0x1, 0x5C9), ZYDIS_DEFINITION(0x1, 0x5D9), ZYDIS_DEFINITION(0x1, 0x682), ZYDIS_DEFINITION(0x1, 0x698), ZYDIS_DEFINITION(0x1, 0x683), ZYDIS_DEFINITION(0x1, 0x61F) }, +    { ZYDIS_DEFINITION(0x1, 0x5F8), ZYDIS_DEFINITION(0x1, 0x604), ZYDIS_DEFINITION(0x1, 0x5CA), ZYDIS_DEFINITION(0x1, 0x5DA), ZYDIS_DEFINITION(0x1, 0x684), ZYDIS_DEFINITION(0x1, 0x699), ZYDIS_DEFINITION(0x1, 0x685), ZYDIS_DEFINITION(0x1, 0x620) }, +    { ZYDIS_DEFINITION(0x1, 0x5F9), ZYDIS_DEFINITION(0x1, 0x605), ZYDIS_DEFINITION(0x1, 0x5CB), ZYDIS_DEFINITION(0x1, 0x5DB), ZYDIS_DEFINITION(0x1, 0x686), ZYDIS_DEFINITION(0x1, 0x69A), ZYDIS_DEFINITION(0x1, 0x687), ZYDIS_DEFINITION(0x1, 0x621) }, +    { ZYDIS_DEFINITION(0x1, 0x5FA), ZYDIS_DEFINITION(0x1, 0x606), ZYDIS_DEFINITION(0x1, 0x5CC), ZYDIS_DEFINITION(0x1, 0x5DC), ZYDIS_DEFINITION(0x1, 0x688), ZYDIS_DEFINITION(0x1, 0x69B), ZYDIS_DEFINITION(0x1, 0x689), ZYDIS_DEFINITION(0x1, 0x622) }, +    { ZYDIS_DEFINITION(0x1, 0x5FB), ZYDIS_DEFINITION(0x1, 0x607), ZYDIS_DEFINITION(0x1, 0x5CD), ZYDIS_DEFINITION(0x1, 0x5DD), ZYDIS_DEFINITION(0x1, 0x68A), ZYDIS_DEFINITION(0x1, 0x69C), ZYDIS_DEFINITION(0x1, 0x68B), ZYDIS_DEFINITION(0x1, 0x623) }, +    { ZYDIS_DEFINITION(0x1, 0x5FC), ZYDIS_DEFINITION(0x1, 0x608), ZYDIS_DEFINITION(0x1, 0x5CE), ZYDIS_DEFINITION(0x1, 0x5DE), ZYDIS_DEFINITION(0x1, 0x68C), ZYDIS_DEFINITION(0x1, 0x69D), ZYDIS_DEFINITION(0x1, 0x68D), ZYDIS_DEFINITION(0x1, 0x624) }, +    { ZYDIS_DEFINITION(0x1, 0x170), ZYDIS_DEFINITION(0x1, 0x1C7), ZYDIS_DEFINITION(0x1, 0x180), ZYDIS_DEFINITION(0x1, 0x186), ZYDIS_DEFINITION(0x1, 0x1EC), ZYDIS_DEFINITION(0x1, 0x1F1), ZYDIS_DEFINITION(0x1, 0x18F), ZYDIS_DEFINITION(0x1, 0x194) }, +    { ZYDIS_DEFINITION(0x1, 0x171), ZYDIS_DEFINITION(0x1, 0x1C8), ZYDIS_DEFINITION(0x1, 0x181), ZYDIS_DEFINITION(0x1, 0x187), ZYDIS_DEFINITION(0x1, 0x1ED), ZYDIS_DEFINITION(0x1, 0x1F2), ZYDIS_DEFINITION(0x1, 0x190), ZYDIS_DEFINITION(0x1, 0x195) }, +    { ZYDIS_DEFINITION(0x1, 0x1B9), ZYDIS_DEFINITION(0x1, 0x1FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x33), ZYDIS_DEFINITION(0x1, 0x1EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x37) }, +    { ZYDIS_DEFINITION(0x1, 0x1BA), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1E2), ZYDIS_DEFINITION(0x1, 0x1E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x21), ZYDIS_DEFINITION(0x1, 0x1BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x22), ZYDIS_DEFINITION(0x1, 0x1D1) }, +    { ZYDIS_DEFINITION(0x1, 0x178), ZYDIS_DEFINITION(0x1, 0x17A), ZYDIS_DEFINITION(0x1, 0x179), ZYDIS_DEFINITION(0x1, 0x17F), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x38), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x19D), ZYDIS_DEFINITION(0x1, 0x1AA), ZYDIS_DEFINITION(0x1, 0x19F), ZYDIS_DEFINITION(0x1, 0x1A1), ZYDIS_DEFINITION(0x1, 0x1B5), ZYDIS_DEFINITION(0x1, 0x1B7), ZYDIS_DEFINITION(0x1, 0x1A3), ZYDIS_DEFINITION(0x1, 0x1A5) }, +    { ZYDIS_DEFINITION(0x1, 0x17B), ZYDIS_DEFINITION(0x1, 0x17D), ZYDIS_DEFINITION(0x1, 0x17C), ZYDIS_DEFINITION(0x1, 0x17E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x39), ZYDIS_DEFINITION(0x1, 0x1F8), ZYDIS_DEFINITION(0x1, 0x184), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1A7), ZYDIS_DEFINITION(0x1, 0x1B2), ZYDIS_DEFINITION(0x1, 0x1AD), ZYDIS_DEFINITION(0x1, 0x1AF), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1BB), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1E6) }, +    { ZYDIS_DEFINITION(0x1, 0x172), ZYDIS_DEFINITION(0x1, 0x1C9), ZYDIS_DEFINITION(0x1, 0x182), ZYDIS_DEFINITION(0x1, 0x188), ZYDIS_DEFINITION(0x1, 0x1F3), ZYDIS_DEFINITION(0x1, 0x1EE), ZYDIS_DEFINITION(0x1, 0x196), ZYDIS_DEFINITION(0x1, 0x191) }, +    { ZYDIS_DEFINITION(0x1, 0x173), ZYDIS_DEFINITION(0x1, 0x1CA), ZYDIS_DEFINITION(0x1, 0x183), ZYDIS_DEFINITION(0x1, 0x189), ZYDIS_DEFINITION(0x1, 0x1EF), ZYDIS_DEFINITION(0x1, 0x1F4), ZYDIS_DEFINITION(0x1, 0x192), ZYDIS_DEFINITION(0x1, 0x197) }, +    { ZYDIS_DEFINITION(0x1, 0x19B), ZYDIS_DEFINITION(0x1, 0x1FF), ZYDIS_DEFINITION(0x1, 0x1E3), ZYDIS_DEFINITION(0x1, 0x1E7), ZYDIS_DEFINITION(0x1, 0x1F7), ZYDIS_DEFINITION(0x1, 0x1FA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1BC), ZYDIS_DEFINITION(0x1, 0x1B3), ZYDIS_DEFINITION(0x1, 0x1E4), ZYDIS_DEFINITION(0x1, 0x1E8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x23), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x24), ZYDIS_DEFINITION(0x1, 0x1D4) }, +    { ZYDIS_DEFINITION(0x1, 0x174), ZYDIS_DEFINITION(0x1, 0x1CB), ZYDIS_DEFINITION(0x1, 0x18A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x3A), ZYDIS_DEFINITION(0x1, 0x1F5), ZYDIS_DEFINITION(0x1, 0x1F0), ZYDIS_DEFINITION(0x1, 0x198), ZYDIS_DEFINITION(0x1, 0x193) }, +    { ZYDIS_DEFINITION(0x1, 0x19E), ZYDIS_DEFINITION(0x1, 0x1AB), ZYDIS_DEFINITION(0x1, 0x1A0), ZYDIS_DEFINITION(0x1, 0x1A2), ZYDIS_DEFINITION(0x1, 0x1B6), ZYDIS_DEFINITION(0x1, 0x1B8), ZYDIS_DEFINITION(0x1, 0x1A4), ZYDIS_DEFINITION(0x1, 0x1A6) }, +    { ZYDIS_DEFINITION(0x1, 0x19C), ZYDIS_DEFINITION(0x1, 0x200), ZYDIS_DEFINITION(0x1, 0x1E9), ZYDIS_DEFINITION(0x1, 0x1EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_RM, 0x3B), ZYDIS_DEFINITION(0x1, 0x1F9), ZYDIS_DEFINITION(0x1, 0x185), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1A8), ZYDIS_DEFINITION(0x1, 0x1B4), ZYDIS_DEFINITION(0x1, 0x1AE), ZYDIS_DEFINITION(0x1, 0x1B0), ZYDIS_DEFINITION(0x1, 0x175), ZYDIS_DEFINITION(0x1, 0x1A9), ZYDIS_DEFINITION(0x1, 0x176), ZYDIS_DEFINITION(0x1, 0x1B1) }, +    { ZYDIS_DEFINITION(0xD, 0x6F3), ZYDIS_DEFINITION(0xD, 0x6F4), ZYDIS_DEFINITION(0x1, 0x3D3), ZYDIS_DEFINITION(0x1, 0x39B), ZYDIS_DEFINITION(0x1, 0x38B), ZYDIS_DEFINITION(0x1, 0x220), ZYDIS_DEFINITION(0x1, 0x14E), ZYDIS_DEFINITION(0x1, 0x218) }, +    { ZYDIS_DEFINITION(0xD, 0x6F5), ZYDIS_DEFINITION(0xD, 0x6F6), ZYDIS_DEFINITION(0x1, 0x3D4), ZYDIS_DEFINITION(0x1, 0x39C), ZYDIS_DEFINITION(0x1, 0x38C), ZYDIS_DEFINITION(0x1, 0x221), ZYDIS_DEFINITION(0x1, 0x14F), ZYDIS_DEFINITION(0x1, 0x219) }, +    { ZYDIS_DEFINITION(0xE, 0x6F7), ZYDIS_DEFINITION(0xE, 0x6F8), ZYDIS_DEFINITION(0x1, 0x3D5), ZYDIS_DEFINITION(0x1, 0x39D), ZYDIS_DEFINITION(0x1, 0x38D), ZYDIS_DEFINITION(0x1, 0x222), ZYDIS_DEFINITION(0x1, 0x150), ZYDIS_DEFINITION(0x1, 0x21A) }, +    { ZYDIS_DEFINITION(0xE, 0x6F9), ZYDIS_DEFINITION(0xE, 0x6FA), ZYDIS_DEFINITION(0x1, 0x3D6), ZYDIS_DEFINITION(0x1, 0x39E), ZYDIS_DEFINITION(0x1, 0x38E), ZYDIS_DEFINITION(0x1, 0x223), ZYDIS_DEFINITION(0x1, 0x151), ZYDIS_DEFINITION(0x1, 0x21B) }, +    { ZYDIS_DEFINITION(0x1, 0x22D), ZYDIS_DEFINITION(0x1, 0x14A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x22E), ZYDIS_DEFINITION(0x1, 0x14B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x22F), ZYDIS_DEFINITION(0x1, 0x14C), ZYDIS_DEFINITION(0x1, 0xA3), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x270), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5B6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x230), ZYDIS_DEFINITION(0x1, 0x14D), ZYDIS_DEFINITION(0x1, 0xA4), ZYDIS_DEFINITION(0x1, 0xA5), ZYDIS_DEFINITION(0x1, 0x271), ZYDIS_DEFINITION(0x1, 0x272), ZYDIS_DEFINITION(0x1, 0x5B7), ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_MODRM_RM[][8] =+{+    { ZYDIS_DEFINITION(0x1, 0x724), ZYDIS_DEFINITION(0x1, 0x71C), ZYDIS_DEFINITION(0x1, 0x71B), ZYDIS_DEFINITION(0x1, 0x725), ZYDIS_DEFINITION(0x1, 0x6B8), ZYDIS_DEFINITION(0x1, 0xAF), ZYDIS_DEFINITION(0x1, 0x6A8), ZYDIS_DEFINITION(0x1, 0x24B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3), ZYDIS_DEFINITION(0x1, 0x5EC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB4), ZYDIS_DEFINITION(0x1, 0x5E6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4), ZYDIS_DEFINITION(0x1, 0x717), ZYDIS_DEFINITION(0x1, 0x71A), ZYDIS_DEFINITION(0x1, 0x723), ZYDIS_DEFINITION(0x1, 0x72A), ZYDIS_DEFINITION(0x1, 0x47E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6), ZYDIS_DEFINITION(0x1, 0xA9), ZYDIS_DEFINITION(0x1, 0x6B5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0x747), ZYDIS_DEFINITION(0x1, 0x76B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x719), ZYDIS_DEFINITION(0x1, 0x746), ZYDIS_DEFINITION(0x1, 0x770), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x8) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5E4), ZYDIS_DEFINITION(0x1, 0x730) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x662), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x625), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3C4), ZYDIS_DEFINITION(0x1, 0x3C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_CET, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_CET, 0x3), ZYDIS_DEFINITION(0x1, 0x3C8), ZYDIS_DEFINITION(0x1, 0x3C9), ZYDIS_DEFINITION(0x1, 0x3CA), ZYDIS_DEFINITION(0x1, 0x3CB) }, +    { ZYDIS_DEFINITION(0x1, 0x2F1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x76C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x76D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x76E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x76F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x744), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x741), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x743), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x742), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x745), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x184), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x185), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x186), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x187), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1CE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1CF), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D2), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D3), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x357), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x358), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x361), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x362), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x379), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x512), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x513), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x514), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x515), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x735), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xF, 0x73A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1CE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x177), ZYDIS_DEFINITION(0x1, 0x16F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1F6), ZYDIS_DEFINITION(0x1, 0x1FD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1BD), ZYDIS_DEFINITION(0x1, 0x1C2), ZYDIS_DEFINITION(0x1, 0x1C1), ZYDIS_DEFINITION(0x1, 0x1C5), ZYDIS_DEFINITION(0x1, 0x1C3), ZYDIS_DEFINITION(0x1, 0x1C4), ZYDIS_DEFINITION(0x1, 0x1C6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x16E), ZYDIS_DEFINITION(0x1, 0x206), ZYDIS_DEFINITION(0x1, 0x1D9), ZYDIS_DEFINITION(0x1, 0x1D6), ZYDIS_DEFINITION(0x1, 0x205), ZYDIS_DEFINITION(0x1, 0x1D8), ZYDIS_DEFINITION(0x1, 0x18D), ZYDIS_DEFINITION(0x1, 0x1AC) }, +    { ZYDIS_DEFINITION(0x1, 0x1D7), ZYDIS_DEFINITION(0x1, 0x207), ZYDIS_DEFINITION(0x1, 0x1E1), ZYDIS_DEFINITION(0x1, 0x1E0), ZYDIS_DEFINITION(0x1, 0x1DA), ZYDIS_DEFINITION(0x1, 0x1DD), ZYDIS_DEFINITION(0x1, 0x1DF), ZYDIS_DEFINITION(0x1, 0x18C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1FB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x19A), ZYDIS_DEFINITION(0x1, 0x18E), ZYDIS_DEFINITION(0x1, 0x1CC), ZYDIS_DEFINITION(0x1, 0x1CD), ZYDIS_DEFINITION(0x1, 0x1DE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x18B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1D5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_MANDATORY_PREFIX[][5] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x3), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x6), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x381), ZYDIS_DEFINITION(0x1, 0x37D), ZYDIS_DEFINITION(0x1, 0x370), ZYDIS_DEFINITION(0x1, 0x365) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x382), ZYDIS_DEFINITION(0x1, 0x37E), ZYDIS_DEFINITION(0x1, 0x371), ZYDIS_DEFINITION(0x1, 0x366) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x383), ZYDIS_DEFINITION(0x1, 0x37F), ZYDIS_DEFINITION(0x1, 0x372), ZYDIS_DEFINITION(0x1, 0x367) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x384), ZYDIS_DEFINITION(0x1, 0x380), ZYDIS_DEFINITION(0x1, 0x373), ZYDIS_DEFINITION(0x1, 0x368) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x339), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x36B), ZYDIS_DEFINITION(0x1, 0x32A) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x341), ZYDIS_DEFINITION(0x1, 0x33F), ZYDIS_DEFINITION(0x1, 0x36C), ZYDIS_DEFINITION(0x1, 0x32B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x342), ZYDIS_DEFINITION(0x1, 0x340), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x711), ZYDIS_DEFINITION(0x1, 0x70F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x712), ZYDIS_DEFINITION(0x1, 0x710), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x70D), ZYDIS_DEFINITION(0x1, 0x70B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x70E), ZYDIS_DEFINITION(0x1, 0x70C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x33E), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x369), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x33C), ZYDIS_DEFINITION(0x1, 0x33A), ZYDIS_DEFINITION(0x1, 0x36A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x33D), ZYDIS_DEFINITION(0x1, 0x33B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3B1), ZYDIS_DEFINITION(0x1, 0x7C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x12) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x13), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x14), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x15), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x16) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3B4), ZYDIS_DEFINITION(0x1, 0x7F), ZYDIS_DEFINITION(0x1, 0x3B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x17) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x19), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1B) }, +    { ZYDIS_DEFINITION(0x1, 0x3B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0xA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3BB), ZYDIS_DEFINITION(0x1, 0x3BC), ZYDIS_DEFINITION(0x1, 0x3BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0xB), ZYDIS_DEFINITION(0x1, 0x3CE) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x314), ZYDIS_DEFINITION(0x1, 0x310), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x315), ZYDIS_DEFINITION(0x1, 0x311), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x316), ZYDIS_DEFINITION(0x1, 0x312), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x317), ZYDIS_DEFINITION(0x1, 0x313), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x119), ZYDIS_DEFINITION(0x1, 0x117), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x11A), ZYDIS_DEFINITION(0x1, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x5) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x34A), ZYDIS_DEFINITION(0x1, 0x349), ZYDIS_DEFINITION(0x1, 0x34D), ZYDIS_DEFINITION(0x1, 0x34C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x13B), ZYDIS_DEFINITION(0x1, 0x137), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x13C), ZYDIS_DEFINITION(0x1, 0x138), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x9) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x11F), ZYDIS_DEFINITION(0x1, 0x113), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xB) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x120), ZYDIS_DEFINITION(0x1, 0x114), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xD) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x701), ZYDIS_DEFINITION(0x1, 0x6FF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x702), ZYDIS_DEFINITION(0x1, 0x700), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x105), ZYDIS_DEFINITION(0x1, 0x103), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x106), ZYDIS_DEFINITION(0x1, 0x104), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x208), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x525), ZYDIS_DEFINITION(0x1, 0x527), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x526), ZYDIS_DEFINITION(0x1, 0x528), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x491), ZYDIS_DEFINITION(0x1, 0x493), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x492), ZYDIS_DEFINITION(0x1, 0x494), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x489), ZYDIS_DEFINITION(0x1, 0x48B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x48A), ZYDIS_DEFINITION(0x1, 0x48C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x48D), ZYDIS_DEFINITION(0x1, 0x48F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x48E), ZYDIS_DEFINITION(0x1, 0x490), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4AD), ZYDIS_DEFINITION(0x1, 0x4AF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4AE), ZYDIS_DEFINITION(0x1, 0x4B0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x49F), ZYDIS_DEFINITION(0x1, 0x4A1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4A0), ZYDIS_DEFINITION(0x1, 0x4A2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x497), ZYDIS_DEFINITION(0x1, 0x499), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x498), ZYDIS_DEFINITION(0x1, 0x49A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x49B), ZYDIS_DEFINITION(0x1, 0x49D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x49C), ZYDIS_DEFINITION(0x1, 0x49E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x531), ZYDIS_DEFINITION(0x1, 0x533), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x532), ZYDIS_DEFINITION(0x1, 0x534), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x539), ZYDIS_DEFINITION(0x1, 0x53B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x53A), ZYDIS_DEFINITION(0x1, 0x53C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x535), ZYDIS_DEFINITION(0x1, 0x537), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x536), ZYDIS_DEFINITION(0x1, 0x538), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4F1), ZYDIS_DEFINITION(0x1, 0x4F3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4F2), ZYDIS_DEFINITION(0x1, 0x4F4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x44E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x44F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x68), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x69), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x58F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x590), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3FF), ZYDIS_DEFINITION(0x1, 0x401), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x400), ZYDIS_DEFINITION(0x1, 0x402), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x407), ZYDIS_DEFINITION(0x1, 0x409), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x408), ZYDIS_DEFINITION(0x1, 0x40A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x403), ZYDIS_DEFINITION(0x1, 0x405), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x404), ZYDIS_DEFINITION(0x1, 0x406), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4DB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4DC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4DA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4DF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4DD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4DE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4EF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4F0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x45C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x45D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x346), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x413), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x414), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4EB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4EC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4ED), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4EE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4E9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4EA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x472), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x473), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4FD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4FE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x495), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x496), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x23), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x24), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x25), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x66C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x66D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x668), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x669), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x66A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x66B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x674), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x675), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x670), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x671), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x672), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x673), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x20D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x20E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x44), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x45), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x40), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x41), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x42), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x43), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x109) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x10A) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x10B) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x10C) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x10), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x12), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x13), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x26), ZYDIS_DEFINITION(0x1, 0x168), ZYDIS_DEFINITION(0x1, 0x167) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x14), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x60B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x60C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x609), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x60A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x60F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x610), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x60D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x60E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x66), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x67), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x64), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x65), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x450), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x451), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x439), ZYDIS_DEFINITION(0xB, 0x43B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x43A), ZYDIS_DEFINITION(0xB, 0x43C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x47F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x480), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x487), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x488), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x15), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x16), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x16A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x16B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x4A3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x4A4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x23C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x23D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x17), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x18), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x15C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x15D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x15A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x15B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x389), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x38A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x452), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x453), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x19), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x47C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x47D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x1E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x66E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x66F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x20B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x20C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x209), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x20A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x46), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x47), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x344), ZYDIS_DEFINITION(0x1, 0x343), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6AF), ZYDIS_DEFINITION(0x1, 0x6AD), ZYDIS_DEFINITION(0x1, 0x6B3), ZYDIS_DEFINITION(0x1, 0x6B1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6B0), ZYDIS_DEFINITION(0x1, 0x6AE), ZYDIS_DEFINITION(0x1, 0x6B4), ZYDIS_DEFINITION(0x1, 0x6B2) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x612), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x614), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x613), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x615), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5CF), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5D1), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5D0), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5D2), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x60), ZYDIS_DEFINITION(0x1, 0x5E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x61), ZYDIS_DEFINITION(0x1, 0x5F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5C), ZYDIS_DEFINITION(0x1, 0x5A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5D), ZYDIS_DEFINITION(0x1, 0x5B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3EB), ZYDIS_DEFINITION(0x1, 0x3E9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3EC), ZYDIS_DEFINITION(0x1, 0x3EA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x75D), ZYDIS_DEFINITION(0x1, 0x75B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x75E), ZYDIS_DEFINITION(0x1, 0x75C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2E), ZYDIS_DEFINITION(0x1, 0x2C), ZYDIS_DEFINITION(0x1, 0x32), ZYDIS_DEFINITION(0x1, 0x30) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2F), ZYDIS_DEFINITION(0x1, 0x2D), ZYDIS_DEFINITION(0x1, 0x33), ZYDIS_DEFINITION(0x1, 0x31) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x391), ZYDIS_DEFINITION(0x1, 0x38F), ZYDIS_DEFINITION(0x1, 0x395), ZYDIS_DEFINITION(0x1, 0x393) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x392), ZYDIS_DEFINITION(0x1, 0x390), ZYDIS_DEFINITION(0x1, 0x396), ZYDIS_DEFINITION(0x1, 0x394) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x11D), ZYDIS_DEFINITION(0x1, 0x115), ZYDIS_DEFINITION(0x1, 0x12F), ZYDIS_DEFINITION(0x1, 0x125) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x11E), ZYDIS_DEFINITION(0x1, 0x116), ZYDIS_DEFINITION(0x1, 0x130), ZYDIS_DEFINITION(0x1, 0x126) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x10F), ZYDIS_DEFINITION(0x1, 0x11B), ZYDIS_DEFINITION(0x1, 0x139), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x110), ZYDIS_DEFINITION(0x1, 0x11C), ZYDIS_DEFINITION(0x1, 0x13A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6DD), ZYDIS_DEFINITION(0x1, 0x6DB), ZYDIS_DEFINITION(0x1, 0x6E1), ZYDIS_DEFINITION(0x1, 0x6DF) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6DE), ZYDIS_DEFINITION(0x1, 0x6DC), ZYDIS_DEFINITION(0x1, 0x6E2), ZYDIS_DEFINITION(0x1, 0x6E0) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2E7), ZYDIS_DEFINITION(0x1, 0x2E5), ZYDIS_DEFINITION(0x1, 0x2EB), ZYDIS_DEFINITION(0x1, 0x2E9) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2E8), ZYDIS_DEFINITION(0x1, 0x2E6), ZYDIS_DEFINITION(0x1, 0x2EC), ZYDIS_DEFINITION(0x1, 0x2EA) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x154), ZYDIS_DEFINITION(0x1, 0x152), ZYDIS_DEFINITION(0x1, 0x158), ZYDIS_DEFINITION(0x1, 0x156) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x155), ZYDIS_DEFINITION(0x1, 0x153), ZYDIS_DEFINITION(0x1, 0x159), ZYDIS_DEFINITION(0x1, 0x157) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2DE), ZYDIS_DEFINITION(0x1, 0x2DC), ZYDIS_DEFINITION(0x1, 0x2E2), ZYDIS_DEFINITION(0x1, 0x2E0) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2DF), ZYDIS_DEFINITION(0x1, 0x2DD), ZYDIS_DEFINITION(0x1, 0x2E3), ZYDIS_DEFINITION(0x1, 0x2E1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5A1), ZYDIS_DEFINITION(0x1, 0x5A3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5A2), ZYDIS_DEFINITION(0x1, 0x5A4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5AB), ZYDIS_DEFINITION(0x1, 0x5AD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5AC), ZYDIS_DEFINITION(0x1, 0x5AE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5A5), ZYDIS_DEFINITION(0x1, 0x5A7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5A6), ZYDIS_DEFINITION(0x1, 0x5A8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x40F), ZYDIS_DEFINITION(0x1, 0x411), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x410), ZYDIS_DEFINITION(0x1, 0x412), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46A), ZYDIS_DEFINITION(0x1, 0x46C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46B), ZYDIS_DEFINITION(0x1, 0x46D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x474), ZYDIS_DEFINITION(0x1, 0x476), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x475), ZYDIS_DEFINITION(0x1, 0x477), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46E), ZYDIS_DEFINITION(0x1, 0x470), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46F), ZYDIS_DEFINITION(0x1, 0x471), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x415), ZYDIS_DEFINITION(0x1, 0x417), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x416), ZYDIS_DEFINITION(0x1, 0x418), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x593), ZYDIS_DEFINITION(0x1, 0x595), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x594), ZYDIS_DEFINITION(0x1, 0x596), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x59D), ZYDIS_DEFINITION(0x1, 0x59F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x59E), ZYDIS_DEFINITION(0x1, 0x5A0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x597), ZYDIS_DEFINITION(0x1, 0x599), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x598), ZYDIS_DEFINITION(0x1, 0x59A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x40B), ZYDIS_DEFINITION(0x1, 0x40D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x40C), ZYDIS_DEFINITION(0x1, 0x40E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5A9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5AA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x59B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x59C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x28), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x29), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x352), ZYDIS_DEFINITION(0x1, 0x331), ZYDIS_DEFINITION(0x1, 0x335), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x353), ZYDIS_DEFINITION(0x1, 0x332), ZYDIS_DEFINITION(0x1, 0x336), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x52F), ZYDIS_DEFINITION(0xB, 0x529), ZYDIS_DEFINITION(0xB, 0x52B), ZYDIS_DEFINITION(0xB, 0x52D) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x530), ZYDIS_DEFINITION(0xB, 0x52A), ZYDIS_DEFINITION(0xB, 0x52C), ZYDIS_DEFINITION(0xB, 0x52E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0xE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0xF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x10), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x11), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x12), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x13), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x454), ZYDIS_DEFINITION(0x1, 0x456), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x455), ZYDIS_DEFINITION(0x1, 0x457), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x45E), ZYDIS_DEFINITION(0x1, 0x460), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x45F), ZYDIS_DEFINITION(0x1, 0x461), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x458), ZYDIS_DEFINITION(0x1, 0x45A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x459), ZYDIS_DEFINITION(0x1, 0x45B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x14), ZYDIS_INVALID, ZYDIS_DEFINITION(0x13, 0x23E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2D), ZYDIS_DEFINITION(0x1, 0x16D), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x23F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x20F), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x211) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x210), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x212) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x214), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x216) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x215), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x217) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x30), ZYDIS_DEFINITION(0x1, 0x358), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x32), ZYDIS_DEFINITION(0x1, 0x359), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x35A), ZYDIS_DEFINITION(0x1, 0x333), ZYDIS_DEFINITION(0x1, 0x337), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x35B), ZYDIS_DEFINITION(0x1, 0x334), ZYDIS_DEFINITION(0x1, 0x338), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x15), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x17), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x19), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x1E), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x511), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x512), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x86), ZYDIS_DEFINITION(0x1, 0x88), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_TZCNT, 0x0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x87), ZYDIS_DEFINITION(0x1, 0x89), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_TZCNT, 0x1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x8A), ZYDIS_DEFINITION(0x1, 0x8C), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_LZCNT, 0x0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x8B), ZYDIS_DEFINITION(0x1, 0x8D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_LZCNT, 0x1), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xEA), ZYDIS_DEFINITION(0xB, 0xE8), ZYDIS_DEFINITION(0xB, 0xF7), ZYDIS_DEFINITION(0xB, 0xF2) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xEB), ZYDIS_DEFINITION(0xB, 0xE9), ZYDIS_DEFINITION(0xB, 0xF8), ZYDIS_DEFINITION(0xB, 0xF3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x4A9), ZYDIS_DEFINITION(0xB, 0x4AB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x4AA), ZYDIS_DEFINITION(0xB, 0x4AC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x485), ZYDIS_DEFINITION(0xB, 0x486), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x6A4), ZYDIS_DEFINITION(0xB, 0x6A2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x6A5), ZYDIS_DEFINITION(0xB, 0x6A3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x22), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x23), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x24), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_REG, 0x26), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x34), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x36) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x35), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x37) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x56B), ZYDIS_DEFINITION(0x1, 0x56D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x56C), ZYDIS_DEFINITION(0x1, 0x56E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x55E), ZYDIS_DEFINITION(0x1, 0x560), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x55F), ZYDIS_DEFINITION(0x1, 0x561), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x565), ZYDIS_DEFINITION(0x1, 0x567), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x566), ZYDIS_DEFINITION(0x1, 0x568), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x421), ZYDIS_DEFINITION(0x1, 0x423), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x422), ZYDIS_DEFINITION(0x1, 0x424), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4FF), ZYDIS_DEFINITION(0x1, 0x501), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x500), ZYDIS_DEFINITION(0x1, 0x502), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x35C), ZYDIS_DEFINITION(0x1, 0x35E), ZYDIS_DEFINITION(0x1, 0x330) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x35D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4D5), ZYDIS_DEFINITION(0x1, 0x4D6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x583), ZYDIS_DEFINITION(0x1, 0x585), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x584), ZYDIS_DEFINITION(0x1, 0x586), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x587), ZYDIS_DEFINITION(0x1, 0x589), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x588), ZYDIS_DEFINITION(0x1, 0x58A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4CD), ZYDIS_DEFINITION(0x1, 0x4CF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4CE), ZYDIS_DEFINITION(0x1, 0x4D0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x43D), ZYDIS_DEFINITION(0x1, 0x43F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x43E), ZYDIS_DEFINITION(0x1, 0x440), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x42D), ZYDIS_DEFINITION(0x1, 0x42F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x42E), ZYDIS_DEFINITION(0x1, 0x430), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x431), ZYDIS_DEFINITION(0x1, 0x433), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x432), ZYDIS_DEFINITION(0x1, 0x434), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4BD), ZYDIS_DEFINITION(0x1, 0x4BF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4BE), ZYDIS_DEFINITION(0x1, 0x4C0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x441), ZYDIS_DEFINITION(0x1, 0x443), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x442), ZYDIS_DEFINITION(0x1, 0x444), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x446), ZYDIS_DEFINITION(0x1, 0x448), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x447), ZYDIS_DEFINITION(0x1, 0x449), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x558), ZYDIS_DEFINITION(0x1, 0x55A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x559), ZYDIS_DEFINITION(0x1, 0x55B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x552), ZYDIS_DEFINITION(0x1, 0x554), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x553), ZYDIS_DEFINITION(0x1, 0x555), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x44A), ZYDIS_DEFINITION(0x1, 0x44C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x44B), ZYDIS_DEFINITION(0x1, 0x44D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4F5), ZYDIS_DEFINITION(0x1, 0x4F7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4F6), ZYDIS_DEFINITION(0x1, 0x4F8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4F9), ZYDIS_DEFINITION(0x1, 0x4FB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4FA), ZYDIS_DEFINITION(0x1, 0x4FC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x135), ZYDIS_DEFINITION(0x1, 0x10D), ZYDIS_DEFINITION(0x1, 0x111) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x136), ZYDIS_DEFINITION(0x1, 0x10E), ZYDIS_DEFINITION(0x1, 0x112) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x34B), ZYDIS_DEFINITION(0x1, 0x345), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x57B), ZYDIS_DEFINITION(0x1, 0x57D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x57C), ZYDIS_DEFINITION(0x1, 0x57E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x57F), ZYDIS_DEFINITION(0x1, 0x581), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x580), ZYDIS_DEFINITION(0x1, 0x582), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4C9), ZYDIS_DEFINITION(0x1, 0x4CB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4CA), ZYDIS_DEFINITION(0x1, 0x4CC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x516), ZYDIS_DEFINITION(0x1, 0x518), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x517), ZYDIS_DEFINITION(0x1, 0x519), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x425), ZYDIS_DEFINITION(0x1, 0x427), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x426), ZYDIS_DEFINITION(0x1, 0x428), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x429), ZYDIS_DEFINITION(0x1, 0x42B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x42A), ZYDIS_DEFINITION(0x1, 0x42C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B9), ZYDIS_DEFINITION(0x1, 0x4BB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4BA), ZYDIS_DEFINITION(0x1, 0x4BC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5BF), ZYDIS_DEFINITION(0x1, 0x5C1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5C0), ZYDIS_DEFINITION(0x1, 0x5C2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2B3) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x54C), ZYDIS_DEFINITION(0x1, 0x54E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x54D), ZYDIS_DEFINITION(0x1, 0x54F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x53F), ZYDIS_DEFINITION(0x1, 0x541), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x540), ZYDIS_DEFINITION(0x1, 0x542), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x546), ZYDIS_DEFINITION(0x1, 0x548), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x547), ZYDIS_DEFINITION(0x1, 0x549), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x503), ZYDIS_DEFINITION(0x1, 0x505), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x504), ZYDIS_DEFINITION(0x1, 0x506), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B1), ZYDIS_DEFINITION(0x1, 0x4B3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B2), ZYDIS_DEFINITION(0x1, 0x4B4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x521), ZYDIS_DEFINITION(0x1, 0x523), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x522), ZYDIS_DEFINITION(0x1, 0x524), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2DB), ZYDIS_DEFINITION(0x1, 0x2DA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x56F), ZYDIS_DEFINITION(0x1, 0x571), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x570), ZYDIS_DEFINITION(0x1, 0x572), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x58B), ZYDIS_DEFINITION(0x1, 0x58D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x58C), ZYDIS_DEFINITION(0x1, 0x58E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x573), ZYDIS_DEFINITION(0x1, 0x575), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x574), ZYDIS_DEFINITION(0x1, 0x576), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x577), ZYDIS_DEFINITION(0x1, 0x579), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x578), ZYDIS_DEFINITION(0x1, 0x57A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x419), ZYDIS_DEFINITION(0x1, 0x41B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x41A), ZYDIS_DEFINITION(0x1, 0x41C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x435), ZYDIS_DEFINITION(0x1, 0x437), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x436), ZYDIS_DEFINITION(0x1, 0x438), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x41D), ZYDIS_DEFINITION(0x1, 0x41F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x41E), ZYDIS_DEFINITION(0x1, 0x420), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x233), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x234), ZYDIS_DEFINITION(0x0, 0x235) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x5), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x7) }, +    { ZYDIS_DEFINITION(0x0, 0x3F3), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x3F4), ZYDIS_DEFINITION(0x0, 0x3F5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_B, 0x0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x445), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x35F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x360), ZYDIS_DEFINITION(0x0, 0x361) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x11), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x12), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x13) }, +    { ZYDIS_DEFINITION(0x0, 0xEC), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0xED), ZYDIS_DEFINITION(0x0, 0xEE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x14), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x15), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x16) }, +    { ZYDIS_DEFINITION(0x0, 0x6BB), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x6BC), ZYDIS_DEFINITION(0x0, 0x6BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x17), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x19) }, +    { ZYDIS_DEFINITION(0x0, 0x2C4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x2C5), ZYDIS_DEFINITION(0x0, 0x2C6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1C) }, +    { ZYDIS_DEFINITION(0x0, 0x638), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x639), ZYDIS_DEFINITION(0x0, 0x63A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1F) }+};++const ZydisDecoderTreeNode FILTERS_OPERAND_SIZE[][3] =+{+    { ZYDIS_DEFINITION(0x0, 0x6EB), ZYDIS_DEFINITION(0x0, 0x6EB), ZYDIS_DEFINITION(0x0, 0x6EA) }, +    { ZYDIS_DEFINITION(0x1, 0x348), ZYDIS_DEFINITION(0x1, 0x348), ZYDIS_DEFINITION(0x1, 0x347) }, +    { ZYDIS_DEFINITION(0x0, 0x5BA), ZYDIS_DEFINITION(0x0, 0x5BB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x50F), ZYDIS_DEFINITION(0x0, 0x510), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x84), ZYDIS_DEFINITION(0x1, 0x85), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x240), ZYDIS_DEFINITION(0x0, 0x236), ZYDIS_DEFINITION(0x0, 0x237) }, +    { ZYDIS_DEFINITION(0x0, 0x241), ZYDIS_DEFINITION(0x0, 0x238), ZYDIS_DEFINITION(0x0, 0x239) }, +    { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_DEFINITION(0x0, 0x23A), ZYDIS_DEFINITION(0x0, 0x23B) }, +    { ZYDIS_DEFINITION(0x0, 0x3FC), ZYDIS_DEFINITION(0x0, 0x3F6), ZYDIS_DEFINITION(0x0, 0x3F7) }, +    { ZYDIS_DEFINITION(0x0, 0x3FD), ZYDIS_DEFINITION(0x0, 0x3F8), ZYDIS_DEFINITION(0x0, 0x3F9) }, +    { ZYDIS_DEFINITION(0x0, 0x3FE), ZYDIS_DEFINITION(0x0, 0x3FA), ZYDIS_DEFINITION(0x0, 0x3FB) }, +    { ZYDIS_DEFINITION(0x0, 0xA6), ZYDIS_DEFINITION(0x0, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x421) }, +    { ZYDIS_DEFINITION(0x0, 0x145), ZYDIS_DEFINITION(0x0, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x422) }, +    { ZYDIS_DEFINITION(0x0, 0x5BC), ZYDIS_DEFINITION(0x0, 0x5BE), ZYDIS_DEFINITION(0x0, 0x5BE) }, +    { ZYDIS_DEFINITION(0x0, 0x5BC), ZYDIS_DEFINITION(0x0, 0x5BD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x513), ZYDIS_DEFINITION(0x0, 0x515), ZYDIS_DEFINITION(0x0, 0x515) }, +    { ZYDIS_DEFINITION(0x0, 0x513), ZYDIS_DEFINITION(0x0, 0x514), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x374), ZYDIS_DEFINITION(0x0, 0x362), ZYDIS_DEFINITION(0x0, 0x36D) }, +    { ZYDIS_DEFINITION(0x0, 0x375), ZYDIS_DEFINITION(0x0, 0x363), ZYDIS_DEFINITION(0x0, 0x36E) }, +    { ZYDIS_DEFINITION(0x0, 0x376), ZYDIS_DEFINITION(0x0, 0x364), ZYDIS_DEFINITION(0x0, 0x36F) }, +    { ZYDIS_DEFINITION(0x0, 0xF9), ZYDIS_DEFINITION(0x0, 0xEF), ZYDIS_DEFINITION(0x0, 0xF4) }, +    { ZYDIS_DEFINITION(0x0, 0xFA), ZYDIS_DEFINITION(0x0, 0xF0), ZYDIS_DEFINITION(0x0, 0xF5) }, +    { ZYDIS_DEFINITION(0x0, 0xFB), ZYDIS_DEFINITION(0x0, 0xF1), ZYDIS_DEFINITION(0x0, 0xF6) }, +    { ZYDIS_DEFINITION(0x0, 0x6C4), ZYDIS_DEFINITION(0x0, 0x6BE), ZYDIS_DEFINITION(0x0, 0x6C1) }, +    { ZYDIS_DEFINITION(0x0, 0x6C5), ZYDIS_DEFINITION(0x0, 0x6BF), ZYDIS_DEFINITION(0x0, 0x6C2) }, +    { ZYDIS_DEFINITION(0x0, 0x6C6), ZYDIS_DEFINITION(0x0, 0x6C0), ZYDIS_DEFINITION(0x0, 0x6C3) }, +    { ZYDIS_DEFINITION(0x0, 0x2CD), ZYDIS_DEFINITION(0x0, 0x2C7), ZYDIS_DEFINITION(0x0, 0x2CA) }, +    { ZYDIS_DEFINITION(0x0, 0x2CE), ZYDIS_DEFINITION(0x0, 0x2C8), ZYDIS_DEFINITION(0x0, 0x2CB) }, +    { ZYDIS_DEFINITION(0x0, 0x2CF), ZYDIS_DEFINITION(0x0, 0x2C9), ZYDIS_DEFINITION(0x0, 0x2CC) }, +    { ZYDIS_DEFINITION(0x0, 0x641), ZYDIS_DEFINITION(0x0, 0x63B), ZYDIS_DEFINITION(0x0, 0x63E) }, +    { ZYDIS_DEFINITION(0x0, 0x642), ZYDIS_DEFINITION(0x0, 0x63C), ZYDIS_DEFINITION(0x0, 0x63F) }, +    { ZYDIS_DEFINITION(0x0, 0x643), ZYDIS_DEFINITION(0x0, 0x63D), ZYDIS_DEFINITION(0x0, 0x640) }, +    { ZYDIS_DEFINITION(0x0, 0x250), ZYDIS_DEFINITION(0x0, 0x251), ZYDIS_DEFINITION(0x0, 0x252) }, +    { ZYDIS_DEFINITION(0x1, 0x1BF), ZYDIS_DEFINITION(0x1, 0x1C0), ZYDIS_DEFINITION(0x1, 0x1C0) }, +    { ZYDIS_DEFINITION(0x1, 0x1D2), ZYDIS_DEFINITION(0x1, 0x1D3), ZYDIS_DEFINITION(0x1, 0x1D3) }, +    { ZYDIS_DEFINITION(0x1, 0x1DB), ZYDIS_DEFINITION(0x1, 0x1DC), ZYDIS_DEFINITION(0x1, 0x1DC) }, +    { ZYDIS_DEFINITION(0x1, 0x1CF), ZYDIS_DEFINITION(0x1, 0x1D0), ZYDIS_DEFINITION(0x1, 0x1D0) }, +    { ZYDIS_DEFINITION(0x3, 0x227), ZYDIS_DEFINITION(0x3, 0x228), ZYDIS_DEFINITION(0x3, 0x228) }, +    { ZYDIS_DEFINITION(0x3, 0x3EE), ZYDIS_DEFINITION(0x3, 0x3EF), ZYDIS_DEFINITION(0x3, 0x3EF) }, +    { ZYDIS_DEFINITION(0x0, 0x22A), ZYDIS_DEFINITION(0x0, 0x22B), ZYDIS_DEFINITION(0x0, 0x22B) }, +    { ZYDIS_DEFINITION(0x0, 0x3F1), ZYDIS_DEFINITION(0x0, 0x3F2), ZYDIS_DEFINITION(0x0, 0x3F2) }+};++const ZydisDecoderTreeNode FILTERS_ADDRESS_SIZE[][3] =+{+    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x79), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x7E), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6F), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x77), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x83), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x81), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x7B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x73), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C4) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C5) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C6) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C7) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C8) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C9) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CA) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CB) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E8) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E9) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EA) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EB) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1ED) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EE) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1EF) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x230), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x230) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x231), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x231) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x232), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x232) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x233), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x233) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x234), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x234) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x235), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x235) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x236), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x236) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x237), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x237) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x238), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x238) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x239), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x239) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23A) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x468), ZYDIS_DEFINITION(0x1, 0x468) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46A), ZYDIS_DEFINITION(0x1, 0x46A) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x469), ZYDIS_DEFINITION(0x1, 0x469) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46B), ZYDIS_DEFINITION(0x1, 0x46B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46C), ZYDIS_DEFINITION(0x1, 0x46C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46E), ZYDIS_DEFINITION(0x1, 0x46E) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46D), ZYDIS_DEFINITION(0x1, 0x46D) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x46F), ZYDIS_DEFINITION(0x1, 0x46F) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2BF), ZYDIS_DEFINITION(0x1, 0x2BF) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2BD), ZYDIS_DEFINITION(0x1, 0x2BD) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C0), ZYDIS_DEFINITION(0x1, 0x2C0) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2BE), ZYDIS_DEFINITION(0x1, 0x2BE) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C3), ZYDIS_DEFINITION(0x1, 0x2C3) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C1), ZYDIS_DEFINITION(0x1, 0x2C1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C4), ZYDIS_DEFINITION(0x1, 0x2C4) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2C2), ZYDIS_DEFINITION(0x1, 0x2C2) }, +    { ZYDIS_DEFINITION(0x8, 0x25D), ZYDIS_DEFINITION(0x8, 0x25E), ZYDIS_DEFINITION(0x8, 0x2A5) }, +    { ZYDIS_DEFINITION(0x8, 0x25D), ZYDIS_DEFINITION(0x8, 0x25F), ZYDIS_DEFINITION(0x8, 0x2A5) }+};++const ZydisDecoderTreeNode FILTERS_VECTOR_LENGTH[][3] =+{+    { ZYDIS_DEFINITION(0x1, 0x4D2), ZYDIS_DEFINITION(0x1, 0x4D3), ZYDIS_DEFINITION(0x1, 0x4D4) }, +    { ZYDIS_DEFINITION(0x1, 0x4D5), ZYDIS_DEFINITION(0x1, 0x4D6), ZYDIS_DEFINITION(0x1, 0x4D7) }, +    { ZYDIS_DEFINITION(0x1, 0x4D8), ZYDIS_DEFINITION(0x1, 0x4D9), ZYDIS_DEFINITION(0x1, 0x4DA) }, +    { ZYDIS_DEFINITION(0x1, 0x4DB), ZYDIS_DEFINITION(0x1, 0x4DC), ZYDIS_DEFINITION(0x1, 0x4DD) }, +    { ZYDIS_DEFINITION(0x1, 0x494), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x49C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x49D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBDA), ZYDIS_DEFINITION(0x1, 0xBDB), ZYDIS_DEFINITION(0x1, 0xBDC) }, +    { ZYDIS_DEFINITION(0x1, 0xBDD), ZYDIS_DEFINITION(0x1, 0xBDE), ZYDIS_DEFINITION(0x1, 0xBDF) }, +    { ZYDIS_DEFINITION(0x1, 0xBCE), ZYDIS_DEFINITION(0x1, 0xBCF), ZYDIS_DEFINITION(0x1, 0xBD0) }, +    { ZYDIS_DEFINITION(0x1, 0xBD1), ZYDIS_DEFINITION(0x1, 0xBD2), ZYDIS_DEFINITION(0x1, 0xBD3) }, +    { ZYDIS_DEFINITION(0x1, 0x499), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x497), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x498), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x432), ZYDIS_DEFINITION(0x1, 0x433), ZYDIS_DEFINITION(0x1, 0x434) }, +    { ZYDIS_DEFINITION(0x1, 0x435), ZYDIS_DEFINITION(0x1, 0x436), ZYDIS_DEFINITION(0x1, 0x437) }, +    { ZYDIS_DEFINITION(0x1, 0x438), ZYDIS_DEFINITION(0x1, 0x439), ZYDIS_DEFINITION(0x1, 0x43A) }, +    { ZYDIS_DEFINITION(0x1, 0x43B), ZYDIS_DEFINITION(0x1, 0x43C), ZYDIS_DEFINITION(0x1, 0x43D) }, +    { ZYDIS_DEFINITION(0x1, 0x4A7), ZYDIS_DEFINITION(0x1, 0x4A8), ZYDIS_DEFINITION(0x1, 0x4A9) }, +    { ZYDIS_DEFINITION(0x1, 0xBA2), ZYDIS_DEFINITION(0x1, 0xBA3), ZYDIS_DEFINITION(0x1, 0xBA4) }, +    { ZYDIS_DEFINITION(0x1, 0xBA5), ZYDIS_DEFINITION(0x1, 0xBA6), ZYDIS_DEFINITION(0x1, 0xBA7) }, +    { ZYDIS_DEFINITION(0x1, 0x4E), ZYDIS_DEFINITION(0x1, 0x4F), ZYDIS_DEFINITION(0x1, 0x50) }, +    { ZYDIS_DEFINITION(0x1, 0x51), ZYDIS_DEFINITION(0x1, 0x52), ZYDIS_DEFINITION(0x1, 0x53) }, +    { ZYDIS_DEFINITION(0x1, 0x42), ZYDIS_DEFINITION(0x1, 0x43), ZYDIS_DEFINITION(0x1, 0x44) }, +    { ZYDIS_DEFINITION(0x1, 0x45), ZYDIS_DEFINITION(0x1, 0x46), ZYDIS_DEFINITION(0x1, 0x47) }, +    { ZYDIS_DEFINITION(0x1, 0x4F8), ZYDIS_DEFINITION(0x1, 0x4F9), ZYDIS_DEFINITION(0x1, 0x4FA) }, +    { ZYDIS_DEFINITION(0x1, 0x4FB), ZYDIS_DEFINITION(0x1, 0x4FC), ZYDIS_DEFINITION(0x1, 0x4FD) }, +    { ZYDIS_DEFINITION(0x1, 0xBE6), ZYDIS_DEFINITION(0x1, 0xBE7), ZYDIS_DEFINITION(0x1, 0xBE8) }, +    { ZYDIS_DEFINITION(0x1, 0xBE9), ZYDIS_DEFINITION(0x1, 0xBEA), ZYDIS_DEFINITION(0x1, 0xBEB) }, +    { ZYDIS_DEFINITION(0x1, 0xC), ZYDIS_DEFINITION(0x1, 0xD), ZYDIS_DEFINITION(0x1, 0xE) }, +    { ZYDIS_DEFINITION(0x1, 0xF), ZYDIS_DEFINITION(0x1, 0x10), ZYDIS_DEFINITION(0x1, 0x11) }, +    { ZYDIS_DEFINITION(0x1, 0x4E6), ZYDIS_DEFINITION(0x1, 0x4E7), ZYDIS_DEFINITION(0x1, 0x4E8) }, +    { ZYDIS_DEFINITION(0x1, 0x4E9), ZYDIS_DEFINITION(0x1, 0x4EA), ZYDIS_DEFINITION(0x1, 0x4EB) }, +    { ZYDIS_DEFINITION(0x1, 0xF1), ZYDIS_DEFINITION(0x1, 0xF2), ZYDIS_DEFINITION(0x1, 0xF3) }, +    { ZYDIS_DEFINITION(0x1, 0xF4), ZYDIS_DEFINITION(0x1, 0xF5), ZYDIS_DEFINITION(0x1, 0xF6) }, +    { ZYDIS_DEFINITION(0x1, 0xAD), ZYDIS_DEFINITION(0x1, 0xAE), ZYDIS_DEFINITION(0x1, 0xAF) }, +    { ZYDIS_DEFINITION(0x1, 0x11B), ZYDIS_DEFINITION(0x1, 0x11C), ZYDIS_DEFINITION(0x1, 0x11D) }, +    { ZYDIS_DEFINITION(0x1, 0xB0), ZYDIS_DEFINITION(0x1, 0xB1), ZYDIS_DEFINITION(0x1, 0xB2) }, +    { ZYDIS_DEFINITION(0x1, 0x11E), ZYDIS_DEFINITION(0x1, 0x11F), ZYDIS_DEFINITION(0x1, 0x120) }, +    { ZYDIS_DEFINITION(0x1, 0xBB6), ZYDIS_DEFINITION(0x1, 0xBB7), ZYDIS_DEFINITION(0x1, 0xBB8) }, +    { ZYDIS_DEFINITION(0x1, 0xBB9), ZYDIS_DEFINITION(0x1, 0xBBA), ZYDIS_DEFINITION(0x1, 0xBBB) }, +    { ZYDIS_DEFINITION(0x1, 0x41A), ZYDIS_DEFINITION(0x1, 0x41B), ZYDIS_DEFINITION(0x1, 0x41C) }, +    { ZYDIS_DEFINITION(0x1, 0x41D), ZYDIS_DEFINITION(0x1, 0x41E), ZYDIS_DEFINITION(0x1, 0x41F) }, +    { ZYDIS_DEFINITION(0x1, 0x1F0), ZYDIS_DEFINITION(0x1, 0x1F1), ZYDIS_DEFINITION(0x1, 0x1F2) }, +    { ZYDIS_DEFINITION(0x1, 0x1F3), ZYDIS_DEFINITION(0x1, 0x1F4), ZYDIS_DEFINITION(0x1, 0x1F5) }, +    { ZYDIS_DEFINITION(0x1, 0x406), ZYDIS_DEFINITION(0x1, 0x407), ZYDIS_DEFINITION(0x1, 0x408) }, +    { ZYDIS_DEFINITION(0x1, 0x409), ZYDIS_DEFINITION(0x1, 0x40A), ZYDIS_DEFINITION(0x1, 0x40B) }, +    { ZYDIS_DEFINITION(0x1, 0x186), ZYDIS_DEFINITION(0x1, 0x187), ZYDIS_DEFINITION(0x1, 0x188) }, +    { ZYDIS_DEFINITION(0x1, 0x16A), ZYDIS_DEFINITION(0x1, 0x16B), ZYDIS_DEFINITION(0x1, 0x16C) }, +    { ZYDIS_DEFINITION(0x1, 0x189), ZYDIS_DEFINITION(0x1, 0x18A), ZYDIS_DEFINITION(0x1, 0x18B) }, +    { ZYDIS_DEFINITION(0x1, 0x16D), ZYDIS_DEFINITION(0x1, 0x16E), ZYDIS_DEFINITION(0x1, 0x16F) }, +    { ZYDIS_DEFINITION(0x1, 0x106), ZYDIS_DEFINITION(0x1, 0x107), ZYDIS_DEFINITION(0x1, 0x108) }, +    { ZYDIS_DEFINITION(0x1, 0xD5), ZYDIS_DEFINITION(0x1, 0xD6), ZYDIS_DEFINITION(0x1, 0xD7) }, +    { ZYDIS_DEFINITION(0x1, 0x109), ZYDIS_DEFINITION(0x1, 0x10A), ZYDIS_DEFINITION(0x1, 0x10B) }, +    { ZYDIS_DEFINITION(0x1, 0xD8), ZYDIS_DEFINITION(0x1, 0xD9), ZYDIS_DEFINITION(0x1, 0xDA) }, +    { ZYDIS_DEFINITION(0xB, 0x88), ZYDIS_DEFINITION(0xB, 0x89), ZYDIS_DEFINITION(0xB, 0x8A) }, +    { ZYDIS_DEFINITION(0xB, 0x8B), ZYDIS_DEFINITION(0xB, 0x8C), ZYDIS_DEFINITION(0xB, 0x8D) }, +    { ZYDIS_DEFINITION(0xB, 0xB94), ZYDIS_DEFINITION(0xB, 0xB95), ZYDIS_DEFINITION(0xB, 0xB96) }, +    { ZYDIS_DEFINITION(0xB, 0xB97), ZYDIS_DEFINITION(0xB, 0xB98), ZYDIS_DEFINITION(0xB, 0xB99) }, +    { ZYDIS_DEFINITION(0x1, 0x4C6), ZYDIS_DEFINITION(0x1, 0x4C7), ZYDIS_DEFINITION(0x1, 0x4C8) }, +    { ZYDIS_DEFINITION(0x1, 0x4C9), ZYDIS_DEFINITION(0x1, 0x4CA), ZYDIS_DEFINITION(0x1, 0x4CB) }, +    { ZYDIS_DEFINITION(0x1, 0x4CC), ZYDIS_DEFINITION(0x1, 0x4CD), ZYDIS_DEFINITION(0x1, 0x4CE) }, +    { ZYDIS_DEFINITION(0x1, 0x4CF), ZYDIS_DEFINITION(0x1, 0x4D0), ZYDIS_DEFINITION(0x1, 0x4D1) }, +    { ZYDIS_DEFINITION(0x1, 0x49A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x49B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBD4), ZYDIS_DEFINITION(0x1, 0xBD5), ZYDIS_DEFINITION(0x1, 0xBD6) }, +    { ZYDIS_DEFINITION(0x1, 0xBD7), ZYDIS_DEFINITION(0x1, 0xBD8), ZYDIS_DEFINITION(0x1, 0xBD9) }, +    { ZYDIS_DEFINITION(0x1, 0xBC8), ZYDIS_DEFINITION(0x1, 0xBC9), ZYDIS_DEFINITION(0x1, 0xBCA) }, +    { ZYDIS_DEFINITION(0x1, 0xBCB), ZYDIS_DEFINITION(0x1, 0xBCC), ZYDIS_DEFINITION(0x1, 0xBCD) }, +    { ZYDIS_DEFINITION(0x1, 0x495), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x496), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x426), ZYDIS_DEFINITION(0x1, 0x427), ZYDIS_DEFINITION(0x1, 0x428) }, +    { ZYDIS_DEFINITION(0x1, 0x429), ZYDIS_DEFINITION(0x1, 0x42A), ZYDIS_DEFINITION(0x1, 0x42B) }, +    { ZYDIS_DEFINITION(0x1, 0x42C), ZYDIS_DEFINITION(0x1, 0x42D), ZYDIS_DEFINITION(0x1, 0x42E) }, +    { ZYDIS_DEFINITION(0x1, 0x42F), ZYDIS_DEFINITION(0x1, 0x430), ZYDIS_DEFINITION(0x1, 0x431) }, +    { ZYDIS_DEFINITION(0x1, 0x4A4), ZYDIS_DEFINITION(0x1, 0x4A5), ZYDIS_DEFINITION(0x1, 0x4A6) }, +    { ZYDIS_DEFINITION(0x1, 0xB9B), ZYDIS_DEFINITION(0x1, 0xB9C), ZYDIS_DEFINITION(0x1, 0xB9D) }, +    { ZYDIS_DEFINITION(0x1, 0xB9E), ZYDIS_DEFINITION(0x1, 0xB9F), ZYDIS_DEFINITION(0x1, 0xBA0) }, +    { ZYDIS_DEFINITION(0x1, 0x48), ZYDIS_DEFINITION(0x1, 0x49), ZYDIS_DEFINITION(0x1, 0x4A) }, +    { ZYDIS_DEFINITION(0x1, 0x4B), ZYDIS_DEFINITION(0x1, 0x4C), ZYDIS_DEFINITION(0x1, 0x4D) }, +    { ZYDIS_DEFINITION(0x1, 0x3C), ZYDIS_DEFINITION(0x1, 0x3D), ZYDIS_DEFINITION(0x1, 0x3E) }, +    { ZYDIS_DEFINITION(0x1, 0x3F), ZYDIS_DEFINITION(0x1, 0x40), ZYDIS_DEFINITION(0x1, 0x41) }, +    { ZYDIS_DEFINITION(0x1, 0x4F2), ZYDIS_DEFINITION(0x1, 0x4F3), ZYDIS_DEFINITION(0x1, 0x4F4) }, +    { ZYDIS_DEFINITION(0x1, 0x4F5), ZYDIS_DEFINITION(0x1, 0x4F6), ZYDIS_DEFINITION(0x1, 0x4F7) }, +    { ZYDIS_DEFINITION(0x1, 0xBE0), ZYDIS_DEFINITION(0x1, 0xBE1), ZYDIS_DEFINITION(0x1, 0xBE2) }, +    { ZYDIS_DEFINITION(0x1, 0xBE3), ZYDIS_DEFINITION(0x1, 0xBE4), ZYDIS_DEFINITION(0x1, 0xBE5) }, +    { ZYDIS_DEFINITION(0x1, 0x5), ZYDIS_DEFINITION(0x1, 0x6), ZYDIS_DEFINITION(0x1, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0x8), ZYDIS_DEFINITION(0x1, 0x9), ZYDIS_DEFINITION(0x1, 0xA) }, +    { ZYDIS_DEFINITION(0x1, 0x4DF), ZYDIS_DEFINITION(0x1, 0x4E0), ZYDIS_DEFINITION(0x1, 0x4E1) }, +    { ZYDIS_DEFINITION(0x1, 0x4E2), ZYDIS_DEFINITION(0x1, 0x4E3), ZYDIS_DEFINITION(0x1, 0x4E4) }, +    { ZYDIS_DEFINITION(0x1, 0xC7), ZYDIS_DEFINITION(0x1, 0xC8), ZYDIS_DEFINITION(0x1, 0xC9) }, +    { ZYDIS_DEFINITION(0x1, 0xCA), ZYDIS_DEFINITION(0x1, 0xCB), ZYDIS_DEFINITION(0x1, 0xCC) }, +    { ZYDIS_DEFINITION(0x1, 0xEA), ZYDIS_DEFINITION(0x1, 0xEB), ZYDIS_DEFINITION(0x1, 0xEC) }, +    { ZYDIS_DEFINITION(0x1, 0xED), ZYDIS_DEFINITION(0x1, 0xEE), ZYDIS_DEFINITION(0x1, 0xEF) }, +    { ZYDIS_DEFINITION(0x1, 0xBAF), ZYDIS_DEFINITION(0x1, 0xBB0), ZYDIS_DEFINITION(0x1, 0xBB1) }, +    { ZYDIS_DEFINITION(0x1, 0xBB2), ZYDIS_DEFINITION(0x1, 0xBB3), ZYDIS_DEFINITION(0x1, 0xBB4) }, +    { ZYDIS_DEFINITION(0x1, 0x413), ZYDIS_DEFINITION(0x1, 0x414), ZYDIS_DEFINITION(0x1, 0x415) }, +    { ZYDIS_DEFINITION(0x1, 0x416), ZYDIS_DEFINITION(0x1, 0x417), ZYDIS_DEFINITION(0x1, 0x418) }, +    { ZYDIS_DEFINITION(0x1, 0x1E9), ZYDIS_DEFINITION(0x1, 0x1EA), ZYDIS_DEFINITION(0x1, 0x1EB) }, +    { ZYDIS_DEFINITION(0x1, 0x1EC), ZYDIS_DEFINITION(0x1, 0x1ED), ZYDIS_DEFINITION(0x1, 0x1EE) }, +    { ZYDIS_DEFINITION(0x1, 0x3FF), ZYDIS_DEFINITION(0x1, 0x400), ZYDIS_DEFINITION(0x1, 0x401) }, +    { ZYDIS_DEFINITION(0x1, 0x402), ZYDIS_DEFINITION(0x1, 0x403), ZYDIS_DEFINITION(0x1, 0x404) }, +    { ZYDIS_DEFINITION(0x1, 0xABE), ZYDIS_DEFINITION(0x1, 0xABF), ZYDIS_DEFINITION(0x1, 0xAC0) }, +    { ZYDIS_DEFINITION(0x1, 0xAC1), ZYDIS_DEFINITION(0x1, 0xAC2), ZYDIS_DEFINITION(0x1, 0xAC3) }, +    { ZYDIS_DEFINITION(0x1, 0xAD0), ZYDIS_DEFINITION(0x1, 0xAD1), ZYDIS_DEFINITION(0x1, 0xAD2) }, +    { ZYDIS_DEFINITION(0x1, 0xAD3), ZYDIS_DEFINITION(0x1, 0xAD4), ZYDIS_DEFINITION(0x1, 0xAD5) }, +    { ZYDIS_DEFINITION(0x1, 0xAC4), ZYDIS_DEFINITION(0x1, 0xAC5), ZYDIS_DEFINITION(0x1, 0xAC6) }, +    { ZYDIS_DEFINITION(0x1, 0xAC7), ZYDIS_DEFINITION(0x1, 0xAC8), ZYDIS_DEFINITION(0x1, 0xAC9) }, +    { ZYDIS_DEFINITION(0x1, 0x52A), ZYDIS_DEFINITION(0x1, 0x52B), ZYDIS_DEFINITION(0x1, 0x52C) }, +    { ZYDIS_DEFINITION(0x1, 0x52D), ZYDIS_DEFINITION(0x1, 0x52E), ZYDIS_DEFINITION(0x1, 0x52F) }, +    { ZYDIS_DEFINITION(0x1, 0x605), ZYDIS_DEFINITION(0x1, 0x606), ZYDIS_DEFINITION(0x1, 0x607) }, +    { ZYDIS_DEFINITION(0x1, 0x608), ZYDIS_DEFINITION(0x1, 0x609), ZYDIS_DEFINITION(0x1, 0x60A) }, +    { ZYDIS_DEFINITION(0x1, 0x617), ZYDIS_DEFINITION(0x1, 0x618), ZYDIS_DEFINITION(0x1, 0x619) }, +    { ZYDIS_DEFINITION(0x1, 0x61A), ZYDIS_DEFINITION(0x1, 0x61B), ZYDIS_DEFINITION(0x1, 0x61C) }, +    { ZYDIS_DEFINITION(0x1, 0x60B), ZYDIS_DEFINITION(0x1, 0x60C), ZYDIS_DEFINITION(0x1, 0x60D) }, +    { ZYDIS_DEFINITION(0x1, 0x60E), ZYDIS_DEFINITION(0x1, 0x60F), ZYDIS_DEFINITION(0x1, 0x610) }, +    { ZYDIS_DEFINITION(0x1, 0x536), ZYDIS_DEFINITION(0x1, 0x537), ZYDIS_DEFINITION(0x1, 0x538) }, +    { ZYDIS_DEFINITION(0x1, 0x539), ZYDIS_DEFINITION(0x1, 0x53A), ZYDIS_DEFINITION(0x1, 0x53B) }, +    { ZYDIS_DEFINITION(0x1, 0xAA6), ZYDIS_DEFINITION(0x1, 0xAA7), ZYDIS_DEFINITION(0x1, 0xAA8) }, +    { ZYDIS_DEFINITION(0x1, 0xAA9), ZYDIS_DEFINITION(0x1, 0xAAA), ZYDIS_DEFINITION(0x1, 0xAAB) }, +    { ZYDIS_DEFINITION(0x1, 0xAB8), ZYDIS_DEFINITION(0x1, 0xAB9), ZYDIS_DEFINITION(0x1, 0xABA) }, +    { ZYDIS_DEFINITION(0x1, 0xABB), ZYDIS_DEFINITION(0x1, 0xABC), ZYDIS_DEFINITION(0x1, 0xABD) }, +    { ZYDIS_DEFINITION(0x1, 0xAAC), ZYDIS_DEFINITION(0x1, 0xAAD), ZYDIS_DEFINITION(0x1, 0xAAE) }, +    { ZYDIS_DEFINITION(0x1, 0xAAF), ZYDIS_DEFINITION(0x1, 0xAB0), ZYDIS_DEFINITION(0x1, 0xAB1) }, +    { ZYDIS_DEFINITION(0x1, 0x524), ZYDIS_DEFINITION(0x1, 0x525), ZYDIS_DEFINITION(0x1, 0x526) }, +    { ZYDIS_DEFINITION(0x1, 0x527), ZYDIS_DEFINITION(0x1, 0x528), ZYDIS_DEFINITION(0x1, 0x529) }, +    { ZYDIS_DEFINITION(0x1, 0xACA), ZYDIS_DEFINITION(0x1, 0xACB), ZYDIS_DEFINITION(0x1, 0xACC) }, +    { ZYDIS_DEFINITION(0x1, 0xACD), ZYDIS_DEFINITION(0x1, 0xACE), ZYDIS_DEFINITION(0x1, 0xACF) }, +    { ZYDIS_DEFINITION(0x1, 0xAB2), ZYDIS_DEFINITION(0x1, 0xAB3), ZYDIS_DEFINITION(0x1, 0xAB4) }, +    { ZYDIS_DEFINITION(0x1, 0xAB5), ZYDIS_DEFINITION(0x1, 0xAB6), ZYDIS_DEFINITION(0x1, 0xAB7) }, +    { ZYDIS_DEFINITION(0x1, 0x43E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4AA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x440), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x43F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4AB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x441), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x44C), ZYDIS_DEFINITION(0x1, 0x44D), ZYDIS_DEFINITION(0x1, 0x44E) }, +    { ZYDIS_DEFINITION(0x1, 0x458), ZYDIS_DEFINITION(0x1, 0x459), ZYDIS_DEFINITION(0x1, 0x45A) }, +    { ZYDIS_DEFINITION(0x1, 0x44F), ZYDIS_DEFINITION(0x1, 0x450), ZYDIS_DEFINITION(0x1, 0x451) }, +    { ZYDIS_DEFINITION(0x1, 0x45B), ZYDIS_DEFINITION(0x1, 0x45C), ZYDIS_DEFINITION(0x1, 0x45D) }, +    { ZYDIS_DEFINITION(0xB, 0x97A), ZYDIS_DEFINITION(0xB, 0x97B), ZYDIS_DEFINITION(0xB, 0x97C) }, +    { ZYDIS_DEFINITION(0xB, 0x97D), ZYDIS_DEFINITION(0xB, 0x97E), ZYDIS_DEFINITION(0xB, 0x97F) }, +    { ZYDIS_DEFINITION(0xB, 0xA2E), ZYDIS_DEFINITION(0xB, 0xA2F), ZYDIS_DEFINITION(0xB, 0xA30) }, +    { ZYDIS_DEFINITION(0xB, 0x9F2), ZYDIS_DEFINITION(0xB, 0x9F3), ZYDIS_DEFINITION(0xB, 0x9F4) }, +    { ZYDIS_DEFINITION(0xB, 0x9BC), ZYDIS_DEFINITION(0xB, 0x9BD), ZYDIS_DEFINITION(0xB, 0x9BE) }, +    { ZYDIS_DEFINITION(0xB, 0xA31), ZYDIS_DEFINITION(0xB, 0xA32), ZYDIS_DEFINITION(0xB, 0xA33) }, +    { ZYDIS_DEFINITION(0xB, 0x9F5), ZYDIS_DEFINITION(0xB, 0x9F6), ZYDIS_DEFINITION(0xB, 0x9F7) }, +    { ZYDIS_DEFINITION(0xB, 0x9BF), ZYDIS_DEFINITION(0xB, 0x9C0), ZYDIS_DEFINITION(0xB, 0x9C1) }, +    { ZYDIS_DEFINITION(0xB, 0x8FC), ZYDIS_DEFINITION(0xB, 0x8FD), ZYDIS_DEFINITION(0xB, 0x8FE) }, +    { ZYDIS_DEFINITION(0xB, 0x902), ZYDIS_DEFINITION(0xB, 0x903), ZYDIS_DEFINITION(0xB, 0x904) }, +    { ZYDIS_DEFINITION(0xB, 0x8E4), ZYDIS_DEFINITION(0xB, 0x8E5), ZYDIS_DEFINITION(0xB, 0x8E6) }, +    { ZYDIS_DEFINITION(0xB, 0x8EA), ZYDIS_DEFINITION(0xB, 0x8EB), ZYDIS_DEFINITION(0xB, 0x8EC) }, +    { ZYDIS_DEFINITION(0xB, 0x9FE), ZYDIS_DEFINITION(0xB, 0x9FF), ZYDIS_DEFINITION(0xB, 0xA00) }, +    { ZYDIS_DEFINITION(0xB, 0x9C8), ZYDIS_DEFINITION(0xB, 0x9C9), ZYDIS_DEFINITION(0xB, 0x9CA) }, +    { ZYDIS_DEFINITION(0xB, 0x9D4), ZYDIS_DEFINITION(0xB, 0x9D5), ZYDIS_DEFINITION(0xB, 0x9D6) }, +    { ZYDIS_DEFINITION(0xB, 0x98C), ZYDIS_DEFINITION(0xB, 0x98D), ZYDIS_DEFINITION(0xB, 0x98E) }, +    { ZYDIS_DEFINITION(0xB, 0x8FF), ZYDIS_DEFINITION(0xB, 0x900), ZYDIS_DEFINITION(0xB, 0x901) }, +    { ZYDIS_DEFINITION(0xB, 0x905), ZYDIS_DEFINITION(0xB, 0x906), ZYDIS_DEFINITION(0xB, 0x907) }, +    { ZYDIS_DEFINITION(0xB, 0x8E7), ZYDIS_DEFINITION(0xB, 0x8E8), ZYDIS_DEFINITION(0xB, 0x8E9) }, +    { ZYDIS_DEFINITION(0xB, 0x8ED), ZYDIS_DEFINITION(0xB, 0x8EE), ZYDIS_DEFINITION(0xB, 0x8EF) }, +    { ZYDIS_DEFINITION(0xB, 0xA01), ZYDIS_DEFINITION(0xB, 0xA02), ZYDIS_DEFINITION(0xB, 0xA03) }, +    { ZYDIS_DEFINITION(0xB, 0x9CB), ZYDIS_DEFINITION(0xB, 0x9CC), ZYDIS_DEFINITION(0xB, 0x9CD) }, +    { ZYDIS_DEFINITION(0xB, 0x9D7), ZYDIS_DEFINITION(0xB, 0x9D8), ZYDIS_DEFINITION(0xB, 0x9D9) }, +    { ZYDIS_DEFINITION(0xB, 0x98F), ZYDIS_DEFINITION(0xB, 0x990), ZYDIS_DEFINITION(0xB, 0x991) }, +    { ZYDIS_DEFINITION(0xB, 0xA10), ZYDIS_DEFINITION(0xB, 0xA11), ZYDIS_DEFINITION(0xB, 0xA12) }, +    { ZYDIS_DEFINITION(0xB, 0xA0A), ZYDIS_DEFINITION(0xB, 0xA0B), ZYDIS_DEFINITION(0xB, 0xA0C) }, +    { ZYDIS_DEFINITION(0xB, 0x99E), ZYDIS_DEFINITION(0xB, 0x99F), ZYDIS_DEFINITION(0xB, 0x9A0) }, +    { ZYDIS_DEFINITION(0xB, 0x998), ZYDIS_DEFINITION(0xB, 0x999), ZYDIS_DEFINITION(0xB, 0x99A) }, +    { ZYDIS_DEFINITION(0xB, 0xA13), ZYDIS_DEFINITION(0xB, 0xA14), ZYDIS_DEFINITION(0xB, 0xA15) }, +    { ZYDIS_DEFINITION(0xB, 0xA0D), ZYDIS_DEFINITION(0xB, 0xA0E), ZYDIS_DEFINITION(0xB, 0xA0F) }, +    { ZYDIS_DEFINITION(0xB, 0x9A1), ZYDIS_DEFINITION(0xB, 0x9A2), ZYDIS_DEFINITION(0xB, 0x9A3) }, +    { ZYDIS_DEFINITION(0xB, 0x99B), ZYDIS_DEFINITION(0xB, 0x99C), ZYDIS_DEFINITION(0xB, 0x99D) }, +    { ZYDIS_DEFINITION(0x1, 0x5ED), ZYDIS_DEFINITION(0x1, 0x5EE), ZYDIS_DEFINITION(0x1, 0x5EF) }, +    { ZYDIS_DEFINITION(0x1, 0x5F0), ZYDIS_DEFINITION(0x1, 0x5F1), ZYDIS_DEFINITION(0x1, 0x5F2) }, +    { ZYDIS_DEFINITION(0x1, 0x5FF), ZYDIS_DEFINITION(0x1, 0x600), ZYDIS_DEFINITION(0x1, 0x601) }, +    { ZYDIS_DEFINITION(0x1, 0x602), ZYDIS_DEFINITION(0x1, 0x603), ZYDIS_DEFINITION(0x1, 0x604) }, +    { ZYDIS_DEFINITION(0x1, 0x5F3), ZYDIS_DEFINITION(0x1, 0x5F4), ZYDIS_DEFINITION(0x1, 0x5F5) }, +    { ZYDIS_DEFINITION(0x1, 0x5F6), ZYDIS_DEFINITION(0x1, 0x5F7), ZYDIS_DEFINITION(0x1, 0x5F8) }, +    { ZYDIS_DEFINITION(0x1, 0x18D), ZYDIS_DEFINITION(0x1, 0x18E), ZYDIS_DEFINITION(0x1, 0x18F) }, +    { ZYDIS_DEFINITION(0x1, 0x171), ZYDIS_DEFINITION(0x1, 0x172), ZYDIS_DEFINITION(0x1, 0x173) }, +    { ZYDIS_DEFINITION(0x1, 0x190), ZYDIS_DEFINITION(0x1, 0x191), ZYDIS_DEFINITION(0x1, 0x192) }, +    { ZYDIS_DEFINITION(0x1, 0x174), ZYDIS_DEFINITION(0x1, 0x175), ZYDIS_DEFINITION(0x1, 0x176) }, +    { ZYDIS_DEFINITION(0x1, 0x10D), ZYDIS_DEFINITION(0x1, 0x10E), ZYDIS_DEFINITION(0x1, 0x10F) }, +    { ZYDIS_DEFINITION(0x1, 0xDC), ZYDIS_DEFINITION(0x1, 0xDD), ZYDIS_DEFINITION(0x1, 0xDE) }, +    { ZYDIS_DEFINITION(0x1, 0x110), ZYDIS_DEFINITION(0x1, 0x111), ZYDIS_DEFINITION(0x1, 0x112) }, +    { ZYDIS_DEFINITION(0x1, 0xDF), ZYDIS_DEFINITION(0x1, 0xE0), ZYDIS_DEFINITION(0x1, 0xE1) }, +    { ZYDIS_DEFINITION(0x1, 0x17F), ZYDIS_DEFINITION(0x1, 0x180), ZYDIS_DEFINITION(0x1, 0x181) }, +    { ZYDIS_DEFINITION(0x1, 0x163), ZYDIS_DEFINITION(0x1, 0x164), ZYDIS_DEFINITION(0x1, 0x165) }, +    { ZYDIS_DEFINITION(0x1, 0x182), ZYDIS_DEFINITION(0x1, 0x183), ZYDIS_DEFINITION(0x1, 0x184) }, +    { ZYDIS_DEFINITION(0x1, 0x166), ZYDIS_DEFINITION(0x1, 0x167), ZYDIS_DEFINITION(0x1, 0x168) }, +    { ZYDIS_DEFINITION(0x1, 0xFF), ZYDIS_DEFINITION(0x1, 0x100), ZYDIS_DEFINITION(0x1, 0x101) }, +    { ZYDIS_DEFINITION(0x1, 0xCE), ZYDIS_DEFINITION(0x1, 0xCF), ZYDIS_DEFINITION(0x1, 0xD0) }, +    { ZYDIS_DEFINITION(0x1, 0x102), ZYDIS_DEFINITION(0x1, 0x103), ZYDIS_DEFINITION(0x1, 0x104) }, +    { ZYDIS_DEFINITION(0x1, 0xD1), ZYDIS_DEFINITION(0x1, 0xD2), ZYDIS_DEFINITION(0x1, 0xD3) }, +    { ZYDIS_DEFINITION(0x1, 0x442), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4AC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x444), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x443), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4AD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x445), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x452), ZYDIS_DEFINITION(0x1, 0x453), ZYDIS_DEFINITION(0x1, 0x454) }, +    { ZYDIS_DEFINITION(0x1, 0x45E), ZYDIS_DEFINITION(0x1, 0x45F), ZYDIS_DEFINITION(0x1, 0x460) }, +    { ZYDIS_DEFINITION(0x1, 0x455), ZYDIS_DEFINITION(0x1, 0x456), ZYDIS_DEFINITION(0x1, 0x457) }, +    { ZYDIS_DEFINITION(0x1, 0x461), ZYDIS_DEFINITION(0x1, 0x462), ZYDIS_DEFINITION(0x1, 0x463) }, +    { ZYDIS_DEFINITION(0xB, 0x81), ZYDIS_DEFINITION(0xB, 0x82), ZYDIS_DEFINITION(0xB, 0x83) }, +    { ZYDIS_DEFINITION(0xB, 0x84), ZYDIS_DEFINITION(0xB, 0x85), ZYDIS_DEFINITION(0xB, 0x86) }, +    { ZYDIS_DEFINITION(0xB, 0x738), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x739), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x721), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xB8E), ZYDIS_DEFINITION(0xB, 0xB8F), ZYDIS_DEFINITION(0xB, 0xB90) }, +    { ZYDIS_DEFINITION(0xB, 0xB91), ZYDIS_DEFINITION(0xB, 0xB92), ZYDIS_DEFINITION(0xB, 0xB93) }, +    { ZYDIS_DEFINITION(0x1, 0xA34), ZYDIS_DEFINITION(0x1, 0xA35), ZYDIS_DEFINITION(0x1, 0xA36) }, +    { ZYDIS_DEFINITION(0x1, 0xA37), ZYDIS_DEFINITION(0x1, 0xA38), ZYDIS_DEFINITION(0x1, 0xA39) }, +    { ZYDIS_DEFINITION(0x1, 0xA04), ZYDIS_DEFINITION(0x1, 0xA05), ZYDIS_DEFINITION(0x1, 0xA06) }, +    { ZYDIS_DEFINITION(0x1, 0xA07), ZYDIS_DEFINITION(0x1, 0xA08), ZYDIS_DEFINITION(0x1, 0xA09) }, +    { ZYDIS_DEFINITION(0x1, 0xA16), ZYDIS_DEFINITION(0x1, 0xA17), ZYDIS_DEFINITION(0x1, 0xA18) }, +    { ZYDIS_DEFINITION(0x1, 0xA19), ZYDIS_DEFINITION(0x1, 0xA1A), ZYDIS_DEFINITION(0x1, 0xA1B) }, +    { ZYDIS_DEFINITION(0x1, 0x548), ZYDIS_DEFINITION(0x1, 0x549), ZYDIS_DEFINITION(0x1, 0x54A) }, +    { ZYDIS_DEFINITION(0x1, 0x54B), ZYDIS_DEFINITION(0x1, 0x54C), ZYDIS_DEFINITION(0x1, 0x54D) }, +    { ZYDIS_DEFINITION(0x1, 0x8AE), ZYDIS_DEFINITION(0x1, 0x8AF), ZYDIS_DEFINITION(0x1, 0x8B0) }, +    { ZYDIS_DEFINITION(0x1, 0x8B1), ZYDIS_DEFINITION(0x1, 0x8B2), ZYDIS_DEFINITION(0x1, 0x8B3) }, +    { ZYDIS_DEFINITION(0x1, 0x4B0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4B1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xA58), ZYDIS_DEFINITION(0x1, 0xA59), ZYDIS_DEFINITION(0x1, 0xA5A) }, +    { ZYDIS_DEFINITION(0x1, 0xA5B), ZYDIS_DEFINITION(0x1, 0xA5C), ZYDIS_DEFINITION(0x1, 0xA5D) }, +    { ZYDIS_DEFINITION(0x1, 0xA5E), ZYDIS_DEFINITION(0x1, 0xA5F), ZYDIS_DEFINITION(0x1, 0xA60) }, +    { ZYDIS_DEFINITION(0x1, 0xA61), ZYDIS_DEFINITION(0x1, 0xA62), ZYDIS_DEFINITION(0x1, 0xA63) }, +    { ZYDIS_DEFINITION(0x1, 0x7A6), ZYDIS_DEFINITION(0x1, 0x7A7), ZYDIS_DEFINITION(0x1, 0x7A8) }, +    { ZYDIS_DEFINITION(0x1, 0x7A9), ZYDIS_DEFINITION(0x1, 0x7AA), ZYDIS_DEFINITION(0x1, 0x7AB) }, +    { ZYDIS_DEFINITION(0x1, 0x572), ZYDIS_DEFINITION(0x1, 0x573), ZYDIS_DEFINITION(0x1, 0x574) }, +    { ZYDIS_DEFINITION(0x1, 0x584), ZYDIS_DEFINITION(0x1, 0x585), ZYDIS_DEFINITION(0x1, 0x586) }, +    { ZYDIS_DEFINITION(0x1, 0x575), ZYDIS_DEFINITION(0x1, 0x576), ZYDIS_DEFINITION(0x1, 0x577) }, +    { ZYDIS_DEFINITION(0x1, 0x587), ZYDIS_DEFINITION(0x1, 0x588), ZYDIS_DEFINITION(0x1, 0x589) }, +    { ZYDIS_DEFINITION(0x1, 0x55A), ZYDIS_DEFINITION(0x1, 0x55B), ZYDIS_DEFINITION(0x1, 0x55C) }, +    { ZYDIS_DEFINITION(0x1, 0x55D), ZYDIS_DEFINITION(0x1, 0x55E), ZYDIS_DEFINITION(0x1, 0x55F) }, +    { ZYDIS_DEFINITION(0x1, 0x560), ZYDIS_DEFINITION(0x1, 0x561), ZYDIS_DEFINITION(0x1, 0x562) }, +    { ZYDIS_DEFINITION(0x1, 0x563), ZYDIS_DEFINITION(0x1, 0x564), ZYDIS_DEFINITION(0x1, 0x565) }, +    { ZYDIS_DEFINITION(0x1, 0x776), ZYDIS_DEFINITION(0x1, 0x777), ZYDIS_DEFINITION(0x1, 0x778) }, +    { ZYDIS_DEFINITION(0x1, 0x779), ZYDIS_DEFINITION(0x1, 0x77A), ZYDIS_DEFINITION(0x1, 0x77B) }, +    { ZYDIS_DEFINITION(0x1, 0x578), ZYDIS_DEFINITION(0x1, 0x579), ZYDIS_DEFINITION(0x1, 0x57A) }, +    { ZYDIS_DEFINITION(0x1, 0x57E), ZYDIS_DEFINITION(0x1, 0x57F), ZYDIS_DEFINITION(0x1, 0x580) }, +    { ZYDIS_DEFINITION(0x1, 0x57B), ZYDIS_DEFINITION(0x1, 0x57C), ZYDIS_DEFINITION(0x1, 0x57D) }, +    { ZYDIS_DEFINITION(0x1, 0x581), ZYDIS_DEFINITION(0x1, 0x582), ZYDIS_DEFINITION(0x1, 0x583) }, +    { ZYDIS_DEFINITION(0x1, 0x58A), ZYDIS_DEFINITION(0x1, 0x58B), ZYDIS_DEFINITION(0x1, 0x58C) }, +    { ZYDIS_DEFINITION(0x1, 0x58D), ZYDIS_DEFINITION(0x1, 0x58E), ZYDIS_DEFINITION(0x1, 0x58F) }, +    { ZYDIS_DEFINITION(0x1, 0x9F8), ZYDIS_DEFINITION(0x1, 0x9F9), ZYDIS_DEFINITION(0x1, 0x9FA) }, +    { ZYDIS_DEFINITION(0x1, 0x9FB), ZYDIS_DEFINITION(0x1, 0x9FC), ZYDIS_DEFINITION(0x1, 0x9FD) }, +    { ZYDIS_DEFINITION(0x1, 0x9CE), ZYDIS_DEFINITION(0x1, 0x9CF), ZYDIS_DEFINITION(0x1, 0x9D0) }, +    { ZYDIS_DEFINITION(0x1, 0x9DA), ZYDIS_DEFINITION(0x1, 0x9DB), ZYDIS_DEFINITION(0x1, 0x9DC) }, +    { ZYDIS_DEFINITION(0x1, 0x9D1), ZYDIS_DEFINITION(0x1, 0x9D2), ZYDIS_DEFINITION(0x1, 0x9D3) }, +    { ZYDIS_DEFINITION(0x1, 0x9DD), ZYDIS_DEFINITION(0x1, 0x9DE), ZYDIS_DEFINITION(0x1, 0x9DF) }, +    { ZYDIS_DEFINITION(0x1, 0x590), ZYDIS_DEFINITION(0x1, 0x591), ZYDIS_DEFINITION(0x1, 0x592) }, +    { ZYDIS_DEFINITION(0x1, 0x593), ZYDIS_DEFINITION(0x1, 0x594), ZYDIS_DEFINITION(0x1, 0x595) }, +    { ZYDIS_DEFINITION(0x1, 0x896), ZYDIS_DEFINITION(0x1, 0x897), ZYDIS_DEFINITION(0x1, 0x898) }, +    { ZYDIS_DEFINITION(0x1, 0x899), ZYDIS_DEFINITION(0x1, 0x89A), ZYDIS_DEFINITION(0x1, 0x89B) }, +    { ZYDIS_DEFINITION(0x1, 0x89C), ZYDIS_DEFINITION(0x1, 0x89D), ZYDIS_DEFINITION(0x1, 0x89E) }, +    { ZYDIS_DEFINITION(0x1, 0x89F), ZYDIS_DEFINITION(0x1, 0x8A0), ZYDIS_DEFINITION(0x1, 0x8A1) }, +    { ZYDIS_DEFINITION(0x1, 0x15C), ZYDIS_DEFINITION(0x1, 0x15D), ZYDIS_DEFINITION(0x1, 0x15E) }, +    { ZYDIS_DEFINITION(0x1, 0x15F), ZYDIS_DEFINITION(0x1, 0x160), ZYDIS_DEFINITION(0x1, 0x161) }, +    { ZYDIS_DEFINITION(0x1, 0x49E), ZYDIS_DEFINITION(0x1, 0x49F), ZYDIS_DEFINITION(0x1, 0x4A0) }, +    { ZYDIS_DEFINITION(0x1, 0xA4C), ZYDIS_DEFINITION(0x1, 0xA4D), ZYDIS_DEFINITION(0x1, 0xA4E) }, +    { ZYDIS_DEFINITION(0x1, 0xA4F), ZYDIS_DEFINITION(0x1, 0xA50), ZYDIS_DEFINITION(0x1, 0xA51) }, +    { ZYDIS_DEFINITION(0x1, 0xA52), ZYDIS_DEFINITION(0x1, 0xA53), ZYDIS_DEFINITION(0x1, 0xA54) }, +    { ZYDIS_DEFINITION(0x1, 0xA55), ZYDIS_DEFINITION(0x1, 0xA56), ZYDIS_DEFINITION(0x1, 0xA57) }, +    { ZYDIS_DEFINITION(0x1, 0x7A0), ZYDIS_DEFINITION(0x1, 0x7A1), ZYDIS_DEFINITION(0x1, 0x7A2) }, +    { ZYDIS_DEFINITION(0x1, 0x7A3), ZYDIS_DEFINITION(0x1, 0x7A4), ZYDIS_DEFINITION(0x1, 0x7A5) }, +    { ZYDIS_DEFINITION(0x1, 0x8D8), ZYDIS_DEFINITION(0x1, 0x8D9), ZYDIS_DEFINITION(0x1, 0x8DA) }, +    { ZYDIS_DEFINITION(0x1, 0x8DE), ZYDIS_DEFINITION(0x1, 0x8DF), ZYDIS_DEFINITION(0x1, 0x8E0) }, +    { ZYDIS_DEFINITION(0x1, 0x8DB), ZYDIS_DEFINITION(0x1, 0x8DC), ZYDIS_DEFINITION(0x1, 0x8DD) }, +    { ZYDIS_DEFINITION(0x1, 0x8E1), ZYDIS_DEFINITION(0x1, 0x8E2), ZYDIS_DEFINITION(0x1, 0x8E3) }, +    { ZYDIS_DEFINITION(0x1, 0x54E), ZYDIS_DEFINITION(0x1, 0x54F), ZYDIS_DEFINITION(0x1, 0x550) }, +    { ZYDIS_DEFINITION(0x1, 0x551), ZYDIS_DEFINITION(0x1, 0x552), ZYDIS_DEFINITION(0x1, 0x553) }, +    { ZYDIS_DEFINITION(0x1, 0x554), ZYDIS_DEFINITION(0x1, 0x555), ZYDIS_DEFINITION(0x1, 0x556) }, +    { ZYDIS_DEFINITION(0x1, 0x557), ZYDIS_DEFINITION(0x1, 0x558), ZYDIS_DEFINITION(0x1, 0x559) }, +    { ZYDIS_DEFINITION(0x1, 0x770), ZYDIS_DEFINITION(0x1, 0x771), ZYDIS_DEFINITION(0x1, 0x772) }, +    { ZYDIS_DEFINITION(0x1, 0x773), ZYDIS_DEFINITION(0x1, 0x774), ZYDIS_DEFINITION(0x1, 0x775) }, +    { ZYDIS_DEFINITION(0x1, 0xAD6), ZYDIS_DEFINITION(0x1, 0xAD7), ZYDIS_DEFINITION(0x1, 0xAD8) }, +    { ZYDIS_DEFINITION(0x1, 0xADC), ZYDIS_DEFINITION(0x1, 0xADD), ZYDIS_DEFINITION(0x1, 0xADE) }, +    { ZYDIS_DEFINITION(0x1, 0xAD9), ZYDIS_DEFINITION(0x1, 0xADA), ZYDIS_DEFINITION(0x1, 0xADB) }, +    { ZYDIS_DEFINITION(0x1, 0xADF), ZYDIS_DEFINITION(0x1, 0xAE0), ZYDIS_DEFINITION(0x1, 0xAE1) }, +    { ZYDIS_DEFINITION(0x1, 0x9C2), ZYDIS_DEFINITION(0x1, 0x9C3), ZYDIS_DEFINITION(0x1, 0x9C4) }, +    { ZYDIS_DEFINITION(0x1, 0x9C5), ZYDIS_DEFINITION(0x1, 0x9C6), ZYDIS_DEFINITION(0x1, 0x9C7) }, +    { ZYDIS_DEFINITION(0x1, 0x992), ZYDIS_DEFINITION(0x1, 0x993), ZYDIS_DEFINITION(0x1, 0x994) }, +    { ZYDIS_DEFINITION(0x1, 0x995), ZYDIS_DEFINITION(0x1, 0x996), ZYDIS_DEFINITION(0x1, 0x997) }, +    { ZYDIS_DEFINITION(0x1, 0x9A4), ZYDIS_DEFINITION(0x1, 0x9A5), ZYDIS_DEFINITION(0x1, 0x9A6) }, +    { ZYDIS_DEFINITION(0x1, 0x9A7), ZYDIS_DEFINITION(0x1, 0x9A8), ZYDIS_DEFINITION(0x1, 0x9A9) }, +    { ZYDIS_DEFINITION(0x1, 0x8BA), ZYDIS_DEFINITION(0x1, 0x8BB), ZYDIS_DEFINITION(0x1, 0x8BC) }, +    { ZYDIS_DEFINITION(0x1, 0x8BD), ZYDIS_DEFINITION(0x1, 0x8BE), ZYDIS_DEFINITION(0x1, 0x8BF) }, +    { ZYDIS_DEFINITION(0x1, 0x758), ZYDIS_DEFINITION(0x1, 0x759), ZYDIS_DEFINITION(0x1, 0x75A) }, +    { ZYDIS_DEFINITION(0x1, 0x75B), ZYDIS_DEFINITION(0x1, 0x75C), ZYDIS_DEFINITION(0x1, 0x75D) }, +    { ZYDIS_DEFINITION(0x1, 0x914), ZYDIS_DEFINITION(0x1, 0x915), ZYDIS_DEFINITION(0x1, 0x916) }, +    { ZYDIS_DEFINITION(0x1, 0x917), ZYDIS_DEFINITION(0x1, 0x918), ZYDIS_DEFINITION(0x1, 0x919) }, +    { ZYDIS_DEFINITION(0x1, 0xA3A), ZYDIS_DEFINITION(0x1, 0xA3B), ZYDIS_DEFINITION(0x1, 0xA3C) }, +    { ZYDIS_DEFINITION(0x1, 0xA3D), ZYDIS_DEFINITION(0x1, 0xA3E), ZYDIS_DEFINITION(0x1, 0xA3F) }, +    { ZYDIS_DEFINITION(0x1, 0xA64), ZYDIS_DEFINITION(0x1, 0xA65), ZYDIS_DEFINITION(0x1, 0xA66) }, +    { ZYDIS_DEFINITION(0x1, 0xA67), ZYDIS_DEFINITION(0x1, 0xA68), ZYDIS_DEFINITION(0x1, 0xA69) }, +    { ZYDIS_DEFINITION(0x1, 0xA40), ZYDIS_DEFINITION(0x1, 0xA41), ZYDIS_DEFINITION(0x1, 0xA42) }, +    { ZYDIS_DEFINITION(0x1, 0xA43), ZYDIS_DEFINITION(0x1, 0xA44), ZYDIS_DEFINITION(0x1, 0xA45) }, +    { ZYDIS_DEFINITION(0x1, 0xA46), ZYDIS_DEFINITION(0x1, 0xA47), ZYDIS_DEFINITION(0x1, 0xA48) }, +    { ZYDIS_DEFINITION(0x1, 0xA49), ZYDIS_DEFINITION(0x1, 0xA4A), ZYDIS_DEFINITION(0x1, 0xA4B) }, +    { ZYDIS_DEFINITION(0x1, 0x53C), ZYDIS_DEFINITION(0x1, 0x53D), ZYDIS_DEFINITION(0x1, 0x53E) }, +    { ZYDIS_DEFINITION(0x1, 0x53F), ZYDIS_DEFINITION(0x1, 0x540), ZYDIS_DEFINITION(0x1, 0x541) }, +    { ZYDIS_DEFINITION(0x1, 0x566), ZYDIS_DEFINITION(0x1, 0x567), ZYDIS_DEFINITION(0x1, 0x568) }, +    { ZYDIS_DEFINITION(0x1, 0x569), ZYDIS_DEFINITION(0x1, 0x56A), ZYDIS_DEFINITION(0x1, 0x56B) }, +    { ZYDIS_DEFINITION(0x1, 0x542), ZYDIS_DEFINITION(0x1, 0x543), ZYDIS_DEFINITION(0x1, 0x544) }, +    { ZYDIS_DEFINITION(0x1, 0x545), ZYDIS_DEFINITION(0x1, 0x546), ZYDIS_DEFINITION(0x1, 0x547) }, +    { ZYDIS_DEFINITION(0x1, 0x96E), ZYDIS_DEFINITION(0x1, 0x96F), ZYDIS_DEFINITION(0x1, 0x970) }, +    { ZYDIS_DEFINITION(0x1, 0x971), ZYDIS_DEFINITION(0x1, 0x972), ZYDIS_DEFINITION(0x1, 0x973) }, +    { ZYDIS_DEFINITION(0x1, 0x752), ZYDIS_DEFINITION(0x1, 0x753), ZYDIS_DEFINITION(0x1, 0x754) }, +    { ZYDIS_DEFINITION(0x1, 0x755), ZYDIS_DEFINITION(0x1, 0x756), ZYDIS_DEFINITION(0x1, 0x757) }, +    { ZYDIS_DEFINITION(0x1, 0x890), ZYDIS_DEFINITION(0x1, 0x891), ZYDIS_DEFINITION(0x1, 0x892) }, +    { ZYDIS_DEFINITION(0x1, 0x893), ZYDIS_DEFINITION(0x1, 0x894), ZYDIS_DEFINITION(0x1, 0x895) }, +    { ZYDIS_DEFINITION(0x1, 0x6B7), ZYDIS_DEFINITION(0x1, 0x6B8), ZYDIS_DEFINITION(0x1, 0x6B9) }, +    { ZYDIS_DEFINITION(0x1, 0x6BA), ZYDIS_DEFINITION(0x1, 0x6BB), ZYDIS_DEFINITION(0x1, 0x6BC) }, +    { ZYDIS_DEFINITION(0x1, 0x6AB), ZYDIS_DEFINITION(0x1, 0x6AC), ZYDIS_DEFINITION(0x1, 0x6AD) }, +    { ZYDIS_DEFINITION(0x1, 0x6AE), ZYDIS_DEFINITION(0x1, 0x6AF), ZYDIS_DEFINITION(0x1, 0x6B0) }, +    { ZYDIS_DEFINITION(0x1, 0xA28), ZYDIS_DEFINITION(0x1, 0xA29), ZYDIS_DEFINITION(0x1, 0xA2A) }, +    { ZYDIS_DEFINITION(0x1, 0xA2B), ZYDIS_DEFINITION(0x1, 0xA2C), ZYDIS_DEFINITION(0x1, 0xA2D) }, +    { ZYDIS_DEFINITION(0x1, 0x9EC), ZYDIS_DEFINITION(0x1, 0x9ED), ZYDIS_DEFINITION(0x1, 0x9EE) }, +    { ZYDIS_DEFINITION(0x1, 0x9EF), ZYDIS_DEFINITION(0x1, 0x9F0), ZYDIS_DEFINITION(0x1, 0x9F1) }, +    { ZYDIS_DEFINITION(0x1, 0x9B6), ZYDIS_DEFINITION(0x1, 0x9B7), ZYDIS_DEFINITION(0x1, 0x9B8) }, +    { ZYDIS_DEFINITION(0x1, 0x9B9), ZYDIS_DEFINITION(0x1, 0x9BA), ZYDIS_DEFINITION(0x1, 0x9BB) }, +    { ZYDIS_DEFINITION(0x1, 0xE3), ZYDIS_DEFINITION(0x1, 0xE4), ZYDIS_DEFINITION(0x1, 0xE5) }, +    { ZYDIS_DEFINITION(0x1, 0xE6), ZYDIS_DEFINITION(0x1, 0xE7), ZYDIS_DEFINITION(0x1, 0xE8) }, +    { ZYDIS_DEFINITION(0x1, 0x908), ZYDIS_DEFINITION(0x1, 0x909), ZYDIS_DEFINITION(0x1, 0x90A) }, +    { ZYDIS_DEFINITION(0x1, 0x90E), ZYDIS_DEFINITION(0x1, 0x90F), ZYDIS_DEFINITION(0x1, 0x910) }, +    { ZYDIS_DEFINITION(0x1, 0x90B), ZYDIS_DEFINITION(0x1, 0x90C), ZYDIS_DEFINITION(0x1, 0x90D) }, +    { ZYDIS_DEFINITION(0x1, 0x911), ZYDIS_DEFINITION(0x1, 0x912), ZYDIS_DEFINITION(0x1, 0x913) }, +    { ZYDIS_DEFINITION(0x1, 0x8F0), ZYDIS_DEFINITION(0x1, 0x8F1), ZYDIS_DEFINITION(0x1, 0x8F2) }, +    { ZYDIS_DEFINITION(0x1, 0x8F6), ZYDIS_DEFINITION(0x1, 0x8F7), ZYDIS_DEFINITION(0x1, 0x8F8) }, +    { ZYDIS_DEFINITION(0x1, 0x8F3), ZYDIS_DEFINITION(0x1, 0x8F4), ZYDIS_DEFINITION(0x1, 0x8F5) }, +    { ZYDIS_DEFINITION(0x1, 0x8F9), ZYDIS_DEFINITION(0x1, 0x8FA), ZYDIS_DEFINITION(0x1, 0x8FB) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6CB), ZYDIS_DEFINITION(0x1, 0x6CC) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6C3), ZYDIS_DEFINITION(0x1, 0x6C4) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6CD), ZYDIS_DEFINITION(0x1, 0x6CE) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6C5), ZYDIS_DEFINITION(0x1, 0x6C6) }, +    { ZYDIS_DEFINITION(0x1, 0x7A), ZYDIS_DEFINITION(0x1, 0x7B), ZYDIS_DEFINITION(0x1, 0x7C) }, +    { ZYDIS_DEFINITION(0x1, 0x7D), ZYDIS_DEFINITION(0x1, 0x7E), ZYDIS_DEFINITION(0x1, 0x7F) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x60), ZYDIS_DEFINITION(0x1, 0x61) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x76), ZYDIS_DEFINITION(0x1, 0x77) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x62), ZYDIS_DEFINITION(0x1, 0x63) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x78), ZYDIS_DEFINITION(0x1, 0x79) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x64), ZYDIS_DEFINITION(0x1, 0x65) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x67), ZYDIS_DEFINITION(0x1, 0x68) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x66) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x69) }, +    { ZYDIS_DEFINITION(0x1, 0x50C), ZYDIS_DEFINITION(0x1, 0x50D), ZYDIS_DEFINITION(0x1, 0x50E) }, +    { ZYDIS_DEFINITION(0x1, 0x50F), ZYDIS_DEFINITION(0x1, 0x510), ZYDIS_DEFINITION(0x1, 0x511) }, +    { ZYDIS_DEFINITION(0x1, 0x51E), ZYDIS_DEFINITION(0x1, 0x51F), ZYDIS_DEFINITION(0x1, 0x520) }, +    { ZYDIS_DEFINITION(0x1, 0x521), ZYDIS_DEFINITION(0x1, 0x522), ZYDIS_DEFINITION(0x1, 0x523) }, +    { ZYDIS_DEFINITION(0x1, 0x512), ZYDIS_DEFINITION(0x1, 0x513), ZYDIS_DEFINITION(0x1, 0x514) }, +    { ZYDIS_DEFINITION(0x1, 0x515), ZYDIS_DEFINITION(0x1, 0x516), ZYDIS_DEFINITION(0x1, 0x517) }, +    { ZYDIS_DEFINITION(0x1, 0x518), ZYDIS_DEFINITION(0x1, 0x519), ZYDIS_DEFINITION(0x1, 0x51A) }, +    { ZYDIS_DEFINITION(0x1, 0x51B), ZYDIS_DEFINITION(0x1, 0x51C), ZYDIS_DEFINITION(0x1, 0x51D) }, +    { ZYDIS_DEFINITION(0x1, 0x821), ZYDIS_DEFINITION(0x1, 0x822), ZYDIS_DEFINITION(0x1, 0x823) }, +    { ZYDIS_DEFINITION(0x1, 0x824), ZYDIS_DEFINITION(0x1, 0x825), ZYDIS_DEFINITION(0x1, 0x826) }, +    { ZYDIS_DEFINITION(0x1, 0x815), ZYDIS_DEFINITION(0x1, 0x816), ZYDIS_DEFINITION(0x1, 0x817) }, +    { ZYDIS_DEFINITION(0x1, 0x818), ZYDIS_DEFINITION(0x1, 0x819), ZYDIS_DEFINITION(0x1, 0x81A) }, +    { ZYDIS_DEFINITION(0x1, 0x81B), ZYDIS_DEFINITION(0x1, 0x81C), ZYDIS_DEFINITION(0x1, 0x81D) }, +    { ZYDIS_DEFINITION(0x1, 0x81E), ZYDIS_DEFINITION(0x1, 0x81F), ZYDIS_DEFINITION(0x1, 0x820) }, +    { ZYDIS_DEFINITION(0x1, 0x82D), ZYDIS_DEFINITION(0x1, 0x82E), ZYDIS_DEFINITION(0x1, 0x82F) }, +    { ZYDIS_DEFINITION(0x1, 0x830), ZYDIS_DEFINITION(0x1, 0x831), ZYDIS_DEFINITION(0x1, 0x832) }, +    { ZYDIS_DEFINITION(0x1, 0x833), ZYDIS_DEFINITION(0x1, 0x834), ZYDIS_DEFINITION(0x1, 0x835) }, +    { ZYDIS_DEFINITION(0x1, 0x836), ZYDIS_DEFINITION(0x1, 0x837), ZYDIS_DEFINITION(0x1, 0x838) }, +    { ZYDIS_DEFINITION(0x1, 0x827), ZYDIS_DEFINITION(0x1, 0x828), ZYDIS_DEFINITION(0x1, 0x829) }, +    { ZYDIS_DEFINITION(0x1, 0x82A), ZYDIS_DEFINITION(0x1, 0x82B), ZYDIS_DEFINITION(0x1, 0x82C) }, +    { ZYDIS_DEFINITION(0x1, 0xA76), ZYDIS_DEFINITION(0x1, 0xA77), ZYDIS_DEFINITION(0x1, 0xA78) }, +    { ZYDIS_DEFINITION(0x1, 0xA88), ZYDIS_DEFINITION(0x1, 0xA89), ZYDIS_DEFINITION(0x1, 0xA8A) }, +    { ZYDIS_DEFINITION(0x1, 0xA79), ZYDIS_DEFINITION(0x1, 0xA7A), ZYDIS_DEFINITION(0x1, 0xA7B) }, +    { ZYDIS_DEFINITION(0x1, 0xA8B), ZYDIS_DEFINITION(0x1, 0xA8C), ZYDIS_DEFINITION(0x1, 0xA8D) }, +    { ZYDIS_DEFINITION(0x1, 0xA7C), ZYDIS_DEFINITION(0x1, 0xA7D), ZYDIS_DEFINITION(0x1, 0xA7E) }, +    { ZYDIS_DEFINITION(0x1, 0xA82), ZYDIS_DEFINITION(0x1, 0xA83), ZYDIS_DEFINITION(0x1, 0xA84) }, +    { ZYDIS_DEFINITION(0x1, 0xA7F), ZYDIS_DEFINITION(0x1, 0xA80), ZYDIS_DEFINITION(0x1, 0xA81) }, +    { ZYDIS_DEFINITION(0x1, 0xA85), ZYDIS_DEFINITION(0x1, 0xA86), ZYDIS_DEFINITION(0x1, 0xA87) }, +    { ZYDIS_DEFINITION(0x1, 0x88A), ZYDIS_DEFINITION(0x1, 0x88B), ZYDIS_DEFINITION(0x1, 0x88C) }, +    { ZYDIS_DEFINITION(0x1, 0x88D), ZYDIS_DEFINITION(0x1, 0x88E), ZYDIS_DEFINITION(0x1, 0x88F) }, +    { ZYDIS_DEFINITION(0x1, 0x5F9), ZYDIS_DEFINITION(0x1, 0x5FA), ZYDIS_DEFINITION(0x1, 0x5FB) }, +    { ZYDIS_DEFINITION(0x1, 0x5FC), ZYDIS_DEFINITION(0x1, 0x5FD), ZYDIS_DEFINITION(0x1, 0x5FE) }, +    { ZYDIS_DEFINITION(0x1, 0x4A1), ZYDIS_DEFINITION(0x1, 0x4A2), ZYDIS_DEFINITION(0x1, 0x4A3) }, +    { ZYDIS_DEFINITION(0x1, 0x530), ZYDIS_DEFINITION(0x1, 0x531), ZYDIS_DEFINITION(0x1, 0x532) }, +    { ZYDIS_DEFINITION(0x1, 0x533), ZYDIS_DEFINITION(0x1, 0x534), ZYDIS_DEFINITION(0x1, 0x535) }, +    { ZYDIS_DEFINITION(0x1, 0xB5E), ZYDIS_DEFINITION(0x1, 0xB5F), ZYDIS_DEFINITION(0x1, 0xB60) }, +    { ZYDIS_DEFINITION(0x1, 0xB57), ZYDIS_DEFINITION(0x1, 0xB58), ZYDIS_DEFINITION(0x1, 0xB59) }, +    { ZYDIS_DEFINITION(0x1, 0xB61), ZYDIS_DEFINITION(0x1, 0xB62), ZYDIS_DEFINITION(0x1, 0xB63) }, +    { ZYDIS_DEFINITION(0x1, 0xB5A), ZYDIS_DEFINITION(0x1, 0xB5B), ZYDIS_DEFINITION(0x1, 0xB5C) }, +    { ZYDIS_DEFINITION(0x1, 0x872), ZYDIS_DEFINITION(0x1, 0x873), ZYDIS_DEFINITION(0x1, 0x874) }, +    { ZYDIS_DEFINITION(0x1, 0x875), ZYDIS_DEFINITION(0x1, 0x876), ZYDIS_DEFINITION(0x1, 0x877) }, +    { ZYDIS_DEFINITION(0x1, 0x866), ZYDIS_DEFINITION(0x1, 0x867), ZYDIS_DEFINITION(0x1, 0x868) }, +    { ZYDIS_DEFINITION(0x1, 0x869), ZYDIS_DEFINITION(0x1, 0x86A), ZYDIS_DEFINITION(0x1, 0x86B) }, +    { ZYDIS_DEFINITION(0x1, 0x86C), ZYDIS_DEFINITION(0x1, 0x86D), ZYDIS_DEFINITION(0x1, 0x86E) }, +    { ZYDIS_DEFINITION(0x1, 0x86F), ZYDIS_DEFINITION(0x1, 0x870), ZYDIS_DEFINITION(0x1, 0x871) }, +    { ZYDIS_DEFINITION(0x1, 0x87E), ZYDIS_DEFINITION(0x1, 0x87F), ZYDIS_DEFINITION(0x1, 0x880) }, +    { ZYDIS_DEFINITION(0x1, 0x881), ZYDIS_DEFINITION(0x1, 0x882), ZYDIS_DEFINITION(0x1, 0x883) }, +    { ZYDIS_DEFINITION(0x1, 0x884), ZYDIS_DEFINITION(0x1, 0x885), ZYDIS_DEFINITION(0x1, 0x886) }, +    { ZYDIS_DEFINITION(0x1, 0x887), ZYDIS_DEFINITION(0x1, 0x888), ZYDIS_DEFINITION(0x1, 0x889) }, +    { ZYDIS_DEFINITION(0x1, 0x878), ZYDIS_DEFINITION(0x1, 0x879), ZYDIS_DEFINITION(0x1, 0x87A) }, +    { ZYDIS_DEFINITION(0x1, 0x87B), ZYDIS_DEFINITION(0x1, 0x87C), ZYDIS_DEFINITION(0x1, 0x87D) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x683), ZYDIS_DEFINITION(0x1, 0x684) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6CF), ZYDIS_DEFINITION(0x1, 0x6D0) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x685), ZYDIS_DEFINITION(0x1, 0x686) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6D1), ZYDIS_DEFINITION(0x1, 0x6D2) }, +    { ZYDIS_DEFINITION(0x1, 0x611), ZYDIS_DEFINITION(0x1, 0x612), ZYDIS_DEFINITION(0x1, 0x613) }, +    { ZYDIS_DEFINITION(0x1, 0x614), ZYDIS_DEFINITION(0x1, 0x615), ZYDIS_DEFINITION(0x1, 0x616) }, +    { ZYDIS_DEFINITION(0x1, 0x78E), ZYDIS_DEFINITION(0x1, 0x78F), ZYDIS_DEFINITION(0x1, 0x790) }, +    { ZYDIS_DEFINITION(0x1, 0x791), ZYDIS_DEFINITION(0x1, 0x792), ZYDIS_DEFINITION(0x1, 0x793) }, +    { ZYDIS_DEFINITION(0x1, 0x794), ZYDIS_DEFINITION(0x1, 0x795), ZYDIS_DEFINITION(0x1, 0x796) }, +    { ZYDIS_DEFINITION(0x1, 0x79A), ZYDIS_DEFINITION(0x1, 0x79B), ZYDIS_DEFINITION(0x1, 0x79C) }, +    { ZYDIS_DEFINITION(0x1, 0x797), ZYDIS_DEFINITION(0x1, 0x798), ZYDIS_DEFINITION(0x1, 0x799) }, +    { ZYDIS_DEFINITION(0x1, 0x79D), ZYDIS_DEFINITION(0x1, 0x79E), ZYDIS_DEFINITION(0x1, 0x79F) }, +    { ZYDIS_DEFINITION(0x1, 0x7B8), ZYDIS_DEFINITION(0x1, 0x7B9), ZYDIS_DEFINITION(0x1, 0x7BA) }, +    { ZYDIS_DEFINITION(0x1, 0x7BB), ZYDIS_DEFINITION(0x1, 0x7BC), ZYDIS_DEFINITION(0x1, 0x7BD) }, +    { ZYDIS_DEFINITION(0x1, 0x7AC), ZYDIS_DEFINITION(0x1, 0x7AD), ZYDIS_DEFINITION(0x1, 0x7AE) }, +    { ZYDIS_DEFINITION(0x1, 0x7B2), ZYDIS_DEFINITION(0x1, 0x7B3), ZYDIS_DEFINITION(0x1, 0x7B4) }, +    { ZYDIS_DEFINITION(0x1, 0x7AF), ZYDIS_DEFINITION(0x1, 0x7B0), ZYDIS_DEFINITION(0x1, 0x7B1) }, +    { ZYDIS_DEFINITION(0x1, 0x7B5), ZYDIS_DEFINITION(0x1, 0x7B6), ZYDIS_DEFINITION(0x1, 0x7B7) }, +    { ZYDIS_DEFINITION(0x1, 0x75E), ZYDIS_DEFINITION(0x1, 0x75F), ZYDIS_DEFINITION(0x1, 0x760) }, +    { ZYDIS_DEFINITION(0x1, 0x761), ZYDIS_DEFINITION(0x1, 0x762), ZYDIS_DEFINITION(0x1, 0x763) }, +    { ZYDIS_DEFINITION(0x1, 0x764), ZYDIS_DEFINITION(0x1, 0x765), ZYDIS_DEFINITION(0x1, 0x766) }, +    { ZYDIS_DEFINITION(0x1, 0x76A), ZYDIS_DEFINITION(0x1, 0x76B), ZYDIS_DEFINITION(0x1, 0x76C) }, +    { ZYDIS_DEFINITION(0x1, 0x767), ZYDIS_DEFINITION(0x1, 0x768), ZYDIS_DEFINITION(0x1, 0x769) }, +    { ZYDIS_DEFINITION(0x1, 0x76D), ZYDIS_DEFINITION(0x1, 0x76E), ZYDIS_DEFINITION(0x1, 0x76F) }, +    { ZYDIS_DEFINITION(0x1, 0x788), ZYDIS_DEFINITION(0x1, 0x789), ZYDIS_DEFINITION(0x1, 0x78A) }, +    { ZYDIS_DEFINITION(0x1, 0x78B), ZYDIS_DEFINITION(0x1, 0x78C), ZYDIS_DEFINITION(0x1, 0x78D) }, +    { ZYDIS_DEFINITION(0x1, 0x77C), ZYDIS_DEFINITION(0x1, 0x77D), ZYDIS_DEFINITION(0x1, 0x77E) }, +    { ZYDIS_DEFINITION(0x1, 0x782), ZYDIS_DEFINITION(0x1, 0x783), ZYDIS_DEFINITION(0x1, 0x784) }, +    { ZYDIS_DEFINITION(0x1, 0x77F), ZYDIS_DEFINITION(0x1, 0x780), ZYDIS_DEFINITION(0x1, 0x781) }, +    { ZYDIS_DEFINITION(0x1, 0x785), ZYDIS_DEFINITION(0x1, 0x786), ZYDIS_DEFINITION(0x1, 0x787) }, +    { ZYDIS_DEFINITION(0x1, 0x8A2), ZYDIS_DEFINITION(0x1, 0x8A3), ZYDIS_DEFINITION(0x1, 0x8A4) }, +    { ZYDIS_DEFINITION(0x1, 0x8A8), ZYDIS_DEFINITION(0x1, 0x8A9), ZYDIS_DEFINITION(0x1, 0x8AA) }, +    { ZYDIS_DEFINITION(0x1, 0x8A5), ZYDIS_DEFINITION(0x1, 0x8A6), ZYDIS_DEFINITION(0x1, 0x8A7) }, +    { ZYDIS_DEFINITION(0x1, 0x8AB), ZYDIS_DEFINITION(0x1, 0x8AC), ZYDIS_DEFINITION(0x1, 0x8AD) }, +    { ZYDIS_DEFINITION(0x1, 0x3B2), ZYDIS_DEFINITION(0x1, 0x3B3), ZYDIS_DEFINITION(0x1, 0x3B4) }, +    { ZYDIS_DEFINITION(0x1, 0x3AB), ZYDIS_DEFINITION(0x1, 0x3AC), ZYDIS_DEFINITION(0x1, 0x3AD) }, +    { ZYDIS_DEFINITION(0x1, 0x3B5), ZYDIS_DEFINITION(0x1, 0x3B6), ZYDIS_DEFINITION(0x1, 0x3B7) }, +    { ZYDIS_DEFINITION(0x1, 0x3AE), ZYDIS_DEFINITION(0x1, 0x3AF), ZYDIS_DEFINITION(0x1, 0x3B0) }, +    { ZYDIS_DEFINITION(0x1, 0x73A), ZYDIS_DEFINITION(0x1, 0x73B), ZYDIS_DEFINITION(0x1, 0x73C) }, +    { ZYDIS_DEFINITION(0x1, 0x740), ZYDIS_DEFINITION(0x1, 0x741), ZYDIS_DEFINITION(0x1, 0x742) }, +    { ZYDIS_DEFINITION(0x1, 0x73D), ZYDIS_DEFINITION(0x1, 0x73E), ZYDIS_DEFINITION(0x1, 0x73F) }, +    { ZYDIS_DEFINITION(0x1, 0x743), ZYDIS_DEFINITION(0x1, 0x744), ZYDIS_DEFINITION(0x1, 0x745) }, +    { ZYDIS_DEFINITION(0x1, 0xA1C), ZYDIS_DEFINITION(0x1, 0xA1D), ZYDIS_DEFINITION(0x1, 0xA1E) }, +    { ZYDIS_DEFINITION(0x1, 0xA22), ZYDIS_DEFINITION(0x1, 0xA23), ZYDIS_DEFINITION(0x1, 0xA24) }, +    { ZYDIS_DEFINITION(0x1, 0xA1F), ZYDIS_DEFINITION(0x1, 0xA20), ZYDIS_DEFINITION(0x1, 0xA21) }, +    { ZYDIS_DEFINITION(0x1, 0xA25), ZYDIS_DEFINITION(0x1, 0xA26), ZYDIS_DEFINITION(0x1, 0xA27) }, +    { ZYDIS_DEFINITION(0x1, 0x9E0), ZYDIS_DEFINITION(0x1, 0x9E1), ZYDIS_DEFINITION(0x1, 0x9E2) }, +    { ZYDIS_DEFINITION(0x1, 0x9E6), ZYDIS_DEFINITION(0x1, 0x9E7), ZYDIS_DEFINITION(0x1, 0x9E8) }, +    { ZYDIS_DEFINITION(0x1, 0x9E3), ZYDIS_DEFINITION(0x1, 0x9E4), ZYDIS_DEFINITION(0x1, 0x9E5) }, +    { ZYDIS_DEFINITION(0x1, 0x9E9), ZYDIS_DEFINITION(0x1, 0x9EA), ZYDIS_DEFINITION(0x1, 0x9EB) }, +    { ZYDIS_DEFINITION(0x1, 0x9AA), ZYDIS_DEFINITION(0x1, 0x9AB), ZYDIS_DEFINITION(0x1, 0x9AC) }, +    { ZYDIS_DEFINITION(0x1, 0x9B0), ZYDIS_DEFINITION(0x1, 0x9B1), ZYDIS_DEFINITION(0x1, 0x9B2) }, +    { ZYDIS_DEFINITION(0x1, 0x9AD), ZYDIS_DEFINITION(0x1, 0x9AE), ZYDIS_DEFINITION(0x1, 0x9AF) }, +    { ZYDIS_DEFINITION(0x1, 0x9B3), ZYDIS_DEFINITION(0x1, 0x9B4), ZYDIS_DEFINITION(0x1, 0x9B5) }, +    { ZYDIS_DEFINITION(0x1, 0xAFC), ZYDIS_DEFINITION(0x1, 0xAFD), ZYDIS_DEFINITION(0x1, 0xAFE) }, +    { ZYDIS_DEFINITION(0x1, 0xAF6), ZYDIS_DEFINITION(0x1, 0xAF7), ZYDIS_DEFINITION(0x1, 0xAF8) }, +    { ZYDIS_DEFINITION(0x1, 0xAFF), ZYDIS_DEFINITION(0x1, 0xB00), ZYDIS_DEFINITION(0x1, 0xB01) }, +    { ZYDIS_DEFINITION(0x1, 0xAF9), ZYDIS_DEFINITION(0x1, 0xAFA), ZYDIS_DEFINITION(0x1, 0xAFB) }, +    { ZYDIS_DEFINITION(0x1, 0xB40), ZYDIS_DEFINITION(0x1, 0xB41), ZYDIS_DEFINITION(0x1, 0xB42) }, +    { ZYDIS_DEFINITION(0x1, 0xB3A), ZYDIS_DEFINITION(0x1, 0xB3B), ZYDIS_DEFINITION(0x1, 0xB3C) }, +    { ZYDIS_DEFINITION(0x1, 0xB43), ZYDIS_DEFINITION(0x1, 0xB44), ZYDIS_DEFINITION(0x1, 0xB45) }, +    { ZYDIS_DEFINITION(0x1, 0xB3D), ZYDIS_DEFINITION(0x1, 0xB3E), ZYDIS_DEFINITION(0x1, 0xB3F) }, +    { ZYDIS_DEFINITION(0x1, 0x665), ZYDIS_DEFINITION(0x1, 0x666), ZYDIS_DEFINITION(0x1, 0x667) }, +    { ZYDIS_DEFINITION(0x1, 0x668), ZYDIS_DEFINITION(0x1, 0x669), ZYDIS_DEFINITION(0x1, 0x66A) }, +    { ZYDIS_DEFINITION(0x1, 0x66B), ZYDIS_DEFINITION(0x1, 0x66C), ZYDIS_DEFINITION(0x1, 0x66D) }, +    { ZYDIS_DEFINITION(0x1, 0x66E), ZYDIS_DEFINITION(0x1, 0x66F), ZYDIS_DEFINITION(0x1, 0x670) }, +    { ZYDIS_DEFINITION(0x1, 0x671), ZYDIS_DEFINITION(0x1, 0x672), ZYDIS_DEFINITION(0x1, 0x673) }, +    { ZYDIS_DEFINITION(0x1, 0x674), ZYDIS_DEFINITION(0x1, 0x675), ZYDIS_DEFINITION(0x1, 0x676) }, +    { ZYDIS_DEFINITION(0x1, 0x677), ZYDIS_DEFINITION(0x1, 0x678), ZYDIS_DEFINITION(0x1, 0x679) }, +    { ZYDIS_DEFINITION(0x1, 0x67A), ZYDIS_DEFINITION(0x1, 0x67B), ZYDIS_DEFINITION(0x1, 0x67C) }, +    { ZYDIS_DEFINITION(0x1, 0x8C0), ZYDIS_DEFINITION(0x1, 0x8C1), ZYDIS_DEFINITION(0x1, 0x8C2) }, +    { ZYDIS_DEFINITION(0x1, 0x8D2), ZYDIS_DEFINITION(0x1, 0x8D3), ZYDIS_DEFINITION(0x1, 0x8D4) }, +    { ZYDIS_DEFINITION(0x1, 0x8C3), ZYDIS_DEFINITION(0x1, 0x8C4), ZYDIS_DEFINITION(0x1, 0x8C5) }, +    { ZYDIS_DEFINITION(0x1, 0x8D5), ZYDIS_DEFINITION(0x1, 0x8D6), ZYDIS_DEFINITION(0x1, 0x8D7) }, +    { ZYDIS_DEFINITION(0x1, 0x8C6), ZYDIS_DEFINITION(0x1, 0x8C7), ZYDIS_DEFINITION(0x1, 0x8C8) }, +    { ZYDIS_DEFINITION(0x1, 0x8CC), ZYDIS_DEFINITION(0x1, 0x8CD), ZYDIS_DEFINITION(0x1, 0x8CE) }, +    { ZYDIS_DEFINITION(0x1, 0x8C9), ZYDIS_DEFINITION(0x1, 0x8CA), ZYDIS_DEFINITION(0x1, 0x8CB) }, +    { ZYDIS_DEFINITION(0x1, 0x8CF), ZYDIS_DEFINITION(0x1, 0x8D0), ZYDIS_DEFINITION(0x1, 0x8D1) }, +    { ZYDIS_DEFINITION(0x1, 0x5B7), ZYDIS_DEFINITION(0x1, 0x5B8), ZYDIS_DEFINITION(0x1, 0x5B9) }, +    { ZYDIS_DEFINITION(0x1, 0x5BA), ZYDIS_DEFINITION(0x1, 0x5BB), ZYDIS_DEFINITION(0x1, 0x5BC) }, +    { ZYDIS_DEFINITION(0x1, 0x6A), ZYDIS_DEFINITION(0x1, 0x6B), ZYDIS_DEFINITION(0x1, 0x6C) }, +    { ZYDIS_DEFINITION(0x1, 0x5C9), ZYDIS_DEFINITION(0x1, 0x5CA), ZYDIS_DEFINITION(0x1, 0x5CB) }, +    { ZYDIS_DEFINITION(0x1, 0x6D), ZYDIS_DEFINITION(0x1, 0x6E), ZYDIS_DEFINITION(0x1, 0x6F) }, +    { ZYDIS_DEFINITION(0x1, 0x5CC), ZYDIS_DEFINITION(0x1, 0x5CD), ZYDIS_DEFINITION(0x1, 0x5CE) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x70), ZYDIS_DEFINITION(0x1, 0x71) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x73), ZYDIS_DEFINITION(0x1, 0x74) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x72) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x75) }, +    { ZYDIS_DEFINITION(0x1, 0x701), ZYDIS_DEFINITION(0x1, 0x702), ZYDIS_DEFINITION(0x1, 0x703) }, +    { ZYDIS_DEFINITION(0x1, 0x713), ZYDIS_DEFINITION(0x1, 0x714), ZYDIS_DEFINITION(0x1, 0x715) }, +    { ZYDIS_DEFINITION(0x1, 0x704), ZYDIS_DEFINITION(0x1, 0x705), ZYDIS_DEFINITION(0x1, 0x706) }, +    { ZYDIS_DEFINITION(0x1, 0x716), ZYDIS_DEFINITION(0x1, 0x717), ZYDIS_DEFINITION(0x1, 0x718) }, +    { ZYDIS_DEFINITION(0x1, 0x641), ZYDIS_DEFINITION(0x1, 0x642), ZYDIS_DEFINITION(0x1, 0x643) }, +    { ZYDIS_DEFINITION(0x1, 0x653), ZYDIS_DEFINITION(0x1, 0x654), ZYDIS_DEFINITION(0x1, 0x655) }, +    { ZYDIS_DEFINITION(0x1, 0x644), ZYDIS_DEFINITION(0x1, 0x645), ZYDIS_DEFINITION(0x1, 0x646) }, +    { ZYDIS_DEFINITION(0x1, 0x656), ZYDIS_DEFINITION(0x1, 0x657), ZYDIS_DEFINITION(0x1, 0x658) }, +    { ZYDIS_DEFINITION(0x1, 0x59C), ZYDIS_DEFINITION(0x1, 0x59D), ZYDIS_DEFINITION(0x1, 0x59E) }, +    { ZYDIS_DEFINITION(0x1, 0x5A2), ZYDIS_DEFINITION(0x1, 0x5A3), ZYDIS_DEFINITION(0x1, 0x5A4) }, +    { ZYDIS_DEFINITION(0x1, 0x59F), ZYDIS_DEFINITION(0x1, 0x5A0), ZYDIS_DEFINITION(0x1, 0x5A1) }, +    { ZYDIS_DEFINITION(0x1, 0x5A5), ZYDIS_DEFINITION(0x1, 0x5A6), ZYDIS_DEFINITION(0x1, 0x5A7) }, +    { ZYDIS_DEFINITION(0x1, 0x5A), ZYDIS_DEFINITION(0x1, 0x5B), ZYDIS_DEFINITION(0x1, 0x5C) }, +    { ZYDIS_DEFINITION(0x1, 0x54), ZYDIS_DEFINITION(0x1, 0x55), ZYDIS_DEFINITION(0x1, 0x56) }, +    { ZYDIS_DEFINITION(0x1, 0x5D), ZYDIS_DEFINITION(0x1, 0x5E), ZYDIS_DEFINITION(0x1, 0x5F) }, +    { ZYDIS_DEFINITION(0x1, 0x57), ZYDIS_DEFINITION(0x1, 0x58), ZYDIS_DEFINITION(0x1, 0x59) }, +    { ZYDIS_DEFINITION(0x1, 0x596), ZYDIS_DEFINITION(0x1, 0x597), ZYDIS_DEFINITION(0x1, 0x598) }, +    { ZYDIS_DEFINITION(0x1, 0x5A8), ZYDIS_DEFINITION(0x1, 0x5A9), ZYDIS_DEFINITION(0x1, 0x5AA) }, +    { ZYDIS_DEFINITION(0x1, 0x599), ZYDIS_DEFINITION(0x1, 0x59A), ZYDIS_DEFINITION(0x1, 0x59B) }, +    { ZYDIS_DEFINITION(0x1, 0x5AB), ZYDIS_DEFINITION(0x1, 0x5AC), ZYDIS_DEFINITION(0x1, 0x5AD) }, +    { ZYDIS_DEFINITION(0x1, 0x93E), ZYDIS_DEFINITION(0x1, 0x93F), ZYDIS_DEFINITION(0x1, 0x940) }, +    { ZYDIS_DEFINITION(0x1, 0x941), ZYDIS_DEFINITION(0x1, 0x942), ZYDIS_DEFINITION(0x1, 0x943) }, +    { ZYDIS_DEFINITION(0x1, 0x932), ZYDIS_DEFINITION(0x1, 0x933), ZYDIS_DEFINITION(0x1, 0x934) }, +    { ZYDIS_DEFINITION(0x1, 0x938), ZYDIS_DEFINITION(0x1, 0x939), ZYDIS_DEFINITION(0x1, 0x93A) }, +    { ZYDIS_DEFINITION(0x1, 0x935), ZYDIS_DEFINITION(0x1, 0x936), ZYDIS_DEFINITION(0x1, 0x937) }, +    { ZYDIS_DEFINITION(0x1, 0x93B), ZYDIS_DEFINITION(0x1, 0x93C), ZYDIS_DEFINITION(0x1, 0x93D) }, +    { ZYDIS_DEFINITION(0x1, 0x962), ZYDIS_DEFINITION(0x1, 0x963), ZYDIS_DEFINITION(0x1, 0x964) }, +    { ZYDIS_DEFINITION(0x1, 0x965), ZYDIS_DEFINITION(0x1, 0x966), ZYDIS_DEFINITION(0x1, 0x967) }, +    { ZYDIS_DEFINITION(0x1, 0x956), ZYDIS_DEFINITION(0x1, 0x957), ZYDIS_DEFINITION(0x1, 0x958) }, +    { ZYDIS_DEFINITION(0x1, 0x95C), ZYDIS_DEFINITION(0x1, 0x95D), ZYDIS_DEFINITION(0x1, 0x95E) }, +    { ZYDIS_DEFINITION(0x1, 0x959), ZYDIS_DEFINITION(0x1, 0x95A), ZYDIS_DEFINITION(0x1, 0x95B) }, +    { ZYDIS_DEFINITION(0x1, 0x95F), ZYDIS_DEFINITION(0x1, 0x960), ZYDIS_DEFINITION(0x1, 0x961) }, +    { ZYDIS_DEFINITION(0x1, 0x687), ZYDIS_DEFINITION(0x1, 0x688), ZYDIS_DEFINITION(0x1, 0x689) }, +    { ZYDIS_DEFINITION(0x1, 0x6A5), ZYDIS_DEFINITION(0x1, 0x6A6), ZYDIS_DEFINITION(0x1, 0x6A7) }, +    { ZYDIS_DEFINITION(0x1, 0x68A), ZYDIS_DEFINITION(0x1, 0x68B), ZYDIS_DEFINITION(0x1, 0x68C) }, +    { ZYDIS_DEFINITION(0x1, 0x6A8), ZYDIS_DEFINITION(0x1, 0x6A9), ZYDIS_DEFINITION(0x1, 0x6AA) }, +    { ZYDIS_DEFINITION(0x1, 0x68D), ZYDIS_DEFINITION(0x1, 0x68E), ZYDIS_DEFINITION(0x1, 0x68F) }, +    { ZYDIS_DEFINITION(0x1, 0x69F), ZYDIS_DEFINITION(0x1, 0x6A0), ZYDIS_DEFINITION(0x1, 0x6A1) }, +    { ZYDIS_DEFINITION(0x1, 0x690), ZYDIS_DEFINITION(0x1, 0x691), ZYDIS_DEFINITION(0x1, 0x692) }, +    { ZYDIS_DEFINITION(0x1, 0x6A2), ZYDIS_DEFINITION(0x1, 0x6A3), ZYDIS_DEFINITION(0x1, 0x6A4) }, +    { ZYDIS_DEFINITION(0x1, 0x699), ZYDIS_DEFINITION(0x1, 0x69A), ZYDIS_DEFINITION(0x1, 0x69B) }, +    { ZYDIS_DEFINITION(0x1, 0x693), ZYDIS_DEFINITION(0x1, 0x694), ZYDIS_DEFINITION(0x1, 0x695) }, +    { ZYDIS_DEFINITION(0x1, 0x69C), ZYDIS_DEFINITION(0x1, 0x69D), ZYDIS_DEFINITION(0x1, 0x69E) }, +    { ZYDIS_DEFINITION(0x1, 0x696), ZYDIS_DEFINITION(0x1, 0x697), ZYDIS_DEFINITION(0x1, 0x698) }, +    { ZYDIS_DEFINITION(0x1, 0x5AE), ZYDIS_DEFINITION(0x1, 0x5AF), ZYDIS_DEFINITION(0x1, 0x5B0) }, +    { ZYDIS_DEFINITION(0x1, 0x5B1), ZYDIS_DEFINITION(0x1, 0x5B2), ZYDIS_DEFINITION(0x1, 0x5B3) }, +    { ZYDIS_DEFINITION(0x1, 0x5D2), ZYDIS_DEFINITION(0x1, 0x5D3), ZYDIS_DEFINITION(0x1, 0x5D4) }, +    { ZYDIS_DEFINITION(0x1, 0x5D5), ZYDIS_DEFINITION(0x1, 0x5D6), ZYDIS_DEFINITION(0x1, 0x5D7) }, +    { ZYDIS_DEFINITION(0x1, 0x5B4), ZYDIS_DEFINITION(0x1, 0x5B5), ZYDIS_DEFINITION(0x1, 0x5B6) }, +    { ZYDIS_DEFINITION(0x1, 0x5D8), ZYDIS_DEFINITION(0x1, 0x5D9), ZYDIS_DEFINITION(0x1, 0x5DA) }, +    { ZYDIS_DEFINITION(0x1, 0x5BD), ZYDIS_DEFINITION(0x1, 0x5BE), ZYDIS_DEFINITION(0x1, 0x5BF) }, +    { ZYDIS_DEFINITION(0x1, 0x5CF), ZYDIS_DEFINITION(0x1, 0x5D0), ZYDIS_DEFINITION(0x1, 0x5D1) }, +    { ZYDIS_DEFINITION(0x1, 0x5C0), ZYDIS_DEFINITION(0x1, 0x5C1), ZYDIS_DEFINITION(0x1, 0x5C2) }, +    { ZYDIS_DEFINITION(0x1, 0x6D7), ZYDIS_DEFINITION(0x1, 0x6D8), ZYDIS_DEFINITION(0x1, 0x6D9) }, +    { ZYDIS_DEFINITION(0x1, 0x6F5), ZYDIS_DEFINITION(0x1, 0x6F6), ZYDIS_DEFINITION(0x1, 0x6F7) }, +    { ZYDIS_DEFINITION(0x1, 0x6DA), ZYDIS_DEFINITION(0x1, 0x6DB), ZYDIS_DEFINITION(0x1, 0x6DC) }, +    { ZYDIS_DEFINITION(0x1, 0x6F8), ZYDIS_DEFINITION(0x1, 0x6F9), ZYDIS_DEFINITION(0x1, 0x6FA) }, +    { ZYDIS_DEFINITION(0x1, 0x6DD), ZYDIS_DEFINITION(0x1, 0x6DE), ZYDIS_DEFINITION(0x1, 0x6DF) }, +    { ZYDIS_DEFINITION(0x1, 0x6EF), ZYDIS_DEFINITION(0x1, 0x6F0), ZYDIS_DEFINITION(0x1, 0x6F1) }, +    { ZYDIS_DEFINITION(0x1, 0x6E0), ZYDIS_DEFINITION(0x1, 0x6E1), ZYDIS_DEFINITION(0x1, 0x6E2) }, +    { ZYDIS_DEFINITION(0x1, 0x6F2), ZYDIS_DEFINITION(0x1, 0x6F3), ZYDIS_DEFINITION(0x1, 0x6F4) }, +    { ZYDIS_DEFINITION(0x1, 0x6E9), ZYDIS_DEFINITION(0x1, 0x6EA), ZYDIS_DEFINITION(0x1, 0x6EB) }, +    { ZYDIS_DEFINITION(0x1, 0x6E3), ZYDIS_DEFINITION(0x1, 0x6E4), ZYDIS_DEFINITION(0x1, 0x6E5) }, +    { ZYDIS_DEFINITION(0x1, 0x6EC), ZYDIS_DEFINITION(0x1, 0x6ED), ZYDIS_DEFINITION(0x1, 0x6EE) }, +    { ZYDIS_DEFINITION(0x1, 0x6E6), ZYDIS_DEFINITION(0x1, 0x6E7), ZYDIS_DEFINITION(0x1, 0x6E8) }, +    { ZYDIS_DEFINITION(0x1, 0x8B4), ZYDIS_DEFINITION(0x1, 0x8B5), ZYDIS_DEFINITION(0x1, 0x8B6) }, +    { ZYDIS_DEFINITION(0x1, 0x8B7), ZYDIS_DEFINITION(0x1, 0x8B8), ZYDIS_DEFINITION(0x1, 0x8B9) }, +    { ZYDIS_DEFINITION(0x1, 0x20E), ZYDIS_DEFINITION(0x1, 0x20F), ZYDIS_DEFINITION(0x1, 0x210) }, +    { ZYDIS_DEFINITION(0x1, 0x208), ZYDIS_DEFINITION(0x1, 0x209), ZYDIS_DEFINITION(0x1, 0x20A) }, +    { ZYDIS_DEFINITION(0x1, 0x211), ZYDIS_DEFINITION(0x1, 0x212), ZYDIS_DEFINITION(0x1, 0x213) }, +    { ZYDIS_DEFINITION(0x1, 0x20B), ZYDIS_DEFINITION(0x1, 0x20C), ZYDIS_DEFINITION(0x1, 0x20D) }, +    { ZYDIS_DEFINITION(0x1, 0x707), ZYDIS_DEFINITION(0x1, 0x708), ZYDIS_DEFINITION(0x1, 0x709) }, +    { ZYDIS_DEFINITION(0x1, 0x70D), ZYDIS_DEFINITION(0x1, 0x70E), ZYDIS_DEFINITION(0x1, 0x70F) }, +    { ZYDIS_DEFINITION(0x1, 0x70A), ZYDIS_DEFINITION(0x1, 0x70B), ZYDIS_DEFINITION(0x1, 0x70C) }, +    { ZYDIS_DEFINITION(0x1, 0x710), ZYDIS_DEFINITION(0x1, 0x711), ZYDIS_DEFINITION(0x1, 0x712) }, +    { ZYDIS_DEFINITION(0x1, 0xA0), ZYDIS_DEFINITION(0x1, 0xA1), ZYDIS_DEFINITION(0x1, 0xA2) }, +    { ZYDIS_DEFINITION(0x1, 0x9A), ZYDIS_DEFINITION(0x1, 0x9B), ZYDIS_DEFINITION(0x1, 0x9C) }, +    { ZYDIS_DEFINITION(0x1, 0xA3), ZYDIS_DEFINITION(0x1, 0xA4), ZYDIS_DEFINITION(0x1, 0xA5) }, +    { ZYDIS_DEFINITION(0x1, 0x9D), ZYDIS_DEFINITION(0x1, 0x9E), ZYDIS_DEFINITION(0x1, 0x9F) }, +    { ZYDIS_DEFINITION(0x1, 0x647), ZYDIS_DEFINITION(0x1, 0x648), ZYDIS_DEFINITION(0x1, 0x649) }, +    { ZYDIS_DEFINITION(0x1, 0x64D), ZYDIS_DEFINITION(0x1, 0x64E), ZYDIS_DEFINITION(0x1, 0x64F) }, +    { ZYDIS_DEFINITION(0x1, 0x64A), ZYDIS_DEFINITION(0x1, 0x64B), ZYDIS_DEFINITION(0x1, 0x64C) }, +    { ZYDIS_DEFINITION(0x1, 0x650), ZYDIS_DEFINITION(0x1, 0x651), ZYDIS_DEFINITION(0x1, 0x652) }, +    { ZYDIS_DEFINITION(0x1, 0x67D), ZYDIS_DEFINITION(0x1, 0x67E), ZYDIS_DEFINITION(0x1, 0x67F) }, +    { ZYDIS_DEFINITION(0x1, 0x6FB), ZYDIS_DEFINITION(0x1, 0x6FC), ZYDIS_DEFINITION(0x1, 0x6FD) }, +    { ZYDIS_DEFINITION(0x1, 0x680), ZYDIS_DEFINITION(0x1, 0x681), ZYDIS_DEFINITION(0x1, 0x682) }, +    { ZYDIS_DEFINITION(0x1, 0x6FE), ZYDIS_DEFINITION(0x1, 0x6FF), ZYDIS_DEFINITION(0x1, 0x700) }, +    { ZYDIS_DEFINITION(0x1, 0x974), ZYDIS_DEFINITION(0x1, 0x975), ZYDIS_DEFINITION(0x1, 0x976) }, +    { ZYDIS_DEFINITION(0x1, 0x977), ZYDIS_DEFINITION(0x1, 0x978), ZYDIS_DEFINITION(0x1, 0x979) }, +    { ZYDIS_DEFINITION(0x1, 0x724), ZYDIS_DEFINITION(0x1, 0x725), ZYDIS_DEFINITION(0x1, 0x726) }, +    { ZYDIS_DEFINITION(0x1, 0x727), ZYDIS_DEFINITION(0x1, 0x728), ZYDIS_DEFINITION(0x1, 0x729) }, +    { ZYDIS_DEFINITION(0x1, 0x72A), ZYDIS_DEFINITION(0x1, 0x72B), ZYDIS_DEFINITION(0x1, 0x72C) }, +    { ZYDIS_DEFINITION(0x1, 0x72D), ZYDIS_DEFINITION(0x1, 0x72E), ZYDIS_DEFINITION(0x1, 0x72F) }, +    { ZYDIS_DEFINITION(0x1, 0x399), ZYDIS_DEFINITION(0x1, 0x39A), ZYDIS_DEFINITION(0x1, 0x39B) }, +    { ZYDIS_DEFINITION(0x1, 0x396), ZYDIS_DEFINITION(0x1, 0x397), ZYDIS_DEFINITION(0x1, 0x398) }, +    { ZYDIS_DEFINITION(0x1, 0x3A7), ZYDIS_DEFINITION(0x1, 0x3A8), ZYDIS_DEFINITION(0x1, 0x3A9) }, +    { ZYDIS_DEFINITION(0x1, 0x3A4), ZYDIS_DEFINITION(0x1, 0x3A5), ZYDIS_DEFINITION(0x1, 0x3A6) }, +    { ZYDIS_DEFINITION(0x1, 0x286), ZYDIS_DEFINITION(0x1, 0x287), ZYDIS_DEFINITION(0x1, 0x288) }, +    { ZYDIS_DEFINITION(0x1, 0x27F), ZYDIS_DEFINITION(0x1, 0x280), ZYDIS_DEFINITION(0x1, 0x281) }, +    { ZYDIS_DEFINITION(0x1, 0x289), ZYDIS_DEFINITION(0x1, 0x28A), ZYDIS_DEFINITION(0x1, 0x28B) }, +    { ZYDIS_DEFINITION(0x1, 0x282), ZYDIS_DEFINITION(0x1, 0x283), ZYDIS_DEFINITION(0x1, 0x284) }, +    { ZYDIS_DEFINITION(0x1, 0x2EC), ZYDIS_DEFINITION(0x1, 0x2ED), ZYDIS_DEFINITION(0x1, 0x2EE) }, +    { ZYDIS_DEFINITION(0x1, 0x2E5), ZYDIS_DEFINITION(0x1, 0x2E6), ZYDIS_DEFINITION(0x1, 0x2E7) }, +    { ZYDIS_DEFINITION(0x1, 0x2EF), ZYDIS_DEFINITION(0x1, 0x2F0), ZYDIS_DEFINITION(0x1, 0x2F1) }, +    { ZYDIS_DEFINITION(0x1, 0x2E8), ZYDIS_DEFINITION(0x1, 0x2E9), ZYDIS_DEFINITION(0x1, 0x2EA) }, +    { ZYDIS_DEFINITION(0x1, 0x24A), ZYDIS_DEFINITION(0x1, 0x24B), ZYDIS_DEFINITION(0x1, 0x24C) }, +    { ZYDIS_DEFINITION(0x1, 0x243), ZYDIS_DEFINITION(0x1, 0x244), ZYDIS_DEFINITION(0x1, 0x245) }, +    { ZYDIS_DEFINITION(0x1, 0x24D), ZYDIS_DEFINITION(0x1, 0x24E), ZYDIS_DEFINITION(0x1, 0x24F) }, +    { ZYDIS_DEFINITION(0x1, 0x246), ZYDIS_DEFINITION(0x1, 0x247), ZYDIS_DEFINITION(0x1, 0x248) }, +    { ZYDIS_DEFINITION(0x1, 0x2B0), ZYDIS_DEFINITION(0x1, 0x2B1), ZYDIS_DEFINITION(0x1, 0x2B2) }, +    { ZYDIS_DEFINITION(0x1, 0x2A9), ZYDIS_DEFINITION(0x1, 0x2AA), ZYDIS_DEFINITION(0x1, 0x2AB) }, +    { ZYDIS_DEFINITION(0x1, 0x2B3), ZYDIS_DEFINITION(0x1, 0x2B4), ZYDIS_DEFINITION(0x1, 0x2B5) }, +    { ZYDIS_DEFINITION(0x1, 0x2AC), ZYDIS_DEFINITION(0x1, 0x2AD), ZYDIS_DEFINITION(0x1, 0x2AE) }, +    { ZYDIS_DEFINITION(0x1, 0x316), ZYDIS_DEFINITION(0x1, 0x317), ZYDIS_DEFINITION(0x1, 0x318) }, +    { ZYDIS_DEFINITION(0x1, 0x30F), ZYDIS_DEFINITION(0x1, 0x310), ZYDIS_DEFINITION(0x1, 0x311) }, +    { ZYDIS_DEFINITION(0x1, 0x319), ZYDIS_DEFINITION(0x1, 0x31A), ZYDIS_DEFINITION(0x1, 0x31B) }, +    { ZYDIS_DEFINITION(0x1, 0x312), ZYDIS_DEFINITION(0x1, 0x313), ZYDIS_DEFINITION(0x1, 0x314) }, +    { ZYDIS_DEFINITION(0x1, 0x352), ZYDIS_DEFINITION(0x1, 0x353), ZYDIS_DEFINITION(0x1, 0x354) }, +    { ZYDIS_DEFINITION(0x1, 0x34B), ZYDIS_DEFINITION(0x1, 0x34C), ZYDIS_DEFINITION(0x1, 0x34D) }, +    { ZYDIS_DEFINITION(0x1, 0x355), ZYDIS_DEFINITION(0x1, 0x356), ZYDIS_DEFINITION(0x1, 0x357) }, +    { ZYDIS_DEFINITION(0x1, 0x34E), ZYDIS_DEFINITION(0x1, 0x34F), ZYDIS_DEFINITION(0x1, 0x350) }, +    { ZYDIS_DEFINITION(0x1, 0x91A), ZYDIS_DEFINITION(0x1, 0x91B), ZYDIS_DEFINITION(0x1, 0x91C) }, +    { ZYDIS_DEFINITION(0x1, 0x91D), ZYDIS_DEFINITION(0x1, 0x91E), ZYDIS_DEFINITION(0x1, 0x91F) }, +    { ZYDIS_DEFINITION(0x1, 0x920), ZYDIS_DEFINITION(0x1, 0x921), ZYDIS_DEFINITION(0x1, 0x922) }, +    { ZYDIS_DEFINITION(0x1, 0x923), ZYDIS_DEFINITION(0x1, 0x924), ZYDIS_DEFINITION(0x1, 0x925) }, +    { ZYDIS_DEFINITION(0x1, 0xB6D), ZYDIS_DEFINITION(0x1, 0xB6E), ZYDIS_DEFINITION(0x1, 0xB6F) }, +    { ZYDIS_DEFINITION(0x1, 0xB6A), ZYDIS_DEFINITION(0x1, 0xB6B), ZYDIS_DEFINITION(0x1, 0xB6C) }, +    { ZYDIS_DEFINITION(0x1, 0xB7B), ZYDIS_DEFINITION(0x1, 0xB7C), ZYDIS_DEFINITION(0x1, 0xB7D) }, +    { ZYDIS_DEFINITION(0x1, 0xB78), ZYDIS_DEFINITION(0x1, 0xB79), ZYDIS_DEFINITION(0x1, 0xB7A) }, +    { ZYDIS_DEFINITION(0x1, 0x294), ZYDIS_DEFINITION(0x1, 0x295), ZYDIS_DEFINITION(0x1, 0x296) }, +    { ZYDIS_DEFINITION(0x1, 0x28D), ZYDIS_DEFINITION(0x1, 0x28E), ZYDIS_DEFINITION(0x1, 0x28F) }, +    { ZYDIS_DEFINITION(0x1, 0x297), ZYDIS_DEFINITION(0x1, 0x298), ZYDIS_DEFINITION(0x1, 0x299) }, +    { ZYDIS_DEFINITION(0x1, 0x290), ZYDIS_DEFINITION(0x1, 0x291), ZYDIS_DEFINITION(0x1, 0x292) }, +    { ZYDIS_DEFINITION(0x1, 0x2FA), ZYDIS_DEFINITION(0x1, 0x2FB), ZYDIS_DEFINITION(0x1, 0x2FC) }, +    { ZYDIS_DEFINITION(0x1, 0x2F3), ZYDIS_DEFINITION(0x1, 0x2F4), ZYDIS_DEFINITION(0x1, 0x2F5) }, +    { ZYDIS_DEFINITION(0x1, 0x2FD), ZYDIS_DEFINITION(0x1, 0x2FE), ZYDIS_DEFINITION(0x1, 0x2FF) }, +    { ZYDIS_DEFINITION(0x1, 0x2F6), ZYDIS_DEFINITION(0x1, 0x2F7), ZYDIS_DEFINITION(0x1, 0x2F8) }, +    { ZYDIS_DEFINITION(0x1, 0x25E), ZYDIS_DEFINITION(0x1, 0x25F), ZYDIS_DEFINITION(0x1, 0x260) }, +    { ZYDIS_DEFINITION(0x1, 0x257), ZYDIS_DEFINITION(0x1, 0x258), ZYDIS_DEFINITION(0x1, 0x259) }, +    { ZYDIS_DEFINITION(0x1, 0x261), ZYDIS_DEFINITION(0x1, 0x262), ZYDIS_DEFINITION(0x1, 0x263) }, +    { ZYDIS_DEFINITION(0x1, 0x25A), ZYDIS_DEFINITION(0x1, 0x25B), ZYDIS_DEFINITION(0x1, 0x25C) }, +    { ZYDIS_DEFINITION(0x1, 0x2C4), ZYDIS_DEFINITION(0x1, 0x2C5), ZYDIS_DEFINITION(0x1, 0x2C6) }, +    { ZYDIS_DEFINITION(0x1, 0x2BD), ZYDIS_DEFINITION(0x1, 0x2BE), ZYDIS_DEFINITION(0x1, 0x2BF) }, +    { ZYDIS_DEFINITION(0x1, 0x2C7), ZYDIS_DEFINITION(0x1, 0x2C8), ZYDIS_DEFINITION(0x1, 0x2C9) }, +    { ZYDIS_DEFINITION(0x1, 0x2C0), ZYDIS_DEFINITION(0x1, 0x2C1), ZYDIS_DEFINITION(0x1, 0x2C2) }, +    { ZYDIS_DEFINITION(0x1, 0x32A), ZYDIS_DEFINITION(0x1, 0x32B), ZYDIS_DEFINITION(0x1, 0x32C) }, +    { ZYDIS_DEFINITION(0x1, 0x323), ZYDIS_DEFINITION(0x1, 0x324), ZYDIS_DEFINITION(0x1, 0x325) }, +    { ZYDIS_DEFINITION(0x1, 0x32D), ZYDIS_DEFINITION(0x1, 0x32E), ZYDIS_DEFINITION(0x1, 0x32F) }, +    { ZYDIS_DEFINITION(0x1, 0x326), ZYDIS_DEFINITION(0x1, 0x327), ZYDIS_DEFINITION(0x1, 0x328) }, +    { ZYDIS_DEFINITION(0x1, 0x366), ZYDIS_DEFINITION(0x1, 0x367), ZYDIS_DEFINITION(0x1, 0x368) }, +    { ZYDIS_DEFINITION(0x1, 0x35F), ZYDIS_DEFINITION(0x1, 0x360), ZYDIS_DEFINITION(0x1, 0x361) }, +    { ZYDIS_DEFINITION(0x1, 0x369), ZYDIS_DEFINITION(0x1, 0x36A), ZYDIS_DEFINITION(0x1, 0x36B) }, +    { ZYDIS_DEFINITION(0x1, 0x362), ZYDIS_DEFINITION(0x1, 0x363), ZYDIS_DEFINITION(0x1, 0x364) }, +    { ZYDIS_DEFINITION(0x1, 0x74C), ZYDIS_DEFINITION(0x1, 0x74D), ZYDIS_DEFINITION(0x1, 0x74E) }, +    { ZYDIS_DEFINITION(0x1, 0x74F), ZYDIS_DEFINITION(0x1, 0x750), ZYDIS_DEFINITION(0x1, 0x751) }, +    { ZYDIS_DEFINITION(0x1, 0x746), ZYDIS_DEFINITION(0x1, 0x747), ZYDIS_DEFINITION(0x1, 0x748) }, +    { ZYDIS_DEFINITION(0x1, 0x749), ZYDIS_DEFINITION(0x1, 0x74A), ZYDIS_DEFINITION(0x1, 0x74B) }, +    { ZYDIS_DEFINITION(0x1, 0x2A2), ZYDIS_DEFINITION(0x1, 0x2A3), ZYDIS_DEFINITION(0x1, 0x2A4) }, +    { ZYDIS_DEFINITION(0x1, 0x29B), ZYDIS_DEFINITION(0x1, 0x29C), ZYDIS_DEFINITION(0x1, 0x29D) }, +    { ZYDIS_DEFINITION(0x1, 0x2A5), ZYDIS_DEFINITION(0x1, 0x2A6), ZYDIS_DEFINITION(0x1, 0x2A7) }, +    { ZYDIS_DEFINITION(0x1, 0x29E), ZYDIS_DEFINITION(0x1, 0x29F), ZYDIS_DEFINITION(0x1, 0x2A0) }, +    { ZYDIS_DEFINITION(0x1, 0x308), ZYDIS_DEFINITION(0x1, 0x309), ZYDIS_DEFINITION(0x1, 0x30A) }, +    { ZYDIS_DEFINITION(0x1, 0x301), ZYDIS_DEFINITION(0x1, 0x302), ZYDIS_DEFINITION(0x1, 0x303) }, +    { ZYDIS_DEFINITION(0x1, 0x30B), ZYDIS_DEFINITION(0x1, 0x30C), ZYDIS_DEFINITION(0x1, 0x30D) }, +    { ZYDIS_DEFINITION(0x1, 0x304), ZYDIS_DEFINITION(0x1, 0x305), ZYDIS_DEFINITION(0x1, 0x306) }, +    { ZYDIS_DEFINITION(0x1, 0x272), ZYDIS_DEFINITION(0x1, 0x273), ZYDIS_DEFINITION(0x1, 0x274) }, +    { ZYDIS_DEFINITION(0x1, 0x26B), ZYDIS_DEFINITION(0x1, 0x26C), ZYDIS_DEFINITION(0x1, 0x26D) }, +    { ZYDIS_DEFINITION(0x1, 0x275), ZYDIS_DEFINITION(0x1, 0x276), ZYDIS_DEFINITION(0x1, 0x277) }, +    { ZYDIS_DEFINITION(0x1, 0x26E), ZYDIS_DEFINITION(0x1, 0x26F), ZYDIS_DEFINITION(0x1, 0x270) }, +    { ZYDIS_DEFINITION(0x1, 0x2D8), ZYDIS_DEFINITION(0x1, 0x2D9), ZYDIS_DEFINITION(0x1, 0x2DA) }, +    { ZYDIS_DEFINITION(0x1, 0x2D1), ZYDIS_DEFINITION(0x1, 0x2D2), ZYDIS_DEFINITION(0x1, 0x2D3) }, +    { ZYDIS_DEFINITION(0x1, 0x2DB), ZYDIS_DEFINITION(0x1, 0x2DC), ZYDIS_DEFINITION(0x1, 0x2DD) }, +    { ZYDIS_DEFINITION(0x1, 0x2D4), ZYDIS_DEFINITION(0x1, 0x2D5), ZYDIS_DEFINITION(0x1, 0x2D6) }, +    { ZYDIS_DEFINITION(0x1, 0x33E), ZYDIS_DEFINITION(0x1, 0x33F), ZYDIS_DEFINITION(0x1, 0x340) }, +    { ZYDIS_DEFINITION(0x1, 0x337), ZYDIS_DEFINITION(0x1, 0x338), ZYDIS_DEFINITION(0x1, 0x339) }, +    { ZYDIS_DEFINITION(0x1, 0x341), ZYDIS_DEFINITION(0x1, 0x342), ZYDIS_DEFINITION(0x1, 0x343) }, +    { ZYDIS_DEFINITION(0x1, 0x33A), ZYDIS_DEFINITION(0x1, 0x33B), ZYDIS_DEFINITION(0x1, 0x33C) }, +    { ZYDIS_DEFINITION(0x1, 0x37A), ZYDIS_DEFINITION(0x1, 0x37B), ZYDIS_DEFINITION(0x1, 0x37C) }, +    { ZYDIS_DEFINITION(0x1, 0x373), ZYDIS_DEFINITION(0x1, 0x374), ZYDIS_DEFINITION(0x1, 0x375) }, +    { ZYDIS_DEFINITION(0x1, 0x37D), ZYDIS_DEFINITION(0x1, 0x37E), ZYDIS_DEFINITION(0x1, 0x37F) }, +    { ZYDIS_DEFINITION(0x1, 0x376), ZYDIS_DEFINITION(0x1, 0x377), ZYDIS_DEFINITION(0x1, 0x378) }, +    { ZYDIS_DEFINITION(0x1, 0x659), ZYDIS_DEFINITION(0x1, 0x65A), ZYDIS_DEFINITION(0x1, 0x65B) }, +    { ZYDIS_DEFINITION(0x1, 0x65F), ZYDIS_DEFINITION(0x1, 0x660), ZYDIS_DEFINITION(0x1, 0x661) }, +    { ZYDIS_DEFINITION(0x1, 0x65C), ZYDIS_DEFINITION(0x1, 0x65D), ZYDIS_DEFINITION(0x1, 0x65E) }, +    { ZYDIS_DEFINITION(0x1, 0x662), ZYDIS_DEFINITION(0x1, 0x663), ZYDIS_DEFINITION(0x1, 0x664) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x39D) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x39C) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3A1) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3A0) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB71) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB70) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB75) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB74) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x39F) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x39E) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3A3) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3A2) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB73) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB72) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB77) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB76) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x206) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x203) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x207) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x204) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB0A) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB07) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB0B) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB08) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB4E) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB4B) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB4F) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xB4C) }, +    { ZYDIS_DEFINITION(0x1, 0x3DE), ZYDIS_DEFINITION(0x1, 0x3DF), ZYDIS_DEFINITION(0x1, 0x3E0) }, +    { ZYDIS_DEFINITION(0x1, 0x3E1), ZYDIS_DEFINITION(0x1, 0x3E2), ZYDIS_DEFINITION(0x1, 0x3E3) }, +    { ZYDIS_DEFINITION(0x1, 0x24), ZYDIS_DEFINITION(0x1, 0x25), ZYDIS_DEFINITION(0x1, 0x26) }, +    { ZYDIS_DEFINITION(0x1, 0x27), ZYDIS_DEFINITION(0x1, 0x28), ZYDIS_DEFINITION(0x1, 0x29) }, +    { ZYDIS_DEFINITION(0x1, 0x2A), ZYDIS_DEFINITION(0x1, 0x2B), ZYDIS_DEFINITION(0x1, 0x2C) }, +    { ZYDIS_DEFINITION(0x1, 0x2D), ZYDIS_DEFINITION(0x1, 0x2E), ZYDIS_DEFINITION(0x1, 0x2F) }, +    { ZYDIS_DEFINITION(0x1, 0x18), ZYDIS_DEFINITION(0x1, 0x19), ZYDIS_DEFINITION(0x1, 0x1A) }, +    { ZYDIS_DEFINITION(0x1, 0x1B), ZYDIS_DEFINITION(0x1, 0x1C), ZYDIS_DEFINITION(0x1, 0x1D) }, +    { ZYDIS_DEFINITION(0x1, 0x1E), ZYDIS_DEFINITION(0x1, 0x1F), ZYDIS_DEFINITION(0x1, 0x20) }, +    { ZYDIS_DEFINITION(0x1, 0x21), ZYDIS_DEFINITION(0x1, 0x22), ZYDIS_DEFINITION(0x1, 0x23) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x6D3), ZYDIS_DEFINITION(0xB, 0x6D4) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x6D5), ZYDIS_DEFINITION(0xB, 0x6D6) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x6C7), ZYDIS_DEFINITION(0xB, 0x6C8) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x6C9), ZYDIS_DEFINITION(0xB, 0x6CA) }, +    { ZYDIS_DEFINITION(0xB, 0x30), ZYDIS_DEFINITION(0xB, 0x31), ZYDIS_DEFINITION(0xB, 0x32) }, +    { ZYDIS_DEFINITION(0xB, 0x36), ZYDIS_DEFINITION(0xB, 0x37), ZYDIS_DEFINITION(0xB, 0x38) }, +    { ZYDIS_DEFINITION(0xB, 0x33), ZYDIS_DEFINITION(0xB, 0x34), ZYDIS_DEFINITION(0xB, 0x35) }, +    { ZYDIS_DEFINITION(0xB, 0x39), ZYDIS_DEFINITION(0xB, 0x3A), ZYDIS_DEFINITION(0xB, 0x3B) }, +    { ZYDIS_DEFINITION(0xB, 0x6BD), ZYDIS_DEFINITION(0xB, 0x6BE), ZYDIS_DEFINITION(0xB, 0x6BF) }, +    { ZYDIS_DEFINITION(0xB, 0x6C0), ZYDIS_DEFINITION(0xB, 0x6C1), ZYDIS_DEFINITION(0xB, 0x6C2) }, +    { ZYDIS_DEFINITION(0xB, 0x6B1), ZYDIS_DEFINITION(0xB, 0x6B2), ZYDIS_DEFINITION(0xB, 0x6B3) }, +    { ZYDIS_DEFINITION(0xB, 0x6B4), ZYDIS_DEFINITION(0xB, 0x6B5), ZYDIS_DEFINITION(0xB, 0x6B6) }, +    { ZYDIS_DEFINITION(0xB, 0xB2E), ZYDIS_DEFINITION(0xB, 0xB2F), ZYDIS_DEFINITION(0xB, 0xB30) }, +    { ZYDIS_DEFINITION(0xB, 0xB31), ZYDIS_DEFINITION(0xB, 0xB32), ZYDIS_DEFINITION(0xB, 0xB33) }, +    { ZYDIS_DEFINITION(0xB, 0xB27), ZYDIS_DEFINITION(0xB, 0xB28), ZYDIS_DEFINITION(0xB, 0xB29) }, +    { ZYDIS_DEFINITION(0xB, 0xB2A), ZYDIS_DEFINITION(0xB, 0xB2B), ZYDIS_DEFINITION(0xB, 0xB2C) }, +    { ZYDIS_DEFINITION(0xB, 0x56C), ZYDIS_DEFINITION(0xB, 0x56D), ZYDIS_DEFINITION(0xB, 0x56E) }, +    { ZYDIS_DEFINITION(0xB, 0x56F), ZYDIS_DEFINITION(0xB, 0x570), ZYDIS_DEFINITION(0xB, 0x571) }, +    { ZYDIS_DEFINITION(0xB, 0x719), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x722), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x723), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71B), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x720), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x22C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x22D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3E4), ZYDIS_DEFINITION(0xB, 0x3E5) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3EA), ZYDIS_DEFINITION(0xB, 0x3EB) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3E6), ZYDIS_DEFINITION(0xB, 0x3E7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3EC), ZYDIS_DEFINITION(0xB, 0x3ED) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x214), ZYDIS_DEFINITION(0xB, 0x215) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x21A), ZYDIS_DEFINITION(0xB, 0x21B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x216), ZYDIS_DEFINITION(0xB, 0x217) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x21C), ZYDIS_DEFINITION(0xB, 0x21D) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3E8) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3EE) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3E9) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3EF) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x218) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x21E) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x219) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x21F) }, +    { ZYDIS_DEFINITION(0xB, 0xF8), ZYDIS_DEFINITION(0xB, 0xF9), ZYDIS_DEFINITION(0xB, 0xFA) }, +    { ZYDIS_DEFINITION(0xB, 0xFB), ZYDIS_DEFINITION(0xB, 0xFC), ZYDIS_DEFINITION(0xB, 0xFD) }, +    { ZYDIS_DEFINITION(0xB, 0x629), ZYDIS_DEFINITION(0xB, 0x62A), ZYDIS_DEFINITION(0xB, 0x62B) }, +    { ZYDIS_DEFINITION(0xB, 0x62F), ZYDIS_DEFINITION(0xB, 0x630), ZYDIS_DEFINITION(0xB, 0x631) }, +    { ZYDIS_DEFINITION(0xB, 0x62C), ZYDIS_DEFINITION(0xB, 0x62D), ZYDIS_DEFINITION(0xB, 0x62E) }, +    { ZYDIS_DEFINITION(0xB, 0x632), ZYDIS_DEFINITION(0xB, 0x633), ZYDIS_DEFINITION(0xB, 0x634) }, +    { ZYDIS_DEFINITION(0xB, 0x5E7), ZYDIS_DEFINITION(0xB, 0x5E8), ZYDIS_DEFINITION(0xB, 0x5E9) }, +    { ZYDIS_DEFINITION(0xB, 0x61D), ZYDIS_DEFINITION(0xB, 0x61E), ZYDIS_DEFINITION(0xB, 0x61F) }, +    { ZYDIS_DEFINITION(0xB, 0x5EA), ZYDIS_DEFINITION(0xB, 0x5EB), ZYDIS_DEFINITION(0xB, 0x5EC) }, +    { ZYDIS_DEFINITION(0xB, 0x620), ZYDIS_DEFINITION(0xB, 0x621), ZYDIS_DEFINITION(0xB, 0x622) }, +    { ZYDIS_DEFINITION(0xB, 0x730), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x731), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3FC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3FD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x732), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x736), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x734), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x733), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x737), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x735), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB7E), ZYDIS_DEFINITION(0xB, 0xB7F) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB82), ZYDIS_DEFINITION(0xB, 0xB83) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB80), ZYDIS_DEFINITION(0xB, 0xB81) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB84), ZYDIS_DEFINITION(0xB, 0xB85) }, +    { ZYDIS_DEFINITION(0xB, 0xA6A), ZYDIS_DEFINITION(0xB, 0xA6B), ZYDIS_DEFINITION(0xB, 0xA6C) }, +    { ZYDIS_DEFINITION(0xB, 0xA70), ZYDIS_DEFINITION(0xB, 0xA71), ZYDIS_DEFINITION(0xB, 0xA72) }, +    { ZYDIS_DEFINITION(0xB, 0xA6D), ZYDIS_DEFINITION(0xB, 0xA6E), ZYDIS_DEFINITION(0xB, 0xA6F) }, +    { ZYDIS_DEFINITION(0xB, 0xA73), ZYDIS_DEFINITION(0xB, 0xA74), ZYDIS_DEFINITION(0xB, 0xA75) }, +    { ZYDIS_DEFINITION(0xB, 0x3C6), ZYDIS_DEFINITION(0xB, 0x3C7), ZYDIS_DEFINITION(0xB, 0x3C8) }, +    { ZYDIS_DEFINITION(0xB, 0x3BF), ZYDIS_DEFINITION(0xB, 0x3C0), ZYDIS_DEFINITION(0xB, 0x3C1) }, +    { ZYDIS_DEFINITION(0xB, 0x3C9), ZYDIS_DEFINITION(0xB, 0x3CA), ZYDIS_DEFINITION(0xB, 0x3CB) }, +    { ZYDIS_DEFINITION(0xB, 0x3C2), ZYDIS_DEFINITION(0xB, 0x3C3), ZYDIS_DEFINITION(0xB, 0x3C4) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3F0), ZYDIS_DEFINITION(0xB, 0x3F1) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3F6), ZYDIS_DEFINITION(0xB, 0x3F7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3F2), ZYDIS_DEFINITION(0xB, 0x3F3) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3F8), ZYDIS_DEFINITION(0xB, 0x3F9) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x220), ZYDIS_DEFINITION(0xB, 0x221) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x226), ZYDIS_DEFINITION(0xB, 0x227) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x222), ZYDIS_DEFINITION(0xB, 0x223) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x228), ZYDIS_DEFINITION(0xB, 0x229) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3F4) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3FA) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3F5) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x3FB) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x224) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x22A) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x225) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x22B) }, +    { ZYDIS_DEFINITION(0xB, 0x623), ZYDIS_DEFINITION(0xB, 0x624), ZYDIS_DEFINITION(0xB, 0x625) }, +    { ZYDIS_DEFINITION(0xB, 0x635), ZYDIS_DEFINITION(0xB, 0x636), ZYDIS_DEFINITION(0xB, 0x637) }, +    { ZYDIS_DEFINITION(0xB, 0x626), ZYDIS_DEFINITION(0xB, 0x627), ZYDIS_DEFINITION(0xB, 0x628) }, +    { ZYDIS_DEFINITION(0xB, 0x638), ZYDIS_DEFINITION(0xB, 0x639), ZYDIS_DEFINITION(0xB, 0x63A) }, +    { ZYDIS_DEFINITION(0xB, 0x5E1), ZYDIS_DEFINITION(0xB, 0x5E2), ZYDIS_DEFINITION(0xB, 0x5E3) }, +    { ZYDIS_DEFINITION(0xB, 0x63B), ZYDIS_DEFINITION(0xB, 0x63C), ZYDIS_DEFINITION(0xB, 0x63D) }, +    { ZYDIS_DEFINITION(0xB, 0x5E4), ZYDIS_DEFINITION(0xB, 0x5E5), ZYDIS_DEFINITION(0xB, 0x5E6) }, +    { ZYDIS_DEFINITION(0xB, 0x63E), ZYDIS_DEFINITION(0xB, 0x63F), ZYDIS_DEFINITION(0xB, 0x640) }, +    { ZYDIS_DEFINITION(0xB, 0x1E2), ZYDIS_DEFINITION(0xB, 0x1E3), ZYDIS_DEFINITION(0xB, 0x1E4) }, +    { ZYDIS_DEFINITION(0xB, 0x1E5), ZYDIS_DEFINITION(0xB, 0x1E6), ZYDIS_DEFINITION(0xB, 0x1E7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB86), ZYDIS_DEFINITION(0xB, 0xB87) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB8A), ZYDIS_DEFINITION(0xB, 0xB8B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB88), ZYDIS_DEFINITION(0xB, 0xB89) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0xB8C), ZYDIS_DEFINITION(0xB, 0xB8D) }, +    { ZYDIS_DEFINITION(0xB, 0x5DB), ZYDIS_DEFINITION(0xB, 0x5DC), ZYDIS_DEFINITION(0xB, 0x5DD) }, +    { ZYDIS_DEFINITION(0xB, 0x5DE), ZYDIS_DEFINITION(0xB, 0x5DF), ZYDIS_DEFINITION(0xB, 0x5E0) }, +    { ZYDIS_DEFINITION(0xB, 0xAEA), ZYDIS_DEFINITION(0xB, 0xAEB), ZYDIS_DEFINITION(0xB, 0xAEC) }, +    { ZYDIS_DEFINITION(0xB, 0xAE3), ZYDIS_DEFINITION(0xB, 0xAE4), ZYDIS_DEFINITION(0xB, 0xAE5) }, +    { ZYDIS_DEFINITION(0xB, 0xAED), ZYDIS_DEFINITION(0xB, 0xAEE), ZYDIS_DEFINITION(0xB, 0xAEF) }, +    { ZYDIS_DEFINITION(0xB, 0xAE6), ZYDIS_DEFINITION(0xB, 0xAE7), ZYDIS_DEFINITION(0xB, 0xAE8) }, +    { ZYDIS_DEFINITION(0xB, 0x236), ZYDIS_DEFINITION(0xB, 0x237), ZYDIS_DEFINITION(0xB, 0x238) }, +    { ZYDIS_DEFINITION(0xB, 0x22F), ZYDIS_DEFINITION(0xB, 0x230), ZYDIS_DEFINITION(0xB, 0x231) }, +    { ZYDIS_DEFINITION(0xB, 0x239), ZYDIS_DEFINITION(0xB, 0x23A), ZYDIS_DEFINITION(0xB, 0x23B) }, +    { ZYDIS_DEFINITION(0xB, 0x232), ZYDIS_DEFINITION(0xB, 0x233), ZYDIS_DEFINITION(0xB, 0x234) }, +    { ZYDIS_DEFINITION(0xB, 0xB1A), ZYDIS_DEFINITION(0xB, 0xB1B), ZYDIS_DEFINITION(0xB, 0xB1C) }, +    { ZYDIS_DEFINITION(0xB, 0xB13), ZYDIS_DEFINITION(0xB, 0xB14), ZYDIS_DEFINITION(0xB, 0xB15) }, +    { ZYDIS_DEFINITION(0xB, 0xB1D), ZYDIS_DEFINITION(0xB, 0xB1E), ZYDIS_DEFINITION(0xB, 0xB1F) }, +    { ZYDIS_DEFINITION(0xB, 0xB16), ZYDIS_DEFINITION(0xB, 0xB17), ZYDIS_DEFINITION(0xB, 0xB18) }, +    { ZYDIS_DEFINITION(0xB, 0x38C), ZYDIS_DEFINITION(0xB, 0x38D), ZYDIS_DEFINITION(0xB, 0x38E) }, +    { ZYDIS_DEFINITION(0xB, 0x386), ZYDIS_DEFINITION(0xB, 0x387), ZYDIS_DEFINITION(0xB, 0x388) }, +    { ZYDIS_DEFINITION(0xB, 0x38F), ZYDIS_DEFINITION(0xB, 0x390), ZYDIS_DEFINITION(0xB, 0x391) }, +    { ZYDIS_DEFINITION(0xB, 0x389), ZYDIS_DEFINITION(0xB, 0x38A), ZYDIS_DEFINITION(0xB, 0x38B) }, +    { ZYDIS_DEFINITION(0xB, 0x944), ZYDIS_DEFINITION(0xB, 0x945), ZYDIS_DEFINITION(0xB, 0x946) }, +    { ZYDIS_DEFINITION(0xB, 0x947), ZYDIS_DEFINITION(0xB, 0x948), ZYDIS_DEFINITION(0xB, 0x949) }, +    { ZYDIS_DEFINITION(0xB, 0x926), ZYDIS_DEFINITION(0xB, 0x927), ZYDIS_DEFINITION(0xB, 0x928) }, +    { ZYDIS_DEFINITION(0xB, 0x92C), ZYDIS_DEFINITION(0xB, 0x92D), ZYDIS_DEFINITION(0xB, 0x92E) }, +    { ZYDIS_DEFINITION(0xB, 0x929), ZYDIS_DEFINITION(0xB, 0x92A), ZYDIS_DEFINITION(0xB, 0x92B) }, +    { ZYDIS_DEFINITION(0xB, 0x92F), ZYDIS_DEFINITION(0xB, 0x930), ZYDIS_DEFINITION(0xB, 0x931) }, +    { ZYDIS_DEFINITION(0xB, 0x968), ZYDIS_DEFINITION(0xB, 0x969), ZYDIS_DEFINITION(0xB, 0x96A) }, +    { ZYDIS_DEFINITION(0xB, 0x96B), ZYDIS_DEFINITION(0xB, 0x96C), ZYDIS_DEFINITION(0xB, 0x96D) }, +    { ZYDIS_DEFINITION(0xB, 0x94A), ZYDIS_DEFINITION(0xB, 0x94B), ZYDIS_DEFINITION(0xB, 0x94C) }, +    { ZYDIS_DEFINITION(0xB, 0x950), ZYDIS_DEFINITION(0xB, 0x951), ZYDIS_DEFINITION(0xB, 0x952) }, +    { ZYDIS_DEFINITION(0xB, 0x94D), ZYDIS_DEFINITION(0xB, 0x94E), ZYDIS_DEFINITION(0xB, 0x94F) }, +    { ZYDIS_DEFINITION(0xB, 0x953), ZYDIS_DEFINITION(0xB, 0x954), ZYDIS_DEFINITION(0xB, 0x955) }, +    { ZYDIS_DEFINITION(0xB, 0x3D8), ZYDIS_DEFINITION(0xB, 0x3D9), ZYDIS_DEFINITION(0xB, 0x3DA) }, +    { ZYDIS_DEFINITION(0xB, 0x3DB), ZYDIS_DEFINITION(0xB, 0x3DC), ZYDIS_DEFINITION(0xB, 0x3DD) }, +    { ZYDIS_DEFINITION(0xB, 0x3D2), ZYDIS_DEFINITION(0xB, 0x3D3), ZYDIS_DEFINITION(0xB, 0x3D4) }, +    { ZYDIS_DEFINITION(0xB, 0x3D5), ZYDIS_DEFINITION(0xB, 0x3D6), ZYDIS_DEFINITION(0xB, 0x3D7) }, +    { ZYDIS_DEFINITION(0x1, 0x4BC), ZYDIS_DEFINITION(0x1, 0x4BD), ZYDIS_DEFINITION(0x1, 0x4BE) }, +    { ZYDIS_DEFINITION(0x1, 0x4BF), ZYDIS_DEFINITION(0x1, 0x4C0), ZYDIS_DEFINITION(0x1, 0x4C1) }, +    { ZYDIS_DEFINITION(0x1, 0x4B6), ZYDIS_DEFINITION(0x1, 0x4B7), ZYDIS_DEFINITION(0x1, 0x4B8) }, +    { ZYDIS_DEFINITION(0x1, 0x4B9), ZYDIS_DEFINITION(0x1, 0x4BA), ZYDIS_DEFINITION(0x1, 0x4BB) }, +    { ZYDIS_DEFINITION(0x1, 0x178), ZYDIS_DEFINITION(0x1, 0x179), ZYDIS_DEFINITION(0x1, 0x17A) }, +    { ZYDIS_DEFINITION(0x1, 0x17B), ZYDIS_DEFINITION(0x1, 0x17C), ZYDIS_DEFINITION(0x1, 0x17D) }, +    { ZYDIS_DEFINITION(0x1, 0x470), ZYDIS_DEFINITION(0x1, 0x471), ZYDIS_DEFINITION(0x1, 0x472) }, +    { ZYDIS_DEFINITION(0x1, 0x47C), ZYDIS_DEFINITION(0x1, 0x47D), ZYDIS_DEFINITION(0x1, 0x47E) }, +    { ZYDIS_DEFINITION(0x1, 0x473), ZYDIS_DEFINITION(0x1, 0x474), ZYDIS_DEFINITION(0x1, 0x475) }, +    { ZYDIS_DEFINITION(0x1, 0x47F), ZYDIS_DEFINITION(0x1, 0x480), ZYDIS_DEFINITION(0x1, 0x481) }, +    { ZYDIS_DEFINITION(0xB, 0x980), ZYDIS_DEFINITION(0xB, 0x981), ZYDIS_DEFINITION(0xB, 0x982) }, +    { ZYDIS_DEFINITION(0xB, 0x983), ZYDIS_DEFINITION(0xB, 0x984), ZYDIS_DEFINITION(0xB, 0x985) }, +    { ZYDIS_DEFINITION(0x1, 0x1B7), ZYDIS_DEFINITION(0x1, 0x1B8), ZYDIS_DEFINITION(0x1, 0x1B9) }, +    { ZYDIS_DEFINITION(0x1, 0x1C5), ZYDIS_DEFINITION(0x1, 0x1C6), ZYDIS_DEFINITION(0x1, 0x1C7) }, +    { ZYDIS_DEFINITION(0x1, 0x1BA), ZYDIS_DEFINITION(0x1, 0x1BB), ZYDIS_DEFINITION(0x1, 0x1BC) }, +    { ZYDIS_DEFINITION(0x1, 0x1C8), ZYDIS_DEFINITION(0x1, 0x1C9), ZYDIS_DEFINITION(0x1, 0x1CA) }, +    { ZYDIS_DEFINITION(0x1, 0x4AE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4AF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x476), ZYDIS_DEFINITION(0x1, 0x477), ZYDIS_DEFINITION(0x1, 0x478) }, +    { ZYDIS_DEFINITION(0x1, 0x482), ZYDIS_DEFINITION(0x1, 0x483), ZYDIS_DEFINITION(0x1, 0x484) }, +    { ZYDIS_DEFINITION(0x1, 0x479), ZYDIS_DEFINITION(0x1, 0x47A), ZYDIS_DEFINITION(0x1, 0x47B) }, +    { ZYDIS_DEFINITION(0x1, 0x485), ZYDIS_DEFINITION(0x1, 0x486), ZYDIS_DEFINITION(0x1, 0x487) }, +    { ZYDIS_DEFINITION(0x1, 0xA6), ZYDIS_DEFINITION(0x1, 0xA7), ZYDIS_DEFINITION(0x1, 0xA8) }, +    { ZYDIS_DEFINITION(0x1, 0x114), ZYDIS_DEFINITION(0x1, 0x115), ZYDIS_DEFINITION(0x1, 0x116) }, +    { ZYDIS_DEFINITION(0x1, 0xA9), ZYDIS_DEFINITION(0x1, 0xAA), ZYDIS_DEFINITION(0x1, 0xAB) }, +    { ZYDIS_DEFINITION(0x1, 0x117), ZYDIS_DEFINITION(0x1, 0x118), ZYDIS_DEFINITION(0x1, 0x119) }, +    { ZYDIS_DEFINITION(0x1, 0x857), ZYDIS_DEFINITION(0x1, 0x858), ZYDIS_DEFINITION(0x1, 0x859) }, +    { ZYDIS_DEFINITION(0x1, 0x85A), ZYDIS_DEFINITION(0x1, 0x85B), ZYDIS_DEFINITION(0x1, 0x85C) }, +    { ZYDIS_DEFINITION(0x1, 0x839), ZYDIS_DEFINITION(0x1, 0x83A), ZYDIS_DEFINITION(0x1, 0x83B) }, +    { ZYDIS_DEFINITION(0x1, 0x83C), ZYDIS_DEFINITION(0x1, 0x83D), ZYDIS_DEFINITION(0x1, 0x83E) }, +    { ZYDIS_DEFINITION(0x1, 0x845), ZYDIS_DEFINITION(0x1, 0x846), ZYDIS_DEFINITION(0x1, 0x847) }, +    { ZYDIS_DEFINITION(0x1, 0x848), ZYDIS_DEFINITION(0x1, 0x849), ZYDIS_DEFINITION(0x1, 0x84A) }, +    { ZYDIS_DEFINITION(0x1, 0x83F), ZYDIS_DEFINITION(0x1, 0x840), ZYDIS_DEFINITION(0x1, 0x841) }, +    { ZYDIS_DEFINITION(0x1, 0x842), ZYDIS_DEFINITION(0x1, 0x843), ZYDIS_DEFINITION(0x1, 0x844) }, +    { ZYDIS_DEFINITION(0x1, 0x851), ZYDIS_DEFINITION(0x1, 0x852), ZYDIS_DEFINITION(0x1, 0x853) }, +    { ZYDIS_DEFINITION(0x1, 0x854), ZYDIS_DEFINITION(0x1, 0x855), ZYDIS_DEFINITION(0x1, 0x856) }, +    { ZYDIS_DEFINITION(0x1, 0x84B), ZYDIS_DEFINITION(0x1, 0x84C), ZYDIS_DEFINITION(0x1, 0x84D) }, +    { ZYDIS_DEFINITION(0x1, 0x84E), ZYDIS_DEFINITION(0x1, 0x84F), ZYDIS_DEFINITION(0x1, 0x850) }, +    { ZYDIS_DEFINITION(0x1, 0x80F), ZYDIS_DEFINITION(0x1, 0x810), ZYDIS_DEFINITION(0x1, 0x811) }, +    { ZYDIS_DEFINITION(0x1, 0x812), ZYDIS_DEFINITION(0x1, 0x813), ZYDIS_DEFINITION(0x1, 0x814) }, +    { ZYDIS_DEFINITION(0x1, 0x7F1), ZYDIS_DEFINITION(0x1, 0x7F2), ZYDIS_DEFINITION(0x1, 0x7F3) }, +    { ZYDIS_DEFINITION(0x1, 0x7F4), ZYDIS_DEFINITION(0x1, 0x7F5), ZYDIS_DEFINITION(0x1, 0x7F6) }, +    { ZYDIS_DEFINITION(0x1, 0x7FD), ZYDIS_DEFINITION(0x1, 0x7FE), ZYDIS_DEFINITION(0x1, 0x7FF) }, +    { ZYDIS_DEFINITION(0x1, 0x800), ZYDIS_DEFINITION(0x1, 0x801), ZYDIS_DEFINITION(0x1, 0x802) }, +    { ZYDIS_DEFINITION(0x1, 0x7F7), ZYDIS_DEFINITION(0x1, 0x7F8), ZYDIS_DEFINITION(0x1, 0x7F9) }, +    { ZYDIS_DEFINITION(0x1, 0x7FA), ZYDIS_DEFINITION(0x1, 0x7FB), ZYDIS_DEFINITION(0x1, 0x7FC) }, +    { ZYDIS_DEFINITION(0x1, 0x809), ZYDIS_DEFINITION(0x1, 0x80A), ZYDIS_DEFINITION(0x1, 0x80B) }, +    { ZYDIS_DEFINITION(0x1, 0x80C), ZYDIS_DEFINITION(0x1, 0x80D), ZYDIS_DEFINITION(0x1, 0x80E) }, +    { ZYDIS_DEFINITION(0x1, 0x803), ZYDIS_DEFINITION(0x1, 0x804), ZYDIS_DEFINITION(0x1, 0x805) }, +    { ZYDIS_DEFINITION(0x1, 0x806), ZYDIS_DEFINITION(0x1, 0x807), ZYDIS_DEFINITION(0x1, 0x808) }, +    { ZYDIS_DEFINITION(0x1, 0xA8E), ZYDIS_DEFINITION(0x1, 0xA8F), ZYDIS_DEFINITION(0x1, 0xA90) }, +    { ZYDIS_DEFINITION(0x1, 0xAA0), ZYDIS_DEFINITION(0x1, 0xAA1), ZYDIS_DEFINITION(0x1, 0xAA2) }, +    { ZYDIS_DEFINITION(0x1, 0xA91), ZYDIS_DEFINITION(0x1, 0xA92), ZYDIS_DEFINITION(0x1, 0xA93) }, +    { ZYDIS_DEFINITION(0x1, 0xAA3), ZYDIS_DEFINITION(0x1, 0xAA4), ZYDIS_DEFINITION(0x1, 0xAA5) }, +    { ZYDIS_DEFINITION(0x1, 0xA94), ZYDIS_DEFINITION(0x1, 0xA95), ZYDIS_DEFINITION(0x1, 0xA96) }, +    { ZYDIS_DEFINITION(0x1, 0xA9A), ZYDIS_DEFINITION(0x1, 0xA9B), ZYDIS_DEFINITION(0x1, 0xA9C) }, +    { ZYDIS_DEFINITION(0x1, 0xA97), ZYDIS_DEFINITION(0x1, 0xA98), ZYDIS_DEFINITION(0x1, 0xA99) }, +    { ZYDIS_DEFINITION(0x1, 0xA9D), ZYDIS_DEFINITION(0x1, 0xA9E), ZYDIS_DEFINITION(0x1, 0xA9F) }, +    { ZYDIS_DEFINITION(0x1, 0x7D0), ZYDIS_DEFINITION(0x1, 0x7D1), ZYDIS_DEFINITION(0x1, 0x7D2) }, +    { ZYDIS_DEFINITION(0x1, 0x7D9), ZYDIS_DEFINITION(0x1, 0x7DA), ZYDIS_DEFINITION(0x1, 0x7DB) }, +    { ZYDIS_DEFINITION(0x1, 0x7BE), ZYDIS_DEFINITION(0x1, 0x7BF), ZYDIS_DEFINITION(0x1, 0x7C0) }, +    { ZYDIS_DEFINITION(0x1, 0x85D), ZYDIS_DEFINITION(0x1, 0x85E), ZYDIS_DEFINITION(0x1, 0x85F) }, +    { ZYDIS_DEFINITION(0x1, 0x5C3), ZYDIS_DEFINITION(0x1, 0x5C4), ZYDIS_DEFINITION(0x1, 0x5C5) }, +    { ZYDIS_DEFINITION(0x1, 0x860), ZYDIS_DEFINITION(0x1, 0x861), ZYDIS_DEFINITION(0x1, 0x862) }, +    { ZYDIS_DEFINITION(0x1, 0x863), ZYDIS_DEFINITION(0x1, 0x864), ZYDIS_DEFINITION(0x1, 0x865) }, +    { ZYDIS_DEFINITION(0x1, 0x7C4), ZYDIS_DEFINITION(0x1, 0x7C5), ZYDIS_DEFINITION(0x1, 0x7C6) }, +    { ZYDIS_DEFINITION(0x1, 0x7C7), ZYDIS_DEFINITION(0x1, 0x7C8), ZYDIS_DEFINITION(0x1, 0x7C9) }, +    { ZYDIS_DEFINITION(0x1, 0x7DF), ZYDIS_DEFINITION(0x1, 0x7E0), ZYDIS_DEFINITION(0x1, 0x7E1) }, +    { ZYDIS_DEFINITION(0x1, 0x7E2), ZYDIS_DEFINITION(0x1, 0x7E3), ZYDIS_DEFINITION(0x1, 0x7E4) }, +    { ZYDIS_DEFINITION(0x1, 0x7CA), ZYDIS_DEFINITION(0x1, 0x7CB), ZYDIS_DEFINITION(0x1, 0x7CC) }, +    { ZYDIS_DEFINITION(0x1, 0x7CD), ZYDIS_DEFINITION(0x1, 0x7CE), ZYDIS_DEFINITION(0x1, 0x7CF) }, +    { ZYDIS_DEFINITION(0x1, 0x7EB), ZYDIS_DEFINITION(0x1, 0x7EC), ZYDIS_DEFINITION(0x1, 0x7ED) }, +    { ZYDIS_DEFINITION(0x1, 0x7EE), ZYDIS_DEFINITION(0x1, 0x7EF), ZYDIS_DEFINITION(0x1, 0x7F0) }, +    { ZYDIS_DEFINITION(0x1, 0x7E5), ZYDIS_DEFINITION(0x1, 0x7E6), ZYDIS_DEFINITION(0x1, 0x7E7) }, +    { ZYDIS_DEFINITION(0x1, 0x7E8), ZYDIS_DEFINITION(0x1, 0x7E9), ZYDIS_DEFINITION(0x1, 0x7EA) }, +    { ZYDIS_DEFINITION(0x1, 0x7D3), ZYDIS_DEFINITION(0x1, 0x7D4), ZYDIS_DEFINITION(0x1, 0x7D5) }, +    { ZYDIS_DEFINITION(0x1, 0x7D6), ZYDIS_DEFINITION(0x1, 0x7D7), ZYDIS_DEFINITION(0x1, 0x7D8) }, +    { ZYDIS_DEFINITION(0x1, 0x7C1), ZYDIS_DEFINITION(0x1, 0x7C2), ZYDIS_DEFINITION(0x1, 0x7C3) }, +    { ZYDIS_DEFINITION(0x1, 0x7DC), ZYDIS_DEFINITION(0x1, 0x7DD), ZYDIS_DEFINITION(0x1, 0x7DE) }, +    { ZYDIS_DEFINITION(0x1, 0x5C6), ZYDIS_DEFINITION(0x1, 0x5C7), ZYDIS_DEFINITION(0x1, 0x5C8) }, +    { ZYDIS_DEFINITION(0x1, 0x1FC), ZYDIS_DEFINITION(0x1, 0x1FD), ZYDIS_DEFINITION(0x1, 0x1FE) }, +    { ZYDIS_DEFINITION(0x1, 0x1FF), ZYDIS_DEFINITION(0x1, 0x200), ZYDIS_DEFINITION(0x1, 0x201) }, +    { ZYDIS_DEFINITION(0x1, 0xB9), ZYDIS_DEFINITION(0x1, 0xBA), ZYDIS_DEFINITION(0x1, 0xBB) }, +    { ZYDIS_DEFINITION(0x1, 0xBC), ZYDIS_DEFINITION(0x1, 0xBD), ZYDIS_DEFINITION(0x1, 0xBE) }, +    { ZYDIS_DEFINITION(0x1, 0x446), ZYDIS_DEFINITION(0x1, 0x447), ZYDIS_DEFINITION(0x1, 0x448) }, +    { ZYDIS_DEFINITION(0x1, 0x449), ZYDIS_DEFINITION(0x1, 0x44A), ZYDIS_DEFINITION(0x1, 0x44B) }, +    { ZYDIS_DEFINITION(0x1, 0x488), ZYDIS_DEFINITION(0x1, 0x489), ZYDIS_DEFINITION(0x1, 0x48A) }, +    { ZYDIS_DEFINITION(0x1, 0x464), ZYDIS_DEFINITION(0x1, 0x465), ZYDIS_DEFINITION(0x1, 0x466) }, +    { ZYDIS_DEFINITION(0x1, 0x48B), ZYDIS_DEFINITION(0x1, 0x48C), ZYDIS_DEFINITION(0x1, 0x48D) }, +    { ZYDIS_DEFINITION(0x1, 0x467), ZYDIS_DEFINITION(0x1, 0x468), ZYDIS_DEFINITION(0x1, 0x469) }, +    { ZYDIS_DEFINITION(0xB, 0x986), ZYDIS_DEFINITION(0xB, 0x987), ZYDIS_DEFINITION(0xB, 0x988) }, +    { ZYDIS_DEFINITION(0xB, 0x989), ZYDIS_DEFINITION(0xB, 0x98A), ZYDIS_DEFINITION(0xB, 0x98B) }, +    { ZYDIS_DEFINITION(0x1, 0x1BE), ZYDIS_DEFINITION(0x1, 0x1BF), ZYDIS_DEFINITION(0x1, 0x1C0) }, +    { ZYDIS_DEFINITION(0x1, 0x1CC), ZYDIS_DEFINITION(0x1, 0x1CD), ZYDIS_DEFINITION(0x1, 0x1CE) }, +    { ZYDIS_DEFINITION(0x1, 0x1C1), ZYDIS_DEFINITION(0x1, 0x1C2), ZYDIS_DEFINITION(0x1, 0x1C3) }, +    { ZYDIS_DEFINITION(0x1, 0x1CF), ZYDIS_DEFINITION(0x1, 0x1D0), ZYDIS_DEFINITION(0x1, 0x1D1) }, +    { ZYDIS_DEFINITION(0x1, 0x48E), ZYDIS_DEFINITION(0x1, 0x48F), ZYDIS_DEFINITION(0x1, 0x490) }, +    { ZYDIS_DEFINITION(0x1, 0x46A), ZYDIS_DEFINITION(0x1, 0x46B), ZYDIS_DEFINITION(0x1, 0x46C) }, +    { ZYDIS_DEFINITION(0x1, 0x491), ZYDIS_DEFINITION(0x1, 0x492), ZYDIS_DEFINITION(0x1, 0x493) }, +    { ZYDIS_DEFINITION(0x1, 0x46D), ZYDIS_DEFINITION(0x1, 0x46E), ZYDIS_DEFINITION(0x1, 0x46F) }, +    { ZYDIS_DEFINITION(0x1, 0xC0), ZYDIS_DEFINITION(0x1, 0xC1), ZYDIS_DEFINITION(0x1, 0xC2) }, +    { ZYDIS_DEFINITION(0x1, 0xC3), ZYDIS_DEFINITION(0x1, 0xC4), ZYDIS_DEFINITION(0x1, 0xC5) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x50A) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x50B) }, +    { ZYDIS_DEFINITION(0x1, 0x4FE), ZYDIS_DEFINITION(0x1, 0x4FF), ZYDIS_DEFINITION(0x1, 0x500) }, +    { ZYDIS_DEFINITION(0x1, 0x504), ZYDIS_DEFINITION(0x1, 0x505), ZYDIS_DEFINITION(0x1, 0x506) }, +    { ZYDIS_DEFINITION(0x1, 0x501), ZYDIS_DEFINITION(0x1, 0x502), ZYDIS_DEFINITION(0x1, 0x503) }, +    { ZYDIS_DEFINITION(0x1, 0x507), ZYDIS_DEFINITION(0x1, 0x508), ZYDIS_DEFINITION(0x1, 0x509) }, +    { ZYDIS_DEFINITION(0x1, 0xB3), ZYDIS_DEFINITION(0x1, 0xB4), ZYDIS_DEFINITION(0x1, 0xB5) }, +    { ZYDIS_DEFINITION(0x1, 0xB6), ZYDIS_DEFINITION(0x1, 0xB7), ZYDIS_DEFINITION(0x1, 0xB8) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x0) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x143) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x13C) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x13D) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x13E) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x142) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x13F) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x140) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x141) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1) }, +    { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x380), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x381), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x382), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x383), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x384), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x385), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x386), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x387), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x388), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x389), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x390), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x391), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x392), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x393), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x394), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x395), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x396), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x397), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x398), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x399), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xA9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xAA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xAB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xAC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xAD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xAE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xAF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3AD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3AE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3BA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3BB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3BC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3BD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3BE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3BF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3CA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3CB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3CC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3CD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3CE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3CF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3DA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3DB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3DC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3DE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xB9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xBA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xBB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xBC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xBD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xBE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3EC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3EE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3FB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3FD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3FF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xC7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x402), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x403), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x404), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x405), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x406), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x407), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x408), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x409), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x410), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x411), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x412), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x413), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x414), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x415), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x416), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x417), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x418), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x419), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x420), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x421), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x422), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x423), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x0, 0x63C), ZYDIS_DEFINITION(0x0, 0x63B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xCA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x426), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xCB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xCC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xCD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xCE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xCF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x430), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x431), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x432), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x433), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x434), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x435), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x442), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x443), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x444), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x445), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x446), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x447), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x448), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x449), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44C), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x450), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x451), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x452), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x453), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x456), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x457), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x458), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x459), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45C), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x460), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x461), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x462), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x463), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x464), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x465), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x466), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x467), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x468), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x469), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x470), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x471), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x472), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x473), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x474), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x475), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x476), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x477), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x478), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x479), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x480), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x481), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x482), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x483), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x484), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x485), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x486), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x487), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x488), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x489), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x490), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x491), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x492), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x493), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x494), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x495), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x498), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x499), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4CB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4CD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4CE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4CF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4DA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4DB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4DC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4DD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4DE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4EA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4EC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4EE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4FA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4FB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4FC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4FE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4FF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x500), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x501), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x502), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x503), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x504), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x505), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x506), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x507), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x508), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x509), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x510), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x511), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x512), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x513), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x514), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x515), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x516), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x517), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x518), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x519), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x520), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x521), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x522), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x523), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x524), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x525), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x526), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x527), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x528), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x529), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x530), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x531), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x532), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x533), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x534), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x535), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x536), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x537), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x538), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x539), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x540), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x541), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x542), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x543), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x544), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x545), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x546), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x547), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x548), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x549), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x550), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x551), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x552), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x553), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x554), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x555), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x556), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x557), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x558), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x559), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x560), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x561), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x562), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x563), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x564), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x565), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x566), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x567), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x568), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x569), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x570), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x571), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x572), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x573), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x574), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x575), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x576), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x577), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x578), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x579), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x580), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x581), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x582), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x583), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x584), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x585), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x586), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x587), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x588), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x589), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x590), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x591), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x592), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x593), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x594), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x595), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x596), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x597), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x598), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x599), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5AB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5AD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5AF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5BA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5BD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5BF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5CA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5CD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5CE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5CF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5DA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5DC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5DD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5DE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E9), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5EA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5EC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5ED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5EE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F0), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5FB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5FD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5FF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x600), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x601), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xD9), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x604), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x605), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x606), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x607), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x608), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x609), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60A), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xDA), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60D), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60F), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x610), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x611), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x612), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xDB), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x614), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x615), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x616), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x617), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x618), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x619), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x620), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x621), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x622), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x623), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x624), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x625), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x626), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x627), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x628), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x629), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xDC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xDD), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x632), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xDE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x635), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x636), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x637), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x638), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x641), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x642), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x643), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x644), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x647), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x648), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x649), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x650), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x651), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x654), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x655), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x656), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x657), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x664), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x665), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66E), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x670), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE4), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE5), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE6), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x677), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x678), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE7), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xE8), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x680), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x690), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x691), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x692), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x693), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x694), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xEC), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xED), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xEE), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xEF), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF0), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF1), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF2), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF3), ZYDIS_INVALID, ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0xF4), ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_REX_W[][2] =+{+    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_CET, 0x0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_CET, 0x1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x12B), ZYDIS_DEFINITION(0x1, 0x12C) }, +    { ZYDIS_DEFINITION(0x1, 0x127), ZYDIS_DEFINITION(0x1, 0x128) }, +    { ZYDIS_DEFINITION(0x1, 0x12D), ZYDIS_DEFINITION(0x1, 0x12E) }, +    { ZYDIS_DEFINITION(0x1, 0x129), ZYDIS_DEFINITION(0x1, 0x12A) }, +    { ZYDIS_DEFINITION(0x1, 0x141), ZYDIS_DEFINITION(0x1, 0x142) }, +    { ZYDIS_DEFINITION(0x1, 0x13D), ZYDIS_DEFINITION(0x1, 0x13E) }, +    { ZYDIS_DEFINITION(0x1, 0x143), ZYDIS_DEFINITION(0x1, 0x144) }, +    { ZYDIS_DEFINITION(0x1, 0x13F), ZYDIS_DEFINITION(0x1, 0x140) }, +    { ZYDIS_DEFINITION(0x1, 0x131), ZYDIS_DEFINITION(0x1, 0x132) }, +    { ZYDIS_DEFINITION(0x1, 0x121), ZYDIS_DEFINITION(0x1, 0x122) }, +    { ZYDIS_DEFINITION(0x1, 0x133), ZYDIS_DEFINITION(0x1, 0x134) }, +    { ZYDIS_DEFINITION(0x1, 0x123), ZYDIS_DEFINITION(0x1, 0x124) }, +    { ZYDIS_DEFINITION(0x1, 0x733), ZYDIS_DEFINITION(0x1, 0x734) }, +    { ZYDIS_DEFINITION(0x1, 0x16), ZYDIS_DEFINITION(0x1, 0x17) }, +    { ZYDIS_DEFINITION(0x1, 0x38), ZYDIS_DEFINITION(0x1, 0x39) }, +    { ZYDIS_DEFINITION(0x1, 0x731), ZYDIS_DEFINITION(0x1, 0x732) }, +    { ZYDIS_DEFINITION(0x1, 0x18), ZYDIS_DEFINITION(0x1, 0x19) }, +    { ZYDIS_DEFINITION(0x1, 0x3A), ZYDIS_DEFINITION(0x1, 0x3B) }, +    { ZYDIS_DEFINITION(0x1, 0x32E), ZYDIS_DEFINITION(0x1, 0x32F) }, +    { ZYDIS_DEFINITION(0xB, 0x481), ZYDIS_DEFINITION(0xB, 0x483) }, +    { ZYDIS_DEFINITION(0xB, 0x482), ZYDIS_DEFINITION(0xB, 0x484) }, +    { ZYDIS_DEFINITION(0xB, 0x4A5), ZYDIS_DEFINITION(0xB, 0x4A7) }, +    { ZYDIS_DEFINITION(0xB, 0x4A6), ZYDIS_DEFINITION(0xB, 0x4A8) }, +    { ZYDIS_DEFINITION(0xB, 0x466), ZYDIS_DEFINITION(0xB, 0x467) }, +    { ZYDIS_DEFINITION(0xB, 0x468), ZYDIS_DEFINITION(0xB, 0x469) }, +    { ZYDIS_DEFINITION(0xB, 0x462), ZYDIS_DEFINITION(0xB, 0x463) }, +    { ZYDIS_DEFINITION(0xB, 0x464), ZYDIS_DEFINITION(0xB, 0x465) }, +    { ZYDIS_DEFINITION(0xB, 0x478), ZYDIS_DEFINITION(0xB, 0x479) }, +    { ZYDIS_DEFINITION(0xB, 0x47A), ZYDIS_DEFINITION(0xB, 0x47B) }, +    { ZYDIS_DEFINITION(0x1, 0x31A), ZYDIS_DEFINITION(0x1, 0x34E) }, +    { ZYDIS_DEFINITION(0x1, 0x31E), ZYDIS_DEFINITION(0x1, 0x350) }, +    { ZYDIS_DEFINITION(0x1, 0x31B), ZYDIS_DEFINITION(0x1, 0x34F) }, +    { ZYDIS_DEFINITION(0x1, 0x31F), ZYDIS_DEFINITION(0x1, 0x351) }, +    { ZYDIS_DEFINITION(0x1, 0x322), ZYDIS_DEFINITION(0x1, 0x354) }, +    { ZYDIS_DEFINITION(0x1, 0x326), ZYDIS_DEFINITION(0x1, 0x356) }, +    { ZYDIS_DEFINITION(0x1, 0x323), ZYDIS_DEFINITION(0x1, 0x355) }, +    { ZYDIS_DEFINITION(0x1, 0x327), ZYDIS_DEFINITION(0x1, 0x357) }, +    { ZYDIS_DEFINITION(0x1, 0x6FB), ZYDIS_DEFINITION(0x1, 0x6FC) }, +    { ZYDIS_DEFINITION(0x1, 0x231), ZYDIS_DEFINITION(0x1, 0x232) }, +    { ZYDIS_DEFINITION(0x1, 0x709), ZYDIS_DEFINITION(0x1, 0x70A) }, +    { ZYDIS_DEFINITION(0x1, 0x203), ZYDIS_DEFINITION(0x1, 0x204) }, +    { ZYDIS_DEFINITION(0x1, 0x201), ZYDIS_DEFINITION(0x1, 0x202) }, +    { ZYDIS_DEFINITION(0x1, 0x763), ZYDIS_DEFINITION(0x1, 0x764) }, +    { ZYDIS_DEFINITION(0x1, 0x75F), ZYDIS_DEFINITION(0x1, 0x760) }, +    { ZYDIS_DEFINITION(0x1, 0x767), ZYDIS_DEFINITION(0x1, 0x768) }, +    { ZYDIS_DEFINITION(0x1, 0x101), ZYDIS_DEFINITION(0x1, 0x100) }, +    { ZYDIS_DEFINITION(0x1, 0x761), ZYDIS_DEFINITION(0x1, 0x762) }, +    { ZYDIS_DEFINITION(0x1, 0x765), ZYDIS_DEFINITION(0x1, 0x766) }, +    { ZYDIS_DEFINITION(0x1, 0x769), ZYDIS_DEFINITION(0x1, 0x76A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x42) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x44) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x51) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x53) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x40) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x55) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x41) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x57) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x42) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x59) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x43) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x44), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5D), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x45) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x46) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x61) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x47) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x63) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x48) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x65) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x4D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x54), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x73), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7D), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x81) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x64) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x65) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x66) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x68) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x69), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x70), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x71) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x72), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x73) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x74), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x75), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x76) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x77), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA3), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x78) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x7A) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA8) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xAA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x82), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x83), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x84) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x86) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x87), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x88) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xBC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xBD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x89), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x66) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x67) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x91), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x92) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x93), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x94) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x95) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xCD) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x99) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9D), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x9F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA0) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xDA) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xA4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xAC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xBA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xBB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xBC) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x102) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xC4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xCC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x116), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x117) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD8), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xD9) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xDA) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xDB) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x129), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xE5) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xEA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x131), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x139), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF4) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF5) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF6) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF7) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xF9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xFA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xFB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xFC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x147) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xFD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xFE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0xFF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x100) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x101), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x102), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x103), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x104) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x105), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x106) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x107), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x108) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x109), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x10F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15F), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x110) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x161) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x11F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x120) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x121), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x122) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x174), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x175) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x123) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x177) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x124) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x179) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x125), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x126), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x127), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x128) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x180) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x129), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x12C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x137), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x138), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x139), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x190) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x192) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x13F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x197), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x198) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x142), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x143) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x147) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1AA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1AE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x14F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x150), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x151) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x152), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x153) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x154), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x155) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x156), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x157) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1BA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x158), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x159) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1BD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1BE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x15F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x160), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x161) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x162), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x163) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1CA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x164), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x165) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x166), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x167) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x168), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1CC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x169), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1CE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x16F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x170), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x171) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1DA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x172), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x173), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x174), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x175) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x176), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x177) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x178), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x179) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x17F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x180), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x181) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x182), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x183) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x184), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x185) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x186), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x187) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x188), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x189) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x18F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1FD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1FE) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x190) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x191) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x192), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x193) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x203), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x204) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x194), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x195) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x196), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x197) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x198), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x199) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x210) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x19F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x68) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1AA) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x220), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x221) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1AB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1AC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x224), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x225) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1AD) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x227) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1AF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1BB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1BF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1C3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0xB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0xD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0xE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0xF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x248), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x249) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1CF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x250), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x251) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x254), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x255) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1D9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1DA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1DB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1DC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1DD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x258), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x259) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1DE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1DF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1E7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x10), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x11) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x12), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x13) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x14), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x15) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x16), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x17) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x268), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x269) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x270), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x271) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1F9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1FB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x274), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x275) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1FD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1FE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x1FF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x200), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x201) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x278), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x279) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x202), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x203) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x204), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x205) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x206), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x207) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x208), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x209) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x281) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x20F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x284), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x285) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x210), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x211) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x288), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x289) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x212), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x213) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x214), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x215) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x216), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x217) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x218), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x219) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x290), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x291) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x21F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x294), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x295) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x220), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x221) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x222), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x223) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x224), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x225) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x298), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x299) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x226), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x227) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x228), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x229) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x22B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x19) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x1F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x20), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x21) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x22), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x23) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x24), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x25) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x27) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x23F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x240), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x241) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x242), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x243) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x244), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x245) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x246), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x247) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x248), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x249) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x24B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x254) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C5) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x255) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x256), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x257) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2CB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x258), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2CD), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x259) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2CF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D1), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25D), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x266), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x69) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x269), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x26F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x270), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x271) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x272), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x273) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x274), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x275) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x276), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x277) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x278), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x279) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x27F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x280), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x281) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x282), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x283) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2FA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2FB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x286), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x287), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x288), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x28F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x308), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x309) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x290), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x291) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x292), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x293) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x310), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x311) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x294), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x295) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x296), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x297) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x298), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x299) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x29F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2A9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2AB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2AD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2AF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x334), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x335) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2B9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2BB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x338), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x339) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2BE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2BF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2C9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x340), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x341) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2CA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2CB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2CC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2CD) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2CE) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2CF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x346), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x347) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D6) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D7) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x351) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2D9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2DA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2DB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2DC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2DD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2DE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2DF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2E9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x70) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2EC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x71) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2EF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x72) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2F9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2FA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x357), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2FB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2FC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2FD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2FE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x2FF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x300), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x301), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x302), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x303), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x304) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x305), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x306) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x309), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x73) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x74) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x30F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x75) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x312), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x76) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x315), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x316) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x360), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x361) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x317), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x77) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x78) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x31F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x320) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x321), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x322) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x323), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x324), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x325), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x326) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x327), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x328), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x329), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x32F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x330), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x331), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x332), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x333), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x334), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x335), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x336), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x337), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x338), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x339), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x33F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x340) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x341), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x342) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x343), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x344) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x345), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x346) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x347), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x348) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x349) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x34F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x350), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x351), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x352), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x353), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x354), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x355), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x356), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x357) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x358), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x359) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A5), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x35F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x360) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x361) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x362) }, +    { ZYDIS_DEFINITION(0x1, 0x136), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x79) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x365), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x368), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x36E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x371), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x374) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x375) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x376) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x377) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x378) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x379) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37A) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37B) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37D) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37E) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x37F) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x380) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x381) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x382) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x383) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x384), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x385) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x386), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x387) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x38D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x80) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x390), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x81) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x393), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x82) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x396), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x397) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B1) }, +    { ZYDIS_DEFINITION(0x1, 0x1D2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x83) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x84) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x39F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A0) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A1) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A3) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3BC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3BF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3A9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3AA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3AB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x3AC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xC9), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xCA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xDC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x190), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x24), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBC), ZYDIS_DEFINITION(0x1, 0xBF) }, +    { ZYDIS_DEFINITION(0x1, 0xBE), ZYDIS_DEFINITION(0x1, 0xBD) }, +    { ZYDIS_DEFINITION(0x1, 0xB8), ZYDIS_DEFINITION(0x1, 0xBB) }, +    { ZYDIS_DEFINITION(0x1, 0xBA), ZYDIS_DEFINITION(0x1, 0xB9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x39), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x2A), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x8) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xC5) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xC6) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x9) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xA) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0xA) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xD9) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0xB) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x3C) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0xC) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x18D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0xD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x10D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0xE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0xF) }, +    { ZYDIS_DEFINITION(0x1, 0xCD), ZYDIS_DEFINITION(0x1, 0xD1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x10), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x14E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x11), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x12), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x13), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x15D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x157), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x151), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x14), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x10A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xCE), ZYDIS_DEFINITION(0x1, 0xD2) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x15) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x21) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x16), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x17) }, +    { ZYDIS_DEFINITION(0x1, 0xF3), ZYDIS_DEFINITION(0x1, 0xFC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x19) }, +    { ZYDIS_DEFINITION(0x1, 0xF6), ZYDIS_DEFINITION(0x1, 0xF9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1B) }, +    { ZYDIS_DEFINITION(0x1, 0x138), ZYDIS_DEFINITION(0x1, 0x13B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1D) }, +    { ZYDIS_DEFINITION(0x1, 0x172), ZYDIS_DEFINITION(0x1, 0x175) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x163), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x1F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xEA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1E), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1D) }, +    { ZYDIS_DEFINITION(0x1, 0x19), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x20), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x16F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x21), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x115), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x22), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x129), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x23), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x12C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x24), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x123), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x25), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x126), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x26), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x135), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x28) }, +    { ZYDIS_DEFINITION(0x1, 0xA2), ZYDIS_DEFINITION(0x1, 0x9F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x29), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x160), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x15A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x154), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2D) }, +    { ZYDIS_DEFINITION(0x1, 0x7), ZYDIS_DEFINITION(0x1, 0x4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xAB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x2F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x30) }, +    { ZYDIS_DEFINITION(0x1, 0xB7), ZYDIS_DEFINITION(0x1, 0xB4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x32) }, +    { ZYDIS_DEFINITION(0x1, 0xB1), ZYDIS_DEFINITION(0x1, 0xAE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x33), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x34) }, +    { ZYDIS_DEFINITION(0x1, 0x4B), ZYDIS_DEFINITION(0x1, 0x48) }, +    { ZYDIS_DEFINITION(0x1, 0x103), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x104) }, +    { ZYDIS_DEFINITION(0x1, 0x1B), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x1C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x35), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xE7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x36), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xED), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x37), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x146), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x38), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x16C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3A) }, +    { ZYDIS_DEFINITION(0x1, 0xFF), ZYDIS_DEFINITION(0x1, 0x102) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3C) }, +    { ZYDIS_DEFINITION(0x1, 0x18), ZYDIS_DEFINITION(0x1, 0x15) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x166), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x3F) }, +    { ZYDIS_DEFINITION(0x1, 0x196), ZYDIS_DEFINITION(0x1, 0x193) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x40), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x149), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x41), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x169), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x42), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x110), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x43), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x184), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x44), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x132), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x45), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x12F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x119), ZYDIS_DEFINITION(0x1, 0x11A) }, +    { ZYDIS_DEFINITION(0x1, 0x98), ZYDIS_DEFINITION(0x1, 0x97) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x47) }, +    { ZYDIS_DEFINITION(0x1, 0x51), ZYDIS_DEFINITION(0x1, 0x4E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x49) }, +    { ZYDIS_DEFINITION(0x1, 0x66), ZYDIS_DEFINITION(0x1, 0x63) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4B) }, +    { ZYDIS_DEFINITION(0x1, 0x78), ZYDIS_DEFINITION(0x1, 0x75) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4D) }, +    { ZYDIS_DEFINITION(0x1, 0x8A), ZYDIS_DEFINITION(0x1, 0x87) }, +    { ZYDIS_DEFINITION(0x1, 0x14A), ZYDIS_DEFINITION(0x1, 0x14B) }, +    { ZYDIS_DEFINITION(0x1, 0x186), ZYDIS_DEFINITION(0x1, 0x185) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x60), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x50) }, +    { ZYDIS_DEFINITION(0x1, 0x57), ZYDIS_DEFINITION(0x1, 0x54) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x51), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x52) }, +    { ZYDIS_DEFINITION(0x1, 0x6C), ZYDIS_DEFINITION(0x1, 0x69) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x54) }, +    { ZYDIS_DEFINITION(0x1, 0x7E), ZYDIS_DEFINITION(0x1, 0x7B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x56) }, +    { ZYDIS_DEFINITION(0x1, 0x90), ZYDIS_DEFINITION(0x1, 0x8D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x57), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x120), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x58), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x11D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5A) }, +    { ZYDIS_DEFINITION(0x1, 0x5D), ZYDIS_DEFINITION(0x1, 0x5A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5C) }, +    { ZYDIS_DEFINITION(0x1, 0x72), ZYDIS_DEFINITION(0x1, 0x6F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5E) }, +    { ZYDIS_DEFINITION(0x1, 0x84), ZYDIS_DEFINITION(0x1, 0x81) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x60) }, +    { ZYDIS_DEFINITION(0x1, 0x96), ZYDIS_DEFINITION(0x1, 0x93) }, +    { ZYDIS_DEFINITION(0x1, 0x9B), ZYDIS_DEFINITION(0x1, 0x9A) }, +    { ZYDIS_DEFINITION(0x1, 0x99), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x9C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x189), ZYDIS_DEFINITION(0x1, 0x188) }, +    { ZYDIS_DEFINITION(0x1, 0x187), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x18A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x61), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x45), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x62), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xC2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x63), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x178), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x64), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x181), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x65), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x10), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x66), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xF0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xE1), ZYDIS_DEFINITION(0x1, 0xE4) }, +    { ZYDIS_DEFINITION(0x1, 0xE3), ZYDIS_DEFINITION(0x1, 0xE2) }, +    { ZYDIS_DEFINITION(0x1, 0xDD), ZYDIS_DEFINITION(0x1, 0xE0) }, +    { ZYDIS_DEFINITION(0x1, 0xDF), ZYDIS_DEFINITION(0x1, 0xDE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x67), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x12), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x68), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x118), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x69), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x113), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x107), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6C) }, +    { ZYDIS_DEFINITION(0xB, 0xA8), ZYDIS_DEFINITION(0xB, 0xA5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6E) }, +    { ZYDIS_DEFINITION(0xB, 0x17E), ZYDIS_DEFINITION(0xB, 0x17B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x6F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x36), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x70), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x33), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x71) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x72), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x42), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x73), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x27), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x74), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x75) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x30) }, +    { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MVEX_E, 0x76) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2D) }, +    { ZYDIS_DEFINITION(0xB, 0x7E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x7F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x7C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x7D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x7A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x7B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x76), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x77), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x78), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x79), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x82), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x83), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x80), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x81), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x74), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x75), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x70), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x71), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x72), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x73), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3A), ZYDIS_DEFINITION(0xB, 0x3B) }, +    { ZYDIS_DEFINITION(0xB, 0x3E), ZYDIS_DEFINITION(0xB, 0x3F) }, +    { ZYDIS_DEFINITION(0xB, 0x3C), ZYDIS_DEFINITION(0xB, 0x3D) }, +    { ZYDIS_DEFINITION(0xB, 0x40), ZYDIS_DEFINITION(0xB, 0x41) }, +    { ZYDIS_DEFINITION(0xB, 0x88), ZYDIS_DEFINITION(0xB, 0x89) }, +    { ZYDIS_DEFINITION(0xB, 0x8A), ZYDIS_DEFINITION(0xB, 0x8B) }, +    { ZYDIS_DEFINITION(0xB, 0x84), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x85), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x86), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x87), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x8C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x8D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x9E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x9F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x92), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x93), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x98), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x99), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x42), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x43), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x50), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x51), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x44), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x45), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x46), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x47), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x48), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x49), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x4E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x4F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x4A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x4B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x4C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x4D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x32), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x34), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x33), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x35), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x30), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x31), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x38), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x39), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x36), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x37), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x8E), ZYDIS_DEFINITION(0x1, 0x8F) }, +    { ZYDIS_DEFINITION(0x1, 0x90), ZYDIS_DEFINITION(0x1, 0x91) }, +    { ZYDIS_DEFINITION(0x1, 0xA0), ZYDIS_DEFINITION(0x1, 0xA1) }, +    { ZYDIS_DEFINITION(0x1, 0xA2), ZYDIS_DEFINITION(0x1, 0xA3) }, +    { ZYDIS_DEFINITION(0x1, 0x94), ZYDIS_DEFINITION(0x1, 0x95) }, +    { ZYDIS_DEFINITION(0x1, 0x96), ZYDIS_DEFINITION(0x1, 0x97) }, +    { ZYDIS_DEFINITION(0x1, 0x9A), ZYDIS_DEFINITION(0x1, 0x9B) }, +    { ZYDIS_DEFINITION(0x1, 0x9C), ZYDIS_DEFINITION(0x1, 0x9D) }, +    { ZYDIS_DEFINITION(0x1, 0xB4), ZYDIS_DEFINITION(0x1, 0xB5) }, +    { ZYDIS_DEFINITION(0x1, 0xB6), ZYDIS_DEFINITION(0x1, 0xB7) }, +    { ZYDIS_DEFINITION(0x1, 0xC0), ZYDIS_DEFINITION(0x1, 0xC1) }, +    { ZYDIS_DEFINITION(0x1, 0xC2), ZYDIS_DEFINITION(0x1, 0xC3) }, +    { ZYDIS_DEFINITION(0x1, 0xB8), ZYDIS_DEFINITION(0x1, 0xB9) }, +    { ZYDIS_DEFINITION(0x1, 0xBA), ZYDIS_DEFINITION(0x1, 0xBB) }, +    { ZYDIS_DEFINITION(0x1, 0xBC), ZYDIS_DEFINITION(0x1, 0xBD) }, +    { ZYDIS_DEFINITION(0x1, 0xBE), ZYDIS_DEFINITION(0x1, 0xBF) }, +    { ZYDIS_DEFINITION(0x1, 0xA4), ZYDIS_DEFINITION(0x1, 0xA5) }, +    { ZYDIS_DEFINITION(0x1, 0xA6), ZYDIS_DEFINITION(0x1, 0xA7) }, +    { ZYDIS_DEFINITION(0x1, 0xB0), ZYDIS_DEFINITION(0x1, 0xB1) }, +    { ZYDIS_DEFINITION(0x1, 0xB2), ZYDIS_DEFINITION(0x1, 0xB3) }, +    { ZYDIS_DEFINITION(0x1, 0xA8), ZYDIS_DEFINITION(0x1, 0xA9) }, +    { ZYDIS_DEFINITION(0x1, 0xAA), ZYDIS_DEFINITION(0x1, 0xAB) }, +    { ZYDIS_DEFINITION(0x1, 0xAC), ZYDIS_DEFINITION(0x1, 0xAD) }, +    { ZYDIS_DEFINITION(0x1, 0xAE), ZYDIS_DEFINITION(0x1, 0xAF) }, +    { ZYDIS_DEFINITION(0x1, 0x56), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x57), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x52), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x53), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x54), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x55), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x66), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x67), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x68), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x69), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x58), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x59), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x5D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x62), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x63), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x64), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x65), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x60), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x61), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x6D), ZYDIS_INVALID }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0xA8) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x108) }, +    { ZYDIS_DEFINITION(0x8, 0x2A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x8, 0x28), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x30), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3A), ZYDIS_DEFINITION(0x1, 0x39) }, +    { ZYDIS_DEFINITION(0x1, 0x33), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x38), ZYDIS_DEFINITION(0x1, 0x36) }, +    { ZYDIS_DEFINITION(0x1, 0x37), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x2), ZYDIS_DEFINITION(0x1, 0x5C) }, +    { ZYDIS_DEFINITION(0x1, 0x5D), ZYDIS_DEFINITION(0x1, 0x5C) }, +    { ZYDIS_DEFINITION(0x1, 0x5E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x67), ZYDIS_DEFINITION(0x1, 0x61) }, +    { ZYDIS_DEFINITION(0x1, 0x77), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x7B), ZYDIS_DEFINITION(0x1, 0x7A) }, +    { ZYDIS_DEFINITION(0x1, 0x7C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x80), ZYDIS_DEFINITION(0x1, 0x7F) }, +    { ZYDIS_DEFINITION(0x1, 0x3E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2F), ZYDIS_DEFINITION(0x1, 0x2E) }, +    { ZYDIS_DEFINITION(0x1, 0x76), ZYDIS_DEFINITION(0x1, 0x75) }, +    { ZYDIS_DEFINITION(0xA, 0x2B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xA, 0x29), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x3), ZYDIS_DEFINITION(0x1, 0x4F) }, +    { ZYDIS_DEFINITION(0x1, 0x55), ZYDIS_DEFINITION(0x1, 0x50) }, +    { ZYDIS_DEFINITION(0x1, 0x54), ZYDIS_DEFINITION(0x1, 0x4F) }, +    { ZYDIS_DEFINITION(0x1, 0x55), ZYDIS_DEFINITION(0x1, 0x50) }, +    { ZYDIS_DEFINITION(0x1, 0x56), ZYDIS_DEFINITION(0x1, 0x51) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x57), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x58), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_KNC, 0x6), ZYDIS_DEFINITION(0x1, 0x65) }, +    { ZYDIS_DEFINITION(0x1, 0x66), ZYDIS_DEFINITION(0x1, 0x65) }, +    { ZYDIS_DEFINITION(0x1, 0x73), ZYDIS_DEFINITION(0x1, 0x72) }, +    { ZYDIS_DEFINITION(0x1, 0x0), ZYDIS_DEFINITION(0x1, 0x1) }, +    { ZYDIS_DEFINITION(0x1, 0x2), ZYDIS_DEFINITION(0x1, 0x3) }, +    { ZYDIS_DEFINITION(0x1, 0x18), ZYDIS_DEFINITION(0x1, 0x19) }, +    { ZYDIS_DEFINITION(0x1, 0x1A), ZYDIS_DEFINITION(0x1, 0x1B) }, +    { ZYDIS_DEFINITION(0x1, 0x12), ZYDIS_DEFINITION(0x1, 0x13) }, +    { ZYDIS_DEFINITION(0x1, 0x14), ZYDIS_DEFINITION(0x1, 0x15) }, +    { ZYDIS_DEFINITION(0x1, 0xC), ZYDIS_DEFINITION(0x1, 0xD) }, +    { ZYDIS_DEFINITION(0x1, 0xE), ZYDIS_DEFINITION(0x1, 0xF) }, +    { ZYDIS_DEFINITION(0x1, 0x1E), ZYDIS_DEFINITION(0x1, 0x1F) }, +    { ZYDIS_DEFINITION(0x1, 0x20), ZYDIS_DEFINITION(0x1, 0x21) }, +    { ZYDIS_DEFINITION(0x1, 0x6), ZYDIS_DEFINITION(0x1, 0x7) }, +    { ZYDIS_DEFINITION(0x1, 0x8), ZYDIS_DEFINITION(0x1, 0x9) }, +    { ZYDIS_DEFINITION(0x1, 0x31), ZYDIS_DEFINITION(0x1, 0x32) }, +    { ZYDIS_DEFINITION(0x1, 0x34), ZYDIS_DEFINITION(0x1, 0x35) }, +    { ZYDIS_DEFINITION(0x1, 0x5A), ZYDIS_DEFINITION(0x1, 0x5B) }, +    { ZYDIS_DEFINITION(0x1, 0x5F), ZYDIS_DEFINITION(0x1, 0x60) }, +    { ZYDIS_DEFINITION(0x1, 0x78), ZYDIS_DEFINITION(0x1, 0x79) }, +    { ZYDIS_DEFINITION(0x1, 0x7D), ZYDIS_DEFINITION(0x1, 0x7E) }, +    { ZYDIS_DEFINITION(0x1, 0x2C), ZYDIS_DEFINITION(0x1, 0x2D) }, +    { ZYDIS_DEFINITION(0x1, 0x74), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x31B), ZYDIS_DEFINITION(0x1, 0x34D) }, +    { ZYDIS_DEFINITION(0x1, 0x31C), ZYDIS_DEFINITION(0x1, 0x34E) }, +    { ZYDIS_DEFINITION(0x1, 0x31F), ZYDIS_DEFINITION(0x1, 0x34F) }, +    { ZYDIS_DEFINITION(0x1, 0x320), ZYDIS_DEFINITION(0x1, 0x350) }, +    { ZYDIS_DEFINITION(0x1, 0x43), ZYDIS_DEFINITION(0x1, 0x48) }, +    { ZYDIS_DEFINITION(0x1, 0x44), ZYDIS_DEFINITION(0x1, 0x49) }, +    { ZYDIS_DEFINITION(0x1, 0x45), ZYDIS_DEFINITION(0x1, 0x4A) }, +    { ZYDIS_DEFINITION(0x1, 0x46), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x47), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x63), ZYDIS_DEFINITION(0x1, 0x64) }, +    { ZYDIS_DEFINITION(0x1, 0x70), ZYDIS_DEFINITION(0x1, 0x71) }, +    { ZYDIS_DEFINITION(0x1, 0x44F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x451), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x450), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x452), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x447), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x449), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x448), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x44A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x61B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x61D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x61C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x61E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x617), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x619), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x618), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x61A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x125), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x127), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x126), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x128), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x459), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x45A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x101), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x103), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x102), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x104), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xFF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x100), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xFD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2EF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2F0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2EB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2EC), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2F1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2F2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2ED), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2EE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x435), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x436), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x588), ZYDIS_DEFINITION(0x1, 0x58C) }, +    { ZYDIS_DEFINITION(0x1, 0x58A), ZYDIS_DEFINITION(0x1, 0x58E) }, +    { ZYDIS_DEFINITION(0x1, 0x589), ZYDIS_DEFINITION(0x1, 0x58D) }, +    { ZYDIS_DEFINITION(0x1, 0x58B), ZYDIS_DEFINITION(0x1, 0x58F) }, +    { ZYDIS_DEFINITION(0x1, 0x570), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x572), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x571), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x573), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x55C), ZYDIS_DEFINITION(0x1, 0x560) }, +    { ZYDIS_DEFINITION(0x1, 0x55E), ZYDIS_DEFINITION(0x1, 0x562) }, +    { ZYDIS_DEFINITION(0x1, 0x55D), ZYDIS_DEFINITION(0x1, 0x561) }, +    { ZYDIS_DEFINITION(0x1, 0x55F), ZYDIS_DEFINITION(0x1, 0x563) }, +    { ZYDIS_DEFINITION(0x1, 0x3ED), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3EF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3EE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xFE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3E9), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3EB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3EA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3EC), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3F8), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x49C), ZYDIS_DEFINITION(0x1, 0x4A0) }, +    { ZYDIS_DEFINITION(0x1, 0x49D), ZYDIS_DEFINITION(0x1, 0x4A1) }, +    { ZYDIS_DEFINITION(0x1, 0x49E), ZYDIS_DEFINITION(0x1, 0x4A2) }, +    { ZYDIS_DEFINITION(0x1, 0x49F), ZYDIS_DEFINITION(0x1, 0x4A3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x28), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x29) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x2F) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x31) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x32), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x33) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x35) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x37) }, +    { ZYDIS_DEFINITION(0x1, 0x1BD), ZYDIS_DEFINITION(0x1, 0x1B9) }, +    { ZYDIS_DEFINITION(0x1, 0x1BF), ZYDIS_DEFINITION(0x1, 0x1BB) }, +    { ZYDIS_DEFINITION(0x1, 0x1BE), ZYDIS_DEFINITION(0x1, 0x1BA) }, +    { ZYDIS_DEFINITION(0x1, 0x1C0), ZYDIS_DEFINITION(0x1, 0x1BC) }, +    { ZYDIS_DEFINITION(0x1, 0x209), ZYDIS_DEFINITION(0x1, 0x205) }, +    { ZYDIS_DEFINITION(0x1, 0x20B), ZYDIS_DEFINITION(0x1, 0x207) }, +    { ZYDIS_DEFINITION(0x1, 0x20A), ZYDIS_DEFINITION(0x1, 0x206) }, +    { ZYDIS_DEFINITION(0x1, 0x20C), ZYDIS_DEFINITION(0x1, 0x208) }, +    { ZYDIS_DEFINITION(0x1, 0x181), ZYDIS_DEFINITION(0x1, 0x17D) }, +    { ZYDIS_DEFINITION(0x1, 0x183), ZYDIS_DEFINITION(0x1, 0x17F) }, +    { ZYDIS_DEFINITION(0x1, 0x182), ZYDIS_DEFINITION(0x1, 0x17E) }, +    { ZYDIS_DEFINITION(0x1, 0x184), ZYDIS_DEFINITION(0x1, 0x180) }, +    { ZYDIS_DEFINITION(0x1, 0x187), ZYDIS_DEFINITION(0x1, 0x185) }, +    { ZYDIS_DEFINITION(0x1, 0x188), ZYDIS_DEFINITION(0x1, 0x186) }, +    { ZYDIS_DEFINITION(0x1, 0x1E5), ZYDIS_DEFINITION(0x1, 0x1E1) }, +    { ZYDIS_DEFINITION(0x1, 0x1E7), ZYDIS_DEFINITION(0x1, 0x1E3) }, +    { ZYDIS_DEFINITION(0x1, 0x1E6), ZYDIS_DEFINITION(0x1, 0x1E2) }, +    { ZYDIS_DEFINITION(0x1, 0x1E8), ZYDIS_DEFINITION(0x1, 0x1E4) }, +    { ZYDIS_DEFINITION(0x1, 0x1EB), ZYDIS_DEFINITION(0x1, 0x1E9) }, +    { ZYDIS_DEFINITION(0x1, 0x1EC), ZYDIS_DEFINITION(0x1, 0x1EA) }, +    { ZYDIS_DEFINITION(0x1, 0x249), ZYDIS_DEFINITION(0x1, 0x245) }, +    { ZYDIS_DEFINITION(0x1, 0x24B), ZYDIS_DEFINITION(0x1, 0x247) }, +    { ZYDIS_DEFINITION(0x1, 0x24A), ZYDIS_DEFINITION(0x1, 0x246) }, +    { ZYDIS_DEFINITION(0x1, 0x24C), ZYDIS_DEFINITION(0x1, 0x248) }, +    { ZYDIS_DEFINITION(0x1, 0x24F), ZYDIS_DEFINITION(0x1, 0x24D) }, +    { ZYDIS_DEFINITION(0x1, 0x250), ZYDIS_DEFINITION(0x1, 0x24E) }, +    { ZYDIS_DEFINITION(0x1, 0x285), ZYDIS_DEFINITION(0x1, 0x281) }, +    { ZYDIS_DEFINITION(0x1, 0x287), ZYDIS_DEFINITION(0x1, 0x283) }, +    { ZYDIS_DEFINITION(0x1, 0x286), ZYDIS_DEFINITION(0x1, 0x282) }, +    { ZYDIS_DEFINITION(0x1, 0x288), ZYDIS_DEFINITION(0x1, 0x284) }, +    { ZYDIS_DEFINITION(0x1, 0x28B), ZYDIS_DEFINITION(0x1, 0x289) }, +    { ZYDIS_DEFINITION(0x1, 0x28C), ZYDIS_DEFINITION(0x1, 0x28A) }, +    { ZYDIS_DEFINITION(0x1, 0x1C5), ZYDIS_DEFINITION(0x1, 0x1C1) }, +    { ZYDIS_DEFINITION(0x1, 0x1C7), ZYDIS_DEFINITION(0x1, 0x1C3) }, +    { ZYDIS_DEFINITION(0x1, 0x1C6), ZYDIS_DEFINITION(0x1, 0x1C2) }, +    { ZYDIS_DEFINITION(0x1, 0x1C8), ZYDIS_DEFINITION(0x1, 0x1C4) }, +    { ZYDIS_DEFINITION(0x1, 0x211), ZYDIS_DEFINITION(0x1, 0x20D) }, +    { ZYDIS_DEFINITION(0x1, 0x213), ZYDIS_DEFINITION(0x1, 0x20F) }, +    { ZYDIS_DEFINITION(0x1, 0x212), ZYDIS_DEFINITION(0x1, 0x20E) }, +    { ZYDIS_DEFINITION(0x1, 0x214), ZYDIS_DEFINITION(0x1, 0x210) }, +    { ZYDIS_DEFINITION(0x1, 0x18D), ZYDIS_DEFINITION(0x1, 0x189) }, +    { ZYDIS_DEFINITION(0x1, 0x18F), ZYDIS_DEFINITION(0x1, 0x18B) }, +    { ZYDIS_DEFINITION(0x1, 0x18E), ZYDIS_DEFINITION(0x1, 0x18A) }, +    { ZYDIS_DEFINITION(0x1, 0x190), ZYDIS_DEFINITION(0x1, 0x18C) }, +    { ZYDIS_DEFINITION(0x1, 0x193), ZYDIS_DEFINITION(0x1, 0x191) }, +    { ZYDIS_DEFINITION(0x1, 0x194), ZYDIS_DEFINITION(0x1, 0x192) }, +    { ZYDIS_DEFINITION(0x1, 0x1F1), ZYDIS_DEFINITION(0x1, 0x1ED) }, +    { ZYDIS_DEFINITION(0x1, 0x1F3), ZYDIS_DEFINITION(0x1, 0x1EF) }, +    { ZYDIS_DEFINITION(0x1, 0x1F2), ZYDIS_DEFINITION(0x1, 0x1EE) }, +    { ZYDIS_DEFINITION(0x1, 0x1F4), ZYDIS_DEFINITION(0x1, 0x1F0) }, +    { ZYDIS_DEFINITION(0x1, 0x1F7), ZYDIS_DEFINITION(0x1, 0x1F5) }, +    { ZYDIS_DEFINITION(0x1, 0x1F8), ZYDIS_DEFINITION(0x1, 0x1F6) }, +    { ZYDIS_DEFINITION(0x1, 0x255), ZYDIS_DEFINITION(0x1, 0x251) }, +    { ZYDIS_DEFINITION(0x1, 0x257), ZYDIS_DEFINITION(0x1, 0x253) }, +    { ZYDIS_DEFINITION(0x1, 0x256), ZYDIS_DEFINITION(0x1, 0x252) }, +    { ZYDIS_DEFINITION(0x1, 0x258), ZYDIS_DEFINITION(0x1, 0x254) }, +    { ZYDIS_DEFINITION(0x1, 0x25B), ZYDIS_DEFINITION(0x1, 0x259) }, +    { ZYDIS_DEFINITION(0x1, 0x25C), ZYDIS_DEFINITION(0x1, 0x25A) }, +    { ZYDIS_DEFINITION(0x1, 0x291), ZYDIS_DEFINITION(0x1, 0x28D) }, +    { ZYDIS_DEFINITION(0x1, 0x293), ZYDIS_DEFINITION(0x1, 0x28F) }, +    { ZYDIS_DEFINITION(0x1, 0x292), ZYDIS_DEFINITION(0x1, 0x28E) }, +    { ZYDIS_DEFINITION(0x1, 0x294), ZYDIS_DEFINITION(0x1, 0x290) }, +    { ZYDIS_DEFINITION(0x1, 0x297), ZYDIS_DEFINITION(0x1, 0x295) }, +    { ZYDIS_DEFINITION(0x1, 0x298), ZYDIS_DEFINITION(0x1, 0x296) }, +    { ZYDIS_DEFINITION(0x1, 0x1CD), ZYDIS_DEFINITION(0x1, 0x1C9) }, +    { ZYDIS_DEFINITION(0x1, 0x1CF), ZYDIS_DEFINITION(0x1, 0x1CB) }, +    { ZYDIS_DEFINITION(0x1, 0x1CE), ZYDIS_DEFINITION(0x1, 0x1CA) }, +    { ZYDIS_DEFINITION(0x1, 0x1D0), ZYDIS_DEFINITION(0x1, 0x1CC) }, +    { ZYDIS_DEFINITION(0x1, 0x219), ZYDIS_DEFINITION(0x1, 0x215) }, +    { ZYDIS_DEFINITION(0x1, 0x21B), ZYDIS_DEFINITION(0x1, 0x217) }, +    { ZYDIS_DEFINITION(0x1, 0x21A), ZYDIS_DEFINITION(0x1, 0x216) }, +    { ZYDIS_DEFINITION(0x1, 0x21C), ZYDIS_DEFINITION(0x1, 0x218) }, +    { ZYDIS_DEFINITION(0x1, 0x199), ZYDIS_DEFINITION(0x1, 0x195) }, +    { ZYDIS_DEFINITION(0x1, 0x19B), ZYDIS_DEFINITION(0x1, 0x197) }, +    { ZYDIS_DEFINITION(0x1, 0x19A), ZYDIS_DEFINITION(0x1, 0x196) }, +    { ZYDIS_DEFINITION(0x1, 0x19C), ZYDIS_DEFINITION(0x1, 0x198) }, +    { ZYDIS_DEFINITION(0x1, 0x19F), ZYDIS_DEFINITION(0x1, 0x19D) }, +    { ZYDIS_DEFINITION(0x1, 0x1A0), ZYDIS_DEFINITION(0x1, 0x19E) }, +    { ZYDIS_DEFINITION(0x1, 0x1FD), ZYDIS_DEFINITION(0x1, 0x1F9) }, +    { ZYDIS_DEFINITION(0x1, 0x1FF), ZYDIS_DEFINITION(0x1, 0x1FB) }, +    { ZYDIS_DEFINITION(0x1, 0x1FE), ZYDIS_DEFINITION(0x1, 0x1FA) }, +    { ZYDIS_DEFINITION(0x1, 0x200), ZYDIS_DEFINITION(0x1, 0x1FC) }, +    { ZYDIS_DEFINITION(0x1, 0x203), ZYDIS_DEFINITION(0x1, 0x201) }, +    { ZYDIS_DEFINITION(0x1, 0x204), ZYDIS_DEFINITION(0x1, 0x202) }, +    { ZYDIS_DEFINITION(0x1, 0x261), ZYDIS_DEFINITION(0x1, 0x25D) }, +    { ZYDIS_DEFINITION(0x1, 0x263), ZYDIS_DEFINITION(0x1, 0x25F) }, +    { ZYDIS_DEFINITION(0x1, 0x262), ZYDIS_DEFINITION(0x1, 0x25E) }, +    { ZYDIS_DEFINITION(0x1, 0x264), ZYDIS_DEFINITION(0x1, 0x260) }, +    { ZYDIS_DEFINITION(0x1, 0x267), ZYDIS_DEFINITION(0x1, 0x265) }, +    { ZYDIS_DEFINITION(0x1, 0x268), ZYDIS_DEFINITION(0x1, 0x266) }, +    { ZYDIS_DEFINITION(0x1, 0x29D), ZYDIS_DEFINITION(0x1, 0x299) }, +    { ZYDIS_DEFINITION(0x1, 0x29F), ZYDIS_DEFINITION(0x1, 0x29B) }, +    { ZYDIS_DEFINITION(0x1, 0x29E), ZYDIS_DEFINITION(0x1, 0x29A) }, +    { ZYDIS_DEFINITION(0x1, 0x2A0), ZYDIS_DEFINITION(0x1, 0x29C) }, +    { ZYDIS_DEFINITION(0x1, 0x2A3), ZYDIS_DEFINITION(0x1, 0x2A1) }, +    { ZYDIS_DEFINITION(0x1, 0x2A4), ZYDIS_DEFINITION(0x1, 0x2A2) }, +    { ZYDIS_DEFINITION(0x1, 0x2CD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2CF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2CE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2D0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xA3), ZYDIS_DEFINITION(0x1, 0xA4) }, +    { ZYDIS_DEFINITION(0x1, 0xA5), ZYDIS_DEFINITION(0x1, 0xA6) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x45B) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x45C) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x457) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x458) }, +    { ZYDIS_DEFINITION(0xB, 0x3DD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3DF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3DE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3E0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x453), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x455), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x454), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x456), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x44B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x44D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x44C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x44E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x431), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x432), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x45F), ZYDIS_DEFINITION(0xB, 0x463) }, +    { ZYDIS_DEFINITION(0xB, 0x460), ZYDIS_DEFINITION(0xB, 0x464) }, +    { ZYDIS_DEFINITION(0xB, 0x2E1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x2E2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x177), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x178), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x131), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x133), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x132), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x134), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x48C), ZYDIS_DEFINITION(0xB, 0x490) }, +    { ZYDIS_DEFINITION(0xB, 0x48D), ZYDIS_DEFINITION(0xB, 0x491) }, +    { ZYDIS_DEFINITION(0xB, 0x6C), ZYDIS_DEFINITION(0xB, 0x6F) }, +    { ZYDIS_DEFINITION(0xB, 0x6D), ZYDIS_DEFINITION(0xB, 0x6E) }, +    { ZYDIS_DEFINITION(0xB, 0x68), ZYDIS_DEFINITION(0xB, 0x6B) }, +    { ZYDIS_DEFINITION(0xB, 0x69), ZYDIS_DEFINITION(0xB, 0x6A) }, +    { ZYDIS_DEFINITION(0xB, 0x2E3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x2E4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x179), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x17A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x433), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x434), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x43F), ZYDIS_DEFINITION(0xB, 0x440) }, +    { ZYDIS_DEFINITION(0xB, 0x443), ZYDIS_DEFINITION(0xB, 0x444) }, +    { ZYDIS_DEFINITION(0xB, 0x441), ZYDIS_DEFINITION(0xB, 0x442) }, +    { ZYDIS_DEFINITION(0xB, 0x445), ZYDIS_DEFINITION(0xB, 0x446) }, +    { ZYDIS_DEFINITION(0xB, 0x437), ZYDIS_DEFINITION(0xB, 0x438) }, +    { ZYDIS_DEFINITION(0xB, 0x43B), ZYDIS_DEFINITION(0xB, 0x43C) }, +    { ZYDIS_DEFINITION(0xB, 0x439), ZYDIS_DEFINITION(0xB, 0x43A) }, +    { ZYDIS_DEFINITION(0xB, 0x43D), ZYDIS_DEFINITION(0xB, 0x43E) }, +    { ZYDIS_DEFINITION(0xB, 0xF9), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xFB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xFA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xFC), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xF5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xF7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xF6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xF8), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3E1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3E3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3E2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3E4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x1D9), ZYDIS_DEFINITION(0xB, 0x1DA) }, +    { ZYDIS_DEFINITION(0xB, 0x1DD), ZYDIS_DEFINITION(0xB, 0x1DE) }, +    { ZYDIS_DEFINITION(0xB, 0x1DB), ZYDIS_DEFINITION(0xB, 0x1DC) }, +    { ZYDIS_DEFINITION(0xB, 0x1DF), ZYDIS_DEFINITION(0xB, 0x1E0) }, +    { ZYDIS_DEFINITION(0xB, 0x1D1), ZYDIS_DEFINITION(0xB, 0x1D2) }, +    { ZYDIS_DEFINITION(0xB, 0x1D5), ZYDIS_DEFINITION(0xB, 0x1D6) }, +    { ZYDIS_DEFINITION(0xB, 0x1D3), ZYDIS_DEFINITION(0xB, 0x1D4) }, +    { ZYDIS_DEFINITION(0xB, 0x1D7), ZYDIS_DEFINITION(0xB, 0x1D8) }, +    { ZYDIS_DEFINITION(0xB, 0x225), ZYDIS_DEFINITION(0xB, 0x226) }, +    { ZYDIS_DEFINITION(0xB, 0x229), ZYDIS_DEFINITION(0xB, 0x22A) }, +    { ZYDIS_DEFINITION(0xB, 0x227), ZYDIS_DEFINITION(0xB, 0x228) }, +    { ZYDIS_DEFINITION(0xB, 0x22B), ZYDIS_DEFINITION(0xB, 0x22C) }, +    { ZYDIS_DEFINITION(0xB, 0x21D), ZYDIS_DEFINITION(0xB, 0x21E) }, +    { ZYDIS_DEFINITION(0xB, 0x221), ZYDIS_DEFINITION(0xB, 0x222) }, +    { ZYDIS_DEFINITION(0xB, 0x21F), ZYDIS_DEFINITION(0xB, 0x220) }, +    { ZYDIS_DEFINITION(0xB, 0x223), ZYDIS_DEFINITION(0xB, 0x224) }, +    { ZYDIS_DEFINITION(0xB, 0x413), ZYDIS_DEFINITION(0xB, 0x414) }, +    { ZYDIS_DEFINITION(0xB, 0x415), ZYDIS_DEFINITION(0xB, 0x416) }, +    { ZYDIS_DEFINITION(0xB, 0x40D), ZYDIS_DEFINITION(0xB, 0x40E) }, +    { ZYDIS_DEFINITION(0xB, 0x40F), ZYDIS_DEFINITION(0xB, 0x410) }, +    { ZYDIS_DEFINITION(0xB, 0x429), ZYDIS_DEFINITION(0xB, 0x42A) }, +    { ZYDIS_DEFINITION(0xB, 0x42B), ZYDIS_DEFINITION(0xB, 0x42C) }, +    { ZYDIS_DEFINITION(0xB, 0x1A9), ZYDIS_DEFINITION(0xB, 0x1AA) }, +    { ZYDIS_DEFINITION(0xB, 0x1AD), ZYDIS_DEFINITION(0xB, 0x1AE) }, +    { ZYDIS_DEFINITION(0xB, 0x1AB), ZYDIS_DEFINITION(0xB, 0x1AC) }, +    { ZYDIS_DEFINITION(0xB, 0x1AF), ZYDIS_DEFINITION(0xB, 0x1B0) }, +    { ZYDIS_DEFINITION(0xB, 0x1A1), ZYDIS_DEFINITION(0xB, 0x1A2) }, +    { ZYDIS_DEFINITION(0xB, 0x1A5), ZYDIS_DEFINITION(0xB, 0x1A6) }, +    { ZYDIS_DEFINITION(0xB, 0x1A3), ZYDIS_DEFINITION(0xB, 0x1A4) }, +    { ZYDIS_DEFINITION(0xB, 0x1A7), ZYDIS_DEFINITION(0xB, 0x1A8) }, +    { ZYDIS_DEFINITION(0xB, 0x1B5), ZYDIS_DEFINITION(0xB, 0x1B6) }, +    { ZYDIS_DEFINITION(0xB, 0x1B7), ZYDIS_DEFINITION(0xB, 0x1B8) }, +    { ZYDIS_DEFINITION(0xB, 0x1B1), ZYDIS_DEFINITION(0xB, 0x1B2) }, +    { ZYDIS_DEFINITION(0xB, 0x1B3), ZYDIS_DEFINITION(0xB, 0x1B4) }, +    { ZYDIS_DEFINITION(0xB, 0x235), ZYDIS_DEFINITION(0xB, 0x236) }, +    { ZYDIS_DEFINITION(0xB, 0x239), ZYDIS_DEFINITION(0xB, 0x23A) }, +    { ZYDIS_DEFINITION(0xB, 0x237), ZYDIS_DEFINITION(0xB, 0x238) }, +    { ZYDIS_DEFINITION(0xB, 0x23B), ZYDIS_DEFINITION(0xB, 0x23C) }, +    { ZYDIS_DEFINITION(0xB, 0x22D), ZYDIS_DEFINITION(0xB, 0x22E) }, +    { ZYDIS_DEFINITION(0xB, 0x231), ZYDIS_DEFINITION(0xB, 0x232) }, +    { ZYDIS_DEFINITION(0xB, 0x22F), ZYDIS_DEFINITION(0xB, 0x230) }, +    { ZYDIS_DEFINITION(0xB, 0x233), ZYDIS_DEFINITION(0xB, 0x234) }, +    { ZYDIS_DEFINITION(0xB, 0x241), ZYDIS_DEFINITION(0xB, 0x242) }, +    { ZYDIS_DEFINITION(0xB, 0x243), ZYDIS_DEFINITION(0xB, 0x244) }, +    { ZYDIS_DEFINITION(0xB, 0x23D), ZYDIS_DEFINITION(0xB, 0x23E) }, +    { ZYDIS_DEFINITION(0xB, 0x23F), ZYDIS_DEFINITION(0xB, 0x240) }, +    { ZYDIS_DEFINITION(0xB, 0x271), ZYDIS_DEFINITION(0xB, 0x272) }, +    { ZYDIS_DEFINITION(0xB, 0x275), ZYDIS_DEFINITION(0xB, 0x276) }, +    { ZYDIS_DEFINITION(0xB, 0x273), ZYDIS_DEFINITION(0xB, 0x274) }, +    { ZYDIS_DEFINITION(0xB, 0x277), ZYDIS_DEFINITION(0xB, 0x278) }, +    { ZYDIS_DEFINITION(0xB, 0x269), ZYDIS_DEFINITION(0xB, 0x26A) }, +    { ZYDIS_DEFINITION(0xB, 0x26D), ZYDIS_DEFINITION(0xB, 0x26E) }, +    { ZYDIS_DEFINITION(0xB, 0x26B), ZYDIS_DEFINITION(0xB, 0x26C) }, +    { ZYDIS_DEFINITION(0xB, 0x26F), ZYDIS_DEFINITION(0xB, 0x270) }, +    { ZYDIS_DEFINITION(0xB, 0x27D), ZYDIS_DEFINITION(0xB, 0x27E) }, +    { ZYDIS_DEFINITION(0xB, 0x27F), ZYDIS_DEFINITION(0xB, 0x280) }, +    { ZYDIS_DEFINITION(0xB, 0x279), ZYDIS_DEFINITION(0xB, 0x27A) }, +    { ZYDIS_DEFINITION(0xB, 0x27B), ZYDIS_DEFINITION(0xB, 0x27C) }, +    { ZYDIS_DEFINITION(0xB, 0x2AD), ZYDIS_DEFINITION(0xB, 0x2AE) }, +    { ZYDIS_DEFINITION(0xB, 0x2B1), ZYDIS_DEFINITION(0xB, 0x2B2) }, +    { ZYDIS_DEFINITION(0xB, 0x2AF), ZYDIS_DEFINITION(0xB, 0x2B0) }, +    { ZYDIS_DEFINITION(0xB, 0x2B3), ZYDIS_DEFINITION(0xB, 0x2B4) }, +    { ZYDIS_DEFINITION(0xB, 0x2A5), ZYDIS_DEFINITION(0xB, 0x2A6) }, +    { ZYDIS_DEFINITION(0xB, 0x2A9), ZYDIS_DEFINITION(0xB, 0x2AA) }, +    { ZYDIS_DEFINITION(0xB, 0x2A7), ZYDIS_DEFINITION(0xB, 0x2A8) }, +    { ZYDIS_DEFINITION(0xB, 0x2AB), ZYDIS_DEFINITION(0xB, 0x2AC) }, +    { ZYDIS_DEFINITION(0xB, 0x2B9), ZYDIS_DEFINITION(0xB, 0x2BA) }, +    { ZYDIS_DEFINITION(0xB, 0x2BB), ZYDIS_DEFINITION(0xB, 0x2BC) }, +    { ZYDIS_DEFINITION(0xB, 0x2B5), ZYDIS_DEFINITION(0xB, 0x2B6) }, +    { ZYDIS_DEFINITION(0xB, 0x2B7), ZYDIS_DEFINITION(0xB, 0x2B8) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2C9) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2CB) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2CA) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2CC) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2C5) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2C7) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2C6) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0xB, 0x2C8) }, +    { ZYDIS_DEFINITION(0x1, 0x143), ZYDIS_DEFINITION(0x1, 0x144) }, +    { ZYDIS_DEFINITION(0x1, 0x145), ZYDIS_DEFINITION(0x1, 0x146) }, +    { ZYDIS_DEFINITION(0x1, 0x15F), ZYDIS_DEFINITION(0x1, 0x160) }, +    { ZYDIS_DEFINITION(0x1, 0x161), ZYDIS_DEFINITION(0x1, 0x162) }, +    { ZYDIS_DEFINITION(0x1, 0x14B), ZYDIS_DEFINITION(0x1, 0x14C) }, +    { ZYDIS_DEFINITION(0x1, 0x14D), ZYDIS_DEFINITION(0x1, 0x14E) }, +    { ZYDIS_DEFINITION(0x1, 0x26), ZYDIS_DEFINITION(0x1, 0x27) }, +    { ZYDIS_DEFINITION(0x1, 0x95), ZYDIS_DEFINITION(0x1, 0x96) }, +    { ZYDIS_DEFINITION(0x1, 0xB1), ZYDIS_DEFINITION(0x1, 0xB2) }, +    { ZYDIS_DEFINITION(0x1, 0x81), ZYDIS_DEFINITION(0x1, 0x82) }, +    { ZYDIS_DEFINITION(0x1, 0x8F), ZYDIS_DEFINITION(0x1, 0x90) }, +    { ZYDIS_DEFINITION(0x1, 0x91), ZYDIS_DEFINITION(0x1, 0x92) }, +    { ZYDIS_DEFINITION(0x1, 0x9D), ZYDIS_DEFINITION(0x1, 0x9E) }, +    { ZYDIS_DEFINITION(0x1, 0x9F), ZYDIS_DEFINITION(0x1, 0xA0) }, +    { ZYDIS_DEFINITION(0x1, 0x13D), ZYDIS_DEFINITION(0x1, 0x13E) }, +    { ZYDIS_DEFINITION(0x1, 0x13F), ZYDIS_DEFINITION(0x1, 0x140) }, +    { ZYDIS_DEFINITION(0x1, 0x159), ZYDIS_DEFINITION(0x1, 0x15A) }, +    { ZYDIS_DEFINITION(0x1, 0x15B), ZYDIS_DEFINITION(0x1, 0x15C) }, +    { ZYDIS_DEFINITION(0x1, 0x135), ZYDIS_DEFINITION(0x1, 0x136) }, +    { ZYDIS_DEFINITION(0x1, 0x137), ZYDIS_DEFINITION(0x1, 0x138) }, +    { ZYDIS_DEFINITION(0x1, 0x4B), ZYDIS_DEFINITION(0x1, 0x52) }, +    { ZYDIS_DEFINITION(0x1, 0x4D), ZYDIS_DEFINITION(0x1, 0x53) }, +    { ZYDIS_DEFINITION(0x1, 0xAF), ZYDIS_DEFINITION(0x1, 0xB0) }, +    { ZYDIS_DEFINITION(0x1, 0xB3), ZYDIS_DEFINITION(0x1, 0xB4) }, +    { ZYDIS_DEFINITION(0x1, 0x89), ZYDIS_DEFINITION(0x1, 0x8A) }, +    { ZYDIS_DEFINITION(0x1, 0x8B), ZYDIS_DEFINITION(0x1, 0x8C) }, +    { ZYDIS_DEFINITION(0x1, 0x83), ZYDIS_DEFINITION(0x1, 0x84) }, +    { ZYDIS_DEFINITION(0x1, 0x85), ZYDIS_DEFINITION(0x1, 0x86) }, +    { ZYDIS_DEFINITION(0x1, 0xA9), ZYDIS_DEFINITION(0x1, 0xAA) }, +    { ZYDIS_DEFINITION(0x1, 0xAB), ZYDIS_DEFINITION(0x1, 0xAC) }, +    { ZYDIS_DEFINITION(0xB, 0x97), ZYDIS_DEFINITION(0xB, 0x98) }, +    { ZYDIS_DEFINITION(0xB, 0x99), ZYDIS_DEFINITION(0xB, 0x9A) }+};++const ZydisDecoderTreeNode FILTERS_REX_B[][2] =+{+    { ZYDIS_DEFINITION(0x0, 0x39F), ZYDIS_DEFINITION(0x0, 0x73F) }+};++#ifndef ZYDIS_DISABLE_AVX512+const ZydisDecoderTreeNode FILTERS_EVEX_B[][2] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBC5), ZYDIS_DEFINITION(0x1, 0xBC6) }, +    { ZYDIS_DEFINITION(0x1, 0xBC7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x97), ZYDIS_DEFINITION(0x1, 0x98) }, +    { ZYDIS_DEFINITION(0x1, 0x99), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13), ZYDIS_DEFINITION(0x1, 0xBA1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D), ZYDIS_DEFINITION(0x1, 0xB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F), ZYDIS_DEFINITION(0x1, 0x4E5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21), ZYDIS_DEFINITION(0x1, 0xF0) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23), ZYDIS_DEFINITION(0x1, 0xAC) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24), ZYDIS_DEFINITION(0x1, 0x11A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27), ZYDIS_DEFINITION(0x1, 0xBB5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29), ZYDIS_DEFINITION(0x1, 0x419) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B), ZYDIS_DEFINITION(0x1, 0x1EF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D), ZYDIS_DEFINITION(0x1, 0x405) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F), ZYDIS_DEFINITION(0x1, 0x185) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30), ZYDIS_DEFINITION(0x1, 0x169) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33), ZYDIS_DEFINITION(0x1, 0x105) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34), ZYDIS_DEFINITION(0x1, 0xD4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37), ZYDIS_DEFINITION(0xB, 0x87) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x40), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x41), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x43), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x45), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x46), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x47), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x48), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x49), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBC2), ZYDIS_DEFINITION(0x1, 0xBC3) }, +    { ZYDIS_DEFINITION(0x1, 0xBC4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x94), ZYDIS_DEFINITION(0x1, 0x95) }, +    { ZYDIS_DEFINITION(0x1, 0x96), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4C), ZYDIS_DEFINITION(0x1, 0xB9A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x4E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x50), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x52), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x54), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x56), ZYDIS_DEFINITION(0x1, 0x4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x58), ZYDIS_DEFINITION(0x1, 0x4DE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5A), ZYDIS_DEFINITION(0x1, 0xC6) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5C), ZYDIS_DEFINITION(0x1, 0xE9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x5E), ZYDIS_DEFINITION(0x1, 0xBAE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x60), ZYDIS_DEFINITION(0x1, 0x412) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x62), ZYDIS_DEFINITION(0x1, 0x1E8) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x64), ZYDIS_DEFINITION(0x1, 0x3FE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x66), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x67), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x68), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x69), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x70), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x71), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x72), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x74), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x75), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x76), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x77), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x78), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x79), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x7E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x80), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x82), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x83), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x84), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x85), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x86), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x87), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x88), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x89), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x8F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x90), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x91), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x92), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x93), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x94), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x95), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x96), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x97), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x98), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x99), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x9B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xA9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xAB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xAC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xAD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xAE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xAF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB2), ZYDIS_DEFINITION(0x1, 0x18C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB3), ZYDIS_DEFINITION(0x1, 0x170) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB6), ZYDIS_DEFINITION(0x1, 0x10C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xB7), ZYDIS_DEFINITION(0x1, 0xDB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xBA), ZYDIS_DEFINITION(0x1, 0x17E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xBB), ZYDIS_DEFINITION(0x1, 0x162) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xBE), ZYDIS_DEFINITION(0x1, 0xFE) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xBF), ZYDIS_DEFINITION(0x1, 0xCD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xC9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xCA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xCB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xCC), ZYDIS_DEFINITION(0xB, 0x80) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xCE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xCF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xD9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xDB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xDC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xDD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xDE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xDF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xE9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xEA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xEB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xEC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xED), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xEE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xEF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xF9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xFA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xFB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xFC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xFD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xFE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0xFF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x100), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x101), ZYDIS_DEFINITION(0x1, 0x15B) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x103), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x104), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x105), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x106), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x107), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x108), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x109), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x10F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x110), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x111), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x112), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x113), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x114), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x115), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x118), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x119), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x11E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x120), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x121), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x122), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x123), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x124), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x125), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x126), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x127), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x128), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x12F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x130), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x132), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x133), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x134), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x135), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x136), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x137), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x138), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x13F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x140), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x141), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x142), ZYDIS_DEFINITION(0x1, 0xE2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x143), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x144), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x145), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x148), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x149), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x14D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x150), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x151), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x152), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x153), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x154), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x155), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x156), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x157), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x158), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x159), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x15E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x160), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x162), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x163), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x164), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x165), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x166), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x167), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x168), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x169), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x16F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x170), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x171), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x172), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x173), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x176), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x178), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17D), ZYDIS_DEFINITION(0x1, 0xB5D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x17E), ZYDIS_DEFINITION(0x1, 0xB56) }, +    { ZYDIS_DEFINITION(0x1, 0xB67), ZYDIS_DEFINITION(0x1, 0xB68) }, +    { ZYDIS_DEFINITION(0x1, 0xB64), ZYDIS_DEFINITION(0x1, 0xB65) }, +    { ZYDIS_DEFINITION(0x1, 0xB69), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB66), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x181), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x182), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x183), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x184), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x185), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x186), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x187), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x188), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x189), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x18E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x191), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x193), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x194), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x195), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x196), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x199), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x19F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1A8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1AB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1AC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1AF), ZYDIS_DEFINITION(0x1, 0x3B1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B0), ZYDIS_DEFINITION(0x1, 0x3AA) }, +    { ZYDIS_DEFINITION(0x1, 0x3BB), ZYDIS_DEFINITION(0x1, 0x3BC) }, +    { ZYDIS_DEFINITION(0x1, 0x3B8), ZYDIS_DEFINITION(0x1, 0x3B9) }, +    { ZYDIS_DEFINITION(0x1, 0x3BD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3BA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1B8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1BB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1BC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1BF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB04), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB02), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB05), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB03), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1C8), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB48), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB46), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB49), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB47), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1CB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1CD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1CF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1DB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1DC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1DD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1DE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1DF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1E9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1EA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1EB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1EC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1ED), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1EE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1F9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1FA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1FB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1FC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x1FF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x200), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x201), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x202), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x205), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x206), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x207), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x208), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x209), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x20E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x211), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x212), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x213), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x214), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x215), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x216), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x217), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x218), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x219), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x21F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x222), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x223), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x226), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x228), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x229), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x22F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x230), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x231), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x232), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x233), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x234), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x235), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x236), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x237), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x238), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x239), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x23F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x240), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x241), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x242), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x243), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x244), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x245), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x246), ZYDIS_DEFINITION(0x1, 0x285) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x247), ZYDIS_DEFINITION(0x1, 0x27E) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24A), ZYDIS_DEFINITION(0x1, 0x2EB) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24B), ZYDIS_DEFINITION(0x1, 0x2E4) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24E), ZYDIS_DEFINITION(0x1, 0x249) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x24F), ZYDIS_DEFINITION(0x1, 0x242) }, +    { ZYDIS_DEFINITION(0x1, 0x253), ZYDIS_DEFINITION(0x1, 0x254) }, +    { ZYDIS_DEFINITION(0x1, 0x250), ZYDIS_DEFINITION(0x1, 0x251) }, +    { ZYDIS_DEFINITION(0x1, 0x255), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x252), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x252), ZYDIS_DEFINITION(0x1, 0x2AF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x253), ZYDIS_DEFINITION(0x1, 0x2A8) }, +    { ZYDIS_DEFINITION(0x1, 0x2B9), ZYDIS_DEFINITION(0x1, 0x2BA) }, +    { ZYDIS_DEFINITION(0x1, 0x2B6), ZYDIS_DEFINITION(0x1, 0x2B7) }, +    { ZYDIS_DEFINITION(0x1, 0x2BB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2B8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x256), ZYDIS_DEFINITION(0x1, 0x315) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x257), ZYDIS_DEFINITION(0x1, 0x30E) }, +    { ZYDIS_DEFINITION(0x1, 0x31F), ZYDIS_DEFINITION(0x1, 0x320) }, +    { ZYDIS_DEFINITION(0x1, 0x31C), ZYDIS_DEFINITION(0x1, 0x31D) }, +    { ZYDIS_DEFINITION(0x1, 0x321), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x31E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25A), ZYDIS_DEFINITION(0x1, 0x351) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25B), ZYDIS_DEFINITION(0x1, 0x34A) }, +    { ZYDIS_DEFINITION(0x1, 0x35B), ZYDIS_DEFINITION(0x1, 0x35C) }, +    { ZYDIS_DEFINITION(0x1, 0x358), ZYDIS_DEFINITION(0x1, 0x359) }, +    { ZYDIS_DEFINITION(0x1, 0x35D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x35A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x25F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x260), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x261), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x262), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x263), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x264), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x265), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x266), ZYDIS_DEFINITION(0x1, 0x293) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x267), ZYDIS_DEFINITION(0x1, 0x28C) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26A), ZYDIS_DEFINITION(0x1, 0x2F9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26B), ZYDIS_DEFINITION(0x1, 0x2F2) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26E), ZYDIS_DEFINITION(0x1, 0x25D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x26F), ZYDIS_DEFINITION(0x1, 0x256) }, +    { ZYDIS_DEFINITION(0x1, 0x267), ZYDIS_DEFINITION(0x1, 0x268) }, +    { ZYDIS_DEFINITION(0x1, 0x264), ZYDIS_DEFINITION(0x1, 0x265) }, +    { ZYDIS_DEFINITION(0x1, 0x269), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x266), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x272), ZYDIS_DEFINITION(0x1, 0x2C3) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x273), ZYDIS_DEFINITION(0x1, 0x2BC) }, +    { ZYDIS_DEFINITION(0x1, 0x2CD), ZYDIS_DEFINITION(0x1, 0x2CE) }, +    { ZYDIS_DEFINITION(0x1, 0x2CA), ZYDIS_DEFINITION(0x1, 0x2CB) }, +    { ZYDIS_DEFINITION(0x1, 0x2CF), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2CC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x276), ZYDIS_DEFINITION(0x1, 0x329) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x277), ZYDIS_DEFINITION(0x1, 0x322) }, +    { ZYDIS_DEFINITION(0x1, 0x333), ZYDIS_DEFINITION(0x1, 0x334) }, +    { ZYDIS_DEFINITION(0x1, 0x330), ZYDIS_DEFINITION(0x1, 0x331) }, +    { ZYDIS_DEFINITION(0x1, 0x335), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x332), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27A), ZYDIS_DEFINITION(0x1, 0x365) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27B), ZYDIS_DEFINITION(0x1, 0x35E) }, +    { ZYDIS_DEFINITION(0x1, 0x36F), ZYDIS_DEFINITION(0x1, 0x370) }, +    { ZYDIS_DEFINITION(0x1, 0x36C), ZYDIS_DEFINITION(0x1, 0x36D) }, +    { ZYDIS_DEFINITION(0x1, 0x371), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x36E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x27E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x280), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x282), ZYDIS_DEFINITION(0x1, 0x2A1) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x283), ZYDIS_DEFINITION(0x1, 0x29A) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x286), ZYDIS_DEFINITION(0x1, 0x307) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x287), ZYDIS_DEFINITION(0x1, 0x300) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28A), ZYDIS_DEFINITION(0x1, 0x271) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28B), ZYDIS_DEFINITION(0x1, 0x26A) }, +    { ZYDIS_DEFINITION(0x1, 0x27B), ZYDIS_DEFINITION(0x1, 0x27C) }, +    { ZYDIS_DEFINITION(0x1, 0x278), ZYDIS_DEFINITION(0x1, 0x279) }, +    { ZYDIS_DEFINITION(0x1, 0x27D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x27A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28E), ZYDIS_DEFINITION(0x1, 0x2D7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x28F), ZYDIS_DEFINITION(0x1, 0x2D0) }, +    { ZYDIS_DEFINITION(0x1, 0x2E1), ZYDIS_DEFINITION(0x1, 0x2E2) }, +    { ZYDIS_DEFINITION(0x1, 0x2DE), ZYDIS_DEFINITION(0x1, 0x2DF) }, +    { ZYDIS_DEFINITION(0x1, 0x2E3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x2E0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x292), ZYDIS_DEFINITION(0x1, 0x33D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x293), ZYDIS_DEFINITION(0x1, 0x336) }, +    { ZYDIS_DEFINITION(0x1, 0x347), ZYDIS_DEFINITION(0x1, 0x348) }, +    { ZYDIS_DEFINITION(0x1, 0x344), ZYDIS_DEFINITION(0x1, 0x345) }, +    { ZYDIS_DEFINITION(0x1, 0x349), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x346), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x296), ZYDIS_DEFINITION(0x1, 0x379) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x297), ZYDIS_DEFINITION(0x1, 0x372) }, +    { ZYDIS_DEFINITION(0x1, 0x383), ZYDIS_DEFINITION(0x1, 0x384) }, +    { ZYDIS_DEFINITION(0x1, 0x380), ZYDIS_DEFINITION(0x1, 0x381) }, +    { ZYDIS_DEFINITION(0x1, 0x385), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x382), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x29F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2A9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2AA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2AB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2AC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2AD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2AE), ZYDIS_DEFINITION(0x1, 0x205) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2AF), ZYDIS_DEFINITION(0x1, 0x202) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B2), ZYDIS_DEFINITION(0x1, 0xB09) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B3), ZYDIS_DEFINITION(0x1, 0xB06) }, +    { ZYDIS_DEFINITION(0x1, 0xB0F), ZYDIS_DEFINITION(0x1, 0xB10) }, +    { ZYDIS_DEFINITION(0x1, 0xB0C), ZYDIS_DEFINITION(0x1, 0xB0D) }, +    { ZYDIS_DEFINITION(0x1, 0xB11), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB0E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B6), ZYDIS_DEFINITION(0x1, 0xB4D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2B7), ZYDIS_DEFINITION(0x1, 0xB4A) }, +    { ZYDIS_DEFINITION(0x1, 0xB53), ZYDIS_DEFINITION(0x1, 0xB54) }, +    { ZYDIS_DEFINITION(0x1, 0xB50), ZYDIS_DEFINITION(0x1, 0xB51) }, +    { ZYDIS_DEFINITION(0x1, 0xB55), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xB52), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2BA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2BB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2BC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2BD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2BE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2BF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2C9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2CC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2CE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D0), ZYDIS_DEFINITION(0xB, 0xB2D) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D2), ZYDIS_DEFINITION(0xB, 0xB26) }, +    { ZYDIS_DEFINITION(0xB, 0xB37), ZYDIS_DEFINITION(0xB, 0xB38) }, +    { ZYDIS_DEFINITION(0xB, 0xB39), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xB34), ZYDIS_DEFINITION(0xB, 0xB35) }, +    { ZYDIS_DEFINITION(0xB, 0xB36), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2D9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2DA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2DB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2DC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2DD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2DE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2DF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E7), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2E9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2EA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2EB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2EC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2ED), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2EE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2EF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F2), ZYDIS_DEFINITION(0xB, 0xF7) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2F9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2FC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2FD), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2FE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x2FF), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x300), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x301), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x302), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x303), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x304), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x305), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x306), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x307), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30E), ZYDIS_DEFINITION(0xB, 0x3C5) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x30F), ZYDIS_DEFINITION(0xB, 0x3BE) }, +    { ZYDIS_DEFINITION(0xB, 0x3CF), ZYDIS_DEFINITION(0xB, 0x3D0) }, +    { ZYDIS_DEFINITION(0xB, 0x3CC), ZYDIS_DEFINITION(0xB, 0x3CD) }, +    { ZYDIS_DEFINITION(0xB, 0x3D1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x3CE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x312), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x313), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x314), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x315), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x316), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x317), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x318), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x319), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x31F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x320), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x321), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x322), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x323), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x324), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x325), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x326), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x327), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x328), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x329), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x32D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x330), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x331), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x332), ZYDIS_DEFINITION(0xB, 0xAE9) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x333), ZYDIS_DEFINITION(0xB, 0xAE2) }, +    { ZYDIS_DEFINITION(0xB, 0xAF3), ZYDIS_DEFINITION(0xB, 0xAF4) }, +    { ZYDIS_DEFINITION(0xB, 0xAF0), ZYDIS_DEFINITION(0xB, 0xAF1) }, +    { ZYDIS_DEFINITION(0xB, 0xAF5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xAF2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x336), ZYDIS_DEFINITION(0xB, 0x235) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x337), ZYDIS_DEFINITION(0xB, 0x22E) }, +    { ZYDIS_DEFINITION(0xB, 0x23F), ZYDIS_DEFINITION(0xB, 0x240) }, +    { ZYDIS_DEFINITION(0xB, 0x23C), ZYDIS_DEFINITION(0xB, 0x23D) }, +    { ZYDIS_DEFINITION(0xB, 0x241), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x23E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33A), ZYDIS_DEFINITION(0xB, 0xB19) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33B), ZYDIS_DEFINITION(0xB, 0xB12) }, +    { ZYDIS_DEFINITION(0xB, 0xB23), ZYDIS_DEFINITION(0xB, 0xB24) }, +    { ZYDIS_DEFINITION(0xB, 0xB20), ZYDIS_DEFINITION(0xB, 0xB21) }, +    { ZYDIS_DEFINITION(0xB, 0xB25), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0xB22), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x33F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x394), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x392), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x395), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x393), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x342), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x343), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x344), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x345), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x348), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x349), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x34E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x350), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4C2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4C3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4C4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4C5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x352), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x353), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x354), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x355), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x13D), ZYDIS_DEFINITION(0x1, 0x13E) }, +    { ZYDIS_DEFINITION(0x1, 0x140), ZYDIS_DEFINITION(0x1, 0x141) }, +    { ZYDIS_DEFINITION(0x1, 0x143), ZYDIS_DEFINITION(0x1, 0x144) }, +    { ZYDIS_DEFINITION(0x1, 0x13F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x142), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x145), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1A5), ZYDIS_DEFINITION(0x1, 0x1A6) }, +    { ZYDIS_DEFINITION(0x1, 0x1A8), ZYDIS_DEFINITION(0x1, 0x1A9) }, +    { ZYDIS_DEFINITION(0x1, 0x1AB), ZYDIS_DEFINITION(0x1, 0x1AC) }, +    { ZYDIS_DEFINITION(0x1, 0x1A7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1AA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1AD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x149), ZYDIS_DEFINITION(0x1, 0x14A) }, +    { ZYDIS_DEFINITION(0x1, 0x14C), ZYDIS_DEFINITION(0x1, 0x14D) }, +    { ZYDIS_DEFINITION(0x1, 0x14F), ZYDIS_DEFINITION(0x1, 0x150) }, +    { ZYDIS_DEFINITION(0x1, 0x14B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x14E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x151), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBAB), ZYDIS_DEFINITION(0x1, 0xBAC) }, +    { ZYDIS_DEFINITION(0x1, 0xBAD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x15), ZYDIS_DEFINITION(0x1, 0x16) }, +    { ZYDIS_DEFINITION(0x1, 0x17), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4EF), ZYDIS_DEFINITION(0x1, 0x4F0) }, +    { ZYDIS_DEFINITION(0x1, 0x4F1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x146), ZYDIS_DEFINITION(0x1, 0x147) }, +    { ZYDIS_DEFINITION(0x1, 0x148), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x356), ZYDIS_DEFINITION(0x1, 0x177) }, +    { ZYDIS_DEFINITION(0x1, 0xBBF), ZYDIS_DEFINITION(0x1, 0xBC0) }, +    { ZYDIS_DEFINITION(0x1, 0xBC1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x423), ZYDIS_DEFINITION(0x1, 0x424) }, +    { ZYDIS_DEFINITION(0x1, 0x425), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1F9), ZYDIS_DEFINITION(0x1, 0x1FA) }, +    { ZYDIS_DEFINITION(0x1, 0x1FB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x40F), ZYDIS_DEFINITION(0x1, 0x410) }, +    { ZYDIS_DEFINITION(0x1, 0x411), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x358), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x359), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35D), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1AE), ZYDIS_DEFINITION(0x1, 0x1AF) }, +    { ZYDIS_DEFINITION(0x1, 0x1B1), ZYDIS_DEFINITION(0x1, 0x1B2) }, +    { ZYDIS_DEFINITION(0x1, 0x1B4), ZYDIS_DEFINITION(0x1, 0x1B5) }, +    { ZYDIS_DEFINITION(0x1, 0x1B0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1B3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1B6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x152), ZYDIS_DEFINITION(0x1, 0x153) }, +    { ZYDIS_DEFINITION(0x1, 0x155), ZYDIS_DEFINITION(0x1, 0x156) }, +    { ZYDIS_DEFINITION(0x1, 0x158), ZYDIS_DEFINITION(0x1, 0x159) }, +    { ZYDIS_DEFINITION(0x1, 0x154), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x157), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x15A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x35F), ZYDIS_DEFINITION(0x1, 0x1C4) }, +    { ZYDIS_DEFINITION(0x1, 0x1D9), ZYDIS_DEFINITION(0x1, 0x1DA) }, +    { ZYDIS_DEFINITION(0x1, 0x1DC), ZYDIS_DEFINITION(0x1, 0x1DD) }, +    { ZYDIS_DEFINITION(0x1, 0x1DF), ZYDIS_DEFINITION(0x1, 0x1E0) }, +    { ZYDIS_DEFINITION(0x1, 0x1DB), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1DE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1E1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x362), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x363), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x364), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x365), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x366), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x367), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x91), ZYDIS_DEFINITION(0xB, 0x92) }, +    { ZYDIS_DEFINITION(0xB, 0x93), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x368), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x369), ZYDIS_DEFINITION(0x1, 0x113) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x36F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x370), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x371), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x372), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x373), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x374), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x375), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x376), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x377), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x378), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x379), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x37F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x380), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x381), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x382), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x383), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x384), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x385), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x386), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x387), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x388), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x389), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x38F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x390), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x391), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x392), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x393), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x394), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x395), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x396), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x397), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x398), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x399), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39A), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39B), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39C), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39D), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x39F), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A0), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4B2), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4B3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4B4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4B5), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A6), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x138), ZYDIS_DEFINITION(0x1, 0x139) }, +    { ZYDIS_DEFINITION(0x1, 0x13B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x137), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x13A), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x13C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x193), ZYDIS_DEFINITION(0x1, 0x194) }, +    { ZYDIS_DEFINITION(0x1, 0x196), ZYDIS_DEFINITION(0x1, 0x197) }, +    { ZYDIS_DEFINITION(0x1, 0x199), ZYDIS_DEFINITION(0x1, 0x19A) }, +    { ZYDIS_DEFINITION(0x1, 0x195), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x198), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x19B), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x121), ZYDIS_DEFINITION(0x1, 0x122) }, +    { ZYDIS_DEFINITION(0x1, 0x124), ZYDIS_DEFINITION(0x1, 0x125) }, +    { ZYDIS_DEFINITION(0x1, 0x127), ZYDIS_DEFINITION(0x1, 0x128) }, +    { ZYDIS_DEFINITION(0x1, 0x123), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x126), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x129), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBA8), ZYDIS_DEFINITION(0x1, 0xBA9) }, +    { ZYDIS_DEFINITION(0x1, 0xBAA), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x12), ZYDIS_DEFINITION(0x1, 0x13) }, +    { ZYDIS_DEFINITION(0x1, 0x14), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x4EC), ZYDIS_DEFINITION(0x1, 0x4ED) }, +    { ZYDIS_DEFINITION(0x1, 0x4EE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x12A), ZYDIS_DEFINITION(0x1, 0x12B) }, +    { ZYDIS_DEFINITION(0x1, 0x12C), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0xBBC), ZYDIS_DEFINITION(0x1, 0xBBD) }, +    { ZYDIS_DEFINITION(0x1, 0xBBE), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x420), ZYDIS_DEFINITION(0x1, 0x421) }, +    { ZYDIS_DEFINITION(0x1, 0x422), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1F6), ZYDIS_DEFINITION(0x1, 0x1F7) }, +    { ZYDIS_DEFINITION(0x1, 0x1F8), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x40C), ZYDIS_DEFINITION(0x1, 0x40D) }, +    { ZYDIS_DEFINITION(0x1, 0x40E), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3A9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3AA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3AB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3AC), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3AD), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x19C), ZYDIS_DEFINITION(0x1, 0x19D) }, +    { ZYDIS_DEFINITION(0x1, 0x19F), ZYDIS_DEFINITION(0x1, 0x1A0) }, +    { ZYDIS_DEFINITION(0x1, 0x1A2), ZYDIS_DEFINITION(0x1, 0x1A3) }, +    { ZYDIS_DEFINITION(0x1, 0x19E), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1A1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1A4), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x12D), ZYDIS_DEFINITION(0x1, 0x12E) }, +    { ZYDIS_DEFINITION(0x1, 0x130), ZYDIS_DEFINITION(0x1, 0x131) }, +    { ZYDIS_DEFINITION(0x1, 0x133), ZYDIS_DEFINITION(0x1, 0x134) }, +    { ZYDIS_DEFINITION(0x1, 0x12F), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x132), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x135), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3AE), ZYDIS_DEFINITION(0x1, 0x1BD) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3AF), ZYDIS_DEFINITION(0x1, 0x1CB) }, +    { ZYDIS_DEFINITION(0x1, 0x1D4), ZYDIS_DEFINITION(0x1, 0x1D5) }, +    { ZYDIS_DEFINITION(0x1, 0x1D7), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1D3), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1D6), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1D8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B2), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B3), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B4), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B5), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x8E), ZYDIS_DEFINITION(0xB, 0x8F) }, +    { ZYDIS_DEFINITION(0xB, 0x90), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B6), ZYDIS_DEFINITION(0x1, 0xBF) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B8), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3B9), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3BA), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3BB), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3BE), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C0), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x1), ZYDIS_INVALID }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x3C1), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x3), ZYDIS_INVALID }+};+#endif++#ifndef ZYDIS_DISABLE_KNC+const ZydisDecoderTreeNode FILTERS_MVEX_E[][2] =+{+    { ZYDIS_DEFINITION(0x1, 0xC7), ZYDIS_DEFINITION(0x1, 0xC8) }, +    { ZYDIS_DEFINITION(0x1, 0xB), ZYDIS_DEFINITION(0x1, 0xC) }, +    { ZYDIS_DEFINITION(0x1, 0xDA), ZYDIS_DEFINITION(0x1, 0xDB) }, +    { ZYDIS_DEFINITION(0x1, 0x3D), ZYDIS_DEFINITION(0x1, 0x3E) }, +    { ZYDIS_DEFINITION(0x1, 0x18E), ZYDIS_DEFINITION(0x1, 0x18F) }, +    { ZYDIS_DEFINITION(0xB, 0x22), ZYDIS_DEFINITION(0xB, 0x23) }, +    { ZYDIS_DEFINITION(0xB, 0x37), ZYDIS_DEFINITION(0xB, 0x38) }, +    { ZYDIS_DEFINITION(0xB, 0x28), ZYDIS_DEFINITION(0xB, 0x29) }, +    { ZYDIS_DEFINITION(0x1, 0xC3), ZYDIS_DEFINITION(0x1, 0xC4) }, +    { ZYDIS_DEFINITION(0x1, 0x8), ZYDIS_DEFINITION(0x1, 0x9) }, +    { ZYDIS_DEFINITION(0x1, 0xD7), ZYDIS_DEFINITION(0x1, 0xD8) }, +    { ZYDIS_DEFINITION(0x1, 0x3A), ZYDIS_DEFINITION(0x1, 0x3B) }, +    { ZYDIS_DEFINITION(0x1, 0x18B), ZYDIS_DEFINITION(0x1, 0x18C) }, +    { ZYDIS_DEFINITION(0x1, 0x10B), ZYDIS_DEFINITION(0x1, 0x10C) }, +    { ZYDIS_DEFINITION(0x1, 0xCB), ZYDIS_DEFINITION(0x1, 0xCC) }, +    { ZYDIS_DEFINITION(0x1, 0xCF), ZYDIS_DEFINITION(0x1, 0xD0) }, +    { ZYDIS_DEFINITION(0xB, 0x14C), ZYDIS_DEFINITION(0xB, 0x14D) }, +    { ZYDIS_DEFINITION(0xB, 0x15B), ZYDIS_DEFINITION(0xB, 0x15C) }, +    { ZYDIS_DEFINITION(0xB, 0x155), ZYDIS_DEFINITION(0xB, 0x156) }, +    { ZYDIS_DEFINITION(0xB, 0x14F), ZYDIS_DEFINITION(0xB, 0x150) }, +    { ZYDIS_DEFINITION(0x1, 0x108), ZYDIS_DEFINITION(0x1, 0x109) }, +    { ZYDIS_DEFINITION(0xB, 0x1F), ZYDIS_DEFINITION(0xB, 0x20) }, +    { ZYDIS_DEFINITION(0x1, 0xF1), ZYDIS_DEFINITION(0x1, 0xF2) }, +    { ZYDIS_DEFINITION(0x1, 0xFA), ZYDIS_DEFINITION(0x1, 0xFB) }, +    { ZYDIS_DEFINITION(0x1, 0xF4), ZYDIS_DEFINITION(0x1, 0xF5) }, +    { ZYDIS_DEFINITION(0x1, 0xF7), ZYDIS_DEFINITION(0x1, 0xF8) }, +    { ZYDIS_DEFINITION(0x1, 0x136), ZYDIS_DEFINITION(0x1, 0x137) }, +    { ZYDIS_DEFINITION(0x1, 0x139), ZYDIS_DEFINITION(0x1, 0x13A) }, +    { ZYDIS_DEFINITION(0x1, 0x170), ZYDIS_DEFINITION(0x1, 0x171) }, +    { ZYDIS_DEFINITION(0x1, 0x173), ZYDIS_DEFINITION(0x1, 0x174) }, +    { ZYDIS_DEFINITION(0x1, 0x161), ZYDIS_DEFINITION(0x1, 0x162) }, +    { ZYDIS_DEFINITION(0x1, 0xE8), ZYDIS_DEFINITION(0x1, 0xE9) }, +    { ZYDIS_DEFINITION(0x1, 0x16D), ZYDIS_DEFINITION(0x1, 0x16E) }, +    { ZYDIS_DEFINITION(0x1, 0x114), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0x1, 0x127), ZYDIS_DEFINITION(0x1, 0x128) }, +    { ZYDIS_DEFINITION(0x1, 0x12A), ZYDIS_DEFINITION(0x1, 0x12B) }, +    { ZYDIS_DEFINITION(0x1, 0x121), ZYDIS_DEFINITION(0x1, 0x122) }, +    { ZYDIS_DEFINITION(0x1, 0x124), ZYDIS_DEFINITION(0x1, 0x125) }, +    { ZYDIS_DEFINITION(0x1, 0x133), ZYDIS_DEFINITION(0x1, 0x134) }, +    { ZYDIS_DEFINITION(0x1, 0xA0), ZYDIS_DEFINITION(0x1, 0xA1) }, +    { ZYDIS_DEFINITION(0x1, 0x9D), ZYDIS_DEFINITION(0x1, 0x9E) }, +    { ZYDIS_DEFINITION(0x1, 0x15E), ZYDIS_DEFINITION(0x1, 0x15F) }, +    { ZYDIS_DEFINITION(0x1, 0x158), ZYDIS_DEFINITION(0x1, 0x159) }, +    { ZYDIS_DEFINITION(0x1, 0x152), ZYDIS_DEFINITION(0x1, 0x153) }, +    { ZYDIS_DEFINITION(0x1, 0x5), ZYDIS_DEFINITION(0x1, 0x6) }, +    { ZYDIS_DEFINITION(0x1, 0x2), ZYDIS_DEFINITION(0x1, 0x3) }, +    { ZYDIS_DEFINITION(0x1, 0xA9), ZYDIS_DEFINITION(0x1, 0xAA) }, +    { ZYDIS_DEFINITION(0x1, 0xB5), ZYDIS_DEFINITION(0x1, 0xB6) }, +    { ZYDIS_DEFINITION(0x1, 0xB2), ZYDIS_DEFINITION(0x1, 0xB3) }, +    { ZYDIS_DEFINITION(0x1, 0xAF), ZYDIS_DEFINITION(0x1, 0xB0) }, +    { ZYDIS_DEFINITION(0x1, 0xAC), ZYDIS_DEFINITION(0x1, 0xAD) }, +    { ZYDIS_DEFINITION(0x1, 0x49), ZYDIS_DEFINITION(0x1, 0x4A) }, +    { ZYDIS_DEFINITION(0x1, 0x46), ZYDIS_DEFINITION(0x1, 0x47) }, +    { ZYDIS_DEFINITION(0x1, 0xE5), ZYDIS_DEFINITION(0x1, 0xE6) }, +    { ZYDIS_DEFINITION(0x1, 0xEB), ZYDIS_DEFINITION(0x1, 0xEC) }, +    { ZYDIS_DEFINITION(0x1, 0x144), ZYDIS_DEFINITION(0x1, 0x145) }, +    { ZYDIS_DEFINITION(0x1, 0x16A), ZYDIS_DEFINITION(0x1, 0x16B) }, +    { ZYDIS_DEFINITION(0x1, 0xFD), ZYDIS_DEFINITION(0x1, 0xFE) }, +    { ZYDIS_DEFINITION(0x1, 0x100), ZYDIS_DEFINITION(0x1, 0x101) }, +    { ZYDIS_DEFINITION(0x1, 0x16), ZYDIS_DEFINITION(0x1, 0x17) }, +    { ZYDIS_DEFINITION(0x1, 0x13), ZYDIS_DEFINITION(0x1, 0x14) }, +    { ZYDIS_DEFINITION(0x1, 0x164), ZYDIS_DEFINITION(0x1, 0x165) }, +    { ZYDIS_DEFINITION(0x1, 0x194), ZYDIS_DEFINITION(0x1, 0x195) }, +    { ZYDIS_DEFINITION(0x1, 0x191), ZYDIS_DEFINITION(0x1, 0x192) }, +    { ZYDIS_DEFINITION(0x1, 0x147), ZYDIS_DEFINITION(0x1, 0x148) }, +    { ZYDIS_DEFINITION(0x1, 0x167), ZYDIS_DEFINITION(0x1, 0x168) }, +    { ZYDIS_DEFINITION(0x1, 0x10E), ZYDIS_DEFINITION(0x1, 0x10F) }, +    { ZYDIS_DEFINITION(0x1, 0x182), ZYDIS_DEFINITION(0x1, 0x183) }, +    { ZYDIS_DEFINITION(0x1, 0x130), ZYDIS_DEFINITION(0x1, 0x131) }, +    { ZYDIS_DEFINITION(0x1, 0x12D), ZYDIS_DEFINITION(0x1, 0x12E) }, +    { ZYDIS_DEFINITION(0x1, 0x4F), ZYDIS_DEFINITION(0x1, 0x50) }, +    { ZYDIS_DEFINITION(0x1, 0x4C), ZYDIS_DEFINITION(0x1, 0x4D) }, +    { ZYDIS_DEFINITION(0x1, 0x64), ZYDIS_DEFINITION(0x1, 0x65) }, +    { ZYDIS_DEFINITION(0x1, 0x61), ZYDIS_DEFINITION(0x1, 0x62) }, +    { ZYDIS_DEFINITION(0x1, 0x76), ZYDIS_DEFINITION(0x1, 0x77) }, +    { ZYDIS_DEFINITION(0x1, 0x73), ZYDIS_DEFINITION(0x1, 0x74) }, +    { ZYDIS_DEFINITION(0x1, 0x88), ZYDIS_DEFINITION(0x1, 0x89) }, +    { ZYDIS_DEFINITION(0x1, 0x85), ZYDIS_DEFINITION(0x1, 0x86) }, +    { ZYDIS_DEFINITION(0x1, 0x5E), ZYDIS_DEFINITION(0x1, 0x5F) }, +    { ZYDIS_DEFINITION(0x1, 0x55), ZYDIS_DEFINITION(0x1, 0x56) }, +    { ZYDIS_DEFINITION(0x1, 0x52), ZYDIS_DEFINITION(0x1, 0x53) }, +    { ZYDIS_DEFINITION(0x1, 0x6A), ZYDIS_DEFINITION(0x1, 0x6B) }, +    { ZYDIS_DEFINITION(0x1, 0x67), ZYDIS_DEFINITION(0x1, 0x68) }, +    { ZYDIS_DEFINITION(0x1, 0x7C), ZYDIS_DEFINITION(0x1, 0x7D) }, +    { ZYDIS_DEFINITION(0x1, 0x79), ZYDIS_DEFINITION(0x1, 0x7A) }, +    { ZYDIS_DEFINITION(0x1, 0x8E), ZYDIS_DEFINITION(0x1, 0x8F) }, +    { ZYDIS_DEFINITION(0x1, 0x8B), ZYDIS_DEFINITION(0x1, 0x8C) }, +    { ZYDIS_DEFINITION(0x1, 0x11E), ZYDIS_DEFINITION(0x1, 0x11F) }, +    { ZYDIS_DEFINITION(0x1, 0x11B), ZYDIS_DEFINITION(0x1, 0x11C) }, +    { ZYDIS_DEFINITION(0x1, 0x5B), ZYDIS_DEFINITION(0x1, 0x5C) }, +    { ZYDIS_DEFINITION(0x1, 0x58), ZYDIS_DEFINITION(0x1, 0x59) }, +    { ZYDIS_DEFINITION(0x1, 0x70), ZYDIS_DEFINITION(0x1, 0x71) }, +    { ZYDIS_DEFINITION(0x1, 0x6D), ZYDIS_DEFINITION(0x1, 0x6E) }, +    { ZYDIS_DEFINITION(0x1, 0x82), ZYDIS_DEFINITION(0x1, 0x83) }, +    { ZYDIS_DEFINITION(0x1, 0x7F), ZYDIS_DEFINITION(0x1, 0x80) }, +    { ZYDIS_DEFINITION(0x1, 0x94), ZYDIS_DEFINITION(0x1, 0x95) }, +    { ZYDIS_DEFINITION(0x1, 0x91), ZYDIS_DEFINITION(0x1, 0x92) }, +    { ZYDIS_DEFINITION(0x1, 0x43), ZYDIS_DEFINITION(0x1, 0x44) }, +    { ZYDIS_DEFINITION(0x1, 0xC0), ZYDIS_DEFINITION(0x1, 0xC1) }, +    { ZYDIS_DEFINITION(0x1, 0x176), ZYDIS_DEFINITION(0x1, 0x177) }, +    { ZYDIS_DEFINITION(0x1, 0x17F), ZYDIS_DEFINITION(0x1, 0x180) }, +    { ZYDIS_DEFINITION(0x1, 0xE), ZYDIS_DEFINITION(0x1, 0xF) }, +    { ZYDIS_DEFINITION(0x1, 0xEE), ZYDIS_DEFINITION(0x1, 0xEF) }, +    { ZYDIS_DEFINITION(0xB, 0x11), ZYDIS_INVALID }, +    { ZYDIS_DEFINITION(0xB, 0x116), ZYDIS_DEFINITION(0xB, 0x117) }, +    { ZYDIS_DEFINITION(0xB, 0x111), ZYDIS_DEFINITION(0xB, 0x112) }, +    { ZYDIS_DEFINITION(0xB, 0x105), ZYDIS_DEFINITION(0xB, 0x106) }, +    { ZYDIS_DEFINITION(0xB, 0xA6), ZYDIS_DEFINITION(0xB, 0xA7) }, +    { ZYDIS_DEFINITION(0xB, 0xA3), ZYDIS_DEFINITION(0xB, 0xA4) }, +    { ZYDIS_DEFINITION(0xB, 0x17C), ZYDIS_DEFINITION(0xB, 0x17D) }, +    { ZYDIS_DEFINITION(0xB, 0x179), ZYDIS_DEFINITION(0xB, 0x17A) }, +    { ZYDIS_DEFINITION(0xB, 0x34), ZYDIS_DEFINITION(0xB, 0x35) }, +    { ZYDIS_DEFINITION(0xB, 0x31), ZYDIS_DEFINITION(0xB, 0x32) }, +    { ZYDIS_DEFINITION(0x1, 0xD3), ZYDIS_DEFINITION(0x1, 0xD5) }, +    { ZYDIS_DEFINITION(0x1, 0x40), ZYDIS_DEFINITION(0x1, 0x41) }, +    { ZYDIS_DEFINITION(0x1, 0x25), ZYDIS_DEFINITION(0x1, 0x26) }, +    { ZYDIS_DEFINITION(0x1, 0xD4), ZYDIS_DEFINITION(0x1, 0xD6) }, +    { ZYDIS_DEFINITION(0xB, 0x2E), ZYDIS_DEFINITION(0xB, 0x2F) }, +    { ZYDIS_DEFINITION(0xB, 0x2B), ZYDIS_DEFINITION(0xB, 0x2C) }+};+#endif++const ZydisDecoderTreeNode FILTERS_MODE_AMD[][2] =+{+    { ZYDIS_DEFINITION(0xA, 0x29D), ZYDIS_DEFINITION(0x9, 0x29E) }, +    { ZYDIS_DEFINITION(0xA, 0x289), ZYDIS_DEFINITION(0x9, 0x28A) }, +    { ZYDIS_DEFINITION(0xA, 0x255), ZYDIS_DEFINITION(0x9, 0x256) }, +    { ZYDIS_DEFINITION(0xA, 0x275), ZYDIS_DEFINITION(0x9, 0x276) }, +    { ZYDIS_DEFINITION(0xA, 0x2AD), ZYDIS_DEFINITION(0x9, 0x2AE) }, +    { ZYDIS_DEFINITION(0xA, 0x298), ZYDIS_DEFINITION(0x9, 0x299) }, +    { ZYDIS_DEFINITION(0xA, 0x25A), ZYDIS_DEFINITION(0x9, 0x25B) }, +    { ZYDIS_DEFINITION(0xA, 0x27A), ZYDIS_DEFINITION(0x9, 0x27B) }, +    { ZYDIS_DEFINITION(0xA, 0x2A8), ZYDIS_DEFINITION(0x9, 0x2A9) }, +    { ZYDIS_DEFINITION(0xA, 0x293), ZYDIS_DEFINITION(0x9, 0x294) }, +    { ZYDIS_DEFINITION(0xA, 0x2A2), ZYDIS_DEFINITION(0x9, 0x2A3) }, +    { ZYDIS_DEFINITION(0xA, 0x28E), ZYDIS_DEFINITION(0x9, 0x28F) }, +    { ZYDIS_DEFINITION(0xA, 0x262), ZYDIS_DEFINITION(0x9, 0x263) }, +    { ZYDIS_DEFINITION(0xA, 0x27F), ZYDIS_DEFINITION(0x9, 0x280) }, +    { ZYDIS_DEFINITION(0xA, 0x267), ZYDIS_DEFINITION(0x9, 0x268) }, +    { ZYDIS_DEFINITION(0xA, 0x284), ZYDIS_DEFINITION(0x9, 0x285) }, +    { ZYDIS_DEFINITION(0xA, 0xA0), ZYDIS_DEFINITION(0x9, 0xA1) }, +    { ZYDIS_DEFINITION(0xA, 0x26A), ZYDIS_DEFINITION(0x9, 0x26B) }+};++const ZydisDecoderTreeNode FILTERS_MODE_KNC[][2] =+{+    { ZYDIS_DEFINITION(0x1, 0x3CF), ZYDIS_DEFINITION(0x1, 0x3D0) }, +    { ZYDIS_DEFINITION(0x1, 0x3D1), ZYDIS_DEFINITION(0x1, 0x3D2) }, +    { ZYDIS_DEFINITION(0x1, 0x5D), ZYDIS_DEFINITION(0x1, 0x59) }, +    { ZYDIS_DEFINITION(0x1, 0x54), ZYDIS_DEFINITION(0x1, 0x40) }, +    { ZYDIS_DEFINITION(0x1, 0x57), ZYDIS_DEFINITION(0x1, 0x41) }, +    { ZYDIS_DEFINITION(0x1, 0x58), ZYDIS_DEFINITION(0x1, 0x42) }, +    { ZYDIS_DEFINITION(0x1, 0x66), ZYDIS_DEFINITION(0x1, 0x62) }+};++const ZydisDecoderTreeNode FILTERS_MODE_MPX[][2] =+{+    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x30) }, +    { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x32) }+};++const ZydisDecoderTreeNode FILTERS_MODE_CET[][2] =+{+    { ZYDIS_DEFINITION(0x1, 0x3CC), ZYDIS_DEFINITION(0x1, 0x5EA) }, +    { ZYDIS_DEFINITION(0x1, 0x3CD), ZYDIS_DEFINITION(0x1, 0x5E9) }, +    { ZYDIS_DEFINITION(0x1, 0x3C6), ZYDIS_DEFINITION(0x1, 0x166) }, +    { ZYDIS_DEFINITION(0x1, 0x3C7), ZYDIS_DEFINITION(0x1, 0x165) }+};++const ZydisDecoderTreeNode FILTERS_MODE_LZCNT[][2] =+{+    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2D8) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2D9) }+};++const ZydisDecoderTreeNode FILTERS_MODE_TZCNT[][2] =+{+    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6FD) }, +    { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x6FE) }+};++const ZydisDecoderTreeNode FILTERS_MODE_WBNOINVD[][2] =+{+    { ZYDIS_INVALID, ZYDIS_INVALID }+};++const ZydisDecoderTreeNode FILTERS_MODE_CLDEMOTE[][2] =+{+    { ZYDIS_DEFINITION(0x1, 0x3B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x14) }+};++const ZydisDecoderTreeNode FILTERS_MODE_CENTAUR[][2] =+{+    { ZYDIS_INVALID, ZYDIS_INVALID }+};
+ external/zydis/src/Generated/EncodableInstructions.inc view
@@ -0,0 +1,11552 @@+const ZydisEncodableInstruction encodableInstructions[] =+{+    /* ------------------------------------------------------------------------------------------ */+    /* AAA                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0000*/ { 0x0000, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x37, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AAD                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0001*/ { 0x0001, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD5, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AAM                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0002*/ { 0x0002, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD4, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AAS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0003*/ { 0x0003, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3F, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0004*/ { 0x0004, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0005*/ { 0x0005, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0006*/ { 0x0006, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0007*/ { 0x0007, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0008*/ { 0x0008, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0009*/ { 0x0009, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*000A*/ { 0x000A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x13, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*000B*/ { 0x000B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x13, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*000C*/ { 0x000C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*000D*/ { 0x000D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*000E*/ { 0x000E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*000F*/ { 0x000F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0010*/ { 0x0010, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0011*/ { 0x0011, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0012*/ { 0x0012, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0013*/ { 0x0013, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0014*/ { 0x0014, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0015*/ { 0x0015, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADCX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0016*/ { 0x0016, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0017*/ { 0x0017, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0018*/ { 0x0018, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0019*/ { 0x0019, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADD                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*001A*/ { 0x001A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*001B*/ { 0x001B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*001C*/ { 0x001C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*001D*/ { 0x001D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*001E*/ { 0x001E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*001F*/ { 0x001F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0020*/ { 0x0020, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0021*/ { 0x0021, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0022*/ { 0x0022, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x04, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0023*/ { 0x0023, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0024*/ { 0x0024, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0025*/ { 0x0025, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0026*/ { 0x0026, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0027*/ { 0x0027, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0028*/ { 0x0028, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0029*/ { 0x0029, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*002A*/ { 0x002A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*002B*/ { 0x002B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADDPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*002C*/ { 0x002C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*002D*/ { 0x002D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADDPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*002E*/ { 0x002E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*002F*/ { 0x002F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADDSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0030*/ { 0x0030, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0031*/ { 0x0031, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADDSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0032*/ { 0x0032, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0033*/ { 0x0033, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADDSUBPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0034*/ { 0x0034, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0035*/ { 0x0035, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADDSUBPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0036*/ { 0x0036, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0037*/ { 0x0037, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ADOX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0038*/ { 0x0038, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0039*/ { 0x0039, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*003A*/ { 0x003A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*003B*/ { 0x003B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AESDEC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*003C*/ { 0x003C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*003D*/ { 0x003D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AESDECLAST                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*003E*/ { 0x003E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*003F*/ { 0x003F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AESENC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0040*/ { 0x0040, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0041*/ { 0x0041, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AESENCLAST                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0042*/ { 0x0042, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0043*/ { 0x0043, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AESIMC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0044*/ { 0x0044, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0045*/ { 0x0045, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AESKEYGENASSIST                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*0046*/ { 0x0046, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0047*/ { 0x0047, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* AND                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0048*/ { 0x0048, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0049*/ { 0x0049, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*004A*/ { 0x004A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*004B*/ { 0x004B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*004C*/ { 0x004C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*004D*/ { 0x004D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*004E*/ { 0x004E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x23, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*004F*/ { 0x004F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x23, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0050*/ { 0x0050, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x24, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0051*/ { 0x0051, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x25, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0052*/ { 0x0052, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0053*/ { 0x0053, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0054*/ { 0x0054, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0055*/ { 0x0055, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0056*/ { 0x0056, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0057*/ { 0x0057, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0058*/ { 0x0058, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0059*/ { 0x0059, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ANDN                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*005A*/ { 0x0000, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*005B*/ { 0x0001, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*005C*/ { 0x0002, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*005D*/ { 0x0003, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*005E*/ { 0x0004, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*005F*/ { 0x0005, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ANDNPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0060*/ { 0x005A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0061*/ { 0x005B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ANDNPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0062*/ { 0x005C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0063*/ { 0x005D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ANDPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0064*/ { 0x005E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0065*/ { 0x005F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ANDPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0066*/ { 0x0060, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0067*/ { 0x0061, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ARPL                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0068*/ { 0x0062, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0069*/ { 0x0063, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BEXTR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*006A*/ { 0x0006, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*006B*/ { 0x0007, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*006C*/ { 0x0008, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*006D*/ { 0x0009, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*006E*/ { 0x000A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*006F*/ { 0x000B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BEXTR_XOP                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0070*/ { 0x0000, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x10, ZYDIS_OPCODE_MAP_XOPA   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0071*/ { 0x0001, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x10, ZYDIS_OPCODE_MAP_XOPA   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0072*/ { 0x0002, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x10, ZYDIS_OPCODE_MAP_XOPA   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0073*/ { 0x0003, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x10, ZYDIS_OPCODE_MAP_XOPA   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLCFILL                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0074*/ { 0x0004, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0075*/ { 0x0005, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0076*/ { 0x0006, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0077*/ { 0x0007, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLCI                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0078*/ { 0x0008, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0079*/ { 0x0009, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*007A*/ { 0x000A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*007B*/ { 0x000B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLCIC                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*007C*/ { 0x000C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*007D*/ { 0x000D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*007E*/ { 0x000E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*007F*/ { 0x000F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLCMSK                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0080*/ { 0x0010, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0081*/ { 0x0011, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0082*/ { 0x0012, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0083*/ { 0x0013, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x02, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLCS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0084*/ { 0x0014, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0085*/ { 0x0015, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0086*/ { 0x0016, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0087*/ { 0x0017, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLENDPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0088*/ { 0x0064, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0089*/ { 0x0065, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLENDPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*008A*/ { 0x0066, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*008B*/ { 0x0067, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLENDVPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*008C*/ { 0x0068, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*008D*/ { 0x0069, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLENDVPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*008E*/ { 0x006A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*008F*/ { 0x006B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLSFILL                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0090*/ { 0x0018, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0091*/ { 0x0019, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0092*/ { 0x001A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0093*/ { 0x001B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLSI                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0094*/ { 0x000C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0095*/ { 0x000D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0096*/ { 0x000E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0097*/ { 0x000F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0098*/ { 0x0010, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0099*/ { 0x0011, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLSIC                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*009A*/ { 0x001C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*009B*/ { 0x001D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*009C*/ { 0x001E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*009D*/ { 0x001F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLSMSK                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*009E*/ { 0x0012, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*009F*/ { 0x0013, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A0*/ { 0x0014, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A1*/ { 0x0015, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A2*/ { 0x0016, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*00A3*/ { 0x0017, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BLSR                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*00A4*/ { 0x0018, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A5*/ { 0x0019, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A6*/ { 0x001A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A7*/ { 0x001B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00A8*/ { 0x001C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*00A9*/ { 0x001D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDCL                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*00AA*/ { 0x006C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00AB*/ { 0x006D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00AC*/ { 0x006E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDCN                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*00AD*/ { 0x006F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00AE*/ { 0x0070, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00AF*/ { 0x0071, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDCU                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*00B0*/ { 0x0072, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00B1*/ { 0x0073, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00B2*/ { 0x0074, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDLDX                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*00B3*/ { 0x0075, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x02, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00B4*/ { 0x0076, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x01, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00B5*/ { 0x0077, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x02, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00B6*/ { 0x0078, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x04, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDMK                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*00B7*/ { 0x0079, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDMOV                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*00B8*/ { 0x007A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00B9*/ { 0x007B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x01, 0x07, 0x02, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00BA*/ { 0x007C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x02, 0x07, 0x02, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00BB*/ { 0x007D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00BC*/ { 0x007E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00BD*/ { 0x007F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x01, 0x07, 0x02, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00BE*/ { 0x0080, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x02, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00BF*/ { 0x0081, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BNDSTX                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*00C0*/ { 0x0082, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x02, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C1*/ { 0x0083, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x01, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C2*/ { 0x0084, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x02, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C3*/ { 0x0085, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x04, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BOUND                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*00C4*/ { 0x0086, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_DEFAULT, 0x01, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C5*/ { 0x0087, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_DEFAULT, 0x02, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BSF                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00C6*/ { 0x0088, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C7*/ { 0x0089, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C8*/ { 0x008A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00C9*/ { 0x008B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BSR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00CA*/ { 0x008C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00CB*/ { 0x008D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00CC*/ { 0x008E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00CD*/ { 0x008F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BSWAP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*00CE*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00CF*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D0*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D1*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D2*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D3*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D4*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D5*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BT                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*00D6*/ { 0x0091, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D7*/ { 0x0092, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D8*/ { 0x0093, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00D9*/ { 0x0094, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BTC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00DA*/ { 0x0095, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00DB*/ { 0x0096, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00DC*/ { 0x0097, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00DD*/ { 0x0098, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BTR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00DE*/ { 0x0099, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00DF*/ { 0x009A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E0*/ { 0x009B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E1*/ { 0x009C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BTS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00E2*/ { 0x009D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E3*/ { 0x009E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E4*/ { 0x009F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E5*/ { 0x00A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* BZHI                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*00E6*/ { 0x001E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E7*/ { 0x001F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E8*/ { 0x0020, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00E9*/ { 0x0021, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00EA*/ { 0x0022, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*00EB*/ { 0x0023, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CALL                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*00EC*/ { 0x00A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9A, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00ED*/ { 0x00A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE8, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00EE*/ { 0x00A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE8, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00EF*/ { 0x00A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00F0*/ { 0x00A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00F1*/ { 0x00A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CBW                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F2*/ { 0x00A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x98, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CDQ                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F3*/ { 0x00A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x99, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CDQE                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F4*/ { 0x00A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x98, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLAC                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F5*/ { 0x00AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F6*/ { 0x00AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLD                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F7*/ { 0x00AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLEVICT0                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*00F8*/ { 0x0024, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00F9*/ { 0x0000, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLEVICT1                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*00FA*/ { 0x0025, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*00FB*/ { 0x0001, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLFLUSH                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*00FC*/ { 0x00AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLFLUSHOPT                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*00FD*/ { 0x00AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLGI                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*00FE*/ { 0x00AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLI                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*00FF*/ { 0x00B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLRSSBSY                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0100*/ { 0x00B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLTS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0101*/ { 0x00B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x06, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLWB                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0102*/ { 0x00B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CLZERO                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0103*/ { 0x00B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0104*/ { 0x00B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0105*/ { 0x00B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0106*/ { 0x00B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVBE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0107*/ { 0x00B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0108*/ { 0x00B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVL                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0109*/ { 0x00BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*010A*/ { 0x00BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVLE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*010B*/ { 0x00BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*010C*/ { 0x00BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*010D*/ { 0x00BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x43, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*010E*/ { 0x00BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x43, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNBE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*010F*/ { 0x00C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0110*/ { 0x00C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNL                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0111*/ { 0x00C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0112*/ { 0x00C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNLE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0113*/ { 0x00C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0114*/ { 0x00C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNO                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0115*/ { 0x00C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0116*/ { 0x00C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0117*/ { 0x00C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0118*/ { 0x00C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0119*/ { 0x00CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x49, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*011A*/ { 0x00CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x49, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVNZ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*011B*/ { 0x00CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*011C*/ { 0x00CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVO                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*011D*/ { 0x00CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*011E*/ { 0x00CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*011F*/ { 0x00D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0120*/ { 0x00D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0121*/ { 0x00D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x48, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0122*/ { 0x00D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x48, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMOVZ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0123*/ { 0x00D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0124*/ { 0x00D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMP                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0125*/ { 0x00D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x38, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0126*/ { 0x00D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x38, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0127*/ { 0x00D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x39, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0128*/ { 0x00D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x39, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0129*/ { 0x00DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*012A*/ { 0x00DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*012B*/ { 0x00DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*012C*/ { 0x00DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*012D*/ { 0x00DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*012E*/ { 0x00DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*012F*/ { 0x00E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0130*/ { 0x00E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0131*/ { 0x00E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0132*/ { 0x00E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0133*/ { 0x00E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0134*/ { 0x00E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0135*/ { 0x00E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0136*/ { 0x00E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0137*/ { 0x00E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0138*/ { 0x00E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0139*/ { 0x00EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*013A*/ { 0x00EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPSB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*013B*/ { 0x00EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*013C*/ { 0x00ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*013D*/ { 0x00EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*013E*/ { 0x00EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*013F*/ { 0x00F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0140*/ { 0x00F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0141*/ { 0x00F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0142*/ { 0x00F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPSQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0143*/ { 0x00F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0144*/ { 0x00F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0145*/ { 0x00F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0146*/ { 0x00F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0147*/ { 0x00F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPSW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0148*/ { 0x00F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0149*/ { 0x00FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*014A*/ { 0x00FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPXCHG                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*014B*/ { 0x00FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*014C*/ { 0x00FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*014D*/ { 0x00FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*014E*/ { 0x00FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPXCHG16B                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*014F*/ { 0x0100, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CMPXCHG8B                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0150*/ { 0x0101, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0151*/ { 0x0102, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* COMISD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0152*/ { 0x0103, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0153*/ { 0x0104, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* COMISS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0154*/ { 0x0105, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0155*/ { 0x0106, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CPUID                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0156*/ { 0x0107, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CQO                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0157*/ { 0x0108, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x99, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CRC32                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0158*/ { 0x0109, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0159*/ { 0x010A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*015A*/ { 0x010B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*015B*/ { 0x010C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTDQ2PD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*015C*/ { 0x010D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*015D*/ { 0x010E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTDQ2PS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*015E*/ { 0x010F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*015F*/ { 0x0110, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPD2DQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0160*/ { 0x0111, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0161*/ { 0x0112, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPD2PI                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0162*/ { 0x0113, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0163*/ { 0x0114, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPD2PS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0164*/ { 0x0115, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0165*/ { 0x0116, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPI2PD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0166*/ { 0x0117, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0167*/ { 0x0118, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPI2PS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0168*/ { 0x0119, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0169*/ { 0x011A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPS2DQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*016A*/ { 0x011B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*016B*/ { 0x011C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPS2PD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*016C*/ { 0x011D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*016D*/ { 0x011E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTPS2PI                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*016E*/ { 0x011F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*016F*/ { 0x0120, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTSD2SI                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0170*/ { 0x0121, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0171*/ { 0x0122, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0172*/ { 0x0123, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0173*/ { 0x0124, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTSD2SS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0174*/ { 0x0125, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0175*/ { 0x0126, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTSI2SD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0176*/ { 0x0127, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0177*/ { 0x0128, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0178*/ { 0x0129, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0179*/ { 0x012A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTSI2SS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*017A*/ { 0x012B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*017B*/ { 0x012C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*017C*/ { 0x012D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*017D*/ { 0x012E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTSS2SD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*017E*/ { 0x012F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*017F*/ { 0x0130, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTSS2SI                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0180*/ { 0x0131, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0181*/ { 0x0132, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0182*/ { 0x0133, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0183*/ { 0x0134, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTTPD2DQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0184*/ { 0x0135, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0185*/ { 0x0136, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTTPD2PI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0186*/ { 0x0137, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0187*/ { 0x0138, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTTPS2DQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0188*/ { 0x0139, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0189*/ { 0x013A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTTPS2PI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*018A*/ { 0x013B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*018B*/ { 0x013C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTTSD2SI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*018C*/ { 0x013D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*018D*/ { 0x013E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*018E*/ { 0x013F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*018F*/ { 0x0140, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CVTTSS2SI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0190*/ { 0x0141, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0191*/ { 0x0142, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0192*/ { 0x0143, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0193*/ { 0x0144, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CWD                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0194*/ { 0x0145, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x99, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* CWDE                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0195*/ { 0x0146, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x98, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DAA                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0196*/ { 0x0147, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x27, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DAS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0197*/ { 0x0148, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2F, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DEC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0198*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x48, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0199*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x49, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*019A*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4A, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*019B*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4B, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*019C*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4C, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*019D*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4D, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*019E*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4E, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*019F*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x4F, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A0*/ { 0x014A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A1*/ { 0x014B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A2*/ { 0x014C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A3*/ { 0x014D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DELAY                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01A4*/ { 0x0026, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A5*/ { 0x0027, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DIV                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*01A6*/ { 0x014E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A7*/ { 0x014F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A8*/ { 0x0150, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01A9*/ { 0x0151, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DIVPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01AA*/ { 0x0152, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01AB*/ { 0x0153, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DIVPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01AC*/ { 0x0154, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01AD*/ { 0x0155, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DIVSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01AE*/ { 0x0156, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01AF*/ { 0x0157, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DIVSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B0*/ { 0x0158, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01B1*/ { 0x0159, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DPPD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B2*/ { 0x015A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01B3*/ { 0x015B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* DPPS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B4*/ { 0x015C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01B5*/ { 0x015D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* EMMS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B6*/ { 0x015E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x77, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ENCLS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B7*/ { 0x015F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ENCLU                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B8*/ { 0x0160, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ENDBR32                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01B9*/ { 0x0161, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x08, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ENDBR64                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01BA*/ { 0x0162, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x04, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ENTER                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01BB*/ { 0x0163, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* EXTRACTPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*01BC*/ { 0x0164, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01BD*/ { 0x0165, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* F2XM1                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01BE*/ { 0x0166, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FABS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01BF*/ { 0x0167, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FADD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C0*/ { 0x0168, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01C1*/ { 0x0169, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01C2*/ { 0x016A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01C3*/ { 0x016B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FADDP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C4*/ { 0x016C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FBLD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C5*/ { 0x016D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FBSTP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C6*/ { 0x016E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCHS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C7*/ { 0x016F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C8*/ { 0x0170, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVBE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01C9*/ { 0x0171, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01CA*/ { 0x0172, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVNB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01CB*/ { 0x0173, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVNBE                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*01CC*/ { 0x0174, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVNE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01CD*/ { 0x0175, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVNU                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01CE*/ { 0x0176, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCMOVU                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01CF*/ { 0x0177, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCOM                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01D0*/ { 0x0178, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01D1*/ { 0x0179, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01D2*/ { 0x017A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01D3*/ { 0x017B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCOMI                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01D4*/ { 0x017C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCOMIP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01D5*/ { 0x017D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCOMP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01D6*/ { 0x017E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01D7*/ { 0x017F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01D8*/ { 0x0180, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01D9*/ { 0x0181, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01DA*/ { 0x0182, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCOMPP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01DB*/ { 0x0183, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FCOS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01DC*/ { 0x0184, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FDECSTP                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01DD*/ { 0x0185, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FDISI8087_NOP                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*01DE*/ { 0x0186, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FDIV                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01DF*/ { 0x0187, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01E0*/ { 0x0188, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01E1*/ { 0x0189, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01E2*/ { 0x018A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FDIVP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01E3*/ { 0x018B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FDIVR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01E4*/ { 0x018C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01E5*/ { 0x018D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01E6*/ { 0x018E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01E7*/ { 0x018F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FDIVRP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01E8*/ { 0x0190, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FEMMS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01E9*/ { 0x0191, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FENI8087_NOP                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*01EA*/ { 0x0192, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FFREE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01EB*/ { 0x0193, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FFREEP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01EC*/ { 0x0194, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FIADD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01ED*/ { 0x0195, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01EE*/ { 0x0196, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FICOM                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01EF*/ { 0x0197, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01F0*/ { 0x0198, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FICOMP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01F1*/ { 0x0199, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01F2*/ { 0x019A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FIDIV                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01F3*/ { 0x019B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01F4*/ { 0x019C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FIDIVR                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*01F5*/ { 0x019D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01F6*/ { 0x019E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FILD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01F7*/ { 0x019F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01F8*/ { 0x01A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01F9*/ { 0x01A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FIMUL                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01FA*/ { 0x01A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01FB*/ { 0x01A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FINCSTP                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*01FC*/ { 0x01A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FIST                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*01FD*/ { 0x01A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*01FE*/ { 0x01A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FISTP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*01FF*/ { 0x01A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0200*/ { 0x01A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0201*/ { 0x01A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FISTTP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0202*/ { 0x01AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0203*/ { 0x01AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0204*/ { 0x01AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FISUB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0205*/ { 0x01AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0206*/ { 0x01AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FISUBR                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0207*/ { 0x01AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0208*/ { 0x01B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLD                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0209*/ { 0x01B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*020A*/ { 0x01B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*020B*/ { 0x01B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*020C*/ { 0x01B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLD1                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*020D*/ { 0x01B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDCW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*020E*/ { 0x01B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDENV                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*020F*/ { 0x01B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0210*/ { 0x01B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x06, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDL2E                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0211*/ { 0x01B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDL2T                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0212*/ { 0x01BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDLG2                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0213*/ { 0x01BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDLN2                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0214*/ { 0x01BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDPI                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0215*/ { 0x01BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FLDZ                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0216*/ { 0x01BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FMUL                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0217*/ { 0x01BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0218*/ { 0x01C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0219*/ { 0x01C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*021A*/ { 0x01C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FMULP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*021B*/ { 0x01C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNCLEX                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*021C*/ { 0x01C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNINIT                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*021D*/ { 0x01C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNOP                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*021E*/ { 0x01C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNSAVE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*021F*/ { 0x01C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0220*/ { 0x01C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x06, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNSTCW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0221*/ { 0x01C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNSTENV                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0222*/ { 0x01CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0223*/ { 0x01CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x06, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FNSTSW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0224*/ { 0x01CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0225*/ { 0x01CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FPATAN                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0226*/ { 0x01CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FPREM                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0227*/ { 0x01CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FPREM1                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0228*/ { 0x01D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FPTAN                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0229*/ { 0x01D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FRNDINT                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*022A*/ { 0x01D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FRSTOR                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*022B*/ { 0x01D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*022C*/ { 0x01D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x06, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSCALE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*022D*/ { 0x01D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSETPM287_NOP                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*022E*/ { 0x01D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSIN                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*022F*/ { 0x01D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSINCOS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0230*/ { 0x01D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSQRT                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0231*/ { 0x01D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FST                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0232*/ { 0x01DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0233*/ { 0x01DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0234*/ { 0x01DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSTP                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0235*/ { 0x01DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0236*/ { 0x01DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0237*/ { 0x01DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0238*/ { 0x01E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0239*/ { 0x01E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*023A*/ { 0x01E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSTPNCE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*023B*/ { 0x01E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSUB                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*023C*/ { 0x01E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*023D*/ { 0x01E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*023E*/ { 0x01E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*023F*/ { 0x01E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSUBP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0240*/ { 0x01E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSUBR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0241*/ { 0x01E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0242*/ { 0x01EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0243*/ { 0x01EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0244*/ { 0x01EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FSUBRP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0245*/ { 0x01ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FTST                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0246*/ { 0x01EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FUCOM                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0247*/ { 0x01EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FUCOMI                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0248*/ { 0x01F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FUCOMIP                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0249*/ { 0x01F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FUCOMP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*024A*/ { 0x01F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FUCOMPP                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*024B*/ { 0x01F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FWAIT                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*024C*/ { 0x01F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXAM                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*024D*/ { 0x01F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXCH                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*024E*/ { 0x01F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*024F*/ { 0x01F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0250*/ { 0x01F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXRSTOR                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0251*/ { 0x01F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXRSTOR64                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0252*/ { 0x01FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXSAVE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0253*/ { 0x01FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXSAVE64                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0254*/ { 0x01FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FXTRACT                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0255*/ { 0x01FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FYL2X                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0256*/ { 0x01FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* FYL2XP1                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0257*/ { 0x01FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* GETSEC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0258*/ { 0x0200, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x37, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* HADDPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0259*/ { 0x0201, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*025A*/ { 0x0202, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* HADDPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*025B*/ { 0x0203, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*025C*/ { 0x0204, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* HLT                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*025D*/ { 0x0205, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF4, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* HSUBPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*025E*/ { 0x0206, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*025F*/ { 0x0207, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* HSUBPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0260*/ { 0x0208, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0261*/ { 0x0209, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* IDIV                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0262*/ { 0x020A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0263*/ { 0x020B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0264*/ { 0x020C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0265*/ { 0x020D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* IMUL                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0266*/ { 0x020E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x69, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0267*/ { 0x020F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x69, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0268*/ { 0x0210, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0269*/ { 0x0211, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*026A*/ { 0x0212, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*026B*/ { 0x0213, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*026C*/ { 0x0214, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*026D*/ { 0x0215, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*026E*/ { 0x0216, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*026F*/ { 0x0217, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* IN                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*0270*/ { 0x0218, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE4, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0271*/ { 0x0219, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0272*/ { 0x021A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0273*/ { 0x021A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0274*/ { 0x021B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0275*/ { 0x021C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0276*/ { 0x021D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0277*/ { 0x021D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0278*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0279*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*027A*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x42, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*027B*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x43, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*027C*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x44, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*027D*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x45, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*027E*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x46, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*027F*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x47, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0280*/ { 0x021F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0281*/ { 0x0220, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0282*/ { 0x0221, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0283*/ { 0x0222, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INCSSPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0284*/ { 0x0223, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INCSSPQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0285*/ { 0x0224, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INSB                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0286*/ { 0x0225, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0287*/ { 0x0226, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0288*/ { 0x0227, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INSD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0289*/ { 0x0228, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*028A*/ { 0x0229, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*028B*/ { 0x022A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*028C*/ { 0x022B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*028D*/ { 0x022C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*028E*/ { 0x022D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INSERTPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*028F*/ { 0x022E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0290*/ { 0x022F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INSW                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0291*/ { 0x0230, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0292*/ { 0x0231, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0293*/ { 0x0232, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INT                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0294*/ { 0x0233, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INT1                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0295*/ { 0x0234, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INT3                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0296*/ { 0x0235, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INTO                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0297*/ { 0x0236, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCE, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INVD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0298*/ { 0x0237, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INVEPT                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0299*/ { 0x0238, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*029A*/ { 0x0239, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_0F38   , 0x02, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INVLPG                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*029B*/ { 0x023A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INVLPGA                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*029C*/ { 0x023B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INVPCID                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*029D*/ { 0x023C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*029E*/ { 0x023D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* INVVPID                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*029F*/ { 0x023E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02A0*/ { 0x023F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_0F38   , 0x02, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* IRET                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*02A1*/ { 0x0240, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* IRETD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02A2*/ { 0x0241, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* IRETQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02A3*/ { 0x0242, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCF, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JB                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*02A4*/ { 0x0243, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02A5*/ { 0x0244, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02A6*/ { 0x0245, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02A7*/ { 0x0246, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JBE                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02A8*/ { 0x0247, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x76, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02A9*/ { 0x0248, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x76, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02AA*/ { 0x0249, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x86, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02AB*/ { 0x024A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x86, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JCXZ                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*02AC*/ { 0x024B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x01, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JECXZ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02AD*/ { 0x024C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x02, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02AE*/ { 0x024D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x02, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JKNZD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02AF*/ { 0x0028, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x75, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B0*/ { 0x0029, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x85, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B1*/ { 0x002A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x85, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JKZD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*02B2*/ { 0x002B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x74, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B3*/ { 0x002C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x84, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B4*/ { 0x002D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x84, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JL                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*02B5*/ { 0x024E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7C, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B6*/ { 0x024F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7C, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B7*/ { 0x0250, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8C, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02B8*/ { 0x0251, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JLE                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02B9*/ { 0x0252, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02BA*/ { 0x0253, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02BB*/ { 0x0254, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02BC*/ { 0x0255, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JMP                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02BD*/ { 0x0256, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE9, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02BE*/ { 0x0257, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE9, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02BF*/ { 0x0258, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEA, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C0*/ { 0x0259, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEB, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C1*/ { 0x025A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEB, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C2*/ { 0x025B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C3*/ { 0x025C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C4*/ { 0x025D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNB                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02C5*/ { 0x025E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C6*/ { 0x025F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C7*/ { 0x0260, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02C8*/ { 0x0261, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNBE                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*02C9*/ { 0x0262, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x77, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02CA*/ { 0x0263, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x77, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02CB*/ { 0x0264, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x87, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02CC*/ { 0x0265, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x87, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNL                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02CD*/ { 0x0266, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7D, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02CE*/ { 0x0267, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7D, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02CF*/ { 0x0268, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8D, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D0*/ { 0x0269, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNLE                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*02D1*/ { 0x026A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D2*/ { 0x026B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D3*/ { 0x026C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8F, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D4*/ { 0x026D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8F, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNO                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02D5*/ { 0x026E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D6*/ { 0x026F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D7*/ { 0x0270, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02D8*/ { 0x0271, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNP                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02D9*/ { 0x0272, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7B, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02DA*/ { 0x0273, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7B, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02DB*/ { 0x0274, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8B, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02DC*/ { 0x0275, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02DD*/ { 0x0276, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x79, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02DE*/ { 0x0277, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x79, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02DF*/ { 0x0278, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x89, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E0*/ { 0x0279, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x89, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JNZ                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*02E1*/ { 0x027A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x75, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E2*/ { 0x027B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x75, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E3*/ { 0x027C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x85, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E4*/ { 0x027D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x85, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JO                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*02E5*/ { 0x027E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E6*/ { 0x027F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E7*/ { 0x0280, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02E8*/ { 0x0281, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JP                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*02E9*/ { 0x0282, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7A, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02EA*/ { 0x0283, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7A, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02EB*/ { 0x0284, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02EC*/ { 0x0285, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JRCXZ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02ED*/ { 0x0286, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x04, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JS                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*02EE*/ { 0x0287, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x78, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02EF*/ { 0x0288, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x78, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02F0*/ { 0x0289, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x88, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02F1*/ { 0x028A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x88, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* JZ                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*02F2*/ { 0x028B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x74, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02F3*/ { 0x028C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x74, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02F4*/ { 0x028D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x84, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*02F5*/ { 0x028E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x84, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KADDB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02F6*/ { 0x002E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KADDD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02F7*/ { 0x002F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KADDQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02F8*/ { 0x0030, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KADDW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02F9*/ { 0x0031, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KAND                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*02FA*/ { 0x0032, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02FB*/ { 0x0033, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02FC*/ { 0x0034, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDN                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*02FD*/ { 0x0035, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDNB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*02FE*/ { 0x0036, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDND                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*02FF*/ { 0x0037, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDNQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0300*/ { 0x0038, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDNR                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0301*/ { 0x0039, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x43, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDNW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0302*/ { 0x003A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0303*/ { 0x003B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KANDW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0304*/ { 0x003C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KCONCATH                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0305*/ { 0x003D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x95, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KCONCATL                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0306*/ { 0x003E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KEXTRACT                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0307*/ { 0x003F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMERGE2L1H                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0308*/ { 0x0040, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMERGE2L1L                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0309*/ { 0x0041, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMOV                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*030A*/ { 0x0042, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*030B*/ { 0x0043, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*030C*/ { 0x0044, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMOVB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*030D*/ { 0x0045, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*030E*/ { 0x0046, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*030F*/ { 0x0047, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0310*/ { 0x0048, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0311*/ { 0x0049, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMOVD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0312*/ { 0x004A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0313*/ { 0x004B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0314*/ { 0x004C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0315*/ { 0x004D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0316*/ { 0x004E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0317*/ { 0x004F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0318*/ { 0x0050, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMOVQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0319*/ { 0x0051, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*031A*/ { 0x0052, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*031B*/ { 0x0053, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*031C*/ { 0x0054, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*031D*/ { 0x0055, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KMOVW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*031E*/ { 0x0056, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*031F*/ { 0x0057, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0320*/ { 0x0058, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0321*/ { 0x0059, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0322*/ { 0x005A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KNOT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0323*/ { 0x005B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KNOTB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0324*/ { 0x005C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KNOTD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0325*/ { 0x005D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KNOTQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0326*/ { 0x005E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KNOTW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0327*/ { 0x005F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KOR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0328*/ { 0x0060, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORB                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0329*/ { 0x0061, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*032A*/ { 0x0062, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORQ                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*032B*/ { 0x0063, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORTESTB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*032C*/ { 0x0064, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORTESTD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*032D*/ { 0x0065, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*032E*/ { 0x0066, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORTESTQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*032F*/ { 0x0067, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORTESTW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0330*/ { 0x0068, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KORW                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0331*/ { 0x0069, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTLB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0332*/ { 0x006A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x32, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTLD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0333*/ { 0x006B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x33, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTLQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0334*/ { 0x006C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x33, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTLW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0335*/ { 0x006D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x32, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTRB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0336*/ { 0x006E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x30, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTRD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0337*/ { 0x006F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x31, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTRQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0338*/ { 0x0070, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x31, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KSHIFTRW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0339*/ { 0x0071, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x30, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KTESTB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*033A*/ { 0x0072, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KTESTD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*033B*/ { 0x0073, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KTESTQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*033C*/ { 0x0074, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KTESTW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*033D*/ { 0x0075, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KUNPCKBW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*033E*/ { 0x0076, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KUNPCKDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*033F*/ { 0x0077, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KUNPCKWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0340*/ { 0x0078, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXNOR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0341*/ { 0x0079, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXNORB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0342*/ { 0x007A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXNORD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0343*/ { 0x007B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXNORQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0344*/ { 0x007C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXNORW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0345*/ { 0x007D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXOR                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0346*/ { 0x007E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXORB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0347*/ { 0x007F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXORD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0348*/ { 0x0080, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXORQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0349*/ { 0x0081, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* KXORW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*034A*/ { 0x0082, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LAHF                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*034B*/ { 0x028F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LAR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*034C*/ { 0x0290, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*034D*/ { 0x0291, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LDDQU                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*034E*/ { 0x0292, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LDMXCSR                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*034F*/ { 0x0293, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LDS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0350*/ { 0x0294, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC5, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LEA                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0351*/ { 0x0295, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LEAVE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0352*/ { 0x0296, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LES                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0353*/ { 0x0297, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC4, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LFENCE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0354*/ { 0x0298, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LFS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0355*/ { 0x0299, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LGDT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0356*/ { 0x029A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0357*/ { 0x029B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LGS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0358*/ { 0x029C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LIDT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0359*/ { 0x029D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*035A*/ { 0x029E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LLDT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*035B*/ { 0x029F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*035C*/ { 0x02A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LLWPCB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*035D*/ { 0x0020, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x12, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LMSW                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*035E*/ { 0x02A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*035F*/ { 0x02A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LODSB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0360*/ { 0x02A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0361*/ { 0x02A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0362*/ { 0x02A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LODSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0363*/ { 0x02A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0364*/ { 0x02A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0365*/ { 0x02A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LODSQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0366*/ { 0x02A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0367*/ { 0x02AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0368*/ { 0x02AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LODSW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0369*/ { 0x02AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*036A*/ { 0x02AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*036B*/ { 0x02AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LOOP                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*036C*/ { 0x02AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LOOPE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*036D*/ { 0x02B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LOOPNE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*036E*/ { 0x02B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LSL                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*036F*/ { 0x02B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0370*/ { 0x02B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LSS                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0371*/ { 0x02B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LTR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0372*/ { 0x02B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0373*/ { 0x02B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LWPINS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0374*/ { 0x0021, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x12, ZYDIS_OPCODE_MAP_XOPA   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0375*/ { 0x0022, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x12, ZYDIS_OPCODE_MAP_XOPA   , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LWPVAL                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0376*/ { 0x0023, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x12, ZYDIS_OPCODE_MAP_XOPA   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0377*/ { 0x0024, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x12, ZYDIS_OPCODE_MAP_XOPA   , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* LZCNT                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0378*/ { 0x02B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0379*/ { 0x02B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*037A*/ { 0x0083, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*037B*/ { 0x0084, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MASKMOVDQU                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*037C*/ { 0x02B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MASKMOVQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*037D*/ { 0x02BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MAXPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*037E*/ { 0x02BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*037F*/ { 0x02BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MAXPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0380*/ { 0x02BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0381*/ { 0x02BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MAXSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0382*/ { 0x02BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0383*/ { 0x02C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MAXSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0384*/ { 0x02C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0385*/ { 0x02C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MFENCE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0386*/ { 0x02C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MINPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0387*/ { 0x02C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0388*/ { 0x02C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MINPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0389*/ { 0x02C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*038A*/ { 0x02C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MINSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*038B*/ { 0x02C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*038C*/ { 0x02C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MINSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*038D*/ { 0x02CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*038E*/ { 0x02CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MONITOR                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*038F*/ { 0x02CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x02, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0390*/ { 0x02CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x01, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0391*/ { 0x02CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x04, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0392*/ { 0x02CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x02, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOV                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0393*/ { 0x02D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x88, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0394*/ { 0x02D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x88, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0395*/ { 0x02D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x89, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0396*/ { 0x02D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x89, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0397*/ { 0x02D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0398*/ { 0x02D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0399*/ { 0x02D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*039A*/ { 0x02D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*039B*/ { 0x02D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*039C*/ { 0x02D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*039D*/ { 0x02DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*039E*/ { 0x02DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*039F*/ { 0x02DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A0*/ { 0x02DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A1*/ { 0x02DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A2*/ { 0x02DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A3*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A4*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A5*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A6*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A7*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB4, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A8*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03A9*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03AA*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03AB*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03AC*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03AD*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03AE*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03AF*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B0*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B1*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B2*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B3*/ { 0x02E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B4*/ { 0x02E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B5*/ { 0x02E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B6*/ { 0x02E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B7*/ { 0x02E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B8*/ { 0x02E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03B9*/ { 0x02E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03BA*/ { 0x02E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03BB*/ { 0x02EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03BC*/ { 0x02EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03BD*/ { 0x02EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x23, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03BE*/ { 0x02ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x23, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVAPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03BF*/ { 0x02EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C0*/ { 0x02EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C1*/ { 0x02F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C2*/ { 0x02F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVAPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03C3*/ { 0x02F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C4*/ { 0x02F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C5*/ { 0x02F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C6*/ { 0x02F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVBE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*03C7*/ { 0x02F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03C8*/ { 0x02F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*03C9*/ { 0x02F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03CA*/ { 0x02F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03CB*/ { 0x02FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03CC*/ { 0x02FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03CD*/ { 0x02FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03CE*/ { 0x02FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03CF*/ { 0x02FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D0*/ { 0x02FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D1*/ { 0x0300, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D2*/ { 0x0301, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D3*/ { 0x0302, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D4*/ { 0x0303, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D5*/ { 0x0304, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D6*/ { 0x0305, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D7*/ { 0x0306, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03D8*/ { 0x0307, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVDDUP                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03D9*/ { 0x0308, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03DA*/ { 0x0309, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVDQ2Q                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03DB*/ { 0x030A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVDQA                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03DC*/ { 0x030B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03DD*/ { 0x030C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03DE*/ { 0x030D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03DF*/ { 0x030E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVDQU                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03E0*/ { 0x030F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03E1*/ { 0x0310, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03E2*/ { 0x0311, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03E3*/ { 0x0312, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVHLPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03E4*/ { 0x0313, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVHPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03E5*/ { 0x0314, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03E6*/ { 0x0315, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVHPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03E7*/ { 0x0316, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03E8*/ { 0x0317, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVLHPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03E9*/ { 0x0318, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVLPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03EA*/ { 0x0319, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03EB*/ { 0x031A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x13, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVLPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03EC*/ { 0x031B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03ED*/ { 0x031C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x13, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVMSKPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*03EE*/ { 0x031D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x50, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVMSKPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*03EF*/ { 0x031E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x50, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVNTDQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F0*/ { 0x031F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVNTDQA                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F1*/ { 0x0320, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVNTI                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F2*/ { 0x0321, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x03, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03F3*/ { 0x0322, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x04, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVNTPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F4*/ { 0x0323, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVNTPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F5*/ { 0x0324, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVNTQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F6*/ { 0x0325, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVQ                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*03F7*/ { 0x0326, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*03F8*/ { 0x0327, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*03F9*/ { 0x0328, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*03FA*/ { 0x0329, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*03FB*/ { 0x032A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03FC*/ { 0x032B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*03FD*/ { 0x032C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*03FE*/ { 0x032D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*03FF*/ { 0x032E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0400*/ { 0x032F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0401*/ { 0x0330, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0402*/ { 0x0331, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0403*/ { 0x0332, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0404*/ { 0x0333, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0405*/ { 0x0334, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0406*/ { 0x0335, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVQ2DQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0407*/ { 0x0336, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0408*/ { 0x0337, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA4, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0409*/ { 0x0338, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA4, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*040A*/ { 0x0339, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA4, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*040B*/ { 0x033A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*040C*/ { 0x033B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*040D*/ { 0x033C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*040E*/ { 0x033D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*040F*/ { 0x033E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0410*/ { 0x033F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0411*/ { 0x0340, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSHDUP                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0412*/ { 0x0341, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0413*/ { 0x0342, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSLDUP                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0414*/ { 0x0343, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0415*/ { 0x0344, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0416*/ { 0x0345, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0417*/ { 0x0346, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0418*/ { 0x0347, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0419*/ { 0x0348, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*041A*/ { 0x0349, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*041B*/ { 0x034A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*041C*/ { 0x034B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*041D*/ { 0x034C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*041E*/ { 0x034D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*041F*/ { 0x034E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSX                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0420*/ { 0x034F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0421*/ { 0x0350, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0422*/ { 0x0351, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0423*/ { 0x0352, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVSXD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0424*/ { 0x0353, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0425*/ { 0x0354, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVUPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0426*/ { 0x0355, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0427*/ { 0x0356, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0428*/ { 0x0357, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0429*/ { 0x0358, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVUPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*042A*/ { 0x0359, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*042B*/ { 0x035A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*042C*/ { 0x035B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*042D*/ { 0x035C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MOVZX                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*042E*/ { 0x035D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*042F*/ { 0x035E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0430*/ { 0x035F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0431*/ { 0x0360, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MPSADBW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0432*/ { 0x0361, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0433*/ { 0x0362, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MUL                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0434*/ { 0x0363, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0435*/ { 0x0364, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0436*/ { 0x0365, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0437*/ { 0x0366, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MULPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0438*/ { 0x0367, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0439*/ { 0x0368, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MULPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*043A*/ { 0x0369, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*043B*/ { 0x036A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MULSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*043C*/ { 0x036B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*043D*/ { 0x036C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MULSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*043E*/ { 0x036D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*043F*/ { 0x036E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MULX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0440*/ { 0x0085, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0441*/ { 0x0086, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0442*/ { 0x0087, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0443*/ { 0x0088, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0444*/ { 0x0089, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0445*/ { 0x008A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* MWAIT                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0446*/ { 0x036F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* NEG                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0447*/ { 0x0370, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0448*/ { 0x0371, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0449*/ { 0x0372, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*044A*/ { 0x0373, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* NOP                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*044B*/ { 0x0374, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x90, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03 },+    /*044C*/ { 0x0375, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x90, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*044D*/ { 0x0376, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*044E*/ { 0x0377, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*044F*/ { 0x0378, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0450*/ { 0x0379, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0451*/ { 0x037A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0452*/ { 0x037B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0453*/ { 0x037C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0454*/ { 0x037D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0455*/ { 0x037E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0456*/ { 0x037F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0457*/ { 0x0380, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0458*/ { 0x0381, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0459*/ { 0x0382, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*045A*/ { 0x0383, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x19, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*045B*/ { 0x0384, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x19, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*045C*/ { 0x0385, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*045D*/ { 0x0386, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*045E*/ { 0x0387, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*045F*/ { 0x0388, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0460*/ { 0x0389, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0461*/ { 0x038A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0462*/ { 0x038B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0463*/ { 0x038C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0464*/ { 0x038D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0465*/ { 0x038E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0466*/ { 0x038F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0467*/ { 0x0390, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0468*/ { 0x0391, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0469*/ { 0x0392, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*046A*/ { 0x0393, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*046B*/ { 0x0394, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*046C*/ { 0x0395, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*046D*/ { 0x0396, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*046E*/ { 0x0397, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*046F*/ { 0x0398, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0470*/ { 0x0399, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0471*/ { 0x039A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0472*/ { 0x039B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0473*/ { 0x039C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0474*/ { 0x039D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0475*/ { 0x039E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x01, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0476*/ { 0x039F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x02, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0477*/ { 0x03A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x10, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0478*/ { 0x03A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x20, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0479*/ { 0x03A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x40, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*047A*/ { 0x03A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x80, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*047B*/ { 0x03A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x04, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*047C*/ { 0x03A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x08, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*047D*/ { 0x03A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*047E*/ { 0x03A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*047F*/ { 0x03A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0480*/ { 0x03A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0481*/ { 0x03AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0482*/ { 0x03AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0483*/ { 0x03AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0484*/ { 0x03AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* NOT                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0485*/ { 0x03AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0486*/ { 0x03AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0487*/ { 0x03B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0488*/ { 0x03B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* OR                                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*0489*/ { 0x03B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*048A*/ { 0x03B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*048B*/ { 0x03B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*048C*/ { 0x03B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*048D*/ { 0x03B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*048E*/ { 0x03B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*048F*/ { 0x03B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0490*/ { 0x03B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0491*/ { 0x03BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0492*/ { 0x03BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0493*/ { 0x03BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0494*/ { 0x03BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0495*/ { 0x03BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0496*/ { 0x03BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0497*/ { 0x03C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0498*/ { 0x03C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0499*/ { 0x03C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*049A*/ { 0x03C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ORPD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*049B*/ { 0x03C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*049C*/ { 0x03C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ORPS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*049D*/ { 0x03C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*049E*/ { 0x03C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* OUT                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*049F*/ { 0x03C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A0*/ { 0x03C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A1*/ { 0x03CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A2*/ { 0x03CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A3*/ { 0x03CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A4*/ { 0x03CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A5*/ { 0x03CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A6*/ { 0x03CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* OUTSB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04A7*/ { 0x03CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A8*/ { 0x03CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04A9*/ { 0x03D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* OUTSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04AA*/ { 0x03D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04AB*/ { 0x03D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04AC*/ { 0x03D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04AD*/ { 0x03D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04AE*/ { 0x03D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04AF*/ { 0x03D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* OUTSW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04B0*/ { 0x03D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B1*/ { 0x03D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B2*/ { 0x03D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PABSB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04B3*/ { 0x03DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B4*/ { 0x03DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B5*/ { 0x03DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B6*/ { 0x03DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PABSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04B7*/ { 0x03DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B8*/ { 0x03DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04B9*/ { 0x03E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04BA*/ { 0x03E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PABSW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04BB*/ { 0x03E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04BC*/ { 0x03E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04BD*/ { 0x03E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04BE*/ { 0x03E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PACKSSDW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*04BF*/ { 0x03E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C0*/ { 0x03E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C1*/ { 0x03E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C2*/ { 0x03E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PACKSSWB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*04C3*/ { 0x03EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C4*/ { 0x03EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C5*/ { 0x03EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C6*/ { 0x03ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PACKUSDW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*04C7*/ { 0x03EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04C8*/ { 0x03EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PACKUSWB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*04C9*/ { 0x03F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04CA*/ { 0x03F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04CB*/ { 0x03F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04CC*/ { 0x03F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04CD*/ { 0x03F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04CE*/ { 0x03F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04CF*/ { 0x03F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D0*/ { 0x03F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04D1*/ { 0x03F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D2*/ { 0x03F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D3*/ { 0x03FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D4*/ { 0x03FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04D5*/ { 0x03FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D6*/ { 0x03FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D7*/ { 0x03FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04D8*/ { 0x03FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDSB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*04D9*/ { 0x0400, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04DA*/ { 0x0401, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04DB*/ { 0x0402, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04DC*/ { 0x0403, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDSW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*04DD*/ { 0x0404, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04DE*/ { 0x0405, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04DF*/ { 0x0406, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E0*/ { 0x0407, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDUSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*04E1*/ { 0x0408, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E2*/ { 0x0409, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E3*/ { 0x040A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E4*/ { 0x040B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDUSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*04E5*/ { 0x040C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E6*/ { 0x040D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E7*/ { 0x040E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04E8*/ { 0x040F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PADDW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04E9*/ { 0x0410, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04EA*/ { 0x0411, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04EB*/ { 0x0412, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04EC*/ { 0x0413, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PALIGNR                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*04ED*/ { 0x0414, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04EE*/ { 0x0415, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04EF*/ { 0x0416, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F0*/ { 0x0417, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PAND                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*04F1*/ { 0x0418, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F2*/ { 0x0419, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F3*/ { 0x041A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F4*/ { 0x041B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PANDN                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04F5*/ { 0x041C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F6*/ { 0x041D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F7*/ { 0x041E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04F8*/ { 0x041F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PAUSE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04F9*/ { 0x0420, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x90, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PAVGB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*04FA*/ { 0x0421, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04FB*/ { 0x0422, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04FC*/ { 0x0423, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04FD*/ { 0x0424, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PAVGUSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*04FE*/ { 0x0000, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xBF, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*04FF*/ { 0x0001, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xBF, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PAVGW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0500*/ { 0x0425, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0501*/ { 0x0426, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0502*/ { 0x0427, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0503*/ { 0x0428, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PBLENDVB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0504*/ { 0x0429, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0505*/ { 0x042A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PBLENDW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0506*/ { 0x042B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0507*/ { 0x042C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCLMULQDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0508*/ { 0x042D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x44, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0509*/ { 0x042E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x44, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPEQB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*050A*/ { 0x042F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*050B*/ { 0x0430, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*050C*/ { 0x0431, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*050D*/ { 0x0432, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPEQD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*050E*/ { 0x0433, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*050F*/ { 0x0434, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0510*/ { 0x0435, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0511*/ { 0x0436, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPEQQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0512*/ { 0x0437, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0513*/ { 0x0438, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPEQW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0514*/ { 0x0439, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0515*/ { 0x043A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0516*/ { 0x043B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0517*/ { 0x043C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPESTRI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0518*/ { 0x043D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0519*/ { 0x043E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*051A*/ { 0x043F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*051B*/ { 0x0440, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPESTRM                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*051C*/ { 0x0441, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*051D*/ { 0x0442, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*051E*/ { 0x0443, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*051F*/ { 0x0444, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPGTB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0520*/ { 0x0445, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0521*/ { 0x0446, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0522*/ { 0x0447, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0523*/ { 0x0448, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPGTD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0524*/ { 0x0449, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0525*/ { 0x044A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0526*/ { 0x044B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0527*/ { 0x044C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPGTQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0528*/ { 0x044D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0529*/ { 0x044E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPGTW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*052A*/ { 0x044F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*052B*/ { 0x0450, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*052C*/ { 0x0451, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*052D*/ { 0x0452, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPISTRI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*052E*/ { 0x0453, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*052F*/ { 0x0454, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0530*/ { 0x0455, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0531*/ { 0x0456, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PCMPISTRM                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0532*/ { 0x0457, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0533*/ { 0x0458, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PDEP                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0534*/ { 0x008B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0535*/ { 0x008C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0536*/ { 0x008D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0537*/ { 0x008E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0538*/ { 0x008F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0539*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PEXT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*053A*/ { 0x0091, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*053B*/ { 0x0092, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*053C*/ { 0x0093, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*053D*/ { 0x0094, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*053E*/ { 0x0095, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*053F*/ { 0x0096, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PEXTRB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0540*/ { 0x0459, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0541*/ { 0x045A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PEXTRD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0542*/ { 0x045B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0543*/ { 0x045C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PEXTRQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0544*/ { 0x045D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0545*/ { 0x045E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PEXTRW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0546*/ { 0x045F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0547*/ { 0x0460, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0548*/ { 0x0461, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0549*/ { 0x0462, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PF2ID                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*054A*/ { 0x0002, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x1D, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*054B*/ { 0x0003, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x1D, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PF2IW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*054C*/ { 0x0004, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x1C, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*054D*/ { 0x0005, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x1C, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFACC                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*054E*/ { 0x0006, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xAE, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*054F*/ { 0x0007, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xAE, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFADD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0550*/ { 0x0008, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x9E, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0551*/ { 0x0009, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x9E, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFCMPEQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0552*/ { 0x000A, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB0, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0553*/ { 0x000B, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB0, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFCMPGE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0554*/ { 0x000C, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x90, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0555*/ { 0x000D, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x90, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFCMPGT                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0556*/ { 0x000E, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA0, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0557*/ { 0x000F, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA0, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFCPIT1                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0558*/ { 0x0010, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA6, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0559*/ { 0x0011, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA6, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFMAX                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*055A*/ { 0x0012, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA4, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*055B*/ { 0x0013, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA4, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFMIN                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*055C*/ { 0x0014, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x94, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*055D*/ { 0x0015, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x94, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFMUL                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*055E*/ { 0x0016, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB4, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*055F*/ { 0x0017, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB4, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFNACC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0560*/ { 0x0018, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x8A, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0561*/ { 0x0019, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x8A, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFPNACC                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0562*/ { 0x001A, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x8E, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0563*/ { 0x001B, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x8E, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFRCP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0564*/ { 0x001C, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x96, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0565*/ { 0x001D, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x96, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFRCPIT2                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0566*/ { 0x001E, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB6, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0567*/ { 0x001F, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB6, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFRSQIT1                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0568*/ { 0x0020, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA7, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0569*/ { 0x0021, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xA7, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFSQRT                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*056A*/ { 0x0022, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x97, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*056B*/ { 0x0023, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x97, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFSUB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*056C*/ { 0x0024, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x9A, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*056D*/ { 0x0025, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x9A, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PFSUBR                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*056E*/ { 0x0026, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xAA, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*056F*/ { 0x0027, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xAA, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHADDD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0570*/ { 0x0463, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0571*/ { 0x0464, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0572*/ { 0x0465, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0573*/ { 0x0466, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHADDSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0574*/ { 0x0467, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0575*/ { 0x0468, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0576*/ { 0x0469, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0577*/ { 0x046A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHADDW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0578*/ { 0x046B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0579*/ { 0x046C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*057A*/ { 0x046D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*057B*/ { 0x046E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHMINPOSUW                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*057C*/ { 0x046F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*057D*/ { 0x0470, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x41, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHSUBD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*057E*/ { 0x0471, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*057F*/ { 0x0472, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0580*/ { 0x0473, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0581*/ { 0x0474, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHSUBSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0582*/ { 0x0475, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0583*/ { 0x0476, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0584*/ { 0x0477, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0585*/ { 0x0478, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PHSUBW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0586*/ { 0x0479, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0587*/ { 0x047A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0588*/ { 0x047B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0589*/ { 0x047C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PI2FD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*058A*/ { 0x0028, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x0D, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*058B*/ { 0x0029, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x0D, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PI2FW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*058C*/ { 0x002A, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x0C, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*058D*/ { 0x002B, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0x0C, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PINSRB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*058E*/ { 0x047D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*058F*/ { 0x047E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PINSRD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0590*/ { 0x047F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0591*/ { 0x0480, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PINSRQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0592*/ { 0x0481, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0593*/ { 0x0482, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PINSRW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0594*/ { 0x0483, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0595*/ { 0x0484, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0596*/ { 0x0485, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0597*/ { 0x0486, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMADDUBSW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0598*/ { 0x0487, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0599*/ { 0x0488, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*059A*/ { 0x0489, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*059B*/ { 0x048A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMADDWD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*059C*/ { 0x048B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*059D*/ { 0x048C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*059E*/ { 0x048D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*059F*/ { 0x048E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMAXSB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05A0*/ { 0x048F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05A1*/ { 0x0490, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMAXSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05A2*/ { 0x0491, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05A3*/ { 0x0492, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMAXSW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05A4*/ { 0x0493, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05A5*/ { 0x0494, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05A6*/ { 0x0495, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05A7*/ { 0x0496, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMAXUB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05A8*/ { 0x0497, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05A9*/ { 0x0498, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05AA*/ { 0x0499, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05AB*/ { 0x049A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMAXUD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05AC*/ { 0x049B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05AD*/ { 0x049C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMAXUW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05AE*/ { 0x049D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05AF*/ { 0x049E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMINSB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05B0*/ { 0x049F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05B1*/ { 0x04A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMINSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05B2*/ { 0x04A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05B3*/ { 0x04A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMINSW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05B4*/ { 0x04A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05B5*/ { 0x04A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05B6*/ { 0x04A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05B7*/ { 0x04A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMINUB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05B8*/ { 0x04A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05B9*/ { 0x04A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05BA*/ { 0x04A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05BB*/ { 0x04AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMINUD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05BC*/ { 0x04AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05BD*/ { 0x04AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMINUW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05BE*/ { 0x04AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05BF*/ { 0x04AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVMSKB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05C0*/ { 0x04AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05C1*/ { 0x04B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVSXBD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05C2*/ { 0x04B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05C3*/ { 0x04B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVSXBQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05C4*/ { 0x04B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05C5*/ { 0x04B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVSXBW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05C6*/ { 0x04B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05C7*/ { 0x04B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVSXDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05C8*/ { 0x04B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05C9*/ { 0x04B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVSXWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05CA*/ { 0x04B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05CB*/ { 0x04BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVSXWQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05CC*/ { 0x04BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05CD*/ { 0x04BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVZXBD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05CE*/ { 0x04BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05CF*/ { 0x04BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVZXBQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05D0*/ { 0x04BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05D1*/ { 0x04C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVZXBW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05D2*/ { 0x04C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05D3*/ { 0x04C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVZXDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05D4*/ { 0x04C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05D5*/ { 0x04C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVZXWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05D6*/ { 0x04C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05D7*/ { 0x04C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMOVZXWQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05D8*/ { 0x04C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05D9*/ { 0x04C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULDQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05DA*/ { 0x04C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05DB*/ { 0x04CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULHRSW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*05DC*/ { 0x04CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05DD*/ { 0x04CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05DE*/ { 0x04CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05DF*/ { 0x04CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULHRW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*05E0*/ { 0x002C, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB7, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E1*/ { 0x002D, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xB7, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULHUW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*05E2*/ { 0x04CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E3*/ { 0x04D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E4*/ { 0x04D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E5*/ { 0x04D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULHW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05E6*/ { 0x04D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E7*/ { 0x04D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E8*/ { 0x04D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05E9*/ { 0x04D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULLD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05EA*/ { 0x04D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05EB*/ { 0x04D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULLW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*05EC*/ { 0x04D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05ED*/ { 0x04DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05EE*/ { 0x04DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05EF*/ { 0x04DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PMULUDQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*05F0*/ { 0x04DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F1*/ { 0x04DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F2*/ { 0x04DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F3*/ { 0x04E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POP                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*05F4*/ { 0x04E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F5*/ { 0x04E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F6*/ { 0x04E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1F, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F7*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x58, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F8*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x59, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05F9*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05FA*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05FB*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05FC*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05FD*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05FE*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*05FF*/ { 0x04E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0600*/ { 0x04E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x8F, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0601*/ { 0x04E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0602*/ { 0x04E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POPA                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0603*/ { 0x04E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POPAD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0604*/ { 0x04EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POPCNT                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0605*/ { 0x04EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0606*/ { 0x04EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xB8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0607*/ { 0x0097, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0608*/ { 0x0098, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POPF                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0609*/ { 0x04ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POPFD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*060A*/ { 0x04EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9D, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POPFQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*060B*/ { 0x04EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9D, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* POR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*060C*/ { 0x04F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*060D*/ { 0x04F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*060E*/ { 0x04F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*060F*/ { 0x04F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCH_EXCLUSIVE                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*0610*/ { 0x04F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCHNTA                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0611*/ { 0x04F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCHT0                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0612*/ { 0x04F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCHT1                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0613*/ { 0x04F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCHT2                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0614*/ { 0x04F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCHW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0615*/ { 0x04F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0616*/ { 0x04FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PREFETCHWT1                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0617*/ { 0x04FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSADBW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0618*/ { 0x04FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0619*/ { 0x04FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*061A*/ { 0x04FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*061B*/ { 0x04FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSHUFB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*061C*/ { 0x0500, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*061D*/ { 0x0501, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*061E*/ { 0x0502, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*061F*/ { 0x0503, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSHUFD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0620*/ { 0x0504, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0621*/ { 0x0505, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSHUFHW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0622*/ { 0x0506, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0623*/ { 0x0507, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSHUFLW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0624*/ { 0x0508, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0625*/ { 0x0509, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSHUFW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0626*/ { 0x050A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0627*/ { 0x050B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSIGNB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0628*/ { 0x050C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0629*/ { 0x050D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*062A*/ { 0x050E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*062B*/ { 0x050F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSIGND                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*062C*/ { 0x0510, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*062D*/ { 0x0511, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*062E*/ { 0x0512, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*062F*/ { 0x0513, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSIGNW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0630*/ { 0x0514, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0631*/ { 0x0515, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0632*/ { 0x0516, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0633*/ { 0x0517, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSLLD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0634*/ { 0x0518, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0635*/ { 0x0519, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0636*/ { 0x051A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0637*/ { 0x051B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0638*/ { 0x051C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0639*/ { 0x051D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSLLDQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*063A*/ { 0x051E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSLLQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*063B*/ { 0x051F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*063C*/ { 0x0520, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*063D*/ { 0x0521, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*063E*/ { 0x0522, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*063F*/ { 0x0523, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0640*/ { 0x0524, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSLLW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0641*/ { 0x0525, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0642*/ { 0x0526, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0643*/ { 0x0527, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0644*/ { 0x0528, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0645*/ { 0x0529, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0646*/ { 0x052A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSRAD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0647*/ { 0x052B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0648*/ { 0x052C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0649*/ { 0x052D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*064A*/ { 0x052E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*064B*/ { 0x052F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*064C*/ { 0x0530, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSRAW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*064D*/ { 0x0531, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*064E*/ { 0x0532, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*064F*/ { 0x0533, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0650*/ { 0x0534, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0651*/ { 0x0535, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0652*/ { 0x0536, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSRLD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0653*/ { 0x0537, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0654*/ { 0x0538, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0655*/ { 0x0539, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0656*/ { 0x053A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0657*/ { 0x053B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0658*/ { 0x053C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSRLDQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0659*/ { 0x053D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSRLQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*065A*/ { 0x053E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*065B*/ { 0x053F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*065C*/ { 0x0540, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*065D*/ { 0x0541, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*065E*/ { 0x0542, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*065F*/ { 0x0543, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSRLW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0660*/ { 0x0544, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0661*/ { 0x0545, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0662*/ { 0x0546, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0663*/ { 0x0547, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0664*/ { 0x0548, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0665*/ { 0x0549, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0666*/ { 0x054A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0667*/ { 0x054B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0668*/ { 0x054C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0669*/ { 0x054D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*066A*/ { 0x054E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*066B*/ { 0x054F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*066C*/ { 0x0550, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*066D*/ { 0x0551, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*066E*/ { 0x0552, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*066F*/ { 0x0553, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0670*/ { 0x0554, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0671*/ { 0x0555, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBSB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0672*/ { 0x0556, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0673*/ { 0x0557, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0674*/ { 0x0558, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0675*/ { 0x0559, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBSW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0676*/ { 0x055A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0677*/ { 0x055B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0678*/ { 0x055C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0679*/ { 0x055D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBUSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*067A*/ { 0x055E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*067B*/ { 0x055F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*067C*/ { 0x0560, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*067D*/ { 0x0561, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBUSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*067E*/ { 0x0562, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*067F*/ { 0x0563, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0680*/ { 0x0564, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0681*/ { 0x0565, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSUBW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0682*/ { 0x0566, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0683*/ { 0x0567, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0684*/ { 0x0568, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0685*/ { 0x0569, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PSWAPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0686*/ { 0x002E, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xBB, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0687*/ { 0x002F, ZYDIS_INSTRUCTION_ENCODING_3DNOW  , 0xBB, ZYDIS_OPCODE_MAP_0F0F   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PTEST                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0688*/ { 0x056A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0689*/ { 0x056B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x17, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PTWRITE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*068A*/ { 0x056C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*068B*/ { 0x056D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKHBW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*068C*/ { 0x056E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*068D*/ { 0x056F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*068E*/ { 0x0570, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*068F*/ { 0x0571, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKHDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0690*/ { 0x0572, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0691*/ { 0x0573, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0692*/ { 0x0574, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0693*/ { 0x0575, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKHQDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0694*/ { 0x0576, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0695*/ { 0x0577, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKHWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0696*/ { 0x0578, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0697*/ { 0x0579, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0698*/ { 0x057A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0699*/ { 0x057B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKLBW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*069A*/ { 0x057C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*069B*/ { 0x057D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*069C*/ { 0x057E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*069D*/ { 0x057F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKLDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*069E*/ { 0x0580, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*069F*/ { 0x0581, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A0*/ { 0x0582, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A1*/ { 0x0583, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKLQDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*06A2*/ { 0x0584, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A3*/ { 0x0585, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUNPCKLWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*06A4*/ { 0x0586, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A5*/ { 0x0587, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A6*/ { 0x0588, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A7*/ { 0x0589, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUSH                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*06A8*/ { 0x058A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x06, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06A9*/ { 0x058B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0E, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06AA*/ { 0x058C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x16, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06AB*/ { 0x058D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06AC*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x50, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06AD*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06AE*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x52, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06AF*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x53, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B0*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x54, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B1*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x55, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B2*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x56, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B3*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x57, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B4*/ { 0x058F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x68, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B5*/ { 0x0590, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x6A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B6*/ { 0x0591, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B7*/ { 0x0592, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B8*/ { 0x0593, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06B9*/ { 0x0594, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUSHA                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06BA*/ { 0x0595, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUSHAD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06BB*/ { 0x0596, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x60, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUSHF                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06BC*/ { 0x0597, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUSHFD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06BD*/ { 0x0598, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9C, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PUSHFQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06BE*/ { 0x0599, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9C, ZYDIS_OPCODE_MAP_DEFAULT, 0x04, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* PXOR                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*06BF*/ { 0x059A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C0*/ { 0x059B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C1*/ { 0x059C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C2*/ { 0x059D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RCL                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*06C3*/ { 0x059E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C4*/ { 0x059F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C5*/ { 0x05A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C6*/ { 0x05A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C7*/ { 0x05A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C8*/ { 0x05A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06C9*/ { 0x05A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06CA*/ { 0x05A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06CB*/ { 0x05A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06CC*/ { 0x05A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06CD*/ { 0x05A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06CE*/ { 0x05A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RCPPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06CF*/ { 0x05AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D0*/ { 0x05AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RCPSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06D1*/ { 0x05AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D2*/ { 0x05AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RCR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*06D3*/ { 0x05AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D4*/ { 0x05AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D5*/ { 0x05B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D6*/ { 0x05B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D7*/ { 0x05B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D8*/ { 0x05B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06D9*/ { 0x05B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06DA*/ { 0x05B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06DB*/ { 0x05B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06DC*/ { 0x05B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06DD*/ { 0x05B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06DE*/ { 0x05B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDFSBASE                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*06DF*/ { 0x05BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDGSBASE                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E0*/ { 0x05BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDMSR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E1*/ { 0x05BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x32, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDPKRU                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E2*/ { 0x05BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDPMC                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E3*/ { 0x05BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x33, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDRAND                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E4*/ { 0x05BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDSEED                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E5*/ { 0x05C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDSSPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E6*/ { 0x05C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDSSPQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E7*/ { 0x05C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDTSC                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E8*/ { 0x05C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x31, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RDTSCP                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*06E9*/ { 0x05C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RET                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*06EA*/ { 0x05C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06EB*/ { 0x05C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06EC*/ { 0x05C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06ED*/ { 0x05C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ROL                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*06EE*/ { 0x05C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06EF*/ { 0x05CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F0*/ { 0x05CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F1*/ { 0x05CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F2*/ { 0x05CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F3*/ { 0x05CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F4*/ { 0x05CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F5*/ { 0x05D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F6*/ { 0x05D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F7*/ { 0x05D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F8*/ { 0x05D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06F9*/ { 0x05D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ROR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*06FA*/ { 0x05D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06FB*/ { 0x05D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06FC*/ { 0x05D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06FD*/ { 0x05D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06FE*/ { 0x05D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*06FF*/ { 0x05DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0700*/ { 0x05DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0701*/ { 0x05DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0702*/ { 0x05DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0703*/ { 0x05DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0704*/ { 0x05DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0705*/ { 0x05E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RORX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0706*/ { 0x0099, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0707*/ { 0x009A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0708*/ { 0x009B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0709*/ { 0x009C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*070A*/ { 0x009D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*070B*/ { 0x009E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ROUNDPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*070C*/ { 0x05E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*070D*/ { 0x05E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ROUNDPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*070E*/ { 0x05E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*070F*/ { 0x05E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ROUNDSD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0710*/ { 0x05E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0711*/ { 0x05E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* ROUNDSS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0712*/ { 0x05E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0713*/ { 0x05E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RSM                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0714*/ { 0x05E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RSQRTPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0715*/ { 0x05EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0716*/ { 0x05EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RSQRTSS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0717*/ { 0x05EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0718*/ { 0x05ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* RSTORSSP                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0719*/ { 0x05EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SAHF                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*071A*/ { 0x05EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9E, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SALC                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*071B*/ { 0x05F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD6, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SAR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*071C*/ { 0x05F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*071D*/ { 0x05F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*071E*/ { 0x05F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*071F*/ { 0x05F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0720*/ { 0x05F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0721*/ { 0x05F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0722*/ { 0x05F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0723*/ { 0x05F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0724*/ { 0x05F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0725*/ { 0x05FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0726*/ { 0x05FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0727*/ { 0x05FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SARX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0728*/ { 0x009F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0729*/ { 0x00A0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*072A*/ { 0x00A1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*072B*/ { 0x00A2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*072C*/ { 0x00A3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*072D*/ { 0x00A4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SAVESSP                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*072E*/ { 0x05FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x04, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SBB                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*072F*/ { 0x05FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0730*/ { 0x05FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x18, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0731*/ { 0x0600, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x19, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0732*/ { 0x0601, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x19, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0733*/ { 0x0602, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0734*/ { 0x0603, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0735*/ { 0x0604, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0736*/ { 0x0605, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0737*/ { 0x0606, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0738*/ { 0x0607, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x1D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0739*/ { 0x0608, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*073A*/ { 0x0609, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*073B*/ { 0x060A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*073C*/ { 0x060B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*073D*/ { 0x060C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*073E*/ { 0x060D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*073F*/ { 0x060E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0740*/ { 0x060F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SCASB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0741*/ { 0x0610, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0742*/ { 0x0611, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0743*/ { 0x0612, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SCASD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0744*/ { 0x0613, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0745*/ { 0x0614, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0746*/ { 0x0615, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SCASQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0747*/ { 0x0616, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0748*/ { 0x0617, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0749*/ { 0x0618, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SCASW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*074A*/ { 0x0619, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*074B*/ { 0x061A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*074C*/ { 0x061B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAF, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETB                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*074D*/ { 0x061C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x92, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*074E*/ { 0x061D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x92, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETBE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*074F*/ { 0x061E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x96, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0750*/ { 0x061F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x96, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETL                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0751*/ { 0x0620, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0752*/ { 0x0621, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETLE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0753*/ { 0x0622, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0754*/ { 0x0623, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0755*/ { 0x0624, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x93, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0756*/ { 0x0625, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x93, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNBE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0757*/ { 0x0626, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x97, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0758*/ { 0x0627, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x97, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNL                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0759*/ { 0x0628, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*075A*/ { 0x0629, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNLE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*075B*/ { 0x062A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*075C*/ { 0x062B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNO                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*075D*/ { 0x062C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x91, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*075E*/ { 0x062D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x91, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNP                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*075F*/ { 0x062E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0760*/ { 0x062F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0761*/ { 0x0630, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x99, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0762*/ { 0x0631, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x99, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETNZ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0763*/ { 0x0632, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x95, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0764*/ { 0x0633, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x95, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETO                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0765*/ { 0x0634, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0766*/ { 0x0635, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x90, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETP                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0767*/ { 0x0636, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0768*/ { 0x0637, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x9A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETS                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0769*/ { 0x0638, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*076A*/ { 0x0639, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x98, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETSSBSY                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*076B*/ { 0x063A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x01, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SETZ                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*076C*/ { 0x063B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x94, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*076D*/ { 0x063C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x94, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SFENCE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*076E*/ { 0x063D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SGDT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*076F*/ { 0x063E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0770*/ { 0x063F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA1MSG1                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0771*/ { 0x0640, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0772*/ { 0x0641, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA1MSG2                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0773*/ { 0x0642, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0774*/ { 0x0643, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA1NEXTE                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0775*/ { 0x0644, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0776*/ { 0x0645, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA1RNDS4                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0777*/ { 0x0646, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCC, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0778*/ { 0x0647, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCC, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA256MSG1                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0779*/ { 0x0648, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*077A*/ { 0x0649, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA256MSG2                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*077B*/ { 0x064A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*077C*/ { 0x064B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHA256RNDS2                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*077D*/ { 0x064C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*077E*/ { 0x064D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHL                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*077F*/ { 0x064E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0780*/ { 0x064F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0781*/ { 0x0650, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0782*/ { 0x0651, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0783*/ { 0x0652, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0784*/ { 0x0653, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0785*/ { 0x0654, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0786*/ { 0x0655, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0787*/ { 0x0656, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0788*/ { 0x0657, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0789*/ { 0x0658, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*078A*/ { 0x0659, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*078B*/ { 0x065A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*078C*/ { 0x065B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*078D*/ { 0x065C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*078E*/ { 0x065D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*078F*/ { 0x065E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0790*/ { 0x065F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0791*/ { 0x0660, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0792*/ { 0x0661, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0793*/ { 0x0662, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0794*/ { 0x0663, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0795*/ { 0x0664, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0796*/ { 0x0665, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHLD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0797*/ { 0x0666, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0798*/ { 0x0667, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0799*/ { 0x0668, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*079A*/ { 0x0669, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHLX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*079B*/ { 0x00A5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*079C*/ { 0x00A6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*079D*/ { 0x00A7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*079E*/ { 0x00A8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*079F*/ { 0x00A9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*07A0*/ { 0x00AA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*07A1*/ { 0x066A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A2*/ { 0x066B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A3*/ { 0x066C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A4*/ { 0x066D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A5*/ { 0x066E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A6*/ { 0x066F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD0, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A7*/ { 0x0670, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A8*/ { 0x0671, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD1, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07A9*/ { 0x0672, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07AA*/ { 0x0673, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD2, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07AB*/ { 0x0674, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07AC*/ { 0x0675, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD3, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHRD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07AD*/ { 0x0676, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07AE*/ { 0x0677, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07AF*/ { 0x0678, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07B0*/ { 0x0679, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHRX                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07B1*/ { 0x00AB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07B2*/ { 0x00AC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07B3*/ { 0x00AD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07B4*/ { 0x00AE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07B5*/ { 0x00AF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*07B6*/ { 0x00B0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHUFPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07B7*/ { 0x067A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07B8*/ { 0x067B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SHUFPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07B9*/ { 0x067C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07BA*/ { 0x067D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SIDT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07BB*/ { 0x067E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07BC*/ { 0x067F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SKINIT                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07BD*/ { 0x0680, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SLDT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07BE*/ { 0x0681, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07BF*/ { 0x0682, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SLWPCB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07C0*/ { 0x0025, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x12, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SMSW                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07C1*/ { 0x0683, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07C2*/ { 0x0684, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SPFLT                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07C3*/ { 0x00B1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07C4*/ { 0x00B2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SQRTPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07C5*/ { 0x0685, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07C6*/ { 0x0686, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SQRTPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07C7*/ { 0x0687, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07C8*/ { 0x0688, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SQRTSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07C9*/ { 0x0689, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07CA*/ { 0x068A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SQRTSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07CB*/ { 0x068B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07CC*/ { 0x068C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STAC                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07CD*/ { 0x068D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STC                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*07CE*/ { 0x068E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STD                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*07CF*/ { 0x068F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFD, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STGI                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*07D0*/ { 0x0690, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STI                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*07D1*/ { 0x0691, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xFB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STMXCSR                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*07D2*/ { 0x0692, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STOSB                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07D3*/ { 0x0693, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07D4*/ { 0x0694, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07D5*/ { 0x0695, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAA, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STOSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07D6*/ { 0x0696, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07D7*/ { 0x0697, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07D8*/ { 0x0698, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STOSQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07D9*/ { 0x0699, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07DA*/ { 0x069A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07DB*/ { 0x069B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STOSW                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07DC*/ { 0x069C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07DD*/ { 0x069D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07DE*/ { 0x069E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAB, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x01, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* STR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*07DF*/ { 0x069F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E0*/ { 0x06A0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SUB                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*07E1*/ { 0x06A1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E2*/ { 0x06A2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x28, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E3*/ { 0x06A3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E4*/ { 0x06A4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x29, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E5*/ { 0x06A5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E6*/ { 0x06A6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2A, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E7*/ { 0x06A7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E8*/ { 0x06A8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2B, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07E9*/ { 0x06A9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2C, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07EA*/ { 0x06AA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2D, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07EB*/ { 0x06AB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07EC*/ { 0x06AC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07ED*/ { 0x06AD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07EE*/ { 0x06AE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07EF*/ { 0x06AF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07F0*/ { 0x06B0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07F1*/ { 0x06B1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07F2*/ { 0x06B2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SUBPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07F3*/ { 0x06B3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07F4*/ { 0x06B4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SUBPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07F5*/ { 0x06B5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07F6*/ { 0x06B6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SUBSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07F7*/ { 0x06B7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07F8*/ { 0x06B8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SUBSS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*07F9*/ { 0x06B9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07FA*/ { 0x06BA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SWAPGS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*07FB*/ { 0x06BB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SYSCALL                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*07FC*/ { 0x06BC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*07FD*/ { 0x06BD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x05, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SYSENTER                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*07FE*/ { 0x06BE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x34, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SYSEXIT                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*07FF*/ { 0x06BF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x35, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* SYSRET                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0800*/ { 0x06C0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0801*/ { 0x06C1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x04, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0802*/ { 0x06C2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x07, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x02, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* T1MSKC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0803*/ { 0x0026, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0804*/ { 0x0027, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0805*/ { 0x0028, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0806*/ { 0x0029, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* TEST                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0807*/ { 0x06C3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x84, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0808*/ { 0x06C4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x84, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0809*/ { 0x06C5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x85, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*080A*/ { 0x06C6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x85, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*080B*/ { 0x06C7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA8, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*080C*/ { 0x06C8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xA9, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*080D*/ { 0x06C9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*080E*/ { 0x06CA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*080F*/ { 0x06CB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0810*/ { 0x06CC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0811*/ { 0x06CD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0812*/ { 0x06CE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0813*/ { 0x06CF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0814*/ { 0x06D0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* TZCNT                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0815*/ { 0x06D1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0816*/ { 0x06D2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0817*/ { 0x00B3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0818*/ { 0x00B4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* TZCNTI                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0819*/ { 0x00B5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*081A*/ { 0x00B6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* TZMSK                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*081B*/ { 0x002A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*081C*/ { 0x002B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*081D*/ { 0x002C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*081E*/ { 0x002D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x01, ZYDIS_OPCODE_MAP_XOP9   , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UCOMISD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*081F*/ { 0x06D3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0820*/ { 0x06D4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UCOMISS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0821*/ { 0x06D5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0822*/ { 0x06D6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UD2                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*0823*/ { 0x06D7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x0B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UNPCKHPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0824*/ { 0x06D8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0825*/ { 0x06D9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UNPCKHPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0826*/ { 0x06DA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0827*/ { 0x06DB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UNPCKLPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0828*/ { 0x06DC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0829*/ { 0x06DD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* UNPCKLPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*082A*/ { 0x06DE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*082B*/ { 0x06DF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* V4FMADDPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*082C*/ { 0x0000, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*082D*/ { 0x0001, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* V4FMADDSS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*082E*/ { 0x0002, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*082F*/ { 0x0003, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* V4FNMADDPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0830*/ { 0x0004, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0831*/ { 0x0005, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* V4FNMADDSS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0832*/ { 0x0006, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0833*/ { 0x0007, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDNPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0834*/ { 0x0002, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x50, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0835*/ { 0x0003, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x50, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0836*/ { 0x0004, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x50, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDNPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0837*/ { 0x0005, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x50, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0838*/ { 0x0006, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x50, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0839*/ { 0x0007, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x50, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*083A*/ { 0x00B7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*083B*/ { 0x00B8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*083C*/ { 0x00B9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*083D*/ { 0x00BA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*083E*/ { 0x0008, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*083F*/ { 0x0009, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0840*/ { 0x000A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0841*/ { 0x000B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0842*/ { 0x000C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0843*/ { 0x000D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0844*/ { 0x000E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0845*/ { 0x0008, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0846*/ { 0x0009, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0847*/ { 0x000A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0848*/ { 0x00BB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0849*/ { 0x00BC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*084A*/ { 0x00BD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*084B*/ { 0x00BE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*084C*/ { 0x000F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*084D*/ { 0x0010, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*084E*/ { 0x0011, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*084F*/ { 0x0012, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0850*/ { 0x0013, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0851*/ { 0x0014, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0852*/ { 0x0015, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0853*/ { 0x000B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0854*/ { 0x000C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0855*/ { 0x000D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0856*/ { 0x00BF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0857*/ { 0x00C0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0858*/ { 0x0016, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0859*/ { 0x0017, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*085A*/ { 0x0018, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDSETSPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*085B*/ { 0x000E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*085C*/ { 0x000F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*085D*/ { 0x0010, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*085E*/ { 0x00C1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*085F*/ { 0x00C2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0860*/ { 0x0019, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0861*/ { 0x001A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0862*/ { 0x001B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDSUBPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0863*/ { 0x00C3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0864*/ { 0x00C4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0865*/ { 0x00C5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0866*/ { 0x00C6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VADDSUBPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0867*/ { 0x00C7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0868*/ { 0x00C8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0869*/ { 0x00C9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*086A*/ { 0x00CA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VAESDEC                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*086B*/ { 0x00CB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*086C*/ { 0x00CC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VAESDECLAST                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*086D*/ { 0x00CD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*086E*/ { 0x00CE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VAESENC                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*086F*/ { 0x00CF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0870*/ { 0x00D0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VAESENCLAST                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0871*/ { 0x00D1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0872*/ { 0x00D2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VAESIMC                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0873*/ { 0x00D3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0874*/ { 0x00D4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VAESKEYGENASSIST                                                                           */ +    /* ------------------------------------------------------------------------------------------ */+    /*0875*/ { 0x00D5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0876*/ { 0x00D6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VALIGND                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0877*/ { 0x001C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0878*/ { 0x001D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0879*/ { 0x001E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*087A*/ { 0x001F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*087B*/ { 0x0020, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*087C*/ { 0x0021, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*087D*/ { 0x0011, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*087E*/ { 0x0012, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VALIGNQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*087F*/ { 0x0022, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0880*/ { 0x0023, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0881*/ { 0x0024, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0882*/ { 0x0025, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0883*/ { 0x0026, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0884*/ { 0x0027, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x03, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VANDNPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0885*/ { 0x00D7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0886*/ { 0x00D8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0887*/ { 0x00D9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0888*/ { 0x00DA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0889*/ { 0x0028, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*088A*/ { 0x0029, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*088B*/ { 0x002A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*088C*/ { 0x002B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*088D*/ { 0x002C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*088E*/ { 0x002D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VANDNPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*088F*/ { 0x00DB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0890*/ { 0x00DC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0891*/ { 0x00DD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0892*/ { 0x00DE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0893*/ { 0x002E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0894*/ { 0x002F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0895*/ { 0x0030, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0896*/ { 0x0031, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0897*/ { 0x0032, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0898*/ { 0x0033, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VANDPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0899*/ { 0x00DF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*089A*/ { 0x00E0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*089B*/ { 0x00E1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*089C*/ { 0x00E2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*089D*/ { 0x0034, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*089E*/ { 0x0035, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*089F*/ { 0x0036, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08A0*/ { 0x0037, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08A1*/ { 0x0038, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08A2*/ { 0x0039, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VANDPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*08A3*/ { 0x00E3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08A4*/ { 0x00E4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08A5*/ { 0x00E5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08A6*/ { 0x00E6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08A7*/ { 0x003A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08A8*/ { 0x003B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08A9*/ { 0x003C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08AA*/ { 0x003D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08AB*/ { 0x003E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08AC*/ { 0x003F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBLENDMPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*08AD*/ { 0x0040, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*08AE*/ { 0x0041, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*08AF*/ { 0x0042, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08B0*/ { 0x0043, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08B1*/ { 0x0044, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08B2*/ { 0x0045, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08B3*/ { 0x0013, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*08B4*/ { 0x0014, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*08B5*/ { 0x0015, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBLENDMPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*08B6*/ { 0x0046, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08B7*/ { 0x0047, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08B8*/ { 0x0048, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08B9*/ { 0x0049, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08BA*/ { 0x004A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08BB*/ { 0x004B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08BC*/ { 0x0016, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08BD*/ { 0x0017, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*08BE*/ { 0x0018, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x65, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBLENDPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*08BF*/ { 0x00E7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08C0*/ { 0x00E8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08C1*/ { 0x00E9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08C2*/ { 0x00EA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBLENDPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*08C3*/ { 0x00EB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08C4*/ { 0x00EC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08C5*/ { 0x00ED, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08C6*/ { 0x00EE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBLENDVPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*08C7*/ { 0x00EF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08C8*/ { 0x00F0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08C9*/ { 0x00F1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08CA*/ { 0x00F2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBLENDVPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*08CB*/ { 0x00F3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08CC*/ { 0x00F4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08CD*/ { 0x00F5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08CE*/ { 0x00F6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTF128                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*08CF*/ { 0x00F7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTF32X2                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08D0*/ { 0x004C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08D1*/ { 0x004D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08D2*/ { 0x004E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08D3*/ { 0x004F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTF32X4                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08D4*/ { 0x0050, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08D5*/ { 0x0051, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08D6*/ { 0x0019, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTF32X8                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08D7*/ { 0x0052, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTF64X2                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08D8*/ { 0x0053, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08D9*/ { 0x0054, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTF64X4                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08DA*/ { 0x0055, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08DB*/ { 0x001A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTI128                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*08DC*/ { 0x00F8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTI32X2                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08DD*/ { 0x0056, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08DE*/ { 0x0057, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08DF*/ { 0x0058, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08E0*/ { 0x0059, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08E1*/ { 0x005A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08E2*/ { 0x005B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTI32X4                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08E3*/ { 0x005C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08E4*/ { 0x005D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08E5*/ { 0x001B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTI32X8                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08E6*/ { 0x005E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTI64X2                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08E7*/ { 0x005F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08E8*/ { 0x0060, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTI64X4                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*08E9*/ { 0x0061, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08EA*/ { 0x001C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTSD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*08EB*/ { 0x00F9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08EC*/ { 0x00FA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08ED*/ { 0x0062, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08EE*/ { 0x0063, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*08EF*/ { 0x0064, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08F0*/ { 0x0065, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*08F1*/ { 0x001D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x19, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VBROADCASTSS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*08F2*/ { 0x00FB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08F3*/ { 0x00FC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08F4*/ { 0x00FD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08F5*/ { 0x00FE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08F6*/ { 0x0066, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08F7*/ { 0x0067, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08F8*/ { 0x0068, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08F9*/ { 0x0069, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*08FA*/ { 0x006A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08FB*/ { 0x006B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*08FC*/ { 0x001E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCMPPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*08FD*/ { 0x00FF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08FE*/ { 0x0100, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*08FF*/ { 0x0101, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0900*/ { 0x0102, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0901*/ { 0x006C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0902*/ { 0x006D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0903*/ { 0x006E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0904*/ { 0x006F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0905*/ { 0x0070, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0906*/ { 0x0071, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0907*/ { 0x0072, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0908*/ { 0x001F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0909*/ { 0x0020, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*090A*/ { 0x0021, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCMPPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*090B*/ { 0x0103, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*090C*/ { 0x0104, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*090D*/ { 0x0105, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*090E*/ { 0x0106, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*090F*/ { 0x0073, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0910*/ { 0x0074, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0911*/ { 0x0075, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0912*/ { 0x0076, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0913*/ { 0x0077, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0914*/ { 0x0078, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0915*/ { 0x0079, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0916*/ { 0x0022, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0917*/ { 0x0023, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0918*/ { 0x0024, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCMPSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0919*/ { 0x0107, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*091A*/ { 0x0108, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*091B*/ { 0x007A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*091C*/ { 0x007B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*091D*/ { 0x007C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCMPSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*091E*/ { 0x0109, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*091F*/ { 0x010A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0920*/ { 0x007D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0921*/ { 0x007E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0922*/ { 0x007F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCOMISD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0923*/ { 0x010B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0924*/ { 0x010C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0925*/ { 0x0080, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0926*/ { 0x0081, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0927*/ { 0x0082, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCOMISS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0928*/ { 0x010D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0929*/ { 0x010E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*092A*/ { 0x0083, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*092B*/ { 0x0084, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*092C*/ { 0x0085, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCOMPRESSPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*092D*/ { 0x0086, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*092E*/ { 0x0087, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*092F*/ { 0x0088, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0930*/ { 0x0089, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0931*/ { 0x008A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0932*/ { 0x008B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCOMPRESSPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0933*/ { 0x008C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0934*/ { 0x008D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0935*/ { 0x008E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0936*/ { 0x008F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0937*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0938*/ { 0x0091, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTDQ2PD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0939*/ { 0x010F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*093A*/ { 0x0110, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*093B*/ { 0x0111, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*093C*/ { 0x0112, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*093D*/ { 0x0092, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*093E*/ { 0x0093, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*093F*/ { 0x0094, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0940*/ { 0x0095, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0941*/ { 0x0096, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0942*/ { 0x0097, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0943*/ { 0x0025, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0944*/ { 0x0026, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0945*/ { 0x0027, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTDQ2PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0946*/ { 0x0113, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0947*/ { 0x0114, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0948*/ { 0x0115, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0949*/ { 0x0116, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*094A*/ { 0x0098, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*094B*/ { 0x0099, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*094C*/ { 0x009A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*094D*/ { 0x009B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*094E*/ { 0x009C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*094F*/ { 0x009D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0950*/ { 0x009E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTFXPNTDQ2PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0951*/ { 0x0028, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0952*/ { 0x0029, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0953*/ { 0x002A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTFXPNTPD2DQ                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0954*/ { 0x002B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0955*/ { 0x002C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0956*/ { 0x002D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTFXPNTPD2UDQ                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*0957*/ { 0x002E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0958*/ { 0x002F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /*0959*/ { 0x0030, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTFXPNTPS2DQ                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*095A*/ { 0x0031, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*095B*/ { 0x0032, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*095C*/ { 0x0033, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTFXPNTPS2UDQ                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*095D*/ { 0x0034, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*095E*/ { 0x0035, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*095F*/ { 0x0036, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTFXPNTUDQ2PS                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*0960*/ { 0x0037, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0961*/ { 0x0038, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0962*/ { 0x0039, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPD2DQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0963*/ { 0x0117, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0964*/ { 0x0118, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0965*/ { 0x0119, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0966*/ { 0x011A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0967*/ { 0x009F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0968*/ { 0x00A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0969*/ { 0x00A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*096A*/ { 0x00A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*096B*/ { 0x00A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*096C*/ { 0x00A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*096D*/ { 0x00A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPD2PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*096E*/ { 0x011B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*096F*/ { 0x011C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0970*/ { 0x011D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0971*/ { 0x011E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0972*/ { 0x00A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0973*/ { 0x00A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0974*/ { 0x00A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0975*/ { 0x00A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0976*/ { 0x00AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0977*/ { 0x00AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0978*/ { 0x00AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0979*/ { 0x003A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*097A*/ { 0x003B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*097B*/ { 0x003C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPD2QQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*097C*/ { 0x00AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*097D*/ { 0x00AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*097E*/ { 0x00AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*097F*/ { 0x00B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0980*/ { 0x00B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0981*/ { 0x00B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0982*/ { 0x00B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPD2UDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0983*/ { 0x00B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0984*/ { 0x00B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0985*/ { 0x00B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0986*/ { 0x00B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0987*/ { 0x00B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0988*/ { 0x00B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0989*/ { 0x00BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPD2UQQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*098A*/ { 0x00BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*098B*/ { 0x00BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*098C*/ { 0x00BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*098D*/ { 0x00BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*098E*/ { 0x00BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*098F*/ { 0x00C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0990*/ { 0x00C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPH2PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0991*/ { 0x011F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0992*/ { 0x0120, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0993*/ { 0x0121, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0994*/ { 0x0122, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0995*/ { 0x00C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0996*/ { 0x00C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0997*/ { 0x00C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0998*/ { 0x00C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0999*/ { 0x00C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*099A*/ { 0x00C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*099B*/ { 0x00C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPS2DQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*099C*/ { 0x0123, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*099D*/ { 0x0124, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*099E*/ { 0x0125, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*099F*/ { 0x0126, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09A0*/ { 0x00C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09A1*/ { 0x00CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09A2*/ { 0x00CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09A3*/ { 0x00CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09A4*/ { 0x00CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09A5*/ { 0x00CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09A6*/ { 0x00CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPS2PD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09A7*/ { 0x0127, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09A8*/ { 0x0128, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09A9*/ { 0x0129, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09AA*/ { 0x012A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09AB*/ { 0x00D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09AC*/ { 0x00D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09AD*/ { 0x00D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09AE*/ { 0x00D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09AF*/ { 0x00D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09B0*/ { 0x00D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09B1*/ { 0x00D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09B2*/ { 0x003D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09B3*/ { 0x003E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*09B4*/ { 0x003F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPS2PH                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09B5*/ { 0x012B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09B6*/ { 0x012C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09B7*/ { 0x012D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09B8*/ { 0x012E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09B9*/ { 0x00D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09BA*/ { 0x00D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09BB*/ { 0x00D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09BC*/ { 0x00DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09BD*/ { 0x00DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09BE*/ { 0x00DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09BF*/ { 0x00DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPS2QQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09C0*/ { 0x00DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09C1*/ { 0x00DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09C2*/ { 0x00E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09C3*/ { 0x00E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09C4*/ { 0x00E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09C5*/ { 0x00E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09C6*/ { 0x00E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPS2UDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*09C7*/ { 0x00E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09C8*/ { 0x00E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09C9*/ { 0x00E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09CA*/ { 0x00E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09CB*/ { 0x00E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09CC*/ { 0x00EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09CD*/ { 0x00EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTPS2UQQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*09CE*/ { 0x00EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09CF*/ { 0x00ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09D0*/ { 0x00EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09D1*/ { 0x00EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*09D2*/ { 0x00F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*09D3*/ { 0x00F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09D4*/ { 0x00F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTQQ2PD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09D5*/ { 0x00F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09D6*/ { 0x00F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09D7*/ { 0x00F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*09D8*/ { 0x00F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*09D9*/ { 0x00F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*09DA*/ { 0x00F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*09DB*/ { 0x00F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTQQ2PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09DC*/ { 0x00FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09DD*/ { 0x00FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09DE*/ { 0x00FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*09DF*/ { 0x00FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*09E0*/ { 0x00FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*09E1*/ { 0x00FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*09E2*/ { 0x0100, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSD2SI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09E3*/ { 0x012F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09E4*/ { 0x0130, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09E5*/ { 0x0131, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09E6*/ { 0x0132, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09E7*/ { 0x0133, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09E8*/ { 0x0134, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09E9*/ { 0x0101, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09EA*/ { 0x0102, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09EB*/ { 0x0103, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09EC*/ { 0x0104, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09ED*/ { 0x0105, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*09EE*/ { 0x0106, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSD2SS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09EF*/ { 0x0135, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09F0*/ { 0x0136, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09F1*/ { 0x0107, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09F2*/ { 0x0108, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*09F3*/ { 0x0109, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSD2USI                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*09F4*/ { 0x010A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09F5*/ { 0x010B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*09F6*/ { 0x010C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09F7*/ { 0x010D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09F8*/ { 0x010E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*09F9*/ { 0x010F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSI2SD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*09FA*/ { 0x0137, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09FB*/ { 0x0138, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09FC*/ { 0x0139, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09FD*/ { 0x013A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*09FE*/ { 0x013B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*09FF*/ { 0x013C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A00*/ { 0x0110, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A01*/ { 0x0111, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A02*/ { 0x0112, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A03*/ { 0x0113, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A04*/ { 0x0114, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSI2SS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A05*/ { 0x013D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A06*/ { 0x013E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A07*/ { 0x013F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A08*/ { 0x0140, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A09*/ { 0x0141, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A0A*/ { 0x0142, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A0B*/ { 0x0115, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A0C*/ { 0x0116, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A0D*/ { 0x0117, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A0E*/ { 0x0118, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A0F*/ { 0x0119, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A10*/ { 0x011A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSS2SD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A11*/ { 0x0143, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A12*/ { 0x0144, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A13*/ { 0x011B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A14*/ { 0x011C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A15*/ { 0x011D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSS2SI                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A16*/ { 0x0145, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A17*/ { 0x0146, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A18*/ { 0x0147, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A19*/ { 0x0148, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A1A*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A1B*/ { 0x014A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A1C*/ { 0x011E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A1D*/ { 0x011F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A1E*/ { 0x0120, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A1F*/ { 0x0121, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A20*/ { 0x0122, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A21*/ { 0x0123, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTSS2USI                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A22*/ { 0x0124, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A23*/ { 0x0125, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A24*/ { 0x0126, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A25*/ { 0x0127, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A26*/ { 0x0128, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A27*/ { 0x0129, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPD2DQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A28*/ { 0x014B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A29*/ { 0x014C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A2A*/ { 0x014D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A2B*/ { 0x014E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A2C*/ { 0x012A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A2D*/ { 0x012B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A2E*/ { 0x012C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A2F*/ { 0x012D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A30*/ { 0x012E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0A31*/ { 0x012F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A32*/ { 0x0130, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPD2QQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A33*/ { 0x0131, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A34*/ { 0x0132, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A35*/ { 0x0133, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A36*/ { 0x0134, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A37*/ { 0x0135, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0A38*/ { 0x0136, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A39*/ { 0x0137, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPD2UDQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A3A*/ { 0x0138, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A3B*/ { 0x0139, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A3C*/ { 0x013A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A3D*/ { 0x013B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A3E*/ { 0x013C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0A3F*/ { 0x013D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A40*/ { 0x013E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPD2UQQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A41*/ { 0x013F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A42*/ { 0x0140, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A43*/ { 0x0141, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A44*/ { 0x0142, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A45*/ { 0x0143, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0A46*/ { 0x0144, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A47*/ { 0x0145, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPS2DQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A48*/ { 0x014F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A49*/ { 0x0150, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A4A*/ { 0x0151, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A4B*/ { 0x0152, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A4C*/ { 0x0146, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A4D*/ { 0x0147, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A4E*/ { 0x0148, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A4F*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A50*/ { 0x014A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A51*/ { 0x014B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A52*/ { 0x014C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPS2QQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A53*/ { 0x014D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A54*/ { 0x014E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A55*/ { 0x014F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A56*/ { 0x0150, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A57*/ { 0x0151, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A58*/ { 0x0152, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A59*/ { 0x0153, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPS2UDQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A5A*/ { 0x0154, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A5B*/ { 0x0155, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A5C*/ { 0x0156, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A5D*/ { 0x0157, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A5E*/ { 0x0158, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A5F*/ { 0x0159, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A60*/ { 0x015A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTPS2UQQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A61*/ { 0x015B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A62*/ { 0x015C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A63*/ { 0x015D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A64*/ { 0x015E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A65*/ { 0x015F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A66*/ { 0x0160, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A67*/ { 0x0161, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTSD2SI                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A68*/ { 0x0153, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A69*/ { 0x0154, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A6A*/ { 0x0155, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A6B*/ { 0x0156, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A6C*/ { 0x0157, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A6D*/ { 0x0158, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A6E*/ { 0x0162, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A6F*/ { 0x0163, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A70*/ { 0x0164, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A71*/ { 0x0165, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A72*/ { 0x0166, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A73*/ { 0x0167, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTSD2USI                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A74*/ { 0x0168, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A75*/ { 0x0169, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A76*/ { 0x016A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A77*/ { 0x016B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A78*/ { 0x016C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A79*/ { 0x016D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTSS2SI                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A7A*/ { 0x0159, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A7B*/ { 0x015A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A7C*/ { 0x015B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A7D*/ { 0x015C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A7E*/ { 0x015D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A7F*/ { 0x015E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A80*/ { 0x016E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A81*/ { 0x016F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A82*/ { 0x0170, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A83*/ { 0x0171, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A84*/ { 0x0172, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A85*/ { 0x0173, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTTSS2USI                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A86*/ { 0x0174, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A87*/ { 0x0175, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A88*/ { 0x0176, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A89*/ { 0x0177, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A8A*/ { 0x0178, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0A8B*/ { 0x0179, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTUDQ2PD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A8C*/ { 0x017A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A8D*/ { 0x017B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A8E*/ { 0x017C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A8F*/ { 0x017D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A90*/ { 0x017E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A91*/ { 0x017F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A92*/ { 0x0040, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A93*/ { 0x0041, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0A94*/ { 0x0042, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTUDQ2PS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A95*/ { 0x0180, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A96*/ { 0x0181, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0A97*/ { 0x0182, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A98*/ { 0x0183, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0A99*/ { 0x0184, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0A9A*/ { 0x0185, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0A9B*/ { 0x0186, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTUQQ2PD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0A9C*/ { 0x0187, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A9D*/ { 0x0188, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0A9E*/ { 0x0189, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0A9F*/ { 0x018A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AA0*/ { 0x018B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0AA1*/ { 0x018C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AA2*/ { 0x018D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTUQQ2PS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AA3*/ { 0x018E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AA4*/ { 0x018F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AA5*/ { 0x0190, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AA6*/ { 0x0191, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AA7*/ { 0x0192, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0AA8*/ { 0x0193, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AA9*/ { 0x0194, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTUSI2SD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AAA*/ { 0x0195, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AAB*/ { 0x0196, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AAC*/ { 0x0197, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AAD*/ { 0x0198, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AAE*/ { 0x0199, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VCVTUSI2SS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AAF*/ { 0x019A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AB0*/ { 0x019B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0AB1*/ { 0x019C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AB2*/ { 0x019D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AB3*/ { 0x019E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AB4*/ { 0x019F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDBPSADBW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AB5*/ { 0x01A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AB6*/ { 0x01A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AB7*/ { 0x01A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AB8*/ { 0x01A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AB9*/ { 0x01A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0ABA*/ { 0x01A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDIVPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0ABB*/ { 0x015F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ABC*/ { 0x0160, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ABD*/ { 0x0161, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ABE*/ { 0x0162, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ABF*/ { 0x01A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AC0*/ { 0x01A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AC1*/ { 0x01A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AC2*/ { 0x01A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AC3*/ { 0x01AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0AC4*/ { 0x01AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AC5*/ { 0x01AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDIVPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AC6*/ { 0x0163, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AC7*/ { 0x0164, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AC8*/ { 0x0165, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AC9*/ { 0x0166, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ACA*/ { 0x01AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ACB*/ { 0x01AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ACC*/ { 0x01AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ACD*/ { 0x01B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ACE*/ { 0x01B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0ACF*/ { 0x01B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0AD0*/ { 0x01B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDIVSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AD1*/ { 0x0167, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AD2*/ { 0x0168, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AD3*/ { 0x01B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AD4*/ { 0x01B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AD5*/ { 0x01B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDIVSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AD6*/ { 0x0169, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AD7*/ { 0x016A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AD8*/ { 0x01B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AD9*/ { 0x01B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0ADA*/ { 0x01B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDPPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0ADB*/ { 0x016B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ADC*/ { 0x016C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VDPPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0ADD*/ { 0x016D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ADE*/ { 0x016E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ADF*/ { 0x016F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AE0*/ { 0x0170, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VERR                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AE1*/ { 0x06E0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AE2*/ { 0x06E1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VERW                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AE3*/ { 0x06E2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AE4*/ { 0x06E3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x00, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXP223PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AE5*/ { 0x0043, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AE6*/ { 0x0044, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*0AE7*/ { 0x0045, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXP2PD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AE8*/ { 0x01BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0AE9*/ { 0x01BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0AEA*/ { 0x01BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXP2PS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AEB*/ { 0x01BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0AEC*/ { 0x01BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0AED*/ { 0x01BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXPANDPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AEE*/ { 0x01C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AEF*/ { 0x01C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0AF0*/ { 0x01C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AF1*/ { 0x01C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0AF2*/ { 0x01C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0AF3*/ { 0x01C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXPANDPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AF4*/ { 0x01C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AF5*/ { 0x01C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0AF6*/ { 0x01C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AF7*/ { 0x01C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AF8*/ { 0x01CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0AF9*/ { 0x01CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x88, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTF128                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AFA*/ { 0x0171, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AFB*/ { 0x0172, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTF32X4                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0AFC*/ { 0x01CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AFD*/ { 0x01CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0AFE*/ { 0x01CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0AFF*/ { 0x01CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTF32X8                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B00*/ { 0x01D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B01*/ { 0x01D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTF64X2                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B02*/ { 0x01D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B03*/ { 0x01D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B04*/ { 0x01D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B05*/ { 0x01D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x19, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTF64X4                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B06*/ { 0x01D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B07*/ { 0x01D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTI128                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B08*/ { 0x0173, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B09*/ { 0x0174, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTI32X4                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B0A*/ { 0x01D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B0B*/ { 0x01D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B0C*/ { 0x01DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B0D*/ { 0x01DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTI32X8                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B0E*/ { 0x01DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B0F*/ { 0x01DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTI64X2                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B10*/ { 0x01DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B11*/ { 0x01DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B12*/ { 0x01E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B13*/ { 0x01E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTI64X4                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B14*/ { 0x01E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B15*/ { 0x01E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VEXTRACTPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B16*/ { 0x0175, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B17*/ { 0x0176, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B18*/ { 0x01E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x17, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B19*/ { 0x01E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x17, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFIXUPIMMPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B1A*/ { 0x01E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B1B*/ { 0x01E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B1C*/ { 0x01E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B1D*/ { 0x01E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B1E*/ { 0x01EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B1F*/ { 0x01EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B20*/ { 0x01EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFIXUPIMMPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B21*/ { 0x01ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B22*/ { 0x01EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B23*/ { 0x01EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B24*/ { 0x01F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B25*/ { 0x01F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B26*/ { 0x01F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B27*/ { 0x01F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x54, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFIXUPIMMSD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B28*/ { 0x01F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B29*/ { 0x01F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B2A*/ { 0x01F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFIXUPIMMSS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B2B*/ { 0x01F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B2C*/ { 0x01F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B2D*/ { 0x01F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFIXUPNANPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B2E*/ { 0x0046, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B2F*/ { 0x0047, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0B30*/ { 0x0048, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFIXUPNANPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B31*/ { 0x0049, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B32*/ { 0x004A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0B33*/ { 0x004B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD132PD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B34*/ { 0x0177, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B35*/ { 0x0178, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B36*/ { 0x0179, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B37*/ { 0x017A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B38*/ { 0x01FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B39*/ { 0x01FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B3A*/ { 0x01FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B3B*/ { 0x01FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B3C*/ { 0x01FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B3D*/ { 0x01FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B3E*/ { 0x0200, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B3F*/ { 0x004C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B40*/ { 0x004D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0B41*/ { 0x004E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD132PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B42*/ { 0x017B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B43*/ { 0x017C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B44*/ { 0x017D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B45*/ { 0x017E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B46*/ { 0x0201, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B47*/ { 0x0202, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B48*/ { 0x0203, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B49*/ { 0x0204, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B4A*/ { 0x0205, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B4B*/ { 0x0206, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B4C*/ { 0x0207, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B4D*/ { 0x004F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B4E*/ { 0x0050, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0B4F*/ { 0x0051, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x98, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD132SD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B50*/ { 0x017F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B51*/ { 0x0180, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B52*/ { 0x0208, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B53*/ { 0x0209, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B54*/ { 0x020A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD132SS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B55*/ { 0x0181, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B56*/ { 0x0182, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B57*/ { 0x020B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B58*/ { 0x020C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B59*/ { 0x020D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x99, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD213PD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B5A*/ { 0x0183, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B5B*/ { 0x0184, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B5C*/ { 0x0185, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B5D*/ { 0x0186, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B5E*/ { 0x020E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B5F*/ { 0x020F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B60*/ { 0x0210, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B61*/ { 0x0211, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B62*/ { 0x0212, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B63*/ { 0x0213, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B64*/ { 0x0214, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B65*/ { 0x0052, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B66*/ { 0x0053, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0B67*/ { 0x0054, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD213PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B68*/ { 0x0187, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B69*/ { 0x0188, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B6A*/ { 0x0189, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B6B*/ { 0x018A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B6C*/ { 0x0215, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B6D*/ { 0x0216, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B6E*/ { 0x0217, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B6F*/ { 0x0218, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B70*/ { 0x0219, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B71*/ { 0x021A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B72*/ { 0x021B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B73*/ { 0x0055, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B74*/ { 0x0056, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0B75*/ { 0x0057, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD213SD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B76*/ { 0x018B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B77*/ { 0x018C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B78*/ { 0x021C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B79*/ { 0x021D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B7A*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD213SS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B7B*/ { 0x018D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B7C*/ { 0x018E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B7D*/ { 0x021F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B7E*/ { 0x0220, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B7F*/ { 0x0221, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD231PD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B80*/ { 0x018F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B81*/ { 0x0190, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B82*/ { 0x0191, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B83*/ { 0x0192, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B84*/ { 0x0222, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B85*/ { 0x0223, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B86*/ { 0x0224, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B87*/ { 0x0225, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0B88*/ { 0x0226, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B89*/ { 0x0227, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0B8A*/ { 0x0228, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0B8B*/ { 0x0058, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B8C*/ { 0x0059, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0B8D*/ { 0x005A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD231PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B8E*/ { 0x0193, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B8F*/ { 0x0194, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B90*/ { 0x0195, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B91*/ { 0x0196, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B92*/ { 0x0229, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B93*/ { 0x022A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B94*/ { 0x022B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B95*/ { 0x022C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0B96*/ { 0x022D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B97*/ { 0x022E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0B98*/ { 0x022F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0B99*/ { 0x005B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0B9A*/ { 0x005C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0B9B*/ { 0x005D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB8, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD231SD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0B9C*/ { 0x0197, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B9D*/ { 0x0198, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B9E*/ { 0x0230, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0B9F*/ { 0x0231, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0BA0*/ { 0x0232, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD231SS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BA1*/ { 0x0199, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BA2*/ { 0x019A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BA3*/ { 0x0233, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BA4*/ { 0x0234, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0BA5*/ { 0x0235, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADD233PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BA6*/ { 0x005E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BA7*/ { 0x005F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0BA8*/ { 0x0060, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BA9*/ { 0x019B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BAA*/ { 0x019C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BAB*/ { 0x019D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BAC*/ { 0x019E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BAD*/ { 0x019F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BAE*/ { 0x01A0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BAF*/ { 0x01A1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BB0*/ { 0x01A2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BB1*/ { 0x01A3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BB2*/ { 0x01A4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BB3*/ { 0x01A5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BB4*/ { 0x01A6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BB5*/ { 0x01A7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BB6*/ { 0x01A8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BB7*/ { 0x01A9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BB8*/ { 0x01AA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BB9*/ { 0x01AB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BBA*/ { 0x01AC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BBB*/ { 0x01AD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BBC*/ { 0x01AE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BBD*/ { 0x01AF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BBE*/ { 0x01B0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BBF*/ { 0x01B1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BC0*/ { 0x01B2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUB132PD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BC1*/ { 0x01B3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BC2*/ { 0x01B4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BC3*/ { 0x01B5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BC4*/ { 0x01B6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BC5*/ { 0x0236, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BC6*/ { 0x0237, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BC7*/ { 0x0238, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BC8*/ { 0x0239, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BC9*/ { 0x023A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0BCA*/ { 0x023B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0BCB*/ { 0x023C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUB132PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BCC*/ { 0x01B7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BCD*/ { 0x01B8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BCE*/ { 0x01B9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BCF*/ { 0x01BA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BD0*/ { 0x023D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BD1*/ { 0x023E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BD2*/ { 0x023F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BD3*/ { 0x0240, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BD4*/ { 0x0241, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0BD5*/ { 0x0242, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0BD6*/ { 0x0243, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x96, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUB213PD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BD7*/ { 0x01BB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BD8*/ { 0x01BC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BD9*/ { 0x01BD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BDA*/ { 0x01BE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BDB*/ { 0x0244, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BDC*/ { 0x0245, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BDD*/ { 0x0246, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BDE*/ { 0x0247, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BDF*/ { 0x0248, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0BE0*/ { 0x0249, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0BE1*/ { 0x024A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUB213PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BE2*/ { 0x01BF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BE3*/ { 0x01C0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BE4*/ { 0x01C1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BE5*/ { 0x01C2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BE6*/ { 0x024B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BE7*/ { 0x024C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BE8*/ { 0x024D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BE9*/ { 0x024E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BEA*/ { 0x024F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0BEB*/ { 0x0250, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0BEC*/ { 0x0251, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUB231PD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BED*/ { 0x01C3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BEE*/ { 0x01C4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BEF*/ { 0x01C5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BF0*/ { 0x01C6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BF1*/ { 0x0252, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BF2*/ { 0x0253, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0BF3*/ { 0x0254, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BF4*/ { 0x0255, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0BF5*/ { 0x0256, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0BF6*/ { 0x0257, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0BF7*/ { 0x0258, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUB231PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0BF8*/ { 0x01C7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BF9*/ { 0x01C8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BFA*/ { 0x01C9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BFB*/ { 0x01CA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BFC*/ { 0x0259, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BFD*/ { 0x025A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0BFE*/ { 0x025B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0BFF*/ { 0x025C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C00*/ { 0x025D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C01*/ { 0x025E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C02*/ { 0x025F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUBPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C03*/ { 0x01CB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C04*/ { 0x01CC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C05*/ { 0x01CD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C06*/ { 0x01CE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C07*/ { 0x01CF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C08*/ { 0x01D0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C09*/ { 0x01D1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C0A*/ { 0x01D2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMADDSUBPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C0B*/ { 0x01D3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C0C*/ { 0x01D4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C0D*/ { 0x01D5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C0E*/ { 0x01D6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C0F*/ { 0x01D7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C10*/ { 0x01D8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C11*/ { 0x01D9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C12*/ { 0x01DA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB132PD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C13*/ { 0x01DB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C14*/ { 0x01DC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C15*/ { 0x01DD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C16*/ { 0x01DE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C17*/ { 0x0260, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C18*/ { 0x0261, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C19*/ { 0x0262, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C1A*/ { 0x0263, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C1B*/ { 0x0264, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C1C*/ { 0x0265, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C1D*/ { 0x0266, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C1E*/ { 0x0061, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C1F*/ { 0x0062, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0C20*/ { 0x0063, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB132PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C21*/ { 0x01DF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C22*/ { 0x01E0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C23*/ { 0x01E1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C24*/ { 0x01E2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C25*/ { 0x0267, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C26*/ { 0x0268, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C27*/ { 0x0269, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C28*/ { 0x026A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C29*/ { 0x026B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C2A*/ { 0x026C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C2B*/ { 0x026D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C2C*/ { 0x0064, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C2D*/ { 0x0065, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0C2E*/ { 0x0066, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB132SD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C2F*/ { 0x01E3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C30*/ { 0x01E4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C31*/ { 0x026E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C32*/ { 0x026F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C33*/ { 0x0270, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB132SS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C34*/ { 0x01E5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C35*/ { 0x01E6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C36*/ { 0x0271, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C37*/ { 0x0272, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C38*/ { 0x0273, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB213PD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C39*/ { 0x01E7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C3A*/ { 0x01E8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C3B*/ { 0x01E9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C3C*/ { 0x01EA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C3D*/ { 0x0274, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C3E*/ { 0x0275, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C3F*/ { 0x0276, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C40*/ { 0x0277, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C41*/ { 0x0278, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C42*/ { 0x0279, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C43*/ { 0x027A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C44*/ { 0x0067, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C45*/ { 0x0068, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0C46*/ { 0x0069, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB213PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C47*/ { 0x01EB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C48*/ { 0x01EC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C49*/ { 0x01ED, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C4A*/ { 0x01EE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C4B*/ { 0x027B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C4C*/ { 0x027C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C4D*/ { 0x027D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C4E*/ { 0x027E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C4F*/ { 0x027F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C50*/ { 0x0280, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C51*/ { 0x0281, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C52*/ { 0x006A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C53*/ { 0x006B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0C54*/ { 0x006C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB213SD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C55*/ { 0x01EF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C56*/ { 0x01F0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C57*/ { 0x0282, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C58*/ { 0x0283, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C59*/ { 0x0284, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB213SS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C5A*/ { 0x01F1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C5B*/ { 0x01F2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C5C*/ { 0x0285, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C5D*/ { 0x0286, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C5E*/ { 0x0287, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB231PD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C5F*/ { 0x01F3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C60*/ { 0x01F4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C61*/ { 0x01F5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C62*/ { 0x01F6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C63*/ { 0x0288, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C64*/ { 0x0289, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C65*/ { 0x028A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C66*/ { 0x028B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C67*/ { 0x028C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C68*/ { 0x028D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C69*/ { 0x028E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C6A*/ { 0x006D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C6B*/ { 0x006E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0C6C*/ { 0x006F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB231PS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C6D*/ { 0x01F7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C6E*/ { 0x01F8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C6F*/ { 0x01F9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C70*/ { 0x01FA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C71*/ { 0x028F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C72*/ { 0x0290, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C73*/ { 0x0291, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C74*/ { 0x0292, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C75*/ { 0x0293, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C76*/ { 0x0294, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C77*/ { 0x0295, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C78*/ { 0x0070, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C79*/ { 0x0071, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0C7A*/ { 0x0072, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB231SD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C7B*/ { 0x01FB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C7C*/ { 0x01FC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C7D*/ { 0x0296, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C7E*/ { 0x0297, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C7F*/ { 0x0298, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUB231SS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C80*/ { 0x01FD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C81*/ { 0x01FE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C82*/ { 0x0299, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C83*/ { 0x029A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C84*/ { 0x029B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADD132PD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C85*/ { 0x01FF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C86*/ { 0x0200, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C87*/ { 0x0201, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C88*/ { 0x0202, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C89*/ { 0x029C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C8A*/ { 0x029D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C8B*/ { 0x029E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C8C*/ { 0x029F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C8D*/ { 0x02A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0C8E*/ { 0x02A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0C8F*/ { 0x02A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADD132PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C90*/ { 0x0203, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C91*/ { 0x0204, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C92*/ { 0x0205, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C93*/ { 0x0206, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C94*/ { 0x02A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C95*/ { 0x02A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0C96*/ { 0x02A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C97*/ { 0x02A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0C98*/ { 0x02A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0C99*/ { 0x02A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0C9A*/ { 0x02A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x97, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADD213PD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0C9B*/ { 0x0207, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C9C*/ { 0x0208, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0C9D*/ { 0x0209, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C9E*/ { 0x020A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0C9F*/ { 0x02AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CA0*/ { 0x02AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CA1*/ { 0x02AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CA2*/ { 0x02AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CA3*/ { 0x02AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0CA4*/ { 0x02AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0CA5*/ { 0x02B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADD213PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CA6*/ { 0x020B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CA7*/ { 0x020C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CA8*/ { 0x020D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CA9*/ { 0x020E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CAA*/ { 0x02B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CAB*/ { 0x02B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CAC*/ { 0x02B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CAD*/ { 0x02B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CAE*/ { 0x02B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0CAF*/ { 0x02B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0CB0*/ { 0x02B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADD231PD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CB1*/ { 0x020F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CB2*/ { 0x0210, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CB3*/ { 0x0211, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CB4*/ { 0x0212, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CB5*/ { 0x02B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CB6*/ { 0x02B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CB7*/ { 0x02BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CB8*/ { 0x02BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CB9*/ { 0x02BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0CBA*/ { 0x02BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0CBB*/ { 0x02BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADD231PS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CBC*/ { 0x0213, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CBD*/ { 0x0214, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CBE*/ { 0x0215, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CBF*/ { 0x0216, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CC0*/ { 0x02BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CC1*/ { 0x02C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CC2*/ { 0x02C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CC3*/ { 0x02C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CC4*/ { 0x02C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0CC5*/ { 0x02C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0CC6*/ { 0x02C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADDPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CC7*/ { 0x0217, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CC8*/ { 0x0218, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CC9*/ { 0x0219, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CCA*/ { 0x021A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CCB*/ { 0x021B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CCC*/ { 0x021C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CCD*/ { 0x021D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CCE*/ { 0x021E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBADDPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CCF*/ { 0x021F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CD0*/ { 0x0220, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CD1*/ { 0x0221, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CD2*/ { 0x0222, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CD3*/ { 0x0223, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CD4*/ { 0x0224, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CD5*/ { 0x0225, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CD6*/ { 0x0226, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CD7*/ { 0x0227, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CD8*/ { 0x0228, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CD9*/ { 0x0229, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CDA*/ { 0x022A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CDB*/ { 0x022B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CDC*/ { 0x022C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CDD*/ { 0x022D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CDE*/ { 0x022E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CDF*/ { 0x022F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CE0*/ { 0x0230, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CE1*/ { 0x0231, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CE2*/ { 0x0232, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CE3*/ { 0x0233, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CE4*/ { 0x0234, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0CE5*/ { 0x0235, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CE6*/ { 0x0236, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBSD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CE7*/ { 0x0237, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CE8*/ { 0x0238, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CE9*/ { 0x0239, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CEA*/ { 0x023A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFMSUBSS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CEB*/ { 0x023B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CEC*/ { 0x023C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CED*/ { 0x023D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CEE*/ { 0x023E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD132PD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CEF*/ { 0x023F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CF0*/ { 0x0240, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CF1*/ { 0x0241, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CF2*/ { 0x0242, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CF3*/ { 0x02C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CF4*/ { 0x02C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CF5*/ { 0x02C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CF6*/ { 0x02C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0CF7*/ { 0x02CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0CF8*/ { 0x02CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0CF9*/ { 0x02CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0CFA*/ { 0x0073, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0CFB*/ { 0x0074, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0CFC*/ { 0x0075, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD132PS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0CFD*/ { 0x0243, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CFE*/ { 0x0244, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0CFF*/ { 0x0245, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D00*/ { 0x0246, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D01*/ { 0x02CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D02*/ { 0x02CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D03*/ { 0x02CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D04*/ { 0x02D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D05*/ { 0x02D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D06*/ { 0x02D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D07*/ { 0x02D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D08*/ { 0x0076, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D09*/ { 0x0077, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0D0A*/ { 0x0078, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD132SD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D0B*/ { 0x0247, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D0C*/ { 0x0248, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D0D*/ { 0x02D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D0E*/ { 0x02D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D0F*/ { 0x02D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD132SS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D10*/ { 0x0249, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D11*/ { 0x024A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D12*/ { 0x02D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D13*/ { 0x02D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D14*/ { 0x02D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD213PD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D15*/ { 0x024B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D16*/ { 0x024C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D17*/ { 0x024D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D18*/ { 0x024E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D19*/ { 0x02DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D1A*/ { 0x02DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D1B*/ { 0x02DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D1C*/ { 0x02DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D1D*/ { 0x02DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0D1E*/ { 0x02DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D1F*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0D20*/ { 0x0079, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D21*/ { 0x007A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0D22*/ { 0x007B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD213PS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D23*/ { 0x024F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D24*/ { 0x0250, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D25*/ { 0x0251, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D26*/ { 0x0252, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D27*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D28*/ { 0x02E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D29*/ { 0x02E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D2A*/ { 0x02E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D2B*/ { 0x02E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D2C*/ { 0x02E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D2D*/ { 0x02E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D2E*/ { 0x007C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D2F*/ { 0x007D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0D30*/ { 0x007E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD213SD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D31*/ { 0x0253, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D32*/ { 0x0254, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D33*/ { 0x02E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D34*/ { 0x02E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D35*/ { 0x02EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD213SS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D36*/ { 0x0255, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D37*/ { 0x0256, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D38*/ { 0x02EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D39*/ { 0x02EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D3A*/ { 0x02ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD231PD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D3B*/ { 0x0257, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D3C*/ { 0x0258, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D3D*/ { 0x0259, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D3E*/ { 0x025A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D3F*/ { 0x02EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D40*/ { 0x02EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D41*/ { 0x02F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D42*/ { 0x02F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D43*/ { 0x02F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0D44*/ { 0x02F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D45*/ { 0x02F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0D46*/ { 0x007F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D47*/ { 0x0080, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0D48*/ { 0x0081, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD231PS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D49*/ { 0x025B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D4A*/ { 0x025C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D4B*/ { 0x025D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D4C*/ { 0x025E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D4D*/ { 0x02F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D4E*/ { 0x02F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D4F*/ { 0x02F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D50*/ { 0x02F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D51*/ { 0x02F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D52*/ { 0x02FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D53*/ { 0x02FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D54*/ { 0x0082, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D55*/ { 0x0083, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0D56*/ { 0x0084, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD231SD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D57*/ { 0x025F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D58*/ { 0x0260, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D59*/ { 0x02FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D5A*/ { 0x02FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D5B*/ { 0x02FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADD231SS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D5C*/ { 0x0261, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D5D*/ { 0x0262, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D5E*/ { 0x02FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D5F*/ { 0x0300, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D60*/ { 0x0301, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADDPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D61*/ { 0x0263, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D62*/ { 0x0264, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D63*/ { 0x0265, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D64*/ { 0x0266, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D65*/ { 0x0267, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D66*/ { 0x0268, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D67*/ { 0x0269, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D68*/ { 0x026A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADDPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D69*/ { 0x026B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D6A*/ { 0x026C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D6B*/ { 0x026D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D6C*/ { 0x026E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D6D*/ { 0x026F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D6E*/ { 0x0270, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D6F*/ { 0x0271, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D70*/ { 0x0272, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADDSD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D71*/ { 0x0273, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D72*/ { 0x0274, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D73*/ { 0x0275, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D74*/ { 0x0276, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMADDSS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D75*/ { 0x0277, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D76*/ { 0x0278, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D77*/ { 0x0279, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D78*/ { 0x027A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB132PD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D79*/ { 0x027B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D7A*/ { 0x027C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D7B*/ { 0x027D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D7C*/ { 0x027E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D7D*/ { 0x0302, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D7E*/ { 0x0303, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D7F*/ { 0x0304, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D80*/ { 0x0305, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0D81*/ { 0x0306, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0D82*/ { 0x0307, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D83*/ { 0x0308, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0D84*/ { 0x0085, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D85*/ { 0x0086, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0D86*/ { 0x0087, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB132PS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D87*/ { 0x027F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D88*/ { 0x0280, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D89*/ { 0x0281, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D8A*/ { 0x0282, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D8B*/ { 0x0309, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D8C*/ { 0x030A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D8D*/ { 0x030B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D8E*/ { 0x030C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0D8F*/ { 0x030D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D90*/ { 0x030E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D91*/ { 0x030F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0D92*/ { 0x0088, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D93*/ { 0x0089, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0D94*/ { 0x008A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x9E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB132SD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D95*/ { 0x0283, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D96*/ { 0x0284, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D97*/ { 0x0310, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0D98*/ { 0x0311, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0D99*/ { 0x0312, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB132SS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D9A*/ { 0x0285, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D9B*/ { 0x0286, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D9C*/ { 0x0313, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0D9D*/ { 0x0314, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0D9E*/ { 0x0315, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x9F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB213PD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0D9F*/ { 0x0287, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DA0*/ { 0x0288, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DA1*/ { 0x0289, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DA2*/ { 0x028A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DA3*/ { 0x0316, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DA4*/ { 0x0317, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DA5*/ { 0x0318, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DA6*/ { 0x0319, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DA7*/ { 0x031A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0DA8*/ { 0x031B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0DA9*/ { 0x031C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0DAA*/ { 0x008B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DAB*/ { 0x008C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0DAC*/ { 0x008D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB213PS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DAD*/ { 0x028B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DAE*/ { 0x028C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DAF*/ { 0x028D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DB0*/ { 0x028E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DB1*/ { 0x031D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DB2*/ { 0x031E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DB3*/ { 0x031F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DB4*/ { 0x0320, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DB5*/ { 0x0321, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0DB6*/ { 0x0322, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0DB7*/ { 0x0323, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0DB8*/ { 0x008E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DB9*/ { 0x008F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0DBA*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xAE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB213SD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DBB*/ { 0x028F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DBC*/ { 0x0290, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DBD*/ { 0x0324, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DBE*/ { 0x0325, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0DBF*/ { 0x0326, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB213SS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DC0*/ { 0x0291, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DC1*/ { 0x0292, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DC2*/ { 0x0327, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DC3*/ { 0x0328, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0DC4*/ { 0x0329, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xAF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB231PD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DC5*/ { 0x0293, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DC6*/ { 0x0294, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DC7*/ { 0x0295, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DC8*/ { 0x0296, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DC9*/ { 0x032A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DCA*/ { 0x032B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DCB*/ { 0x032C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DCC*/ { 0x032D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DCD*/ { 0x032E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0DCE*/ { 0x032F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0DCF*/ { 0x0330, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0DD0*/ { 0x0091, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DD1*/ { 0x0092, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0DD2*/ { 0x0093, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB231PS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DD3*/ { 0x0297, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DD4*/ { 0x0298, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DD5*/ { 0x0299, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DD6*/ { 0x029A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DD7*/ { 0x0331, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DD8*/ { 0x0332, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DD9*/ { 0x0333, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DDA*/ { 0x0334, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DDB*/ { 0x0335, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0DDC*/ { 0x0336, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0DDD*/ { 0x0337, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0DDE*/ { 0x0094, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DDF*/ { 0x0095, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0DE0*/ { 0x0096, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xBE, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB231SD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DE1*/ { 0x029B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DE2*/ { 0x029C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DE3*/ { 0x0338, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DE4*/ { 0x0339, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0DE5*/ { 0x033A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUB231SS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DE6*/ { 0x029D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DE7*/ { 0x029E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DE8*/ { 0x033B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DE9*/ { 0x033C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0DEA*/ { 0x033D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xBF, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUBPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DEB*/ { 0x029F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DEC*/ { 0x02A0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DED*/ { 0x02A1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DEE*/ { 0x02A2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DEF*/ { 0x02A3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DF0*/ { 0x02A4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DF1*/ { 0x02A5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DF2*/ { 0x02A6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUBPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DF3*/ { 0x02A7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DF4*/ { 0x02A8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DF5*/ { 0x02A9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DF6*/ { 0x02AA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DF7*/ { 0x02AB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DF8*/ { 0x02AC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0DF9*/ { 0x02AD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0DFA*/ { 0x02AE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUBSD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DFB*/ { 0x02AF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DFC*/ { 0x02B0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0DFD*/ { 0x02B1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0DFE*/ { 0x02B2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFNMSUBSS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0DFF*/ { 0x02B3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E00*/ { 0x02B4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E01*/ { 0x02B5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E02*/ { 0x02B6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFPCLASSPD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E03*/ { 0x033E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E04*/ { 0x033F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E05*/ { 0x0340, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E06*/ { 0x0341, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E07*/ { 0x0342, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E08*/ { 0x0343, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFPCLASSPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E09*/ { 0x0344, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E0A*/ { 0x0345, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E0B*/ { 0x0346, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E0C*/ { 0x0347, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E0D*/ { 0x0348, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E0E*/ { 0x0349, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFPCLASSSD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E0F*/ { 0x034A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E10*/ { 0x034B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFPCLASSSS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E11*/ { 0x034C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E12*/ { 0x034D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFRCZPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E13*/ { 0x002E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x81, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E14*/ { 0x002F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x81, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E15*/ { 0x0030, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x81, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E16*/ { 0x0031, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x81, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFRCZPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E17*/ { 0x0032, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x80, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E18*/ { 0x0033, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x80, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E19*/ { 0x0034, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x80, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E1A*/ { 0x0035, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x80, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFRCZSD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E1B*/ { 0x0036, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x83, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E1C*/ { 0x0037, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x83, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VFRCZSS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E1D*/ { 0x0038, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x82, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E1E*/ { 0x0039, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x82, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERDPD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E1F*/ { 0x02B7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E20*/ { 0x02B8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E21*/ { 0x034E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E22*/ { 0x034F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E23*/ { 0x0350, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E24*/ { 0x0097, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERDPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E25*/ { 0x02B9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E26*/ { 0x02BA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E27*/ { 0x0351, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E28*/ { 0x0352, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E29*/ { 0x0353, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E2A*/ { 0x0098, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x92, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF0DPD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E2B*/ { 0x0354, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF0DPS                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E2C*/ { 0x0355, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E2D*/ { 0x0099, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF0HINTDPD                                                                          */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E2E*/ { 0x009A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF0HINTDPS                                                                          */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E2F*/ { 0x009B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF0QPD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E30*/ { 0x0356, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF0QPS                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E31*/ { 0x0357, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF1DPD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E32*/ { 0x0358, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF1DPS                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E33*/ { 0x0359, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E34*/ { 0x009C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF1QPD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E35*/ { 0x035A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERPF1QPS                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E36*/ { 0x035B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERQPD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E37*/ { 0x02BB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E38*/ { 0x02BC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E39*/ { 0x035C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E3A*/ { 0x035D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E3B*/ { 0x035E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGATHERQPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E3C*/ { 0x02BD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E3D*/ { 0x02BE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E3E*/ { 0x035F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E3F*/ { 0x0360, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E40*/ { 0x0361, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x93, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETEXPPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E41*/ { 0x0362, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E42*/ { 0x0363, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E43*/ { 0x0364, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E44*/ { 0x0365, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E45*/ { 0x0366, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E46*/ { 0x0367, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0E47*/ { 0x0368, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E48*/ { 0x009D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E49*/ { 0x009E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0E4A*/ { 0x009F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETEXPPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E4B*/ { 0x0369, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E4C*/ { 0x036A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E4D*/ { 0x036B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E4E*/ { 0x036C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E4F*/ { 0x036D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E50*/ { 0x036E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0E51*/ { 0x036F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E52*/ { 0x00A0, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E53*/ { 0x00A1, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0E54*/ { 0x00A2, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x42, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETEXPSD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E55*/ { 0x0370, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E56*/ { 0x0371, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0E57*/ { 0x0372, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETEXPSS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E58*/ { 0x0373, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E59*/ { 0x0374, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0E5A*/ { 0x0375, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETMANTPD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E5B*/ { 0x0376, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E5C*/ { 0x0377, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E5D*/ { 0x0378, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E5E*/ { 0x0379, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E5F*/ { 0x037A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E60*/ { 0x037B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0E61*/ { 0x037C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E62*/ { 0x00A3, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E63*/ { 0x00A4, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /*0E64*/ { 0x00A5, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETMANTPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E65*/ { 0x037D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E66*/ { 0x037E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E67*/ { 0x037F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E68*/ { 0x0380, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E69*/ { 0x0381, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E6A*/ { 0x0382, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0E6B*/ { 0x0383, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E6C*/ { 0x00A6, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E6D*/ { 0x00A7, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*0E6E*/ { 0x00A8, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x26, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETMANTSD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E6F*/ { 0x0384, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E70*/ { 0x0385, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0E71*/ { 0x0386, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGETMANTSS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E72*/ { 0x0387, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E73*/ { 0x0388, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0E74*/ { 0x0389, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGMAXABSPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E75*/ { 0x00A9, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x51, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E76*/ { 0x00AA, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x51, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0E77*/ { 0x00AB, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x51, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGMAXPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E78*/ { 0x00AC, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E79*/ { 0x00AD, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0E7A*/ { 0x00AE, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGMAXPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E7B*/ { 0x00AF, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E7C*/ { 0x00B0, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0E7D*/ { 0x00B1, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGMINPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E7E*/ { 0x00B2, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0E7F*/ { 0x00B3, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0E80*/ { 0x00B4, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VGMINPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E81*/ { 0x00B5, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E82*/ { 0x00B6, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0E83*/ { 0x00B7, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VHADDPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E84*/ { 0x02BF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E85*/ { 0x02C0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E86*/ { 0x02C1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E87*/ { 0x02C2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VHADDPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E88*/ { 0x02C3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E89*/ { 0x02C4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E8A*/ { 0x02C5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E8B*/ { 0x02C6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VHSUBPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E8C*/ { 0x02C7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E8D*/ { 0x02C8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E8E*/ { 0x02C9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E8F*/ { 0x02CA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VHSUBPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E90*/ { 0x02CB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E91*/ { 0x02CC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0E92*/ { 0x02CD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E93*/ { 0x02CE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTF128                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E94*/ { 0x02CF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E95*/ { 0x02D0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTF32X4                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E96*/ { 0x038A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E97*/ { 0x038B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0E98*/ { 0x038C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E99*/ { 0x038D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTF32X8                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E9A*/ { 0x038E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0E9B*/ { 0x038F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTF64X2                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0E9C*/ { 0x0390, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E9D*/ { 0x0391, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0E9E*/ { 0x0392, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0E9F*/ { 0x0393, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x18, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTF64X4                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EA0*/ { 0x0394, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0EA1*/ { 0x0395, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTI128                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EA2*/ { 0x02D1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EA3*/ { 0x02D2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTI32X4                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EA4*/ { 0x0396, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EA5*/ { 0x0397, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EA6*/ { 0x0398, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0EA7*/ { 0x0399, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTI32X8                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EA8*/ { 0x039A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0EA9*/ { 0x039B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTI64X2                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EAA*/ { 0x039C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0EAB*/ { 0x039D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0EAC*/ { 0x039E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0EAD*/ { 0x039F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTI64X4                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EAE*/ { 0x03A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0EAF*/ { 0x03A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VINSERTPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EB0*/ { 0x02D3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x21, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EB1*/ { 0x02D4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x21, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EB2*/ { 0x03A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EB3*/ { 0x03A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLDDQU                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EB4*/ { 0x02D5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EB5*/ { 0x02D6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLDMXCSR                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EB6*/ { 0x02D7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKHD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EB7*/ { 0x00B8, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKHPD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EB8*/ { 0x00B9, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKHPS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EB9*/ { 0x00BA, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKHQ                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EBA*/ { 0x00BB, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKLD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EBB*/ { 0x00BC, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKLPD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EBC*/ { 0x00BD, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKLPS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EBD*/ { 0x00BE, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOADUNPACKLQ                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EBE*/ { 0x00BF, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VLOG2PS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EBF*/ { 0x00C0, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EC0*/ { 0x00C1, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*0EC1*/ { 0x00C2, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC9, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMASKMOVDQU                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EC2*/ { 0x02D8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMASKMOVPD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EC3*/ { 0x02D9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EC4*/ { 0x02DA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EC5*/ { 0x02DB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EC6*/ { 0x02DC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMASKMOVPS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EC7*/ { 0x02DD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EC8*/ { 0x02DE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EC9*/ { 0x02DF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ECA*/ { 0x02E0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMAXPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0ECB*/ { 0x02E1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ECC*/ { 0x02E2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ECD*/ { 0x02E3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ECE*/ { 0x02E4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ECF*/ { 0x03A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0ED0*/ { 0x03A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0ED1*/ { 0x03A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0ED2*/ { 0x03A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0ED3*/ { 0x03A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0ED4*/ { 0x03A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0ED5*/ { 0x03AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMAXPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0ED6*/ { 0x02E5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ED7*/ { 0x02E6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0ED8*/ { 0x02E7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0ED9*/ { 0x02E8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EDA*/ { 0x03AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EDB*/ { 0x03AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EDC*/ { 0x03AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EDD*/ { 0x03AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EDE*/ { 0x03AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0EDF*/ { 0x03B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0EE0*/ { 0x03B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMAXSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EE1*/ { 0x02E9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EE2*/ { 0x02EA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EE3*/ { 0x03B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0EE4*/ { 0x03B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0EE5*/ { 0x03B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMAXSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EE6*/ { 0x02EB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EE7*/ { 0x02EC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EE8*/ { 0x03B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EE9*/ { 0x03B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0EEA*/ { 0x03B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMCALL                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EEB*/ { 0x06E4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMCLEAR                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EEC*/ { 0x06E5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMFUNC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EED*/ { 0x06E6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMINPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EEE*/ { 0x02ED, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EEF*/ { 0x02EE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EF0*/ { 0x02EF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EF1*/ { 0x02F0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EF2*/ { 0x03B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0EF3*/ { 0x03B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0EF4*/ { 0x03BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0EF5*/ { 0x03BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0EF6*/ { 0x03BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0EF7*/ { 0x03BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0EF8*/ { 0x03BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMINPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0EF9*/ { 0x02F1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EFA*/ { 0x02F2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EFB*/ { 0x02F3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EFC*/ { 0x02F4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0EFD*/ { 0x03BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EFE*/ { 0x03C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0EFF*/ { 0x03C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F00*/ { 0x03C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F01*/ { 0x03C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F02*/ { 0x03C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0F03*/ { 0x03C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMINSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F04*/ { 0x02F5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F05*/ { 0x02F6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F06*/ { 0x03C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F07*/ { 0x03C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*0F08*/ { 0x03C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMINSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F09*/ { 0x02F7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F0A*/ { 0x02F8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F0B*/ { 0x03C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F0C*/ { 0x03CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*0F0D*/ { 0x03CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMLAUNCH                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F0E*/ { 0x06E7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMLOAD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F0F*/ { 0x06E8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMMCALL                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F10*/ { 0x06E9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVAPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F11*/ { 0x02F9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F12*/ { 0x02FA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F13*/ { 0x02FB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F14*/ { 0x02FC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F15*/ { 0x02FD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F16*/ { 0x02FE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F17*/ { 0x02FF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F18*/ { 0x0300, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F19*/ { 0x03CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F1A*/ { 0x03CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F1B*/ { 0x03CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F1C*/ { 0x03CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F1D*/ { 0x03D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F1E*/ { 0x03D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F1F*/ { 0x03D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F20*/ { 0x03D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F21*/ { 0x03D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F22*/ { 0x03D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F23*/ { 0x03D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F24*/ { 0x03D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F25*/ { 0x00C3, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F26*/ { 0x00C4, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0F27*/ { 0x00C5, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /*0F28*/ { 0x00C6, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVAPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F29*/ { 0x0301, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F2A*/ { 0x0302, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F2B*/ { 0x0303, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F2C*/ { 0x0304, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F2D*/ { 0x0305, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F2E*/ { 0x0306, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F2F*/ { 0x0307, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F30*/ { 0x0308, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F31*/ { 0x03D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F32*/ { 0x03D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F33*/ { 0x03DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F34*/ { 0x03DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F35*/ { 0x03DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F36*/ { 0x03DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F37*/ { 0x03DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F38*/ { 0x03DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F39*/ { 0x03E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F3A*/ { 0x03E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F3B*/ { 0x03E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F3C*/ { 0x03E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F3D*/ { 0x00C7, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F3E*/ { 0x00C8, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0F3F*/ { 0x00C9, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x28, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*0F40*/ { 0x00CA, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F41*/ { 0x0309, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F42*/ { 0x030A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F43*/ { 0x030B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F44*/ { 0x030C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F45*/ { 0x030D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F46*/ { 0x030E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F47*/ { 0x030F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F48*/ { 0x0310, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F49*/ { 0x03E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F4A*/ { 0x03E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F4B*/ { 0x03E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F4C*/ { 0x03E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDDUP                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F4D*/ { 0x0311, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F4E*/ { 0x0312, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F4F*/ { 0x0313, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F50*/ { 0x0314, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F51*/ { 0x03E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F52*/ { 0x03E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F53*/ { 0x03EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F54*/ { 0x03EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F55*/ { 0x03EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F56*/ { 0x03ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQA                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F57*/ { 0x0315, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F58*/ { 0x0316, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F59*/ { 0x0317, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F5A*/ { 0x0318, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F5B*/ { 0x0319, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F5C*/ { 0x031A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F5D*/ { 0x031B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F5E*/ { 0x031C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQA32                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F5F*/ { 0x03EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F60*/ { 0x03EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F61*/ { 0x03F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F62*/ { 0x03F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F63*/ { 0x03F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F64*/ { 0x03F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F65*/ { 0x03F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F66*/ { 0x03F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F67*/ { 0x03F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F68*/ { 0x03F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F69*/ { 0x03F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F6A*/ { 0x03F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F6B*/ { 0x00CB, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F6C*/ { 0x00CC, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*0F6D*/ { 0x00CD, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*0F6E*/ { 0x00CE, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQA64                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F6F*/ { 0x03FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F70*/ { 0x03FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F71*/ { 0x03FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F72*/ { 0x03FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F73*/ { 0x03FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F74*/ { 0x03FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F75*/ { 0x0400, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F76*/ { 0x0401, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F77*/ { 0x0402, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F78*/ { 0x0403, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F79*/ { 0x0404, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F7A*/ { 0x0405, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F7B*/ { 0x00CF, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F7C*/ { 0x00D0, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*0F7D*/ { 0x00D1, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /*0F7E*/ { 0x00D2, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQU                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F7F*/ { 0x031D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F80*/ { 0x031E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F81*/ { 0x031F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F82*/ { 0x0320, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F83*/ { 0x0321, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F84*/ { 0x0322, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F85*/ { 0x0323, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F86*/ { 0x0324, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQU16                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F87*/ { 0x0406, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F88*/ { 0x0407, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F89*/ { 0x0408, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F8A*/ { 0x0409, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F8B*/ { 0x040A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F8C*/ { 0x040B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F8D*/ { 0x040C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F8E*/ { 0x040D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0F8F*/ { 0x040E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F90*/ { 0x040F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0F91*/ { 0x0410, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0F92*/ { 0x0411, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQU32                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F93*/ { 0x0412, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F94*/ { 0x0413, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F95*/ { 0x0414, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F96*/ { 0x0415, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F97*/ { 0x0416, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F98*/ { 0x0417, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F99*/ { 0x0418, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F9A*/ { 0x0419, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0F9B*/ { 0x041A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F9C*/ { 0x041B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0F9D*/ { 0x041C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0F9E*/ { 0x041D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQU64                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0F9F*/ { 0x041E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FA0*/ { 0x041F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FA1*/ { 0x0420, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0FA2*/ { 0x0421, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0FA3*/ { 0x0422, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0FA4*/ { 0x0423, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0FA5*/ { 0x0424, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FA6*/ { 0x0425, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FA7*/ { 0x0426, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0FA8*/ { 0x0427, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0FA9*/ { 0x0428, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*0FAA*/ { 0x0429, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVDQU8                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FAB*/ { 0x042A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FAC*/ { 0x042B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FAD*/ { 0x042C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FAE*/ { 0x042D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FAF*/ { 0x042E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0FB0*/ { 0x042F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0FB1*/ { 0x0430, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FB2*/ { 0x0431, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FB3*/ { 0x0432, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FB4*/ { 0x0433, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FB5*/ { 0x0434, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*0FB6*/ { 0x0435, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVHLPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FB7*/ { 0x0325, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FB8*/ { 0x0436, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVHPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FB9*/ { 0x0326, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FBA*/ { 0x0327, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FBB*/ { 0x0437, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FBC*/ { 0x0438, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x17, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVHPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FBD*/ { 0x0328, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FBE*/ { 0x0329, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FBF*/ { 0x0439, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FC0*/ { 0x043A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x17, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVLHPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FC1*/ { 0x032A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FC2*/ { 0x043B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVLPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FC3*/ { 0x032B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FC4*/ { 0x032C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x13, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FC5*/ { 0x043C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FC6*/ { 0x043D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVLPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FC7*/ { 0x032D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FC8*/ { 0x032E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x13, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FC9*/ { 0x043E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FCA*/ { 0x043F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVMSKPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FCB*/ { 0x032F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x50, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FCC*/ { 0x0330, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x50, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVMSKPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FCD*/ { 0x0331, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x50, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FCE*/ { 0x0332, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x50, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNRAPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FCF*/ { 0x00D3, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNRAPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FD0*/ { 0x00D4, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNRNGOAPD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FD1*/ { 0x00D5, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNRNGOAPS                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FD2*/ { 0x00D6, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x29, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNTDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FD3*/ { 0x0333, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FD4*/ { 0x0334, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FD5*/ { 0x0440, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FD6*/ { 0x0441, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FD7*/ { 0x0442, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNTDQA                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FD8*/ { 0x0335, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FD9*/ { 0x0336, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FDA*/ { 0x0443, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FDB*/ { 0x0444, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FDC*/ { 0x0445, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNTPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FDD*/ { 0x0337, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FDE*/ { 0x0338, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FDF*/ { 0x0446, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FE0*/ { 0x0447, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*0FE1*/ { 0x0448, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVNTPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FE2*/ { 0x0339, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FE3*/ { 0x033A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FE4*/ { 0x0449, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FE5*/ { 0x044A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*0FE6*/ { 0x044B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FE7*/ { 0x033B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FE8*/ { 0x033C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FE9*/ { 0x033D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FEA*/ { 0x033E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FEB*/ { 0x033F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FEC*/ { 0x0340, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FED*/ { 0x0341, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FEE*/ { 0x0342, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FEF*/ { 0x044C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF0*/ { 0x044D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF1*/ { 0x044E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF2*/ { 0x044F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF3*/ { 0x0450, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF4*/ { 0x0451, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF5*/ { 0x0452, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FF6*/ { 0x0453, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FF7*/ { 0x0343, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FF8*/ { 0x0344, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FF9*/ { 0x0345, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FFA*/ { 0x0346, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*0FFB*/ { 0x0454, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FFC*/ { 0x0455, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FFD*/ { 0x0456, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*0FFE*/ { 0x0457, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVSHDUP                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*0FFF*/ { 0x0347, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1000*/ { 0x0348, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1001*/ { 0x0349, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1002*/ { 0x034A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1003*/ { 0x0458, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1004*/ { 0x0459, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1005*/ { 0x045A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1006*/ { 0x045B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1007*/ { 0x045C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1008*/ { 0x045D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVSLDUP                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1009*/ { 0x034B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*100A*/ { 0x034C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*100B*/ { 0x034D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*100C*/ { 0x034E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*100D*/ { 0x045E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*100E*/ { 0x045F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*100F*/ { 0x0460, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1010*/ { 0x0461, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1011*/ { 0x0462, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1012*/ { 0x0463, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1013*/ { 0x034F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1014*/ { 0x0350, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1015*/ { 0x0351, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1016*/ { 0x0352, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1017*/ { 0x0464, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1018*/ { 0x0465, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1019*/ { 0x0466, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*101A*/ { 0x0467, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVUPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*101B*/ { 0x0353, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*101C*/ { 0x0354, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*101D*/ { 0x0355, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*101E*/ { 0x0356, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*101F*/ { 0x0357, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1020*/ { 0x0358, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1021*/ { 0x0359, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1022*/ { 0x035A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1023*/ { 0x0468, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1024*/ { 0x0469, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1025*/ { 0x046A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1026*/ { 0x046B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1027*/ { 0x046C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1028*/ { 0x046D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1029*/ { 0x046E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*102A*/ { 0x046F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*102B*/ { 0x0470, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*102C*/ { 0x0471, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*102D*/ { 0x0472, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*102E*/ { 0x0473, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMOVUPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*102F*/ { 0x035B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1030*/ { 0x035C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1031*/ { 0x035D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1032*/ { 0x035E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1033*/ { 0x035F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1034*/ { 0x0360, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1035*/ { 0x0361, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1036*/ { 0x0362, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1037*/ { 0x0474, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1038*/ { 0x0475, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1039*/ { 0x0476, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*103A*/ { 0x0477, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*103B*/ { 0x0478, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*103C*/ { 0x0479, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*103D*/ { 0x047A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*103E*/ { 0x047B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*103F*/ { 0x047C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1040*/ { 0x047D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1041*/ { 0x047E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1042*/ { 0x047F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMPSADBW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1043*/ { 0x0363, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1044*/ { 0x0364, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1045*/ { 0x0365, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1046*/ { 0x0366, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x42, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMPTRLD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1047*/ { 0x06EA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMPTRST                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1048*/ { 0x06EB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMREAD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1049*/ { 0x06EC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*104A*/ { 0x06ED, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x78, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*104B*/ { 0x06EE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x78, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*104C*/ { 0x06EF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x78, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMRESUME                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*104D*/ { 0x06F0, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMRUN                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*104E*/ { 0x06F1, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMSAVE                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*104F*/ { 0x06F2, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_TRUE , 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMULPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1050*/ { 0x0367, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1051*/ { 0x0368, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1052*/ { 0x0369, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1053*/ { 0x036A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1054*/ { 0x0480, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1055*/ { 0x0481, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1056*/ { 0x0482, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1057*/ { 0x0483, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1058*/ { 0x0484, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1059*/ { 0x0485, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*105A*/ { 0x0486, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*105B*/ { 0x00D7, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*105C*/ { 0x00D8, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*105D*/ { 0x00D9, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMULPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*105E*/ { 0x036B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*105F*/ { 0x036C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1060*/ { 0x036D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1061*/ { 0x036E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1062*/ { 0x0487, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1063*/ { 0x0488, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1064*/ { 0x0489, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1065*/ { 0x048A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1066*/ { 0x048B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1067*/ { 0x048C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1068*/ { 0x048D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1069*/ { 0x00DA, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*106A*/ { 0x00DB, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*106B*/ { 0x00DC, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMULSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*106C*/ { 0x036F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*106D*/ { 0x0370, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*106E*/ { 0x048E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*106F*/ { 0x048F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1070*/ { 0x0490, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMULSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1071*/ { 0x0371, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1072*/ { 0x0372, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1073*/ { 0x0491, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1074*/ { 0x0492, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1075*/ { 0x0493, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMWRITE                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1076*/ { 0x06F3, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1077*/ { 0x06F4, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x79, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1078*/ { 0x06F5, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x79, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1079*/ { 0x06F6, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x79, ZYDIS_OPCODE_MAP_0F     , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMXOFF                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*107A*/ { 0x06F7, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_TRUE , 0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VMXON                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*107B*/ { 0x06F8, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VORPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*107C*/ { 0x0373, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*107D*/ { 0x0374, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*107E*/ { 0x0375, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*107F*/ { 0x0376, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1080*/ { 0x0494, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1081*/ { 0x0495, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1082*/ { 0x0496, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1083*/ { 0x0497, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1084*/ { 0x0498, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1085*/ { 0x0499, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VORPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1086*/ { 0x0377, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1087*/ { 0x0378, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1088*/ { 0x0379, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1089*/ { 0x037A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*108A*/ { 0x049A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*108B*/ { 0x049B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*108C*/ { 0x049C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*108D*/ { 0x049D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*108E*/ { 0x049E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*108F*/ { 0x049F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VP4DPWSSD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1090*/ { 0x04A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1091*/ { 0x04A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x52, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VP4DPWSSDS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1092*/ { 0x04A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1093*/ { 0x04A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x53, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPABSB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1094*/ { 0x037B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1095*/ { 0x037C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1096*/ { 0x037D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1097*/ { 0x037E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1098*/ { 0x04A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1099*/ { 0x04A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*109A*/ { 0x04A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*109B*/ { 0x04A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*109C*/ { 0x04A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*109D*/ { 0x04A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPABSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*109E*/ { 0x037F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*109F*/ { 0x0380, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10A0*/ { 0x0381, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10A1*/ { 0x0382, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10A2*/ { 0x04AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10A3*/ { 0x04AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10A4*/ { 0x04AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10A5*/ { 0x04AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10A6*/ { 0x04AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10A7*/ { 0x04AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPABSQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*10A8*/ { 0x04B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*10A9*/ { 0x04B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*10AA*/ { 0x04B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*10AB*/ { 0x04B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*10AC*/ { 0x04B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*10AD*/ { 0x04B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPABSW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*10AE*/ { 0x0383, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10AF*/ { 0x0384, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10B0*/ { 0x0385, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10B1*/ { 0x0386, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10B2*/ { 0x04B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10B3*/ { 0x04B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10B4*/ { 0x04B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10B5*/ { 0x04B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10B6*/ { 0x04BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10B7*/ { 0x04BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSSDW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*10B8*/ { 0x0387, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10B9*/ { 0x0388, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10BA*/ { 0x0389, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10BB*/ { 0x038A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10BC*/ { 0x04BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10BD*/ { 0x04BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10BE*/ { 0x04BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10BF*/ { 0x04BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10C0*/ { 0x04C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10C1*/ { 0x04C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6B, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSSWB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*10C2*/ { 0x038B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10C3*/ { 0x038C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10C4*/ { 0x038D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10C5*/ { 0x038E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10C6*/ { 0x04C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10C7*/ { 0x04C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10C8*/ { 0x04C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10C9*/ { 0x04C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10CA*/ { 0x04C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10CB*/ { 0x04C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x63, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTOREHD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*10CC*/ { 0x00DD, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTOREHPD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*10CD*/ { 0x00DE, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTOREHPS                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*10CE*/ { 0x00DF, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTOREHQ                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*10CF*/ { 0x00E0, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTORELD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*10D0*/ { 0x00E1, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTORELPD                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*10D1*/ { 0x00E2, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTORELPS                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*10D2*/ { 0x00E3, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKSTORELQ                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*10D3*/ { 0x00E4, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xD0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKUSDW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*10D4*/ { 0x038F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10D5*/ { 0x0390, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10D6*/ { 0x0391, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10D7*/ { 0x0392, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10D8*/ { 0x04C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10D9*/ { 0x04C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10DA*/ { 0x04CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10DB*/ { 0x04CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10DC*/ { 0x04CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10DD*/ { 0x04CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPACKUSWB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*10DE*/ { 0x0393, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10DF*/ { 0x0394, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10E0*/ { 0x0395, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10E1*/ { 0x0396, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10E2*/ { 0x04CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10E3*/ { 0x04CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10E4*/ { 0x04D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10E5*/ { 0x04D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10E6*/ { 0x04D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10E7*/ { 0x04D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x67, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADCD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*10E8*/ { 0x00E5, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10E9*/ { 0x00E6, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*10EA*/ { 0x00E7, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*10EB*/ { 0x0397, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10EC*/ { 0x0398, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10ED*/ { 0x0399, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10EE*/ { 0x039A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10EF*/ { 0x04D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10F0*/ { 0x04D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10F1*/ { 0x04D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10F2*/ { 0x04D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10F3*/ { 0x04D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10F4*/ { 0x04D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*10F5*/ { 0x039B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10F6*/ { 0x039C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10F7*/ { 0x039D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10F8*/ { 0x039E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10F9*/ { 0x04DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10FA*/ { 0x04DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*10FB*/ { 0x04DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10FC*/ { 0x04DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*10FD*/ { 0x04DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10FE*/ { 0x04DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*10FF*/ { 0x00E8, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1100*/ { 0x00E9, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1101*/ { 0x00EA, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xFE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1102*/ { 0x039F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1103*/ { 0x03A0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1104*/ { 0x03A1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1105*/ { 0x03A2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1106*/ { 0x04E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1107*/ { 0x04E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1108*/ { 0x04E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1109*/ { 0x04E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*110A*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*110B*/ { 0x04E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*110C*/ { 0x03A3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*110D*/ { 0x03A4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*110E*/ { 0x03A5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*110F*/ { 0x03A6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1110*/ { 0x04E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1111*/ { 0x04E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1112*/ { 0x04E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1113*/ { 0x04E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1114*/ { 0x04EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1115*/ { 0x04EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDSETCD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1116*/ { 0x00EB, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1117*/ { 0x00EC, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1118*/ { 0x00ED, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDSETSD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1119*/ { 0x00EE, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*111A*/ { 0x00EF, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*111B*/ { 0x00F0, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*111C*/ { 0x03A7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*111D*/ { 0x03A8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*111E*/ { 0x03A9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*111F*/ { 0x03AA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1120*/ { 0x04EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1121*/ { 0x04ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1122*/ { 0x04EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1123*/ { 0x04EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1124*/ { 0x04F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1125*/ { 0x04F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xED, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDUSB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1126*/ { 0x03AB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1127*/ { 0x03AC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1128*/ { 0x03AD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1129*/ { 0x03AE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*112A*/ { 0x04F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*112B*/ { 0x04F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*112C*/ { 0x04F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*112D*/ { 0x04F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*112E*/ { 0x04F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*112F*/ { 0x04F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDC, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDUSW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1130*/ { 0x03AF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1131*/ { 0x03B0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1132*/ { 0x03B1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1133*/ { 0x03B2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1134*/ { 0x04F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1135*/ { 0x04F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1136*/ { 0x04FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1137*/ { 0x04FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1138*/ { 0x04FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1139*/ { 0x04FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPADDW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*113A*/ { 0x03B3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*113B*/ { 0x03B4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*113C*/ { 0x03B5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*113D*/ { 0x03B6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*113E*/ { 0x04FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*113F*/ { 0x04FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1140*/ { 0x0500, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1141*/ { 0x0501, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1142*/ { 0x0502, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1143*/ { 0x0503, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFD, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPALIGNR                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1144*/ { 0x03B7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1145*/ { 0x03B8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1146*/ { 0x03B9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1147*/ { 0x03BA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1148*/ { 0x0504, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1149*/ { 0x0505, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*114A*/ { 0x0506, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*114B*/ { 0x0507, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*114C*/ { 0x0508, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*114D*/ { 0x0509, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPAND                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*114E*/ { 0x03BB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*114F*/ { 0x03BC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1150*/ { 0x03BD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1151*/ { 0x03BE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPANDD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1152*/ { 0x050A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1153*/ { 0x050B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1154*/ { 0x050C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1155*/ { 0x050D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1156*/ { 0x050E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1157*/ { 0x050F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1158*/ { 0x00F1, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1159*/ { 0x00F2, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*115A*/ { 0x00F3, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPANDN                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*115B*/ { 0x03BF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*115C*/ { 0x03C0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*115D*/ { 0x03C1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*115E*/ { 0x03C2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPANDND                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*115F*/ { 0x0510, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1160*/ { 0x0511, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1161*/ { 0x0512, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1162*/ { 0x0513, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1163*/ { 0x0514, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1164*/ { 0x0515, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1165*/ { 0x00F4, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1166*/ { 0x00F5, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1167*/ { 0x00F6, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPANDNQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1168*/ { 0x0516, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1169*/ { 0x0517, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*116A*/ { 0x0518, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*116B*/ { 0x0519, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*116C*/ { 0x051A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*116D*/ { 0x051B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*116E*/ { 0x00F7, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*116F*/ { 0x00F8, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*1170*/ { 0x00F9, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPANDQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1171*/ { 0x051C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1172*/ { 0x051D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1173*/ { 0x051E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1174*/ { 0x051F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1175*/ { 0x0520, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1176*/ { 0x0521, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1177*/ { 0x00FA, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1178*/ { 0x00FB, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*1179*/ { 0x00FC, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xDB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPAVGB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*117A*/ { 0x03C3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*117B*/ { 0x03C4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*117C*/ { 0x03C5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*117D*/ { 0x03C6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*117E*/ { 0x0522, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*117F*/ { 0x0523, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1180*/ { 0x0524, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1181*/ { 0x0525, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1182*/ { 0x0526, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1183*/ { 0x0527, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPAVGW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1184*/ { 0x03C7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1185*/ { 0x03C8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1186*/ { 0x03C9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1187*/ { 0x03CA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1188*/ { 0x0528, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1189*/ { 0x0529, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*118A*/ { 0x052A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*118B*/ { 0x052B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*118C*/ { 0x052C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*118D*/ { 0x052D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*118E*/ { 0x03CB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*118F*/ { 0x03CC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1190*/ { 0x03CD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1191*/ { 0x03CE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDMB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1192*/ { 0x052E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1193*/ { 0x052F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1194*/ { 0x0530, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1195*/ { 0x0531, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1196*/ { 0x0532, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1197*/ { 0x0533, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDMD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1198*/ { 0x0534, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1199*/ { 0x0535, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*119A*/ { 0x0536, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*119B*/ { 0x0537, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*119C*/ { 0x0538, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*119D*/ { 0x0539, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*119E*/ { 0x00FD, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*119F*/ { 0x00FE, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*11A0*/ { 0x00FF, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDMQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*11A1*/ { 0x053A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11A2*/ { 0x053B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11A3*/ { 0x053C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11A4*/ { 0x053D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11A5*/ { 0x053E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*11A6*/ { 0x053F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*11A7*/ { 0x0100, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11A8*/ { 0x0101, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*11A9*/ { 0x0102, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x64, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDMW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*11AA*/ { 0x0540, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11AB*/ { 0x0541, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11AC*/ { 0x0542, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11AD*/ { 0x0543, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11AE*/ { 0x0544, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*11AF*/ { 0x0545, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDVB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*11B0*/ { 0x03CF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11B1*/ { 0x03D0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11B2*/ { 0x03D1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11B3*/ { 0x03D2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x4C, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBLENDW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*11B4*/ { 0x03D3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11B5*/ { 0x03D4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11B6*/ { 0x03D5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11B7*/ { 0x03D6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBROADCASTB                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*11B8*/ { 0x03D7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11B9*/ { 0x03D8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11BA*/ { 0x03D9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11BB*/ { 0x03DA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11BC*/ { 0x0546, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11BD*/ { 0x0547, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11BE*/ { 0x0548, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11BF*/ { 0x0549, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11C0*/ { 0x054A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11C1*/ { 0x054B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x78, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11C2*/ { 0x054C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11C3*/ { 0x054D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11C4*/ { 0x054E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBROADCASTD                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*11C5*/ { 0x03DB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11C6*/ { 0x03DC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11C7*/ { 0x03DD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11C8*/ { 0x03DE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11C9*/ { 0x054F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11CA*/ { 0x0550, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11CB*/ { 0x0551, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11CC*/ { 0x0552, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11CD*/ { 0x0553, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11CE*/ { 0x0554, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11CF*/ { 0x0555, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11D0*/ { 0x0556, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11D1*/ { 0x0557, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11D2*/ { 0x0103, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x58, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBROADCASTMB2Q                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*11D3*/ { 0x0558, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11D4*/ { 0x0559, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11D5*/ { 0x055A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBROADCASTMW2D                                                                            */ +    /* ------------------------------------------------------------------------------------------ */+    /*11D6*/ { 0x055B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11D7*/ { 0x055C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11D8*/ { 0x055D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBROADCASTQ                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*11D9*/ { 0x03DF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11DA*/ { 0x03E0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11DB*/ { 0x03E1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11DC*/ { 0x03E2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11DD*/ { 0x055E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11DE*/ { 0x055F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11DF*/ { 0x0560, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11E0*/ { 0x0561, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11E1*/ { 0x0562, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*11E2*/ { 0x0563, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*11E3*/ { 0x0564, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7C, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11E4*/ { 0x0565, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7C, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11E5*/ { 0x0566, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7C, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*11E6*/ { 0x0104, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x59, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPBROADCASTW                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*11E7*/ { 0x03E3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11E8*/ { 0x03E4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11E9*/ { 0x03E5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11EA*/ { 0x03E6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11EB*/ { 0x0567, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11EC*/ { 0x0568, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11ED*/ { 0x0569, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11EE*/ { 0x056A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11EF*/ { 0x056B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11F0*/ { 0x056C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x79, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*11F1*/ { 0x056D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11F2*/ { 0x056E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11F3*/ { 0x056F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCLMULQDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*11F4*/ { 0x03E7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11F5*/ { 0x03E8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x44, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMOV                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*11F6*/ { 0x003A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11F7*/ { 0x003B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11F8*/ { 0x003C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11F9*/ { 0x003D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*11FA*/ { 0x003E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11FB*/ { 0x003F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*11FC*/ { 0x0040, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*11FD*/ { 0x0041, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*11FE*/ { 0x0570, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*11FF*/ { 0x0571, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1200*/ { 0x0572, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1201*/ { 0x0573, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1202*/ { 0x0574, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1203*/ { 0x0575, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1204*/ { 0x0576, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1205*/ { 0x0577, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1206*/ { 0x0578, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1207*/ { 0x0579, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1208*/ { 0x057A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1209*/ { 0x057B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*120A*/ { 0x0105, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*120B*/ { 0x0106, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*120C*/ { 0x0107, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPEQB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*120D*/ { 0x03E9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*120E*/ { 0x03EA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*120F*/ { 0x03EB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1210*/ { 0x03EC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1211*/ { 0x057C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1212*/ { 0x057D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1213*/ { 0x057E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1214*/ { 0x057F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1215*/ { 0x0580, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1216*/ { 0x0581, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x74, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPEQD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1217*/ { 0x03ED, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1218*/ { 0x03EE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1219*/ { 0x03EF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*121A*/ { 0x03F0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*121B*/ { 0x0582, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*121C*/ { 0x0583, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*121D*/ { 0x0584, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*121E*/ { 0x0585, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*121F*/ { 0x0586, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1220*/ { 0x0587, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1221*/ { 0x0108, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1222*/ { 0x0109, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1223*/ { 0x010A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x76, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPEQQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1224*/ { 0x03F1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1225*/ { 0x03F2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1226*/ { 0x03F3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1227*/ { 0x03F4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1228*/ { 0x0588, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1229*/ { 0x0589, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*122A*/ { 0x058A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*122B*/ { 0x058B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*122C*/ { 0x058C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*122D*/ { 0x058D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPEQW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*122E*/ { 0x03F5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*122F*/ { 0x03F6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1230*/ { 0x03F7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1231*/ { 0x03F8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1232*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1233*/ { 0x058F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1234*/ { 0x0590, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1235*/ { 0x0591, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1236*/ { 0x0592, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1237*/ { 0x0593, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPESTRI                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1238*/ { 0x03F9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1239*/ { 0x03FA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*123A*/ { 0x03FB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*123B*/ { 0x03FC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*123C*/ { 0x03FD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*123D*/ { 0x03FE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPESTRM                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*123E*/ { 0x03FF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*123F*/ { 0x0400, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1240*/ { 0x0401, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1241*/ { 0x0402, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1242*/ { 0x0403, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1243*/ { 0x0404, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPGTB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1244*/ { 0x0405, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1245*/ { 0x0406, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1246*/ { 0x0407, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1247*/ { 0x0408, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1248*/ { 0x0594, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1249*/ { 0x0595, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*124A*/ { 0x0596, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*124B*/ { 0x0597, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*124C*/ { 0x0598, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*124D*/ { 0x0599, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x64, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPGTD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*124E*/ { 0x0409, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*124F*/ { 0x040A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1250*/ { 0x040B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1251*/ { 0x040C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1252*/ { 0x059A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1253*/ { 0x059B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1254*/ { 0x059C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1255*/ { 0x059D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1256*/ { 0x059E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1257*/ { 0x059F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1258*/ { 0x010B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1259*/ { 0x010C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*125A*/ { 0x010D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x66, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPGTQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*125B*/ { 0x040D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*125C*/ { 0x040E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*125D*/ { 0x040F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*125E*/ { 0x0410, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*125F*/ { 0x05A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1260*/ { 0x05A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1261*/ { 0x05A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1262*/ { 0x05A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1263*/ { 0x05A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1264*/ { 0x05A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x37, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPGTW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1265*/ { 0x0411, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1266*/ { 0x0412, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1267*/ { 0x0413, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1268*/ { 0x0414, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1269*/ { 0x05A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*126A*/ { 0x05A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*126B*/ { 0x05A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*126C*/ { 0x05A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*126D*/ { 0x05AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*126E*/ { 0x05AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x65, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPISTRI                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*126F*/ { 0x0415, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1270*/ { 0x0416, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1271*/ { 0x0417, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1272*/ { 0x0418, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1273*/ { 0x0419, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1274*/ { 0x041A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x63, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPISTRM                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1275*/ { 0x041B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x62, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1276*/ { 0x041C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x62, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPLTD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1277*/ { 0x010E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x74, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1278*/ { 0x010F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x74, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1279*/ { 0x0110, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x74, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*127A*/ { 0x05AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*127B*/ { 0x05AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*127C*/ { 0x05AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*127D*/ { 0x05AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*127E*/ { 0x05B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*127F*/ { 0x05B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPUB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1280*/ { 0x05B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1281*/ { 0x05B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1282*/ { 0x05B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1283*/ { 0x05B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1284*/ { 0x05B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1285*/ { 0x05B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPUD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1286*/ { 0x05B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1287*/ { 0x05B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1288*/ { 0x05BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1289*/ { 0x05BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*128A*/ { 0x05BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*128B*/ { 0x05BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*128C*/ { 0x0111, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*128D*/ { 0x0112, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*128E*/ { 0x0113, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPUQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*128F*/ { 0x05BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1290*/ { 0x05BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1291*/ { 0x05C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1292*/ { 0x05C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1293*/ { 0x05C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1294*/ { 0x05C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x1E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPUW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1295*/ { 0x05C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1296*/ { 0x05C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1297*/ { 0x05C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1298*/ { 0x05C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1299*/ { 0x05C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*129A*/ { 0x05C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCMPW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*129B*/ { 0x05CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*129C*/ { 0x05CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*129D*/ { 0x05CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*129E*/ { 0x05CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*129F*/ { 0x05CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*12A0*/ { 0x05CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*12A1*/ { 0x0042, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCC, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12A2*/ { 0x0043, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCC, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*12A3*/ { 0x0044, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCE, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12A4*/ { 0x0045, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCE, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMPRESSD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*12A5*/ { 0x05D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12A6*/ { 0x05D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12A7*/ { 0x05D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12A8*/ { 0x05D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12A9*/ { 0x05D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12AA*/ { 0x05D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMPRESSQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*12AB*/ { 0x05D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12AC*/ { 0x05D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12AD*/ { 0x05D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12AE*/ { 0x05D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12AF*/ { 0x05DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*12B0*/ { 0x05DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*12B1*/ { 0x0046, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCF, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12B2*/ { 0x0047, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCF, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMUB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*12B3*/ { 0x0048, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xEC, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12B4*/ { 0x0049, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xEC, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMUD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*12B5*/ { 0x004A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xEE, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12B6*/ { 0x004B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xEE, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMUQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*12B7*/ { 0x004C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xEF, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12B8*/ { 0x004D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xEF, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMUW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*12B9*/ { 0x004E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xED, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12BA*/ { 0x004F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xED, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCOMW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*12BB*/ { 0x0050, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCD, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12BC*/ { 0x0051, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCD, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCONFLICTD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*12BD*/ { 0x05DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12BE*/ { 0x05DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12BF*/ { 0x05DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12C0*/ { 0x05DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12C1*/ { 0x05E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12C2*/ { 0x05E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPCONFLICTQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*12C3*/ { 0x05E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12C4*/ { 0x05E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12C5*/ { 0x05E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12C6*/ { 0x05E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12C7*/ { 0x05E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*12C8*/ { 0x05E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERM2F128                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*12C9*/ { 0x041D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x06, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12CA*/ { 0x041E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x06, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERM2I128                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*12CB*/ { 0x041F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12CC*/ { 0x0420, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*12CD*/ { 0x05E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12CE*/ { 0x05E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12CF*/ { 0x05EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12D0*/ { 0x05EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12D1*/ { 0x05EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12D2*/ { 0x05ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*12D3*/ { 0x0421, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12D4*/ { 0x0422, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12D5*/ { 0x05EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12D6*/ { 0x05EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12D7*/ { 0x05F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12D8*/ { 0x05F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12D9*/ { 0x0114, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12DA*/ { 0x0115, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMF32X4                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*12DB*/ { 0x0116, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x07, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12DC*/ { 0x0117, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x07, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*12DD*/ { 0x0118, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x07, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMI2B                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*12DE*/ { 0x05F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12DF*/ { 0x05F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12E0*/ { 0x05F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12E1*/ { 0x05F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12E2*/ { 0x05F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12E3*/ { 0x05F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMI2D                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*12E4*/ { 0x05F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12E5*/ { 0x05F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12E6*/ { 0x05FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12E7*/ { 0x05FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12E8*/ { 0x05FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12E9*/ { 0x05FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMI2PD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*12EA*/ { 0x05FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12EB*/ { 0x05FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12EC*/ { 0x0600, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12ED*/ { 0x0601, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12EE*/ { 0x0602, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*12EF*/ { 0x0603, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMI2PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*12F0*/ { 0x0604, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12F1*/ { 0x0605, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*12F2*/ { 0x0606, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12F3*/ { 0x0607, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*12F4*/ { 0x0608, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*12F5*/ { 0x0609, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x77, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMI2Q                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*12F6*/ { 0x060A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12F7*/ { 0x060B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12F8*/ { 0x060C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12F9*/ { 0x060D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12FA*/ { 0x060E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*12FB*/ { 0x060F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x76, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMI2W                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*12FC*/ { 0x0610, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12FD*/ { 0x0611, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*12FE*/ { 0x0612, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*12FF*/ { 0x0613, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1300*/ { 0x0614, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1301*/ { 0x0615, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x75, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMIL2PD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1302*/ { 0x0423, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1303*/ { 0x0424, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1304*/ { 0x0425, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1305*/ { 0x0426, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1306*/ { 0x0427, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1307*/ { 0x0428, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1308*/ { 0x0429, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1309*/ { 0x042A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x49, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMIL2PS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*130A*/ { 0x042B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*130B*/ { 0x042C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*130C*/ { 0x042D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*130D*/ { 0x042E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*130E*/ { 0x042F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*130F*/ { 0x0430, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1310*/ { 0x0431, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1311*/ { 0x0432, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x48, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMILPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1312*/ { 0x0433, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1313*/ { 0x0434, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1314*/ { 0x0435, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1315*/ { 0x0436, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1316*/ { 0x0437, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1317*/ { 0x0438, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1318*/ { 0x0439, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1319*/ { 0x043A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*131A*/ { 0x0616, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*131B*/ { 0x0617, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*131C*/ { 0x0618, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*131D*/ { 0x0619, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*131E*/ { 0x061A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*131F*/ { 0x061B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1320*/ { 0x061C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1321*/ { 0x061D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1322*/ { 0x061E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1323*/ { 0x061F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1324*/ { 0x0620, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1325*/ { 0x0621, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x05, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMILPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1326*/ { 0x043B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1327*/ { 0x043C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1328*/ { 0x043D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1329*/ { 0x043E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*132A*/ { 0x043F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*132B*/ { 0x0440, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*132C*/ { 0x0441, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*132D*/ { 0x0442, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*132E*/ { 0x0622, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*132F*/ { 0x0623, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1330*/ { 0x0624, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1331*/ { 0x0625, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1332*/ { 0x0626, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1333*/ { 0x0627, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1334*/ { 0x0628, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1335*/ { 0x0629, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1336*/ { 0x062A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1337*/ { 0x062B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1338*/ { 0x062C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1339*/ { 0x062D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*133A*/ { 0x0443, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x01, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*133B*/ { 0x0444, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x01, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*133C*/ { 0x062E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*133D*/ { 0x062F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*133E*/ { 0x0630, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*133F*/ { 0x0631, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1340*/ { 0x0632, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x01, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1341*/ { 0x0633, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x01, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1342*/ { 0x0634, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x01, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1343*/ { 0x0635, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x01, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1344*/ { 0x0445, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1345*/ { 0x0446, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1346*/ { 0x0636, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1347*/ { 0x0637, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1348*/ { 0x0638, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1349*/ { 0x0639, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*134A*/ { 0x0447, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x00, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*134B*/ { 0x0448, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x00, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*134C*/ { 0x063A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*134D*/ { 0x063B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*134E*/ { 0x063C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*134F*/ { 0x063D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x36, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1350*/ { 0x063E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1351*/ { 0x063F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1352*/ { 0x0640, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1353*/ { 0x0641, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMT2B                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1354*/ { 0x0642, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1355*/ { 0x0643, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1356*/ { 0x0644, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1357*/ { 0x0645, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1358*/ { 0x0646, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1359*/ { 0x0647, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMT2D                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*135A*/ { 0x0648, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*135B*/ { 0x0649, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*135C*/ { 0x064A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*135D*/ { 0x064B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*135E*/ { 0x064C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*135F*/ { 0x064D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMT2PD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1360*/ { 0x064E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1361*/ { 0x064F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1362*/ { 0x0650, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1363*/ { 0x0651, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1364*/ { 0x0652, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1365*/ { 0x0653, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMT2PS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1366*/ { 0x0654, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1367*/ { 0x0655, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1368*/ { 0x0656, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1369*/ { 0x0657, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*136A*/ { 0x0658, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*136B*/ { 0x0659, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMT2Q                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*136C*/ { 0x065A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*136D*/ { 0x065B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*136E*/ { 0x065C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*136F*/ { 0x065D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1370*/ { 0x065E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1371*/ { 0x065F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMT2W                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1372*/ { 0x0660, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1373*/ { 0x0661, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1374*/ { 0x0662, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1375*/ { 0x0663, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1376*/ { 0x0664, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1377*/ { 0x0665, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x7D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPERMW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1378*/ { 0x0666, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1379*/ { 0x0667, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*137A*/ { 0x0668, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*137B*/ { 0x0669, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*137C*/ { 0x066A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*137D*/ { 0x066B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x8D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPEXPANDD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*137E*/ { 0x066C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*137F*/ { 0x066D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1380*/ { 0x066E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1381*/ { 0x066F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1382*/ { 0x0670, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1383*/ { 0x0671, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPEXPANDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1384*/ { 0x0672, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1385*/ { 0x0673, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1386*/ { 0x0674, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1387*/ { 0x0675, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1388*/ { 0x0676, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1389*/ { 0x0677, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x89, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPEXTRB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*138A*/ { 0x0449, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*138B*/ { 0x044A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*138C*/ { 0x0678, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*138D*/ { 0x0679, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPEXTRD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*138E*/ { 0x044B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*138F*/ { 0x044C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1390*/ { 0x044D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1391*/ { 0x044E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1392*/ { 0x067A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1393*/ { 0x067B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPEXTRQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1394*/ { 0x044F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1395*/ { 0x0450, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1396*/ { 0x067C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1397*/ { 0x067D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x16, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPEXTRW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1398*/ { 0x0451, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1399*/ { 0x0452, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*139A*/ { 0x0453, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*139B*/ { 0x067E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*139C*/ { 0x067F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*139D*/ { 0x0680, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPGATHERDD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*139E*/ { 0x0454, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*139F*/ { 0x0455, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13A0*/ { 0x0681, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13A1*/ { 0x0682, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13A2*/ { 0x0683, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*13A3*/ { 0x0119, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPGATHERDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*13A4*/ { 0x0456, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*13A5*/ { 0x0457, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13A6*/ { 0x0684, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13A7*/ { 0x0685, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*13A8*/ { 0x0686, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*13A9*/ { 0x011A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x90, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPGATHERQD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*13AA*/ { 0x0458, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13AB*/ { 0x0459, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13AC*/ { 0x0687, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13AD*/ { 0x0688, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13AE*/ { 0x0689, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPGATHERQQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*13AF*/ { 0x045A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*13B0*/ { 0x045B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13B1*/ { 0x068A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13B2*/ { 0x068B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*13B3*/ { 0x068C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x91, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDBD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13B4*/ { 0x0052, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC2, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13B5*/ { 0x0053, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC2, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDBQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13B6*/ { 0x0054, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC3, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13B7*/ { 0x0055, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC3, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDBW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13B8*/ { 0x0056, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC1, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13B9*/ { 0x0057, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC1, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13BA*/ { 0x045C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13BB*/ { 0x045D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13BC*/ { 0x045E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13BD*/ { 0x045F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x02, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13BE*/ { 0x0058, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCB, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13BF*/ { 0x0059, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xCB, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDSW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13C0*/ { 0x0460, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13C1*/ { 0x0461, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13C2*/ { 0x0462, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13C3*/ { 0x0463, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x03, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDUBD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*13C4*/ { 0x005A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD2, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13C5*/ { 0x005B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD2, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDUBQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*13C6*/ { 0x005C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD3, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13C7*/ { 0x005D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD3, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDUBW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*13C8*/ { 0x005E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD1, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13C9*/ { 0x005F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD1, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDUDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*13CA*/ { 0x0060, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xDB, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13CB*/ { 0x0061, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xDB, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDUWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*13CC*/ { 0x0062, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD6, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13CD*/ { 0x0063, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD6, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDUWQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*13CE*/ { 0x0064, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD7, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13CF*/ { 0x0065, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xD7, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13D0*/ { 0x0464, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13D1*/ { 0x0465, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13D2*/ { 0x0466, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13D3*/ { 0x0467, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x01, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13D4*/ { 0x0066, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC6, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13D5*/ { 0x0067, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC6, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHADDWQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13D6*/ { 0x0068, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC7, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13D7*/ { 0x0069, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC7, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHMINPOSUW                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*13D8*/ { 0x0468, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13D9*/ { 0x0469, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13DA*/ { 0x046A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13DB*/ { 0x046B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x41, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHSUBBW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13DC*/ { 0x006A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xE1, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13DD*/ { 0x006B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xE1, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHSUBD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13DE*/ { 0x046C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13DF*/ { 0x046D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13E0*/ { 0x046E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13E1*/ { 0x046F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x06, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHSUBDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13E2*/ { 0x006C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xE3, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13E3*/ { 0x006D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xE3, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHSUBSW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13E4*/ { 0x0470, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13E5*/ { 0x0471, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13E6*/ { 0x0472, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13E7*/ { 0x0473, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x07, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHSUBW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13E8*/ { 0x0474, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13E9*/ { 0x0475, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13EA*/ { 0x0476, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*13EB*/ { 0x0477, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x05, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPHSUBWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*13EC*/ { 0x006E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xE2, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13ED*/ { 0x006F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xE2, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPINSRB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13EE*/ { 0x0478, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x20, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13EF*/ { 0x0479, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x20, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F0*/ { 0x068D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F1*/ { 0x068E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPINSRD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13F2*/ { 0x047A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F3*/ { 0x047B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F4*/ { 0x047C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F5*/ { 0x047D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x03, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F6*/ { 0x068F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13F7*/ { 0x0690, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPINSRQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13F8*/ { 0x047E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13F9*/ { 0x047F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13FA*/ { 0x0691, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*13FB*/ { 0x0692, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F3A   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPINSRW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*13FC*/ { 0x0480, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13FD*/ { 0x0481, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13FE*/ { 0x0693, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*13FF*/ { 0x0694, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPLZCNTD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1400*/ { 0x0695, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1401*/ { 0x0696, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1402*/ { 0x0697, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1403*/ { 0x0698, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1404*/ { 0x0699, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1405*/ { 0x069A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPLZCNTQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1406*/ { 0x069B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1407*/ { 0x069C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1408*/ { 0x069D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1409*/ { 0x069E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*140A*/ { 0x069F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*140B*/ { 0x06A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x44, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSDD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*140C*/ { 0x0070, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9E, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*140D*/ { 0x0071, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9E, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSDQH                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*140E*/ { 0x0072, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9F, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*140F*/ { 0x0073, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9F, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSDQL                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1410*/ { 0x0074, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x97, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1411*/ { 0x0075, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x97, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSSDD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1412*/ { 0x0076, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x8E, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1413*/ { 0x0077, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x8E, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSSDQH                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1414*/ { 0x0078, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x8F, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1415*/ { 0x0079, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x8F, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSSDQL                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1416*/ { 0x007A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x87, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1417*/ { 0x007B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x87, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSSWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1418*/ { 0x007C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x86, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1419*/ { 0x007D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x86, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSSWW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*141A*/ { 0x007E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x85, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*141B*/ { 0x007F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x85, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*141C*/ { 0x0080, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x96, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*141D*/ { 0x0081, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x96, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMACSWW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*141E*/ { 0x0082, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x95, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*141F*/ { 0x0083, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x95, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADCSSWD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1420*/ { 0x0084, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA6, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1421*/ { 0x0085, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA6, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADCSWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1422*/ { 0x0086, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xB6, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1423*/ { 0x0087, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xB6, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADD231D                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1424*/ { 0x011B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1425*/ { 0x011C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1426*/ { 0x011D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADD233D                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1427*/ { 0x011E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1428*/ { 0x011F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1429*/ { 0x0120, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADD52HUQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*142A*/ { 0x06A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*142B*/ { 0x06A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*142C*/ { 0x06A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*142D*/ { 0x06A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*142E*/ { 0x06A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*142F*/ { 0x06A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADD52LUQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*1430*/ { 0x06A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1431*/ { 0x06A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1432*/ { 0x06A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1433*/ { 0x06AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1434*/ { 0x06AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1435*/ { 0x06AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xB4, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADDUBSW                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1436*/ { 0x0482, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1437*/ { 0x0483, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1438*/ { 0x0484, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1439*/ { 0x0485, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*143A*/ { 0x06AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*143B*/ { 0x06AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*143C*/ { 0x06AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*143D*/ { 0x06B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*143E*/ { 0x06B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*143F*/ { 0x06B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x04, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMADDWD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1440*/ { 0x0486, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1441*/ { 0x0487, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1442*/ { 0x0488, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1443*/ { 0x0489, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1444*/ { 0x06B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1445*/ { 0x06B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1446*/ { 0x06B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1447*/ { 0x06B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1448*/ { 0x06B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1449*/ { 0x06B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMASKMOVD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*144A*/ { 0x048A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*144B*/ { 0x048B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*144C*/ { 0x048C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*144D*/ { 0x048D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMASKMOVQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*144E*/ { 0x048E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*144F*/ { 0x048F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1450*/ { 0x0490, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1451*/ { 0x0491, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x8E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1452*/ { 0x0492, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1453*/ { 0x0493, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1454*/ { 0x0494, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1455*/ { 0x0495, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1456*/ { 0x06B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1457*/ { 0x06BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1458*/ { 0x06BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1459*/ { 0x06BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*145A*/ { 0x06BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*145B*/ { 0x06BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXSD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*145C*/ { 0x0496, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*145D*/ { 0x0497, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*145E*/ { 0x0498, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*145F*/ { 0x0499, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1460*/ { 0x06BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1461*/ { 0x06C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1462*/ { 0x06C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1463*/ { 0x06C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1464*/ { 0x06C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1465*/ { 0x06C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1466*/ { 0x0121, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1467*/ { 0x0122, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1468*/ { 0x0123, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXSQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1469*/ { 0x06C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*146A*/ { 0x06C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*146B*/ { 0x06C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*146C*/ { 0x06C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*146D*/ { 0x06C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*146E*/ { 0x06CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*146F*/ { 0x049A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1470*/ { 0x049B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1471*/ { 0x049C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1472*/ { 0x049D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1473*/ { 0x06CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1474*/ { 0x06CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1475*/ { 0x06CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1476*/ { 0x06CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1477*/ { 0x06CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1478*/ { 0x06D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXUB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1479*/ { 0x049E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*147A*/ { 0x049F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*147B*/ { 0x04A0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*147C*/ { 0x04A1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*147D*/ { 0x06D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*147E*/ { 0x06D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*147F*/ { 0x06D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1480*/ { 0x06D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1481*/ { 0x06D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1482*/ { 0x06D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXUD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1483*/ { 0x04A2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1484*/ { 0x04A3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1485*/ { 0x04A4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1486*/ { 0x04A5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1487*/ { 0x06D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1488*/ { 0x06D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1489*/ { 0x06D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*148A*/ { 0x06DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*148B*/ { 0x06DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*148C*/ { 0x06DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*148D*/ { 0x0124, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*148E*/ { 0x0125, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*148F*/ { 0x0126, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXUQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1490*/ { 0x06DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1491*/ { 0x06DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1492*/ { 0x06DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1493*/ { 0x06E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1494*/ { 0x06E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1495*/ { 0x06E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMAXUW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1496*/ { 0x04A6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1497*/ { 0x04A7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1498*/ { 0x04A8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1499*/ { 0x04A9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*149A*/ { 0x06E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*149B*/ { 0x06E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*149C*/ { 0x06E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*149D*/ { 0x06E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*149E*/ { 0x06E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*149F*/ { 0x06E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14A0*/ { 0x04AA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14A1*/ { 0x04AB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14A2*/ { 0x04AC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14A3*/ { 0x04AD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14A4*/ { 0x06E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14A5*/ { 0x06EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14A6*/ { 0x06EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14A7*/ { 0x06EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14A8*/ { 0x06ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14A9*/ { 0x06EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINSD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14AA*/ { 0x04AE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14AB*/ { 0x04AF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14AC*/ { 0x04B0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14AD*/ { 0x04B1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14AE*/ { 0x06EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14AF*/ { 0x06F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14B0*/ { 0x06F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14B1*/ { 0x06F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14B2*/ { 0x06F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14B3*/ { 0x06F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14B4*/ { 0x0127, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14B5*/ { 0x0128, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*14B6*/ { 0x0129, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINSQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14B7*/ { 0x06F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*14B8*/ { 0x06F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*14B9*/ { 0x06F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*14BA*/ { 0x06F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*14BB*/ { 0x06F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*14BC*/ { 0x06FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14BD*/ { 0x04B2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14BE*/ { 0x04B3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14BF*/ { 0x04B4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14C0*/ { 0x04B5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14C1*/ { 0x06FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14C2*/ { 0x06FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14C3*/ { 0x06FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14C4*/ { 0x06FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14C5*/ { 0x06FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14C6*/ { 0x0700, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINUB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14C7*/ { 0x04B6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14C8*/ { 0x04B7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14C9*/ { 0x04B8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14CA*/ { 0x04B9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14CB*/ { 0x0701, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14CC*/ { 0x0702, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14CD*/ { 0x0703, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14CE*/ { 0x0704, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14CF*/ { 0x0705, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14D0*/ { 0x0706, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xDA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINUD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14D1*/ { 0x04BA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14D2*/ { 0x04BB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14D3*/ { 0x04BC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14D4*/ { 0x04BD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14D5*/ { 0x0707, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14D6*/ { 0x0708, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14D7*/ { 0x0709, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14D8*/ { 0x070A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14D9*/ { 0x070B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14DA*/ { 0x070C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14DB*/ { 0x012A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14DC*/ { 0x012B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*14DD*/ { 0x012C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINUQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14DE*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*14DF*/ { 0x070E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*14E0*/ { 0x070F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*14E1*/ { 0x0710, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*14E2*/ { 0x0711, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*14E3*/ { 0x0712, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMINUW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14E4*/ { 0x04BE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14E5*/ { 0x04BF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14E6*/ { 0x04C0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14E7*/ { 0x04C1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14E8*/ { 0x0713, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14E9*/ { 0x0714, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14EA*/ { 0x0715, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14EB*/ { 0x0716, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14EC*/ { 0x0717, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14ED*/ { 0x0718, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x3A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVB2M                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*14EE*/ { 0x0719, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14EF*/ { 0x071A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14F0*/ { 0x071B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVD2M                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*14F1*/ { 0x071C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14F2*/ { 0x071D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14F3*/ { 0x071E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVDB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14F4*/ { 0x071F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14F5*/ { 0x0720, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14F6*/ { 0x0721, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14F7*/ { 0x0722, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14F8*/ { 0x0723, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14F9*/ { 0x0724, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVDW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*14FA*/ { 0x0725, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14FB*/ { 0x0726, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*14FC*/ { 0x0727, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14FD*/ { 0x0728, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*14FE*/ { 0x0729, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*14FF*/ { 0x072A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVM2B                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1500*/ { 0x072B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1501*/ { 0x072C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1502*/ { 0x072D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVM2D                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1503*/ { 0x072E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1504*/ { 0x072F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1505*/ { 0x0730, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVM2Q                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1506*/ { 0x0731, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1507*/ { 0x0732, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1508*/ { 0x0733, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x38, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVM2W                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1509*/ { 0x0734, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*150A*/ { 0x0735, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*150B*/ { 0x0736, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVMSKB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*150C*/ { 0x04C2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*150D*/ { 0x04C3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVQ2M                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*150E*/ { 0x0737, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*150F*/ { 0x0738, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1510*/ { 0x0739, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x39, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVQB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1511*/ { 0x073A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1512*/ { 0x073B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1513*/ { 0x073C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1514*/ { 0x073D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1515*/ { 0x073E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1516*/ { 0x073F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVQD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1517*/ { 0x0740, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1518*/ { 0x0741, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1519*/ { 0x0742, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*151A*/ { 0x0743, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*151B*/ { 0x0744, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*151C*/ { 0x0745, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVQW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*151D*/ { 0x0746, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*151E*/ { 0x0747, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*151F*/ { 0x0748, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1520*/ { 0x0749, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1521*/ { 0x074A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1522*/ { 0x074B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSDB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1523*/ { 0x074C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1524*/ { 0x074D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1525*/ { 0x074E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1526*/ { 0x074F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1527*/ { 0x0750, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1528*/ { 0x0751, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSDW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1529*/ { 0x0752, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*152A*/ { 0x0753, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*152B*/ { 0x0754, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*152C*/ { 0x0755, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*152D*/ { 0x0756, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*152E*/ { 0x0757, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSQB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*152F*/ { 0x0758, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1530*/ { 0x0759, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1531*/ { 0x075A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1532*/ { 0x075B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1533*/ { 0x075C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1534*/ { 0x075D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSQD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1535*/ { 0x075E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1536*/ { 0x075F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1537*/ { 0x0760, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1538*/ { 0x0761, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1539*/ { 0x0762, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*153A*/ { 0x0763, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSQW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*153B*/ { 0x0764, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*153C*/ { 0x0765, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*153D*/ { 0x0766, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*153E*/ { 0x0767, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*153F*/ { 0x0768, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1540*/ { 0x0769, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSWB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1541*/ { 0x076A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1542*/ { 0x076B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1543*/ { 0x076C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1544*/ { 0x076D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1545*/ { 0x076E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1546*/ { 0x076F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSXBD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1547*/ { 0x04C4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1548*/ { 0x04C5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1549*/ { 0x04C6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*154A*/ { 0x04C7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*154B*/ { 0x0770, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*154C*/ { 0x0771, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*154D*/ { 0x0772, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*154E*/ { 0x0773, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*154F*/ { 0x0774, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1550*/ { 0x0775, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x21, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSXBQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1551*/ { 0x04C8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1552*/ { 0x04C9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1553*/ { 0x04CA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1554*/ { 0x04CB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1555*/ { 0x0776, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1556*/ { 0x0777, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1557*/ { 0x0778, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1558*/ { 0x0779, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1559*/ { 0x077A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*155A*/ { 0x077B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x22, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSXBW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*155B*/ { 0x04CC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*155C*/ { 0x04CD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*155D*/ { 0x04CE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*155E*/ { 0x04CF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*155F*/ { 0x077C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1560*/ { 0x077D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1561*/ { 0x077E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1562*/ { 0x077F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1563*/ { 0x0780, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1564*/ { 0x0781, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x20, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSXDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1565*/ { 0x04D0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1566*/ { 0x04D1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1567*/ { 0x04D2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1568*/ { 0x04D3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1569*/ { 0x0782, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*156A*/ { 0x0783, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*156B*/ { 0x0784, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*156C*/ { 0x0785, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*156D*/ { 0x0786, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*156E*/ { 0x0787, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSXWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*156F*/ { 0x04D4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1570*/ { 0x04D5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1571*/ { 0x04D6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1572*/ { 0x04D7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1573*/ { 0x0788, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1574*/ { 0x0789, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1575*/ { 0x078A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1576*/ { 0x078B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1577*/ { 0x078C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1578*/ { 0x078D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVSXWQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1579*/ { 0x04D8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*157A*/ { 0x04D9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*157B*/ { 0x04DA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*157C*/ { 0x04DB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*157D*/ { 0x078E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*157E*/ { 0x078F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*157F*/ { 0x0790, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1580*/ { 0x0791, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1581*/ { 0x0792, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1582*/ { 0x0793, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x24, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVUSDB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1583*/ { 0x0794, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1584*/ { 0x0795, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1585*/ { 0x0796, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1586*/ { 0x0797, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1587*/ { 0x0798, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1588*/ { 0x0799, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVUSDW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1589*/ { 0x079A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*158A*/ { 0x079B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*158B*/ { 0x079C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*158C*/ { 0x079D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*158D*/ { 0x079E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*158E*/ { 0x079F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x13, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVUSQB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*158F*/ { 0x07A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1590*/ { 0x07A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1591*/ { 0x07A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1592*/ { 0x07A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1593*/ { 0x07A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1594*/ { 0x07A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVUSQD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1595*/ { 0x07A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1596*/ { 0x07A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1597*/ { 0x07A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1598*/ { 0x07A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1599*/ { 0x07AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*159A*/ { 0x07AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVUSQW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*159B*/ { 0x07AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*159C*/ { 0x07AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*159D*/ { 0x07AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*159E*/ { 0x07AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*159F*/ { 0x07B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15A0*/ { 0x07B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVUSWB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15A1*/ { 0x07B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15A2*/ { 0x07B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15A3*/ { 0x07B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15A4*/ { 0x07B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15A5*/ { 0x07B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15A6*/ { 0x07B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVW2M                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*15A7*/ { 0x07B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*15A8*/ { 0x07B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*15A9*/ { 0x07BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x29, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVWB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*15AA*/ { 0x07BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15AB*/ { 0x07BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15AC*/ { 0x07BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15AD*/ { 0x07BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15AE*/ { 0x07BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15AF*/ { 0x07C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVZXBD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15B0*/ { 0x04DC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15B1*/ { 0x04DD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15B2*/ { 0x04DE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15B3*/ { 0x04DF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15B4*/ { 0x07C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15B5*/ { 0x07C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15B6*/ { 0x07C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15B7*/ { 0x07C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15B8*/ { 0x07C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15B9*/ { 0x07C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x31, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVZXBQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15BA*/ { 0x04E0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15BB*/ { 0x04E1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15BC*/ { 0x04E2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15BD*/ { 0x04E3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15BE*/ { 0x07C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15BF*/ { 0x07C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15C0*/ { 0x07C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15C1*/ { 0x07CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15C2*/ { 0x07CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15C3*/ { 0x07CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x32, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVZXBW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15C4*/ { 0x04E4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15C5*/ { 0x04E5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15C6*/ { 0x04E6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15C7*/ { 0x04E7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15C8*/ { 0x07CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15C9*/ { 0x07CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15CA*/ { 0x07CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15CB*/ { 0x07D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15CC*/ { 0x07D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15CD*/ { 0x07D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x30, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVZXDQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15CE*/ { 0x04E8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15CF*/ { 0x04E9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15D0*/ { 0x04EA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15D1*/ { 0x04EB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15D2*/ { 0x07D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15D3*/ { 0x07D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15D4*/ { 0x07D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15D5*/ { 0x07D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15D6*/ { 0x07D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15D7*/ { 0x07D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x35, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVZXWD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15D8*/ { 0x04EC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15D9*/ { 0x04ED, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15DA*/ { 0x04EE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15DB*/ { 0x04EF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15DC*/ { 0x07D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15DD*/ { 0x07DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15DE*/ { 0x07DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15DF*/ { 0x07DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15E0*/ { 0x07DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15E1*/ { 0x07DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x33, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMOVZXWQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15E2*/ { 0x04F0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15E3*/ { 0x04F1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15E4*/ { 0x04F2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15E5*/ { 0x04F3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15E6*/ { 0x07DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15E7*/ { 0x07E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15E8*/ { 0x07E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15E9*/ { 0x07E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15EA*/ { 0x07E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*15EB*/ { 0x07E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x34, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULDQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*15EC*/ { 0x04F4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15ED*/ { 0x04F5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15EE*/ { 0x04F6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15EF*/ { 0x04F7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15F0*/ { 0x07E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*15F1*/ { 0x07E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*15F2*/ { 0x07E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*15F3*/ { 0x07E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*15F4*/ { 0x07E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*15F5*/ { 0x07EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x28, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULHD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*15F6*/ { 0x012D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x87, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15F7*/ { 0x012E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x87, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*15F8*/ { 0x012F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x87, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULHRSW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*15F9*/ { 0x04F8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15FA*/ { 0x04F9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15FB*/ { 0x04FA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15FC*/ { 0x04FB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*15FD*/ { 0x07EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15FE*/ { 0x07EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*15FF*/ { 0x07ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1600*/ { 0x07EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1601*/ { 0x07EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1602*/ { 0x07F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULHUD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1603*/ { 0x0130, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x86, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1604*/ { 0x0131, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x86, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1605*/ { 0x0132, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x86, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULHUW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1606*/ { 0x04FC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1607*/ { 0x04FD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1608*/ { 0x04FE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1609*/ { 0x04FF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*160A*/ { 0x07F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*160B*/ { 0x07F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*160C*/ { 0x07F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*160D*/ { 0x07F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*160E*/ { 0x07F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*160F*/ { 0x07F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULHW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1610*/ { 0x0500, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1611*/ { 0x0501, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1612*/ { 0x0502, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1613*/ { 0x0503, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1614*/ { 0x07F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1615*/ { 0x07F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1616*/ { 0x07F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1617*/ { 0x07FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1618*/ { 0x07FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1619*/ { 0x07FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULLD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*161A*/ { 0x0504, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*161B*/ { 0x0505, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*161C*/ { 0x0506, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*161D*/ { 0x0507, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*161E*/ { 0x07FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*161F*/ { 0x07FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1620*/ { 0x07FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1621*/ { 0x0800, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1622*/ { 0x0801, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1623*/ { 0x0802, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1624*/ { 0x0133, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1625*/ { 0x0134, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1626*/ { 0x0135, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULLQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1627*/ { 0x0803, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1628*/ { 0x0804, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1629*/ { 0x0805, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*162A*/ { 0x0806, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*162B*/ { 0x0807, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*162C*/ { 0x0808, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x40, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULLW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*162D*/ { 0x0508, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*162E*/ { 0x0509, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*162F*/ { 0x050A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1630*/ { 0x050B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1631*/ { 0x0809, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1632*/ { 0x080A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1633*/ { 0x080B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1634*/ { 0x080C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1635*/ { 0x080D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1636*/ { 0x080E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD5, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULTISHIFTQB                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*1637*/ { 0x080F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x83, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1638*/ { 0x0810, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x83, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1639*/ { 0x0811, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x83, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*163A*/ { 0x0812, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x83, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*163B*/ { 0x0813, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x83, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*163C*/ { 0x0814, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x83, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPMULUDQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*163D*/ { 0x050C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*163E*/ { 0x050D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*163F*/ { 0x050E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1640*/ { 0x050F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1641*/ { 0x0815, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1642*/ { 0x0816, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1643*/ { 0x0817, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1644*/ { 0x0818, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1645*/ { 0x0819, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1646*/ { 0x081A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF4, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPOPCNTD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1647*/ { 0x081B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1648*/ { 0x081C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPOPCNTQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1649*/ { 0x081D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*164A*/ { 0x081E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x55, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPOR                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*164B*/ { 0x0510, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*164C*/ { 0x0511, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*164D*/ { 0x0512, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*164E*/ { 0x0513, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPORD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*164F*/ { 0x081F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1650*/ { 0x0820, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1651*/ { 0x0821, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1652*/ { 0x0822, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1653*/ { 0x0823, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1654*/ { 0x0824, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1655*/ { 0x0136, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1656*/ { 0x0137, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1657*/ { 0x0138, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPORQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1658*/ { 0x0825, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1659*/ { 0x0826, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*165A*/ { 0x0827, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*165B*/ { 0x0828, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*165C*/ { 0x0829, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*165D*/ { 0x082A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*165E*/ { 0x0139, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*165F*/ { 0x013A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*1660*/ { 0x013B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPPERM                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1661*/ { 0x0088, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA3, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1662*/ { 0x0089, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA3, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1663*/ { 0x008A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA3, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1664*/ { 0x008B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xA3, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCH0                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1665*/ { 0x0514, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1666*/ { 0x013C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCH1                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1667*/ { 0x0515, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1668*/ { 0x013D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCH2                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1669*/ { 0x0516, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*166A*/ { 0x013E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCHE0                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*166B*/ { 0x0517, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*166C*/ { 0x013F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCHE1                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*166D*/ { 0x0518, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*166E*/ { 0x0140, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCHE2                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*166F*/ { 0x0519, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1670*/ { 0x0141, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCHENTA                                                                              */ +    /* ------------------------------------------------------------------------------------------ */+    /*1671*/ { 0x051A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1672*/ { 0x0142, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPREFETCHNTA                                                                               */ +    /* ------------------------------------------------------------------------------------------ */+    /*1673*/ { 0x051B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1674*/ { 0x0143, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x18, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROLD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1675*/ { 0x082B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1676*/ { 0x082C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1677*/ { 0x082D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1678*/ { 0x082E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1679*/ { 0x082F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*167A*/ { 0x0830, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROLQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*167B*/ { 0x0831, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*167C*/ { 0x0832, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*167D*/ { 0x0833, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*167E*/ { 0x0834, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*167F*/ { 0x0835, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1680*/ { 0x0836, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x02, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROLVD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1681*/ { 0x0837, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1682*/ { 0x0838, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1683*/ { 0x0839, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1684*/ { 0x083A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1685*/ { 0x083B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1686*/ { 0x083C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROLVQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1687*/ { 0x083D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1688*/ { 0x083E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1689*/ { 0x083F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*168A*/ { 0x0840, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*168B*/ { 0x0841, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*168C*/ { 0x0842, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPRORD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*168D*/ { 0x0843, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*168E*/ { 0x0844, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*168F*/ { 0x0845, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1690*/ { 0x0846, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1691*/ { 0x0847, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1692*/ { 0x0848, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPRORQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1693*/ { 0x0849, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1694*/ { 0x084A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1695*/ { 0x084B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1696*/ { 0x084C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1697*/ { 0x084D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1698*/ { 0x084E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x01, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPRORVD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1699*/ { 0x084F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*169A*/ { 0x0850, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*169B*/ { 0x0851, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*169C*/ { 0x0852, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*169D*/ { 0x0853, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*169E*/ { 0x0854, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPRORVQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*169F*/ { 0x0855, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16A0*/ { 0x0856, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16A1*/ { 0x0857, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*16A2*/ { 0x0858, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*16A3*/ { 0x0859, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*16A4*/ { 0x085A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROTB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16A5*/ { 0x008C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC0, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16A6*/ { 0x008D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC0, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16A7*/ { 0x008E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x90, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16A8*/ { 0x008F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x90, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16A9*/ { 0x0090, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x90, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16AA*/ { 0x0091, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x90, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROTD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16AB*/ { 0x0092, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16AC*/ { 0x0093, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC2, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16AD*/ { 0x0094, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x92, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16AE*/ { 0x0095, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x92, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16AF*/ { 0x0096, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x92, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16B0*/ { 0x0097, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x92, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROTQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16B1*/ { 0x0098, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC3, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16B2*/ { 0x0099, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC3, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16B3*/ { 0x009A, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x93, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16B4*/ { 0x009B, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x93, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16B5*/ { 0x009C, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x93, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16B6*/ { 0x009D, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x93, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPROTW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16B7*/ { 0x009E, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC1, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16B8*/ { 0x009F, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0xC1, ZYDIS_OPCODE_MAP_XOP8   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16B9*/ { 0x00A0, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x91, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16BA*/ { 0x00A1, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x91, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16BB*/ { 0x00A2, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x91, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16BC*/ { 0x00A3, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x91, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSADBW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*16BD*/ { 0x051C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16BE*/ { 0x051D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16BF*/ { 0x051E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16C0*/ { 0x051F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16C1*/ { 0x085B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16C2*/ { 0x085C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16C3*/ { 0x085D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16C4*/ { 0x085E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16C5*/ { 0x085F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*16C6*/ { 0x0860, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSBBD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16C7*/ { 0x0144, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16C8*/ { 0x0145, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*16C9*/ { 0x0146, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSBBRD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*16CA*/ { 0x0147, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16CB*/ { 0x0148, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*16CC*/ { 0x0149, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSCATTERDD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*16CD*/ { 0x0861, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16CE*/ { 0x0862, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16CF*/ { 0x0863, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*16D0*/ { 0x014A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSCATTERDQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*16D1*/ { 0x0864, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16D2*/ { 0x0865, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*16D3*/ { 0x0866, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*16D4*/ { 0x014B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA0, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSCATTERQD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*16D5*/ { 0x0867, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16D6*/ { 0x0868, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16D7*/ { 0x0869, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSCATTERQQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*16D8*/ { 0x086A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16D9*/ { 0x086B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*16DA*/ { 0x086C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA1, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHAB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16DB*/ { 0x00A4, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x98, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16DC*/ { 0x00A5, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x98, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16DD*/ { 0x00A6, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x98, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16DE*/ { 0x00A7, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x98, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHAD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16DF*/ { 0x00A8, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9A, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16E0*/ { 0x00A9, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9A, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16E1*/ { 0x00AA, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9A, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16E2*/ { 0x00AB, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9A, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHAQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16E3*/ { 0x00AC, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9B, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16E4*/ { 0x00AD, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9B, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16E5*/ { 0x00AE, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9B, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16E6*/ { 0x00AF, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x9B, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHAW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16E7*/ { 0x00B0, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x99, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16E8*/ { 0x00B1, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x99, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16E9*/ { 0x00B2, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x99, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16EA*/ { 0x00B3, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x99, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHLB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16EB*/ { 0x00B4, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x94, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16EC*/ { 0x00B5, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x94, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16ED*/ { 0x00B6, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x94, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16EE*/ { 0x00B7, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x94, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHLD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16EF*/ { 0x00B8, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x96, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16F0*/ { 0x00B9, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x96, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16F1*/ { 0x00BA, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x96, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16F2*/ { 0x00BB, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x96, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHLQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16F3*/ { 0x00BC, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x97, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16F4*/ { 0x00BD, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x97, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16F5*/ { 0x00BE, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x97, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16F6*/ { 0x00BF, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x97, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHLW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*16F7*/ { 0x00C0, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x95, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16F8*/ { 0x00C1, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x95, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16F9*/ { 0x00C2, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x95, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*16FA*/ { 0x00C3, ZYDIS_INSTRUCTION_ENCODING_XOP    , 0x95, ZYDIS_OPCODE_MAP_XOP9   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHUFB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*16FB*/ { 0x0520, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16FC*/ { 0x0521, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*16FD*/ { 0x0522, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16FE*/ { 0x0523, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*16FF*/ { 0x086D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1700*/ { 0x086E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1701*/ { 0x086F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1702*/ { 0x0870, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1703*/ { 0x0871, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1704*/ { 0x0872, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x00, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHUFD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1705*/ { 0x0524, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1706*/ { 0x0525, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1707*/ { 0x0526, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1708*/ { 0x0527, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1709*/ { 0x0873, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*170A*/ { 0x0874, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*170B*/ { 0x0875, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*170C*/ { 0x0876, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*170D*/ { 0x0877, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*170E*/ { 0x0878, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*170F*/ { 0x014C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1710*/ { 0x014D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*1711*/ { 0x014E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHUFHW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1712*/ { 0x0528, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1713*/ { 0x0529, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1714*/ { 0x052A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1715*/ { 0x052B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1716*/ { 0x0879, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1717*/ { 0x087A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1718*/ { 0x087B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1719*/ { 0x087C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*171A*/ { 0x087D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*171B*/ { 0x087E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSHUFLW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*171C*/ { 0x052C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*171D*/ { 0x052D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*171E*/ { 0x052E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*171F*/ { 0x052F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1720*/ { 0x087F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1721*/ { 0x0880, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1722*/ { 0x0881, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1723*/ { 0x0882, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1724*/ { 0x0883, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1725*/ { 0x0884, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x70, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSIGNB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1726*/ { 0x0530, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1727*/ { 0x0531, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1728*/ { 0x0532, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1729*/ { 0x0533, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSIGND                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*172A*/ { 0x0534, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*172B*/ { 0x0535, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*172C*/ { 0x0536, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*172D*/ { 0x0537, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0A, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSIGNW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*172E*/ { 0x0538, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*172F*/ { 0x0539, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1730*/ { 0x053A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1731*/ { 0x053B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1732*/ { 0x053C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1733*/ { 0x053D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1734*/ { 0x053E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1735*/ { 0x053F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1736*/ { 0x0540, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1737*/ { 0x0541, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1738*/ { 0x0885, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1739*/ { 0x0886, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*173A*/ { 0x0887, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*173B*/ { 0x0888, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*173C*/ { 0x0889, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*173D*/ { 0x088A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*173E*/ { 0x088B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*173F*/ { 0x088C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1740*/ { 0x088D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1741*/ { 0x088E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1742*/ { 0x088F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1743*/ { 0x0890, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1744*/ { 0x014F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1745*/ { 0x0150, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*1746*/ { 0x0151, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLDQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1747*/ { 0x0542, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1748*/ { 0x0543, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1749*/ { 0x0891, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*174A*/ { 0x0892, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*174B*/ { 0x0893, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*174C*/ { 0x0894, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*174D*/ { 0x0895, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*174E*/ { 0x0896, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x80, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*174F*/ { 0x0544, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1750*/ { 0x0545, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1751*/ { 0x0546, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1752*/ { 0x0547, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1753*/ { 0x0548, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1754*/ { 0x0549, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1755*/ { 0x0897, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1756*/ { 0x0898, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1757*/ { 0x0899, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1758*/ { 0x089A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1759*/ { 0x089B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*175A*/ { 0x089C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*175B*/ { 0x089D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*175C*/ { 0x089E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*175D*/ { 0x089F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*175E*/ { 0x08A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*175F*/ { 0x08A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1760*/ { 0x08A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLVD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1761*/ { 0x054A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1762*/ { 0x054B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1763*/ { 0x054C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1764*/ { 0x054D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1765*/ { 0x08A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1766*/ { 0x08A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1767*/ { 0x08A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1768*/ { 0x08A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1769*/ { 0x08A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*176A*/ { 0x08A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*176B*/ { 0x0152, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*176C*/ { 0x0153, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*176D*/ { 0x0154, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLVQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*176E*/ { 0x054E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*176F*/ { 0x054F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1770*/ { 0x0550, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1771*/ { 0x0551, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1772*/ { 0x08A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1773*/ { 0x08AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1774*/ { 0x08AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1775*/ { 0x08AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1776*/ { 0x08AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1777*/ { 0x08AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x47, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLVW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1778*/ { 0x08AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1779*/ { 0x08B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*177A*/ { 0x08B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*177B*/ { 0x08B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*177C*/ { 0x08B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*177D*/ { 0x08B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x12, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSLLW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*177E*/ { 0x0552, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*177F*/ { 0x0553, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1780*/ { 0x0554, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1781*/ { 0x0555, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1782*/ { 0x0556, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1783*/ { 0x0557, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1784*/ { 0x08B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1785*/ { 0x08B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1786*/ { 0x08B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1787*/ { 0x08B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1788*/ { 0x08B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1789*/ { 0x08BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*178A*/ { 0x08BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*178B*/ { 0x08BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*178C*/ { 0x08BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*178D*/ { 0x08BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*178E*/ { 0x08BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*178F*/ { 0x08C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRAD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1790*/ { 0x0558, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1791*/ { 0x0559, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1792*/ { 0x055A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1793*/ { 0x055B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1794*/ { 0x055C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1795*/ { 0x055D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1796*/ { 0x08C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1797*/ { 0x08C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1798*/ { 0x08C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1799*/ { 0x08C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*179A*/ { 0x08C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*179B*/ { 0x08C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*179C*/ { 0x08C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*179D*/ { 0x08C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*179E*/ { 0x08C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*179F*/ { 0x08CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17A0*/ { 0x08CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17A1*/ { 0x08CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17A2*/ { 0x0155, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*17A3*/ { 0x0156, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*17A4*/ { 0x0157, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRAQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*17A5*/ { 0x08CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17A6*/ { 0x08CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17A7*/ { 0x08CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17A8*/ { 0x08D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17A9*/ { 0x08D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*17AA*/ { 0x08D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*17AB*/ { 0x08D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17AC*/ { 0x08D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17AD*/ { 0x08D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17AE*/ { 0x08D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17AF*/ { 0x08D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*17B0*/ { 0x08D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRAVD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*17B1*/ { 0x055E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17B2*/ { 0x055F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17B3*/ { 0x0560, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17B4*/ { 0x0561, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17B5*/ { 0x08D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17B6*/ { 0x08DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17B7*/ { 0x08DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17B8*/ { 0x08DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17B9*/ { 0x08DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17BA*/ { 0x08DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17BB*/ { 0x0158, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17BC*/ { 0x0159, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*17BD*/ { 0x015A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRAVQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*17BE*/ { 0x08DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17BF*/ { 0x08E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17C0*/ { 0x08E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17C1*/ { 0x08E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17C2*/ { 0x08E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*17C3*/ { 0x08E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x46, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRAVW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*17C4*/ { 0x08E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17C5*/ { 0x08E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*17C6*/ { 0x08E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17C7*/ { 0x08E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*17C8*/ { 0x08E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*17C9*/ { 0x08EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x11, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRAW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*17CA*/ { 0x0562, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17CB*/ { 0x0563, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17CC*/ { 0x0564, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17CD*/ { 0x0565, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17CE*/ { 0x0566, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17CF*/ { 0x0567, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17D0*/ { 0x08EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17D1*/ { 0x08EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17D2*/ { 0x08ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17D3*/ { 0x08EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17D4*/ { 0x08EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17D5*/ { 0x08F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17D6*/ { 0x08F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17D7*/ { 0x08F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17D8*/ { 0x08F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17D9*/ { 0x08F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17DA*/ { 0x08F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17DB*/ { 0x08F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*17DC*/ { 0x0568, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17DD*/ { 0x0569, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17DE*/ { 0x056A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17DF*/ { 0x056B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17E0*/ { 0x056C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17E1*/ { 0x056D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17E2*/ { 0x08F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17E3*/ { 0x08F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17E4*/ { 0x08F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17E5*/ { 0x08FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17E6*/ { 0x08FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17E7*/ { 0x08FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17E8*/ { 0x08FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17E9*/ { 0x08FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17EA*/ { 0x08FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17EB*/ { 0x0900, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17EC*/ { 0x0901, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17ED*/ { 0x0902, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD2, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17EE*/ { 0x015B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*17EF*/ { 0x015C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*17F0*/ { 0x015D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x72, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLDQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*17F1*/ { 0x056E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17F2*/ { 0x056F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17F3*/ { 0x0903, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17F4*/ { 0x0904, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17F5*/ { 0x0905, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17F6*/ { 0x0906, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17F7*/ { 0x0907, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*17F8*/ { 0x0908, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*17F9*/ { 0x0570, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17FA*/ { 0x0571, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17FB*/ { 0x0572, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17FC*/ { 0x0573, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*17FD*/ { 0x0574, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17FE*/ { 0x0575, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*17FF*/ { 0x0909, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1800*/ { 0x090A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1801*/ { 0x090B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1802*/ { 0x090C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1803*/ { 0x090D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1804*/ { 0x090E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x73, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1805*/ { 0x090F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1806*/ { 0x0910, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1807*/ { 0x0911, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1808*/ { 0x0912, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1809*/ { 0x0913, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*180A*/ { 0x0914, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD3, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLVD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*180B*/ { 0x0576, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*180C*/ { 0x0577, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*180D*/ { 0x0578, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*180E*/ { 0x0579, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*180F*/ { 0x0915, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1810*/ { 0x0916, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1811*/ { 0x0917, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1812*/ { 0x0918, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1813*/ { 0x0919, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1814*/ { 0x091A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1815*/ { 0x015E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1816*/ { 0x015F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*1817*/ { 0x0160, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLVQ                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1818*/ { 0x057A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1819*/ { 0x057B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*181A*/ { 0x057C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*181B*/ { 0x057D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*181C*/ { 0x091B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*181D*/ { 0x091C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*181E*/ { 0x091D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*181F*/ { 0x091E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1820*/ { 0x091F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1821*/ { 0x0920, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x45, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLVW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1822*/ { 0x0921, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1823*/ { 0x0922, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1824*/ { 0x0923, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1825*/ { 0x0924, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1826*/ { 0x0925, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1827*/ { 0x0926, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x10, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSRLW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1828*/ { 0x057E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1829*/ { 0x057F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*182A*/ { 0x0580, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*182B*/ { 0x0581, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*182C*/ { 0x0582, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*182D*/ { 0x0583, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*182E*/ { 0x0927, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*182F*/ { 0x0928, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1830*/ { 0x0929, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1831*/ { 0x092A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1832*/ { 0x092B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1833*/ { 0x092C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x71, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1834*/ { 0x092D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1835*/ { 0x092E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1836*/ { 0x092F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1837*/ { 0x0930, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1838*/ { 0x0931, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1839*/ { 0x0932, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBB                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*183A*/ { 0x0584, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*183B*/ { 0x0585, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*183C*/ { 0x0586, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*183D*/ { 0x0587, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*183E*/ { 0x0933, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*183F*/ { 0x0934, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1840*/ { 0x0935, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1841*/ { 0x0936, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1842*/ { 0x0937, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1843*/ { 0x0938, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1844*/ { 0x0588, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1845*/ { 0x0589, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1846*/ { 0x058A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1847*/ { 0x058B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1848*/ { 0x0939, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1849*/ { 0x093A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*184A*/ { 0x093B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*184B*/ { 0x093C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*184C*/ { 0x093D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*184D*/ { 0x093E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*184E*/ { 0x0161, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*184F*/ { 0x0162, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1850*/ { 0x0163, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xFA, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1851*/ { 0x058C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1852*/ { 0x058D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1853*/ { 0x058E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1854*/ { 0x058F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1855*/ { 0x093F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1856*/ { 0x0940, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1857*/ { 0x0941, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1858*/ { 0x0942, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1859*/ { 0x0943, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*185A*/ { 0x0944, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xFB, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBRD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*185B*/ { 0x0164, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*185C*/ { 0x0165, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*185D*/ { 0x0166, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBRSETBD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*185E*/ { 0x0167, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*185F*/ { 0x0168, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1860*/ { 0x0169, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBSB                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1861*/ { 0x0590, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1862*/ { 0x0591, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1863*/ { 0x0592, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1864*/ { 0x0593, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1865*/ { 0x0945, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1866*/ { 0x0946, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1867*/ { 0x0947, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1868*/ { 0x0948, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1869*/ { 0x0949, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*186A*/ { 0x094A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBSETBD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*186B*/ { 0x016A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*186C*/ { 0x016B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*186D*/ { 0x016C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBSW                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*186E*/ { 0x0594, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*186F*/ { 0x0595, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1870*/ { 0x0596, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1871*/ { 0x0597, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1872*/ { 0x094B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1873*/ { 0x094C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1874*/ { 0x094D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1875*/ { 0x094E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1876*/ { 0x094F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1877*/ { 0x0950, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xE9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBUSB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1878*/ { 0x0598, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1879*/ { 0x0599, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*187A*/ { 0x059A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*187B*/ { 0x059B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*187C*/ { 0x0951, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*187D*/ { 0x0952, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*187E*/ { 0x0953, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*187F*/ { 0x0954, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1880*/ { 0x0955, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1881*/ { 0x0956, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD8, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBUSW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1882*/ { 0x059C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1883*/ { 0x059D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1884*/ { 0x059E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1885*/ { 0x059F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1886*/ { 0x0957, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1887*/ { 0x0958, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1888*/ { 0x0959, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1889*/ { 0x095A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*188A*/ { 0x095B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*188B*/ { 0x095C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xD9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPSUBW                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*188C*/ { 0x05A0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*188D*/ { 0x05A1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*188E*/ { 0x05A2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*188F*/ { 0x05A3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1890*/ { 0x095D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1891*/ { 0x095E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1892*/ { 0x095F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1893*/ { 0x0960, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1894*/ { 0x0961, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1895*/ { 0x0962, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xF9, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTERNLOGD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1896*/ { 0x0963, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1897*/ { 0x0964, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1898*/ { 0x0965, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1899*/ { 0x0966, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*189A*/ { 0x0967, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*189B*/ { 0x0968, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTERNLOGQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*189C*/ { 0x0969, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*189D*/ { 0x096A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*189E*/ { 0x096B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*189F*/ { 0x096C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18A0*/ { 0x096D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*18A1*/ { 0x096E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x25, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTEST                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*18A2*/ { 0x05A4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18A3*/ { 0x05A5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18A4*/ { 0x05A6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18A5*/ { 0x05A7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x17, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTMB                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*18A6*/ { 0x096F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18A7*/ { 0x0970, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18A8*/ { 0x0971, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18A9*/ { 0x0972, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18AA*/ { 0x0973, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18AB*/ { 0x0974, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTMD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*18AC*/ { 0x0975, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18AD*/ { 0x0976, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18AE*/ { 0x0977, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18AF*/ { 0x0978, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18B0*/ { 0x0979, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18B1*/ { 0x097A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18B2*/ { 0x016D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18B3*/ { 0x016E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*18B4*/ { 0x016F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTMQ                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*18B5*/ { 0x097B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18B6*/ { 0x097C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18B7*/ { 0x097D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18B8*/ { 0x097E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18B9*/ { 0x097F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*18BA*/ { 0x0980, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTMW                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*18BB*/ { 0x0981, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18BC*/ { 0x0982, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18BD*/ { 0x0983, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18BE*/ { 0x0984, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18BF*/ { 0x0985, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*18C0*/ { 0x0986, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTNMB                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*18C1*/ { 0x0987, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18C2*/ { 0x0988, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18C3*/ { 0x0989, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18C4*/ { 0x098A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18C5*/ { 0x098B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18C6*/ { 0x098C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTNMD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*18C7*/ { 0x098D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18C8*/ { 0x098E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18C9*/ { 0x098F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18CA*/ { 0x0990, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18CB*/ { 0x0991, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18CC*/ { 0x0992, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTNMQ                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*18CD*/ { 0x0993, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18CE*/ { 0x0994, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18CF*/ { 0x0995, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18D0*/ { 0x0996, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18D1*/ { 0x0997, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*18D2*/ { 0x0998, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x27, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPTESTNMW                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*18D3*/ { 0x0999, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18D4*/ { 0x099A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18D5*/ { 0x099B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18D6*/ { 0x099C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18D7*/ { 0x099D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*18D8*/ { 0x099E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x26, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKHBW                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*18D9*/ { 0x05A8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18DA*/ { 0x05A9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18DB*/ { 0x05AA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18DC*/ { 0x05AB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18DD*/ { 0x099F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18DE*/ { 0x09A0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18DF*/ { 0x09A1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18E0*/ { 0x09A2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18E1*/ { 0x09A3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18E2*/ { 0x09A4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x68, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKHDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*18E3*/ { 0x05AC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18E4*/ { 0x05AD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18E5*/ { 0x05AE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18E6*/ { 0x05AF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18E7*/ { 0x09A5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18E8*/ { 0x09A6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18E9*/ { 0x09A7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18EA*/ { 0x09A8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18EB*/ { 0x09A9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*18EC*/ { 0x09AA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6A, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKHQDQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*18ED*/ { 0x05B0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18EE*/ { 0x05B1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18EF*/ { 0x05B2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18F0*/ { 0x05B3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18F1*/ { 0x09AB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18F2*/ { 0x09AC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*18F3*/ { 0x09AD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18F4*/ { 0x09AE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*18F5*/ { 0x09AF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*18F6*/ { 0x09B0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKHWD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*18F7*/ { 0x05B4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18F8*/ { 0x05B5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18F9*/ { 0x05B6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18FA*/ { 0x05B7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18FB*/ { 0x09B1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18FC*/ { 0x09B2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*18FD*/ { 0x09B3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18FE*/ { 0x09B4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*18FF*/ { 0x09B5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1900*/ { 0x09B6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x69, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKLBW                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1901*/ { 0x05B8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1902*/ { 0x05B9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1903*/ { 0x05BA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1904*/ { 0x05BB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1905*/ { 0x09B7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1906*/ { 0x09B8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1907*/ { 0x09B9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1908*/ { 0x09BA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1909*/ { 0x09BB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*190A*/ { 0x09BC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x60, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKLDQ                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*190B*/ { 0x05BC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*190C*/ { 0x05BD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*190D*/ { 0x05BE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*190E*/ { 0x05BF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*190F*/ { 0x09BD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1910*/ { 0x09BE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1911*/ { 0x09BF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1912*/ { 0x09C0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1913*/ { 0x09C1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1914*/ { 0x09C2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x62, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKLQDQ                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*1915*/ { 0x05C0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1916*/ { 0x05C1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1917*/ { 0x05C2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1918*/ { 0x05C3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1919*/ { 0x09C3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*191A*/ { 0x09C4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*191B*/ { 0x09C5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*191C*/ { 0x09C6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*191D*/ { 0x09C7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*191E*/ { 0x09C8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x6C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPUNPCKLWD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*191F*/ { 0x05C4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1920*/ { 0x05C5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1921*/ { 0x05C6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1922*/ { 0x05C7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1923*/ { 0x09C9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1924*/ { 0x09CA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1925*/ { 0x09CB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1926*/ { 0x09CC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1927*/ { 0x09CD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1928*/ { 0x09CE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x61, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPXOR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1929*/ { 0x05C8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*192A*/ { 0x05C9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*192B*/ { 0x05CA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*192C*/ { 0x05CB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPXORD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*192D*/ { 0x09CF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*192E*/ { 0x09D0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*192F*/ { 0x09D1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1930*/ { 0x09D2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1931*/ { 0x09D3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1932*/ { 0x09D4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1933*/ { 0x0170, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1934*/ { 0x0171, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1935*/ { 0x0172, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VPXORQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1936*/ { 0x09D5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1937*/ { 0x09D6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1938*/ { 0x09D7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1939*/ { 0x09D8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*193A*/ { 0x09D9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*193B*/ { 0x09DA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*193C*/ { 0x0173, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*193D*/ { 0x0174, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*193E*/ { 0x0175, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xEF, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRANGEPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*193F*/ { 0x09DB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1940*/ { 0x09DC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1941*/ { 0x09DD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1942*/ { 0x09DE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1943*/ { 0x09DF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1944*/ { 0x09E0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1945*/ { 0x09E1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRANGEPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1946*/ { 0x09E2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1947*/ { 0x09E3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1948*/ { 0x09E4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1949*/ { 0x09E5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*194A*/ { 0x09E6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*194B*/ { 0x09E7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*194C*/ { 0x09E8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x50, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRANGESD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*194D*/ { 0x09E9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*194E*/ { 0x09EA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*194F*/ { 0x09EB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRANGESS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1950*/ { 0x09EC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1951*/ { 0x09ED, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1952*/ { 0x09EE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP14PD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1953*/ { 0x09EF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1954*/ { 0x09F0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1955*/ { 0x09F1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1956*/ { 0x09F2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1957*/ { 0x09F3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1958*/ { 0x09F4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP14PS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1959*/ { 0x09F5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*195A*/ { 0x09F6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*195B*/ { 0x09F7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*195C*/ { 0x09F8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*195D*/ { 0x09F9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*195E*/ { 0x09FA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP14SD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*195F*/ { 0x09FB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1960*/ { 0x09FC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP14SS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1961*/ { 0x09FD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1962*/ { 0x09FE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP23PS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1963*/ { 0x0176, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1964*/ { 0x0177, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*1965*/ { 0x0178, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP28PD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1966*/ { 0x09FF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1967*/ { 0x0A00, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1968*/ { 0x0A01, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP28PS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1969*/ { 0x0A02, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*196A*/ { 0x0A03, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*196B*/ { 0x0A04, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCA, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP28SD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*196C*/ { 0x0A05, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*196D*/ { 0x0A06, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*196E*/ { 0x0A07, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCP28SS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*196F*/ { 0x0A08, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1970*/ { 0x0A09, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1971*/ { 0x0A0A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCPPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1972*/ { 0x05CC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1973*/ { 0x05CD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1974*/ { 0x05CE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1975*/ { 0x05CF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRCPSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1976*/ { 0x05D0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1977*/ { 0x05D1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x53, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VREDUCEPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1978*/ { 0x0A0B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1979*/ { 0x0A0C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*197A*/ { 0x0A0D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*197B*/ { 0x0A0E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*197C*/ { 0x0A0F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*197D*/ { 0x0A10, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*197E*/ { 0x0A11, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VREDUCEPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*197F*/ { 0x0A12, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1980*/ { 0x0A13, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1981*/ { 0x0A14, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1982*/ { 0x0A15, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1983*/ { 0x0A16, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1984*/ { 0x0A17, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1985*/ { 0x0A18, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x56, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VREDUCESD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1986*/ { 0x0A19, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1987*/ { 0x0A1A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1988*/ { 0x0A1B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VREDUCESS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1989*/ { 0x0A1C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*198A*/ { 0x0A1D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*198B*/ { 0x0A1E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRNDFXPNTPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*198C*/ { 0x0179, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*198D*/ { 0x017A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /*198E*/ { 0x017B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRNDFXPNTPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*198F*/ { 0x017C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1990*/ { 0x017D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*1991*/ { 0x017E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x52, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRNDSCALEPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*1992*/ { 0x0A1F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1993*/ { 0x0A20, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1994*/ { 0x0A21, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1995*/ { 0x0A22, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1996*/ { 0x0A23, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1997*/ { 0x0A24, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1998*/ { 0x0A25, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRNDSCALEPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*1999*/ { 0x0A26, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*199A*/ { 0x0A27, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*199B*/ { 0x0A28, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*199C*/ { 0x0A29, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*199D*/ { 0x0A2A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*199E*/ { 0x0A2B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*199F*/ { 0x0A2C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRNDSCALESD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*19A0*/ { 0x0A2D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19A1*/ { 0x0A2E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*19A2*/ { 0x0A2F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRNDSCALESS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*19A3*/ { 0x0A30, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19A4*/ { 0x0A31, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*19A5*/ { 0x0A32, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VROUNDPD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19A6*/ { 0x05D2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19A7*/ { 0x05D3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19A8*/ { 0x05D4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19A9*/ { 0x05D5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x09, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VROUNDPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19AA*/ { 0x05D6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19AB*/ { 0x05D7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19AC*/ { 0x05D8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19AD*/ { 0x05D9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x08, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VROUNDSD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19AE*/ { 0x05DA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19AF*/ { 0x05DB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0B, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VROUNDSS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19B0*/ { 0x05DC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19B1*/ { 0x05DD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0A, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT14PD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19B2*/ { 0x0A33, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19B3*/ { 0x0A34, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19B4*/ { 0x0A35, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*19B5*/ { 0x0A36, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*19B6*/ { 0x0A37, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*19B7*/ { 0x0A38, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT14PS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19B8*/ { 0x0A39, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19B9*/ { 0x0A3A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19BA*/ { 0x0A3B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19BB*/ { 0x0A3C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19BC*/ { 0x0A3D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*19BD*/ { 0x0A3E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT14SD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19BE*/ { 0x0A3F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19BF*/ { 0x0A40, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT14SS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19C0*/ { 0x0A41, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19C1*/ { 0x0A42, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x4F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT23PS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19C2*/ { 0x017F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19C3*/ { 0x0180, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /*19C4*/ { 0x0181, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xCB, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT28PD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19C5*/ { 0x0A43, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*19C6*/ { 0x0A44, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*19C7*/ { 0x0A45, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT28PS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19C8*/ { 0x0A46, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*19C9*/ { 0x0A47, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*19CA*/ { 0x0A48, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCC, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT28SD                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19CB*/ { 0x0A49, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19CC*/ { 0x0A4A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*19CD*/ { 0x0A4B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRT28SS                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*19CE*/ { 0x0A4C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19CF*/ { 0x0A4D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*19D0*/ { 0x0A4E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xCD, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRTPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19D1*/ { 0x05DE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19D2*/ { 0x05DF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19D3*/ { 0x05E0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19D4*/ { 0x05E1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VRSQRTSS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19D5*/ { 0x05E2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19D6*/ { 0x05E3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x52, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCALEFPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*19D7*/ { 0x0A4F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19D8*/ { 0x0A50, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19D9*/ { 0x0A51, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*19DA*/ { 0x0A52, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*19DB*/ { 0x0A53, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*19DC*/ { 0x0A54, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*19DD*/ { 0x0A55, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCALEFPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*19DE*/ { 0x0A56, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19DF*/ { 0x0A57, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19E0*/ { 0x0A58, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19E1*/ { 0x0A59, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19E2*/ { 0x0A5A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*19E3*/ { 0x0A5B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*19E4*/ { 0x0A5C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2C, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCALEFSD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*19E5*/ { 0x0A5D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19E6*/ { 0x0A5E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*19E7*/ { 0x0A5F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCALEFSS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*19E8*/ { 0x0A60, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19E9*/ { 0x0A61, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*19EA*/ { 0x0A62, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCALEPS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*19EB*/ { 0x0182, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x84, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19EC*/ { 0x0183, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x84, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*19ED*/ { 0x0184, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x84, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERDPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*19EE*/ { 0x0A63, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*19EF*/ { 0x0A64, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*19F0*/ { 0x0A65, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*19F1*/ { 0x0185, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERDPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*19F2*/ { 0x0A66, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*19F3*/ { 0x0A67, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*19F4*/ { 0x0A68, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*19F5*/ { 0x0186, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xA2, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF0DPD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*19F6*/ { 0x0A69, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF0DPS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*19F7*/ { 0x0A6A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*19F8*/ { 0x0187, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF0HINTDPD                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*19F9*/ { 0x0188, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF0HINTDPS                                                                         */ +    /* ------------------------------------------------------------------------------------------ */+    /*19FA*/ { 0x0189, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF0QPD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*19FB*/ { 0x0A6B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF0QPS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*19FC*/ { 0x0A6C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF1DPD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*19FD*/ { 0x0A6D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF1DPS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*19FE*/ { 0x0A6E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*19FF*/ { 0x018A, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_TRUE , 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF1QPD                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A00*/ { 0x0A6F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERPF1QPS                                                                             */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A01*/ { 0x0A70, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC7, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERQPD                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A02*/ { 0x0A71, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA3, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A03*/ { 0x0A72, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA3, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A04*/ { 0x0A73, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA3, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSCATTERQPS                                                                                */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A05*/ { 0x0A74, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA3, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A06*/ { 0x0A75, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA3, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A07*/ { 0x0A76, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xA3, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x06, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0x10, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSHUFF32X4                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A08*/ { 0x0A77, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A09*/ { 0x0A78, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A0A*/ { 0x0A79, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A0B*/ { 0x0A7A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSHUFF64X2                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A0C*/ { 0x0A7B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A0D*/ { 0x0A7C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A0E*/ { 0x0A7D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A0F*/ { 0x0A7E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x23, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSHUFI32X4                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A10*/ { 0x0A7F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A11*/ { 0x0A80, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A12*/ { 0x0A81, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A13*/ { 0x0A82, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSHUFI64X2                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A14*/ { 0x0A83, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A15*/ { 0x0A84, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A16*/ { 0x0A85, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A17*/ { 0x0A86, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x43, ZYDIS_OPCODE_MAP_0F3A   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSHUFPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A18*/ { 0x05E4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A19*/ { 0x05E5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A1A*/ { 0x05E6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A1B*/ { 0x05E7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A1C*/ { 0x0A87, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A1D*/ { 0x0A88, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A1E*/ { 0x0A89, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A1F*/ { 0x0A8A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A20*/ { 0x0A8B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A21*/ { 0x0A8C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSHUFPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A22*/ { 0x05E8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A23*/ { 0x05E9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A24*/ { 0x05EA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A25*/ { 0x05EB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A26*/ { 0x0A8D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A27*/ { 0x0A8E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A28*/ { 0x0A8F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A29*/ { 0x0A90, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A2A*/ { 0x0A91, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A2B*/ { 0x0A92, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0xC6, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSQRTPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A2C*/ { 0x05EC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A2D*/ { 0x05ED, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A2E*/ { 0x05EE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A2F*/ { 0x05EF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A30*/ { 0x0A93, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A31*/ { 0x0A94, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A32*/ { 0x0A95, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A33*/ { 0x0A96, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A34*/ { 0x0A97, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A35*/ { 0x0A98, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1A36*/ { 0x0A99, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSQRTPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A37*/ { 0x05F0, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A38*/ { 0x05F1, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A39*/ { 0x05F2, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A3A*/ { 0x05F3, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A3B*/ { 0x0A9A, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A3C*/ { 0x0A9B, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A3D*/ { 0x0A9C, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A3E*/ { 0x0A9D, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A3F*/ { 0x0A9E, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A40*/ { 0x0A9F, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1A41*/ { 0x0AA0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSQRTSD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A42*/ { 0x05F4, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A43*/ { 0x05F5, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A44*/ { 0x0AA1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A45*/ { 0x0AA2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1A46*/ { 0x0AA3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSQRTSS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A47*/ { 0x05F6, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A48*/ { 0x05F7, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A49*/ { 0x0AA4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A4A*/ { 0x0AA5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1A4B*/ { 0x0AA6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x51, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSTMXCSR                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A4C*/ { 0x05F8, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSUBPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A4D*/ { 0x05F9, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A4E*/ { 0x05FA, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A4F*/ { 0x05FB, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A50*/ { 0x05FC, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A51*/ { 0x0AA7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A52*/ { 0x0AA8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A53*/ { 0x0AA9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A54*/ { 0x0AAA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A55*/ { 0x0AAB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A56*/ { 0x0AAC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1A57*/ { 0x0AAD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A58*/ { 0x018B, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A59*/ { 0x018C, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*1A5A*/ { 0x018D, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSUBPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A5B*/ { 0x05FD, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A5C*/ { 0x05FE, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A5D*/ { 0x05FF, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A5E*/ { 0x0600, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A5F*/ { 0x0AAE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A60*/ { 0x0AAF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A61*/ { 0x0AB0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A62*/ { 0x0AB1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A63*/ { 0x0AB2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A64*/ { 0x0AB3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1A65*/ { 0x0AB4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A66*/ { 0x018E, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A67*/ { 0x018F, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1A68*/ { 0x0190, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSUBRPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A69*/ { 0x0191, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A6A*/ { 0x0192, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x01 },+    /*1A6B*/ { 0x0193, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSUBRPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A6C*/ { 0x0194, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A6D*/ { 0x0195, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01 },+    /*1A6E*/ { 0x0196, ZYDIS_INSTRUCTION_ENCODING_MVEX   , 0x6D, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x02 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSUBSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A6F*/ { 0x0601, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A70*/ { 0x0602, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A71*/ { 0x0AB5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A72*/ { 0x0AB6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1A73*/ { 0x0AB7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x03, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VSUBSS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A74*/ { 0x0603, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A75*/ { 0x0604, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A76*/ { 0x0AB8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A77*/ { 0x0AB9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1A78*/ { 0x0ABA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x5C, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VTESTPD                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A79*/ { 0x0605, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A7A*/ { 0x0606, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A7B*/ { 0x0607, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A7C*/ { 0x0608, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0F, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VTESTPS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A7D*/ { 0x0609, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A7E*/ { 0x060A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A7F*/ { 0x060B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A80*/ { 0x060C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x0E, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VUCOMISD                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A81*/ { 0x060D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A82*/ { 0x060E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A83*/ { 0x0ABB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A84*/ { 0x0ABC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x01, 0x03 },+    /*1A85*/ { 0x0ABD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VUCOMISS                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A86*/ { 0x060F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A87*/ { 0x0610, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A88*/ { 0x0ABE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A89*/ { 0x0ABF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03 },+    /*1A8A*/ { 0x0AC0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x2E, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VUNPCKHPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A8B*/ { 0x0611, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A8C*/ { 0x0612, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A8D*/ { 0x0613, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A8E*/ { 0x0614, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A8F*/ { 0x0AC1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A90*/ { 0x0AC2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1A91*/ { 0x0AC3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A92*/ { 0x0AC4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1A93*/ { 0x0AC5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1A94*/ { 0x0AC6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VUNPCKHPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A95*/ { 0x0615, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A96*/ { 0x0616, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A97*/ { 0x0617, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A98*/ { 0x0618, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A99*/ { 0x0AC7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A9A*/ { 0x0AC8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1A9B*/ { 0x0AC9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A9C*/ { 0x0ACA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1A9D*/ { 0x0ACB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1A9E*/ { 0x0ACC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x15, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VUNPCKLPD                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1A9F*/ { 0x0619, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AA0*/ { 0x061A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AA1*/ { 0x061B, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AA2*/ { 0x061C, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AA3*/ { 0x0ACD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1AA4*/ { 0x0ACE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1AA5*/ { 0x0ACF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1AA6*/ { 0x0AD0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1AA7*/ { 0x0AD1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1AA8*/ { 0x0AD2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VUNPCKLPS                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AA9*/ { 0x061D, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AAA*/ { 0x061E, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AAB*/ { 0x061F, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AAC*/ { 0x0620, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AAD*/ { 0x0AD3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AAE*/ { 0x0AD4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AAF*/ { 0x0AD5, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AB0*/ { 0x0AD6, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AB1*/ { 0x0AD7, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1AB2*/ { 0x0AD8, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x14, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VXORPD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AB3*/ { 0x0621, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AB4*/ { 0x0622, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AB5*/ { 0x0623, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AB6*/ { 0x0624, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AB7*/ { 0x0AD9, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1AB8*/ { 0x0ADA, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /*1AB9*/ { 0x0ADB, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1ABA*/ { 0x0ADC, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x01, 0x01, 0x03, 0x00, 0x03 },+    /*1ABB*/ { 0x0ADD, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /*1ABC*/ { 0x0ADE, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x02, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VXORPS                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ABD*/ { 0x0625, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ABE*/ { 0x0626, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ABF*/ { 0x0627, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AC0*/ { 0x0628, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AC1*/ { 0x0ADF, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AC2*/ { 0x0AE0, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AC3*/ { 0x0AE1, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AC4*/ { 0x0AE2, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /*1AC5*/ { 0x0AE3, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /*1AC6*/ { 0x0AE4, ZYDIS_INSTRUCTION_ENCODING_EVEX   , 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VZEROALL                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AC7*/ { 0x0629, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x77, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* VZEROUPPER                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AC8*/ { 0x062A, ZYDIS_INSTRUCTION_ENCODING_VEX    , 0x77, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WBINVD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AC9*/ { 0x06F9, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x09, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRFSBASE                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ACA*/ { 0x06FA, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRGSBASE                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ACB*/ { 0x06FB, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x04, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x02, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRMSR                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ACC*/ { 0x06FC, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x30, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRPKRU                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ACD*/ { 0x06FD, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x20, ZYDIS_TRUE , 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRSSD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ACE*/ { 0x06FE, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRSSQ                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1ACF*/ { 0x06FF, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF6, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRUSSD                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AD0*/ { 0x0700, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* WRUSSQ                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AD1*/ { 0x0701, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xF5, ZYDIS_OPCODE_MAP_0F38   , 0x04, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XABORT                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AD2*/ { 0x0702, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC6, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XADD                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AD3*/ { 0x0703, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AD4*/ { 0x0704, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC0, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AD5*/ { 0x0705, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AD6*/ { 0x0706, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC1, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XBEGIN                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AD7*/ { 0x0707, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x80, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XCHG                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AD8*/ { 0x0708, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x86, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AD9*/ { 0x0709, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x86, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ADA*/ { 0x070A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x87, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ADB*/ { 0x070B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x87, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ADC*/ { 0x070C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x90, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x02, 0x00, 0x03 },+    /*1ADD*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x91, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ADE*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x92, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1ADF*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x93, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AE0*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x94, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AE1*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x95, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AE2*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x96, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AE3*/ { 0x070D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x97, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XEND                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AE4*/ { 0x070E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XGETBV                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AE5*/ { 0x070F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XLAT                                                                                       */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AE6*/ { 0x0710, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xD7, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XOR                                                                                        */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AE7*/ { 0x0711, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x30, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AE8*/ { 0x0712, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x30, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AE9*/ { 0x0713, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x31, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AEA*/ { 0x0714, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x31, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AEB*/ { 0x0715, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x32, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AEC*/ { 0x0716, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x32, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AED*/ { 0x0717, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x33, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AEE*/ { 0x0718, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x33, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AEF*/ { 0x0719, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x34, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF0*/ { 0x071A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x35, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x0F, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF1*/ { 0x071B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF2*/ { 0x071C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x80, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF3*/ { 0x071D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF4*/ { 0x071E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x81, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF5*/ { 0x071F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF6*/ { 0x0720, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x82, ZYDIS_OPCODE_MAP_DEFAULT, 0x03, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF7*/ { 0x0721, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AF8*/ { 0x0722, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x83, ZYDIS_OPCODE_MAP_DEFAULT, 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XORPD                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AF9*/ { 0x0723, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AFA*/ { 0x0724, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x01, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XORPS                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AFB*/ { 0x0725, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /*1AFC*/ { 0x0726, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x57, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_FALSE, 0xFF, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XRSTOR                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AFD*/ { 0x0727, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XRSTOR64                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AFE*/ { 0x0728, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XRSTORS                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1AFF*/ { 0x0729, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XRSTORS64                                                                                  */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B00*/ { 0x072A, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x08, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVE                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B01*/ { 0x072B, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVE64                                                                                    */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B02*/ { 0x072C, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVEC                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B03*/ { 0x072D, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVEC64                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B04*/ { 0x072E, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x10, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVEOPT                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B05*/ { 0x072F, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVEOPT64                                                                                 */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B06*/ { 0x0730, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xAE, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x40, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVES                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B07*/ { 0x0731, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSAVES64                                                                                   */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B08*/ { 0x0732, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0xC7, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x07, ZYDIS_TRUE , 0x20, ZYDIS_FALSE, 0xFF, 0x00, 0x00, 0x01, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XSETBV                                                                                     */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B09*/ { 0x0733, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 },+    /* ------------------------------------------------------------------------------------------ */+    /* XTEST                                                                                      */ +    /* ------------------------------------------------------------------------------------------ */+    /*1B0A*/ { 0x0734, ZYDIS_INSTRUCTION_ENCODING_DEFAULT, 0x01, ZYDIS_OPCODE_MAP_0F     , 0x07, 0x07, 0x07, 0x08, ZYDIS_TRUE , 0x04, ZYDIS_TRUE , 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03 }+};
+ external/zydis/src/Generated/EnumISAExt.inc view
@@ -0,0 +1,77 @@+static const char* STR_ISAEXT[] =+{+    "INVALID",+    "ADOX_ADCX",+    "AES",+    "AMD3DNOW",+    "AVX",+    "AVX2",+    "AVX2GATHER",+    "AVX512EVEX",+    "AVX512VEX",+    "AVXAES",+    "BASE",+    "BMI1",+    "BMI2",+    "CET",+    "CLDEMOTE",+    "CLFLUSHOPT",+    "CLFSH",+    "CLWB",+    "CLZERO",+    "ENQCMD",+    "F16C",+    "FMA",+    "FMA4",+    "GFNI",+    "INVPCID",+    "KNC",+    "KNCE",+    "KNCV",+    "LONGMODE",+    "LZCNT",+    "MMX",+    "MONITOR",+    "MONITORX",+    "MOVBE",+    "MOVDIR",+    "MPX",+    "PADLOCK",+    "PAUSE",+    "PCLMULQDQ",+    "PCONFIG",+    "PKU",+    "PREFETCHWT1",+    "PT",+    "RDPID",+    "RDPRU",+    "RDRAND",+    "RDSEED",+    "RDTSCP",+    "RDWRFSGS",+    "RTM",+    "SGX",+    "SGX_ENCLV",+    "SHA",+    "SMAP",+    "SMX",+    "SSE",+    "SSE2",+    "SSE3",+    "SSE4",+    "SSE4A",+    "SSSE3",+    "SVM",+    "TBM",+    "VAES",+    "VMFUNC",+    "VPCLMULQDQ",+    "VTX",+    "WAITPKG",+    "X87",+    "XOP",+    "XSAVE",+    "XSAVEC",+    "XSAVEOPT",+    "XSAVES"+};
+ external/zydis/src/Generated/EnumISASet.inc view
@@ -0,0 +1,166 @@+static const char* STR_ISASET[] =+{+    "INVALID",+    "ADOX_ADCX",+    "AES",+    "AMD",+    "AMD3DNOW",+    "AVX",+    "AVX2",+    "AVX2GATHER",+    "AVX512BW_128",+    "AVX512BW_128N",+    "AVX512BW_256",+    "AVX512BW_512",+    "AVX512BW_KOP",+    "AVX512CD_128",+    "AVX512CD_256",+    "AVX512CD_512",+    "AVX512DQ_128",+    "AVX512DQ_128N",+    "AVX512DQ_256",+    "AVX512DQ_512",+    "AVX512DQ_KOP",+    "AVX512DQ_SCALAR",+    "AVX512ER_512",+    "AVX512ER_SCALAR",+    "AVX512F_128",+    "AVX512F_128N",+    "AVX512F_256",+    "AVX512F_512",+    "AVX512F_KOP",+    "AVX512F_SCALAR",+    "AVX512PF_512",+    "AVX512_4FMAPS_512",+    "AVX512_4FMAPS_SCALAR",+    "AVX512_4VNNIW_512",+    "AVX512_BF16_128",+    "AVX512_BF16_256",+    "AVX512_BF16_512",+    "AVX512_BITALG_128",+    "AVX512_BITALG_256",+    "AVX512_BITALG_512",+    "AVX512_GFNI_128",+    "AVX512_GFNI_256",+    "AVX512_GFNI_512",+    "AVX512_IFMA_128",+    "AVX512_IFMA_256",+    "AVX512_IFMA_512",+    "AVX512_VAES_128",+    "AVX512_VAES_256",+    "AVX512_VAES_512",+    "AVX512_VBMI2_128",+    "AVX512_VBMI2_256",+    "AVX512_VBMI2_512",+    "AVX512_VBMI_128",+    "AVX512_VBMI_256",+    "AVX512_VBMI_512",+    "AVX512_VNNI_128",+    "AVX512_VNNI_256",+    "AVX512_VNNI_512",+    "AVX512_VP2INTERSECT_128",+    "AVX512_VP2INTERSECT_256",+    "AVX512_VP2INTERSECT_512",+    "AVX512_VPCLMULQDQ_128",+    "AVX512_VPCLMULQDQ_256",+    "AVX512_VPCLMULQDQ_512",+    "AVX512_VPOPCNTDQ_128",+    "AVX512_VPOPCNTDQ_256",+    "AVX512_VPOPCNTDQ_512",+    "AVXAES",+    "AVX_GFNI",+    "BMI1",+    "BMI2",+    "CET",+    "CLDEMOTE",+    "CLFLUSHOPT",+    "CLFSH",+    "CLWB",+    "CLZERO",+    "CMOV",+    "CMPXCHG16B",+    "ENQCMD",+    "F16C",+    "FAT_NOP",+    "FCMOV",+    "FMA",+    "FMA4",+    "FXSAVE",+    "FXSAVE64",+    "GFNI",+    "I186",+    "I286PROTECTED",+    "I286REAL",+    "I386",+    "I486",+    "I486REAL",+    "I86",+    "INVPCID",+    "KNCE",+    "KNCJKBR",+    "KNCSTREAM",+    "KNCV",+    "KNC_MISC",+    "KNC_PF_HINT",+    "LAHF",+    "LONGMODE",+    "LZCNT",+    "MONITOR",+    "MONITORX",+    "MOVBE",+    "MOVDIR",+    "MPX",+    "PADLOCK_ACE",+    "PADLOCK_PHE",+    "PADLOCK_PMM",+    "PADLOCK_RNG",+    "PAUSE",+    "PCLMULQDQ",+    "PCONFIG",+    "PENTIUMMMX",+    "PENTIUMREAL",+    "PKU",+    "POPCNT",+    "PPRO",+    "PREFETCHWT1",+    "PREFETCH_NOP",+    "PT",+    "RDPID",+    "RDPMC",+    "RDPRU",+    "RDRAND",+    "RDSEED",+    "RDTSCP",+    "RDWRFSGS",+    "RTM",+    "SGX",+    "SGX_ENCLV",+    "SHA",+    "SMAP",+    "SMX",+    "SSE",+    "SSE2",+    "SSE2MMX",+    "SSE3",+    "SSE3X87",+    "SSE4",+    "SSE42",+    "SSE4A",+    "SSEMXCSR",+    "SSE_PREFETCH",+    "SSSE3",+    "SSSE3MMX",+    "SVM",+    "TBM",+    "VAES",+    "VMFUNC",+    "VPCLMULQDQ",+    "VTX",+    "WAITPKG",+    "X87",+    "XOP",+    "XSAVE",+    "XSAVEC",+    "XSAVEOPT",+    "XSAVES"+};
+ external/zydis/src/Generated/EnumInstructionCategory.inc view
@@ -0,0 +1,102 @@+static const char* STR_INSTRUCTIONCATEGORY[] =+{+    "INVALID",+    "ADOX_ADCX",+    "AES",+    "AMD3DNOW",+    "AVX",+    "AVX2",+    "AVX2GATHER",+    "AVX512",+    "AVX512_4FMAPS",+    "AVX512_4VNNIW",+    "AVX512_BITALG",+    "AVX512_VBMI",+    "AVX512_VP2INTERSECT",+    "BINARY",+    "BITBYTE",+    "BLEND",+    "BMI1",+    "BMI2",+    "BROADCAST",+    "CALL",+    "CET",+    "CLDEMOTE",+    "CLFLUSHOPT",+    "CLWB",+    "CLZERO",+    "CMOV",+    "COMPRESS",+    "COND_BR",+    "CONFLICT",+    "CONVERT",+    "DATAXFER",+    "DECIMAL",+    "ENQCMD",+    "EXPAND",+    "FCMOV",+    "FLAGOP",+    "FMA4",+    "GATHER",+    "GFNI",+    "IFMA",+    "INTERRUPT",+    "IO",+    "IOSTRINGOP",+    "KMASK",+    "KNC",+    "KNCMASK",+    "KNCSCALAR",+    "LOGICAL",+    "LOGICAL_FP",+    "LZCNT",+    "MISC",+    "MMX",+    "MOVDIR",+    "MPX",+    "NOP",+    "PADLOCK",+    "PCLMULQDQ",+    "PCONFIG",+    "PKU",+    "POP",+    "PREFETCH",+    "PREFETCHWT1",+    "PT",+    "PUSH",+    "RDPID",+    "RDPRU",+    "RDRAND",+    "RDSEED",+    "RDWRFSGS",+    "RET",+    "ROTATE",+    "SCATTER",+    "SEGOP",+    "SEMAPHORE",+    "SETCC",+    "SGX",+    "SHA",+    "SHIFT",+    "SMAP",+    "SSE",+    "STRINGOP",+    "STTNI",+    "SYSCALL",+    "SYSRET",+    "SYSTEM",+    "TBM",+    "UFMA",+    "UNCOND_BR",+    "VAES",+    "VBMI2",+    "VFMA",+    "VPCLMULQDQ",+    "VTX",+    "WAITPKG",+    "WIDENOP",+    "X87_ALU",+    "XOP",+    "XSAVE",+    "XSAVEOPT"+};
+ external/zydis/src/Generated/EnumMnemonic.inc view
@@ -0,0 +1,1609 @@+static const ZydisShortString STR_MNEMONIC[] =+{+    ZYDIS_MAKE_SHORTSTRING("invalid"),+    ZYDIS_MAKE_SHORTSTRING("aaa"),+    ZYDIS_MAKE_SHORTSTRING("aad"),+    ZYDIS_MAKE_SHORTSTRING("aam"),+    ZYDIS_MAKE_SHORTSTRING("aas"),+    ZYDIS_MAKE_SHORTSTRING("adc"),+    ZYDIS_MAKE_SHORTSTRING("adcx"),+    ZYDIS_MAKE_SHORTSTRING("add"),+    ZYDIS_MAKE_SHORTSTRING("addpd"),+    ZYDIS_MAKE_SHORTSTRING("addps"),+    ZYDIS_MAKE_SHORTSTRING("addsd"),+    ZYDIS_MAKE_SHORTSTRING("addss"),+    ZYDIS_MAKE_SHORTSTRING("addsubpd"),+    ZYDIS_MAKE_SHORTSTRING("addsubps"),+    ZYDIS_MAKE_SHORTSTRING("adox"),+    ZYDIS_MAKE_SHORTSTRING("aesdec"),+    ZYDIS_MAKE_SHORTSTRING("aesdeclast"),+    ZYDIS_MAKE_SHORTSTRING("aesenc"),+    ZYDIS_MAKE_SHORTSTRING("aesenclast"),+    ZYDIS_MAKE_SHORTSTRING("aesimc"),+    ZYDIS_MAKE_SHORTSTRING("aeskeygenassist"),+    ZYDIS_MAKE_SHORTSTRING("and"),+    ZYDIS_MAKE_SHORTSTRING("andn"),+    ZYDIS_MAKE_SHORTSTRING("andnpd"),+    ZYDIS_MAKE_SHORTSTRING("andnps"),+    ZYDIS_MAKE_SHORTSTRING("andpd"),+    ZYDIS_MAKE_SHORTSTRING("andps"),+    ZYDIS_MAKE_SHORTSTRING("arpl"),+    ZYDIS_MAKE_SHORTSTRING("bextr"),+    ZYDIS_MAKE_SHORTSTRING("blcfill"),+    ZYDIS_MAKE_SHORTSTRING("blci"),+    ZYDIS_MAKE_SHORTSTRING("blcic"),+    ZYDIS_MAKE_SHORTSTRING("blcmsk"),+    ZYDIS_MAKE_SHORTSTRING("blcs"),+    ZYDIS_MAKE_SHORTSTRING("blendpd"),+    ZYDIS_MAKE_SHORTSTRING("blendps"),+    ZYDIS_MAKE_SHORTSTRING("blendvpd"),+    ZYDIS_MAKE_SHORTSTRING("blendvps"),+    ZYDIS_MAKE_SHORTSTRING("blsfill"),+    ZYDIS_MAKE_SHORTSTRING("blsi"),+    ZYDIS_MAKE_SHORTSTRING("blsic"),+    ZYDIS_MAKE_SHORTSTRING("blsmsk"),+    ZYDIS_MAKE_SHORTSTRING("blsr"),+    ZYDIS_MAKE_SHORTSTRING("bndcl"),+    ZYDIS_MAKE_SHORTSTRING("bndcn"),+    ZYDIS_MAKE_SHORTSTRING("bndcu"),+    ZYDIS_MAKE_SHORTSTRING("bndldx"),+    ZYDIS_MAKE_SHORTSTRING("bndmk"),+    ZYDIS_MAKE_SHORTSTRING("bndmov"),+    ZYDIS_MAKE_SHORTSTRING("bndstx"),+    ZYDIS_MAKE_SHORTSTRING("bound"),+    ZYDIS_MAKE_SHORTSTRING("bsf"),+    ZYDIS_MAKE_SHORTSTRING("bsr"),+    ZYDIS_MAKE_SHORTSTRING("bswap"),+    ZYDIS_MAKE_SHORTSTRING("bt"),+    ZYDIS_MAKE_SHORTSTRING("btc"),+    ZYDIS_MAKE_SHORTSTRING("btr"),+    ZYDIS_MAKE_SHORTSTRING("bts"),+    ZYDIS_MAKE_SHORTSTRING("bzhi"),+    ZYDIS_MAKE_SHORTSTRING("call"),+    ZYDIS_MAKE_SHORTSTRING("cbw"),+    ZYDIS_MAKE_SHORTSTRING("cdq"),+    ZYDIS_MAKE_SHORTSTRING("cdqe"),+    ZYDIS_MAKE_SHORTSTRING("clac"),+    ZYDIS_MAKE_SHORTSTRING("clc"),+    ZYDIS_MAKE_SHORTSTRING("cld"),+    ZYDIS_MAKE_SHORTSTRING("cldemote"),+    ZYDIS_MAKE_SHORTSTRING("clevict0"),+    ZYDIS_MAKE_SHORTSTRING("clevict1"),+    ZYDIS_MAKE_SHORTSTRING("clflush"),+    ZYDIS_MAKE_SHORTSTRING("clflushopt"),+    ZYDIS_MAKE_SHORTSTRING("clgi"),+    ZYDIS_MAKE_SHORTSTRING("cli"),+    ZYDIS_MAKE_SHORTSTRING("clrssbsy"),+    ZYDIS_MAKE_SHORTSTRING("clts"),+    ZYDIS_MAKE_SHORTSTRING("clwb"),+    ZYDIS_MAKE_SHORTSTRING("clzero"),+    ZYDIS_MAKE_SHORTSTRING("cmc"),+    ZYDIS_MAKE_SHORTSTRING("cmovb"),+    ZYDIS_MAKE_SHORTSTRING("cmovbe"),+    ZYDIS_MAKE_SHORTSTRING("cmovl"),+    ZYDIS_MAKE_SHORTSTRING("cmovle"),+    ZYDIS_MAKE_SHORTSTRING("cmovnb"),+    ZYDIS_MAKE_SHORTSTRING("cmovnbe"),+    ZYDIS_MAKE_SHORTSTRING("cmovnl"),+    ZYDIS_MAKE_SHORTSTRING("cmovnle"),+    ZYDIS_MAKE_SHORTSTRING("cmovno"),+    ZYDIS_MAKE_SHORTSTRING("cmovnp"),+    ZYDIS_MAKE_SHORTSTRING("cmovns"),+    ZYDIS_MAKE_SHORTSTRING("cmovnz"),+    ZYDIS_MAKE_SHORTSTRING("cmovo"),+    ZYDIS_MAKE_SHORTSTRING("cmovp"),+    ZYDIS_MAKE_SHORTSTRING("cmovs"),+    ZYDIS_MAKE_SHORTSTRING("cmovz"),+    ZYDIS_MAKE_SHORTSTRING("cmp"),+    ZYDIS_MAKE_SHORTSTRING("cmppd"),+    ZYDIS_MAKE_SHORTSTRING("cmpps"),+    ZYDIS_MAKE_SHORTSTRING("cmpsb"),+    ZYDIS_MAKE_SHORTSTRING("cmpsd"),+    ZYDIS_MAKE_SHORTSTRING("cmpsq"),+    ZYDIS_MAKE_SHORTSTRING("cmpss"),+    ZYDIS_MAKE_SHORTSTRING("cmpsw"),+    ZYDIS_MAKE_SHORTSTRING("cmpxchg"),+    ZYDIS_MAKE_SHORTSTRING("cmpxchg16b"),+    ZYDIS_MAKE_SHORTSTRING("cmpxchg8b"),+    ZYDIS_MAKE_SHORTSTRING("comisd"),+    ZYDIS_MAKE_SHORTSTRING("comiss"),+    ZYDIS_MAKE_SHORTSTRING("cpuid"),+    ZYDIS_MAKE_SHORTSTRING("cqo"),+    ZYDIS_MAKE_SHORTSTRING("crc32"),+    ZYDIS_MAKE_SHORTSTRING("cvtdq2pd"),+    ZYDIS_MAKE_SHORTSTRING("cvtdq2ps"),+    ZYDIS_MAKE_SHORTSTRING("cvtpd2dq"),+    ZYDIS_MAKE_SHORTSTRING("cvtpd2pi"),+    ZYDIS_MAKE_SHORTSTRING("cvtpd2ps"),+    ZYDIS_MAKE_SHORTSTRING("cvtpi2pd"),+    ZYDIS_MAKE_SHORTSTRING("cvtpi2ps"),+    ZYDIS_MAKE_SHORTSTRING("cvtps2dq"),+    ZYDIS_MAKE_SHORTSTRING("cvtps2pd"),+    ZYDIS_MAKE_SHORTSTRING("cvtps2pi"),+    ZYDIS_MAKE_SHORTSTRING("cvtsd2si"),+    ZYDIS_MAKE_SHORTSTRING("cvtsd2ss"),+    ZYDIS_MAKE_SHORTSTRING("cvtsi2sd"),+    ZYDIS_MAKE_SHORTSTRING("cvtsi2ss"),+    ZYDIS_MAKE_SHORTSTRING("cvtss2sd"),+    ZYDIS_MAKE_SHORTSTRING("cvtss2si"),+    ZYDIS_MAKE_SHORTSTRING("cvttpd2dq"),+    ZYDIS_MAKE_SHORTSTRING("cvttpd2pi"),+    ZYDIS_MAKE_SHORTSTRING("cvttps2dq"),+    ZYDIS_MAKE_SHORTSTRING("cvttps2pi"),+    ZYDIS_MAKE_SHORTSTRING("cvttsd2si"),+    ZYDIS_MAKE_SHORTSTRING("cvttss2si"),+    ZYDIS_MAKE_SHORTSTRING("cwd"),+    ZYDIS_MAKE_SHORTSTRING("cwde"),+    ZYDIS_MAKE_SHORTSTRING("daa"),+    ZYDIS_MAKE_SHORTSTRING("das"),+    ZYDIS_MAKE_SHORTSTRING("dec"),+    ZYDIS_MAKE_SHORTSTRING("delay"),+    ZYDIS_MAKE_SHORTSTRING("div"),+    ZYDIS_MAKE_SHORTSTRING("divpd"),+    ZYDIS_MAKE_SHORTSTRING("divps"),+    ZYDIS_MAKE_SHORTSTRING("divsd"),+    ZYDIS_MAKE_SHORTSTRING("divss"),+    ZYDIS_MAKE_SHORTSTRING("dppd"),+    ZYDIS_MAKE_SHORTSTRING("dpps"),+    ZYDIS_MAKE_SHORTSTRING("emms"),+    ZYDIS_MAKE_SHORTSTRING("encls"),+    ZYDIS_MAKE_SHORTSTRING("enclu"),+    ZYDIS_MAKE_SHORTSTRING("enclv"),+    ZYDIS_MAKE_SHORTSTRING("endbr32"),+    ZYDIS_MAKE_SHORTSTRING("endbr64"),+    ZYDIS_MAKE_SHORTSTRING("enqcmd"),+    ZYDIS_MAKE_SHORTSTRING("enqcmds"),+    ZYDIS_MAKE_SHORTSTRING("enter"),+    ZYDIS_MAKE_SHORTSTRING("extractps"),+    ZYDIS_MAKE_SHORTSTRING("extrq"),+    ZYDIS_MAKE_SHORTSTRING("f2xm1"),+    ZYDIS_MAKE_SHORTSTRING("fabs"),+    ZYDIS_MAKE_SHORTSTRING("fadd"),+    ZYDIS_MAKE_SHORTSTRING("faddp"),+    ZYDIS_MAKE_SHORTSTRING("fbld"),+    ZYDIS_MAKE_SHORTSTRING("fbstp"),+    ZYDIS_MAKE_SHORTSTRING("fchs"),+    ZYDIS_MAKE_SHORTSTRING("fcmovb"),+    ZYDIS_MAKE_SHORTSTRING("fcmovbe"),+    ZYDIS_MAKE_SHORTSTRING("fcmove"),+    ZYDIS_MAKE_SHORTSTRING("fcmovnb"),+    ZYDIS_MAKE_SHORTSTRING("fcmovnbe"),+    ZYDIS_MAKE_SHORTSTRING("fcmovne"),+    ZYDIS_MAKE_SHORTSTRING("fcmovnu"),+    ZYDIS_MAKE_SHORTSTRING("fcmovu"),+    ZYDIS_MAKE_SHORTSTRING("fcom"),+    ZYDIS_MAKE_SHORTSTRING("fcomi"),+    ZYDIS_MAKE_SHORTSTRING("fcomip"),+    ZYDIS_MAKE_SHORTSTRING("fcomp"),+    ZYDIS_MAKE_SHORTSTRING("fcompp"),+    ZYDIS_MAKE_SHORTSTRING("fcos"),+    ZYDIS_MAKE_SHORTSTRING("fdecstp"),+    ZYDIS_MAKE_SHORTSTRING("fdisi8087_nop"),+    ZYDIS_MAKE_SHORTSTRING("fdiv"),+    ZYDIS_MAKE_SHORTSTRING("fdivp"),+    ZYDIS_MAKE_SHORTSTRING("fdivr"),+    ZYDIS_MAKE_SHORTSTRING("fdivrp"),+    ZYDIS_MAKE_SHORTSTRING("femms"),+    ZYDIS_MAKE_SHORTSTRING("feni8087_nop"),+    ZYDIS_MAKE_SHORTSTRING("ffree"),+    ZYDIS_MAKE_SHORTSTRING("ffreep"),+    ZYDIS_MAKE_SHORTSTRING("fiadd"),+    ZYDIS_MAKE_SHORTSTRING("ficom"),+    ZYDIS_MAKE_SHORTSTRING("ficomp"),+    ZYDIS_MAKE_SHORTSTRING("fidiv"),+    ZYDIS_MAKE_SHORTSTRING("fidivr"),+    ZYDIS_MAKE_SHORTSTRING("fild"),+    ZYDIS_MAKE_SHORTSTRING("fimul"),+    ZYDIS_MAKE_SHORTSTRING("fincstp"),+    ZYDIS_MAKE_SHORTSTRING("fist"),+    ZYDIS_MAKE_SHORTSTRING("fistp"),+    ZYDIS_MAKE_SHORTSTRING("fisttp"),+    ZYDIS_MAKE_SHORTSTRING("fisub"),+    ZYDIS_MAKE_SHORTSTRING("fisubr"),+    ZYDIS_MAKE_SHORTSTRING("fld"),+    ZYDIS_MAKE_SHORTSTRING("fld1"),+    ZYDIS_MAKE_SHORTSTRING("fldcw"),+    ZYDIS_MAKE_SHORTSTRING("fldenv"),+    ZYDIS_MAKE_SHORTSTRING("fldl2e"),+    ZYDIS_MAKE_SHORTSTRING("fldl2t"),+    ZYDIS_MAKE_SHORTSTRING("fldlg2"),+    ZYDIS_MAKE_SHORTSTRING("fldln2"),+    ZYDIS_MAKE_SHORTSTRING("fldpi"),+    ZYDIS_MAKE_SHORTSTRING("fldz"),+    ZYDIS_MAKE_SHORTSTRING("fmul"),+    ZYDIS_MAKE_SHORTSTRING("fmulp"),+    ZYDIS_MAKE_SHORTSTRING("fnclex"),+    ZYDIS_MAKE_SHORTSTRING("fninit"),+    ZYDIS_MAKE_SHORTSTRING("fnop"),+    ZYDIS_MAKE_SHORTSTRING("fnsave"),+    ZYDIS_MAKE_SHORTSTRING("fnstcw"),+    ZYDIS_MAKE_SHORTSTRING("fnstenv"),+    ZYDIS_MAKE_SHORTSTRING("fnstsw"),+    ZYDIS_MAKE_SHORTSTRING("fpatan"),+    ZYDIS_MAKE_SHORTSTRING("fprem"),+    ZYDIS_MAKE_SHORTSTRING("fprem1"),+    ZYDIS_MAKE_SHORTSTRING("fptan"),+    ZYDIS_MAKE_SHORTSTRING("frndint"),+    ZYDIS_MAKE_SHORTSTRING("frstor"),+    ZYDIS_MAKE_SHORTSTRING("fscale"),+    ZYDIS_MAKE_SHORTSTRING("fsetpm287_nop"),+    ZYDIS_MAKE_SHORTSTRING("fsin"),+    ZYDIS_MAKE_SHORTSTRING("fsincos"),+    ZYDIS_MAKE_SHORTSTRING("fsqrt"),+    ZYDIS_MAKE_SHORTSTRING("fst"),+    ZYDIS_MAKE_SHORTSTRING("fstp"),+    ZYDIS_MAKE_SHORTSTRING("fstpnce"),+    ZYDIS_MAKE_SHORTSTRING("fsub"),+    ZYDIS_MAKE_SHORTSTRING("fsubp"),+    ZYDIS_MAKE_SHORTSTRING("fsubr"),+    ZYDIS_MAKE_SHORTSTRING("fsubrp"),+    ZYDIS_MAKE_SHORTSTRING("ftst"),+    ZYDIS_MAKE_SHORTSTRING("fucom"),+    ZYDIS_MAKE_SHORTSTRING("fucomi"),+    ZYDIS_MAKE_SHORTSTRING("fucomip"),+    ZYDIS_MAKE_SHORTSTRING("fucomp"),+    ZYDIS_MAKE_SHORTSTRING("fucompp"),+    ZYDIS_MAKE_SHORTSTRING("fwait"),+    ZYDIS_MAKE_SHORTSTRING("fxam"),+    ZYDIS_MAKE_SHORTSTRING("fxch"),+    ZYDIS_MAKE_SHORTSTRING("fxrstor"),+    ZYDIS_MAKE_SHORTSTRING("fxrstor64"),+    ZYDIS_MAKE_SHORTSTRING("fxsave"),+    ZYDIS_MAKE_SHORTSTRING("fxsave64"),+    ZYDIS_MAKE_SHORTSTRING("fxtract"),+    ZYDIS_MAKE_SHORTSTRING("fyl2x"),+    ZYDIS_MAKE_SHORTSTRING("fyl2xp1"),+    ZYDIS_MAKE_SHORTSTRING("getsec"),+    ZYDIS_MAKE_SHORTSTRING("gf2p8affineinvqb"),+    ZYDIS_MAKE_SHORTSTRING("gf2p8affineqb"),+    ZYDIS_MAKE_SHORTSTRING("gf2p8mulb"),+    ZYDIS_MAKE_SHORTSTRING("haddpd"),+    ZYDIS_MAKE_SHORTSTRING("haddps"),+    ZYDIS_MAKE_SHORTSTRING("hlt"),+    ZYDIS_MAKE_SHORTSTRING("hsubpd"),+    ZYDIS_MAKE_SHORTSTRING("hsubps"),+    ZYDIS_MAKE_SHORTSTRING("idiv"),+    ZYDIS_MAKE_SHORTSTRING("imul"),+    ZYDIS_MAKE_SHORTSTRING("in"),+    ZYDIS_MAKE_SHORTSTRING("inc"),+    ZYDIS_MAKE_SHORTSTRING("incsspd"),+    ZYDIS_MAKE_SHORTSTRING("incsspq"),+    ZYDIS_MAKE_SHORTSTRING("insb"),+    ZYDIS_MAKE_SHORTSTRING("insd"),+    ZYDIS_MAKE_SHORTSTRING("insertps"),+    ZYDIS_MAKE_SHORTSTRING("insertq"),+    ZYDIS_MAKE_SHORTSTRING("insw"),+    ZYDIS_MAKE_SHORTSTRING("int"),+    ZYDIS_MAKE_SHORTSTRING("int1"),+    ZYDIS_MAKE_SHORTSTRING("int3"),+    ZYDIS_MAKE_SHORTSTRING("into"),+    ZYDIS_MAKE_SHORTSTRING("invd"),+    ZYDIS_MAKE_SHORTSTRING("invept"),+    ZYDIS_MAKE_SHORTSTRING("invlpg"),+    ZYDIS_MAKE_SHORTSTRING("invlpga"),+    ZYDIS_MAKE_SHORTSTRING("invpcid"),+    ZYDIS_MAKE_SHORTSTRING("invvpid"),+    ZYDIS_MAKE_SHORTSTRING("iret"),+    ZYDIS_MAKE_SHORTSTRING("iretd"),+    ZYDIS_MAKE_SHORTSTRING("iretq"),+    ZYDIS_MAKE_SHORTSTRING("jb"),+    ZYDIS_MAKE_SHORTSTRING("jbe"),+    ZYDIS_MAKE_SHORTSTRING("jcxz"),+    ZYDIS_MAKE_SHORTSTRING("jecxz"),+    ZYDIS_MAKE_SHORTSTRING("jknzd"),+    ZYDIS_MAKE_SHORTSTRING("jkzd"),+    ZYDIS_MAKE_SHORTSTRING("jl"),+    ZYDIS_MAKE_SHORTSTRING("jle"),+    ZYDIS_MAKE_SHORTSTRING("jmp"),+    ZYDIS_MAKE_SHORTSTRING("jnb"),+    ZYDIS_MAKE_SHORTSTRING("jnbe"),+    ZYDIS_MAKE_SHORTSTRING("jnl"),+    ZYDIS_MAKE_SHORTSTRING("jnle"),+    ZYDIS_MAKE_SHORTSTRING("jno"),+    ZYDIS_MAKE_SHORTSTRING("jnp"),+    ZYDIS_MAKE_SHORTSTRING("jns"),+    ZYDIS_MAKE_SHORTSTRING("jnz"),+    ZYDIS_MAKE_SHORTSTRING("jo"),+    ZYDIS_MAKE_SHORTSTRING("jp"),+    ZYDIS_MAKE_SHORTSTRING("jrcxz"),+    ZYDIS_MAKE_SHORTSTRING("js"),+    ZYDIS_MAKE_SHORTSTRING("jz"),+    ZYDIS_MAKE_SHORTSTRING("kaddb"),+    ZYDIS_MAKE_SHORTSTRING("kaddd"),+    ZYDIS_MAKE_SHORTSTRING("kaddq"),+    ZYDIS_MAKE_SHORTSTRING("kaddw"),+    ZYDIS_MAKE_SHORTSTRING("kand"),+    ZYDIS_MAKE_SHORTSTRING("kandb"),+    ZYDIS_MAKE_SHORTSTRING("kandd"),+    ZYDIS_MAKE_SHORTSTRING("kandn"),+    ZYDIS_MAKE_SHORTSTRING("kandnb"),+    ZYDIS_MAKE_SHORTSTRING("kandnd"),+    ZYDIS_MAKE_SHORTSTRING("kandnq"),+    ZYDIS_MAKE_SHORTSTRING("kandnr"),+    ZYDIS_MAKE_SHORTSTRING("kandnw"),+    ZYDIS_MAKE_SHORTSTRING("kandq"),+    ZYDIS_MAKE_SHORTSTRING("kandw"),+    ZYDIS_MAKE_SHORTSTRING("kconcath"),+    ZYDIS_MAKE_SHORTSTRING("kconcatl"),+    ZYDIS_MAKE_SHORTSTRING("kextract"),+    ZYDIS_MAKE_SHORTSTRING("kmerge2l1h"),+    ZYDIS_MAKE_SHORTSTRING("kmerge2l1l"),+    ZYDIS_MAKE_SHORTSTRING("kmov"),+    ZYDIS_MAKE_SHORTSTRING("kmovb"),+    ZYDIS_MAKE_SHORTSTRING("kmovd"),+    ZYDIS_MAKE_SHORTSTRING("kmovq"),+    ZYDIS_MAKE_SHORTSTRING("kmovw"),+    ZYDIS_MAKE_SHORTSTRING("knot"),+    ZYDIS_MAKE_SHORTSTRING("knotb"),+    ZYDIS_MAKE_SHORTSTRING("knotd"),+    ZYDIS_MAKE_SHORTSTRING("knotq"),+    ZYDIS_MAKE_SHORTSTRING("knotw"),+    ZYDIS_MAKE_SHORTSTRING("kor"),+    ZYDIS_MAKE_SHORTSTRING("korb"),+    ZYDIS_MAKE_SHORTSTRING("kord"),+    ZYDIS_MAKE_SHORTSTRING("korq"),+    ZYDIS_MAKE_SHORTSTRING("kortest"),+    ZYDIS_MAKE_SHORTSTRING("kortestb"),+    ZYDIS_MAKE_SHORTSTRING("kortestd"),+    ZYDIS_MAKE_SHORTSTRING("kortestq"),+    ZYDIS_MAKE_SHORTSTRING("kortestw"),+    ZYDIS_MAKE_SHORTSTRING("korw"),+    ZYDIS_MAKE_SHORTSTRING("kshiftlb"),+    ZYDIS_MAKE_SHORTSTRING("kshiftld"),+    ZYDIS_MAKE_SHORTSTRING("kshiftlq"),+    ZYDIS_MAKE_SHORTSTRING("kshiftlw"),+    ZYDIS_MAKE_SHORTSTRING("kshiftrb"),+    ZYDIS_MAKE_SHORTSTRING("kshiftrd"),+    ZYDIS_MAKE_SHORTSTRING("kshiftrq"),+    ZYDIS_MAKE_SHORTSTRING("kshiftrw"),+    ZYDIS_MAKE_SHORTSTRING("ktestb"),+    ZYDIS_MAKE_SHORTSTRING("ktestd"),+    ZYDIS_MAKE_SHORTSTRING("ktestq"),+    ZYDIS_MAKE_SHORTSTRING("ktestw"),+    ZYDIS_MAKE_SHORTSTRING("kunpckbw"),+    ZYDIS_MAKE_SHORTSTRING("kunpckdq"),+    ZYDIS_MAKE_SHORTSTRING("kunpckwd"),+    ZYDIS_MAKE_SHORTSTRING("kxnor"),+    ZYDIS_MAKE_SHORTSTRING("kxnorb"),+    ZYDIS_MAKE_SHORTSTRING("kxnord"),+    ZYDIS_MAKE_SHORTSTRING("kxnorq"),+    ZYDIS_MAKE_SHORTSTRING("kxnorw"),+    ZYDIS_MAKE_SHORTSTRING("kxor"),+    ZYDIS_MAKE_SHORTSTRING("kxorb"),+    ZYDIS_MAKE_SHORTSTRING("kxord"),+    ZYDIS_MAKE_SHORTSTRING("kxorq"),+    ZYDIS_MAKE_SHORTSTRING("kxorw"),+    ZYDIS_MAKE_SHORTSTRING("lahf"),+    ZYDIS_MAKE_SHORTSTRING("lar"),+    ZYDIS_MAKE_SHORTSTRING("lddqu"),+    ZYDIS_MAKE_SHORTSTRING("ldmxcsr"),+    ZYDIS_MAKE_SHORTSTRING("lds"),+    ZYDIS_MAKE_SHORTSTRING("lea"),+    ZYDIS_MAKE_SHORTSTRING("leave"),+    ZYDIS_MAKE_SHORTSTRING("les"),+    ZYDIS_MAKE_SHORTSTRING("lfence"),+    ZYDIS_MAKE_SHORTSTRING("lfs"),+    ZYDIS_MAKE_SHORTSTRING("lgdt"),+    ZYDIS_MAKE_SHORTSTRING("lgs"),+    ZYDIS_MAKE_SHORTSTRING("lidt"),+    ZYDIS_MAKE_SHORTSTRING("lldt"),+    ZYDIS_MAKE_SHORTSTRING("llwpcb"),+    ZYDIS_MAKE_SHORTSTRING("lmsw"),+    ZYDIS_MAKE_SHORTSTRING("lodsb"),+    ZYDIS_MAKE_SHORTSTRING("lodsd"),+    ZYDIS_MAKE_SHORTSTRING("lodsq"),+    ZYDIS_MAKE_SHORTSTRING("lodsw"),+    ZYDIS_MAKE_SHORTSTRING("loop"),+    ZYDIS_MAKE_SHORTSTRING("loope"),+    ZYDIS_MAKE_SHORTSTRING("loopne"),+    ZYDIS_MAKE_SHORTSTRING("lsl"),+    ZYDIS_MAKE_SHORTSTRING("lss"),+    ZYDIS_MAKE_SHORTSTRING("ltr"),+    ZYDIS_MAKE_SHORTSTRING("lwpins"),+    ZYDIS_MAKE_SHORTSTRING("lwpval"),+    ZYDIS_MAKE_SHORTSTRING("lzcnt"),+    ZYDIS_MAKE_SHORTSTRING("maskmovdqu"),+    ZYDIS_MAKE_SHORTSTRING("maskmovq"),+    ZYDIS_MAKE_SHORTSTRING("maxpd"),+    ZYDIS_MAKE_SHORTSTRING("maxps"),+    ZYDIS_MAKE_SHORTSTRING("maxsd"),+    ZYDIS_MAKE_SHORTSTRING("maxss"),+    ZYDIS_MAKE_SHORTSTRING("mfence"),+    ZYDIS_MAKE_SHORTSTRING("minpd"),+    ZYDIS_MAKE_SHORTSTRING("minps"),+    ZYDIS_MAKE_SHORTSTRING("minsd"),+    ZYDIS_MAKE_SHORTSTRING("minss"),+    ZYDIS_MAKE_SHORTSTRING("monitor"),+    ZYDIS_MAKE_SHORTSTRING("monitorx"),+    ZYDIS_MAKE_SHORTSTRING("montmul"),+    ZYDIS_MAKE_SHORTSTRING("mov"),+    ZYDIS_MAKE_SHORTSTRING("movapd"),+    ZYDIS_MAKE_SHORTSTRING("movaps"),+    ZYDIS_MAKE_SHORTSTRING("movbe"),+    ZYDIS_MAKE_SHORTSTRING("movd"),+    ZYDIS_MAKE_SHORTSTRING("movddup"),+    ZYDIS_MAKE_SHORTSTRING("movdir64b"),+    ZYDIS_MAKE_SHORTSTRING("movdiri"),+    ZYDIS_MAKE_SHORTSTRING("movdq2q"),+    ZYDIS_MAKE_SHORTSTRING("movdqa"),+    ZYDIS_MAKE_SHORTSTRING("movdqu"),+    ZYDIS_MAKE_SHORTSTRING("movhlps"),+    ZYDIS_MAKE_SHORTSTRING("movhpd"),+    ZYDIS_MAKE_SHORTSTRING("movhps"),+    ZYDIS_MAKE_SHORTSTRING("movlhps"),+    ZYDIS_MAKE_SHORTSTRING("movlpd"),+    ZYDIS_MAKE_SHORTSTRING("movlps"),+    ZYDIS_MAKE_SHORTSTRING("movmskpd"),+    ZYDIS_MAKE_SHORTSTRING("movmskps"),+    ZYDIS_MAKE_SHORTSTRING("movntdq"),+    ZYDIS_MAKE_SHORTSTRING("movntdqa"),+    ZYDIS_MAKE_SHORTSTRING("movnti"),+    ZYDIS_MAKE_SHORTSTRING("movntpd"),+    ZYDIS_MAKE_SHORTSTRING("movntps"),+    ZYDIS_MAKE_SHORTSTRING("movntq"),+    ZYDIS_MAKE_SHORTSTRING("movntsd"),+    ZYDIS_MAKE_SHORTSTRING("movntss"),+    ZYDIS_MAKE_SHORTSTRING("movq"),+    ZYDIS_MAKE_SHORTSTRING("movq2dq"),+    ZYDIS_MAKE_SHORTSTRING("movsb"),+    ZYDIS_MAKE_SHORTSTRING("movsd"),+    ZYDIS_MAKE_SHORTSTRING("movshdup"),+    ZYDIS_MAKE_SHORTSTRING("movsldup"),+    ZYDIS_MAKE_SHORTSTRING("movsq"),+    ZYDIS_MAKE_SHORTSTRING("movss"),+    ZYDIS_MAKE_SHORTSTRING("movsw"),+    ZYDIS_MAKE_SHORTSTRING("movsx"),+    ZYDIS_MAKE_SHORTSTRING("movsxd"),+    ZYDIS_MAKE_SHORTSTRING("movupd"),+    ZYDIS_MAKE_SHORTSTRING("movups"),+    ZYDIS_MAKE_SHORTSTRING("movzx"),+    ZYDIS_MAKE_SHORTSTRING("mpsadbw"),+    ZYDIS_MAKE_SHORTSTRING("mul"),+    ZYDIS_MAKE_SHORTSTRING("mulpd"),+    ZYDIS_MAKE_SHORTSTRING("mulps"),+    ZYDIS_MAKE_SHORTSTRING("mulsd"),+    ZYDIS_MAKE_SHORTSTRING("mulss"),+    ZYDIS_MAKE_SHORTSTRING("mulx"),+    ZYDIS_MAKE_SHORTSTRING("mwait"),+    ZYDIS_MAKE_SHORTSTRING("mwaitx"),+    ZYDIS_MAKE_SHORTSTRING("neg"),+    ZYDIS_MAKE_SHORTSTRING("nop"),+    ZYDIS_MAKE_SHORTSTRING("not"),+    ZYDIS_MAKE_SHORTSTRING("or"),+    ZYDIS_MAKE_SHORTSTRING("orpd"),+    ZYDIS_MAKE_SHORTSTRING("orps"),+    ZYDIS_MAKE_SHORTSTRING("out"),+    ZYDIS_MAKE_SHORTSTRING("outsb"),+    ZYDIS_MAKE_SHORTSTRING("outsd"),+    ZYDIS_MAKE_SHORTSTRING("outsw"),+    ZYDIS_MAKE_SHORTSTRING("pabsb"),+    ZYDIS_MAKE_SHORTSTRING("pabsd"),+    ZYDIS_MAKE_SHORTSTRING("pabsw"),+    ZYDIS_MAKE_SHORTSTRING("packssdw"),+    ZYDIS_MAKE_SHORTSTRING("packsswb"),+    ZYDIS_MAKE_SHORTSTRING("packusdw"),+    ZYDIS_MAKE_SHORTSTRING("packuswb"),+    ZYDIS_MAKE_SHORTSTRING("paddb"),+    ZYDIS_MAKE_SHORTSTRING("paddd"),+    ZYDIS_MAKE_SHORTSTRING("paddq"),+    ZYDIS_MAKE_SHORTSTRING("paddsb"),+    ZYDIS_MAKE_SHORTSTRING("paddsw"),+    ZYDIS_MAKE_SHORTSTRING("paddusb"),+    ZYDIS_MAKE_SHORTSTRING("paddusw"),+    ZYDIS_MAKE_SHORTSTRING("paddw"),+    ZYDIS_MAKE_SHORTSTRING("palignr"),+    ZYDIS_MAKE_SHORTSTRING("pand"),+    ZYDIS_MAKE_SHORTSTRING("pandn"),+    ZYDIS_MAKE_SHORTSTRING("pause"),+    ZYDIS_MAKE_SHORTSTRING("pavgb"),+    ZYDIS_MAKE_SHORTSTRING("pavgusb"),+    ZYDIS_MAKE_SHORTSTRING("pavgw"),+    ZYDIS_MAKE_SHORTSTRING("pblendvb"),+    ZYDIS_MAKE_SHORTSTRING("pblendw"),+    ZYDIS_MAKE_SHORTSTRING("pclmulqdq"),+    ZYDIS_MAKE_SHORTSTRING("pcmpeqb"),+    ZYDIS_MAKE_SHORTSTRING("pcmpeqd"),+    ZYDIS_MAKE_SHORTSTRING("pcmpeqq"),+    ZYDIS_MAKE_SHORTSTRING("pcmpeqw"),+    ZYDIS_MAKE_SHORTSTRING("pcmpestri"),+    ZYDIS_MAKE_SHORTSTRING("pcmpestrm"),+    ZYDIS_MAKE_SHORTSTRING("pcmpgtb"),+    ZYDIS_MAKE_SHORTSTRING("pcmpgtd"),+    ZYDIS_MAKE_SHORTSTRING("pcmpgtq"),+    ZYDIS_MAKE_SHORTSTRING("pcmpgtw"),+    ZYDIS_MAKE_SHORTSTRING("pcmpistri"),+    ZYDIS_MAKE_SHORTSTRING("pcmpistrm"),+    ZYDIS_MAKE_SHORTSTRING("pconfig"),+    ZYDIS_MAKE_SHORTSTRING("pdep"),+    ZYDIS_MAKE_SHORTSTRING("pext"),+    ZYDIS_MAKE_SHORTSTRING("pextrb"),+    ZYDIS_MAKE_SHORTSTRING("pextrd"),+    ZYDIS_MAKE_SHORTSTRING("pextrq"),+    ZYDIS_MAKE_SHORTSTRING("pextrw"),+    ZYDIS_MAKE_SHORTSTRING("pf2id"),+    ZYDIS_MAKE_SHORTSTRING("pf2iw"),+    ZYDIS_MAKE_SHORTSTRING("pfacc"),+    ZYDIS_MAKE_SHORTSTRING("pfadd"),+    ZYDIS_MAKE_SHORTSTRING("pfcmpeq"),+    ZYDIS_MAKE_SHORTSTRING("pfcmpge"),+    ZYDIS_MAKE_SHORTSTRING("pfcmpgt"),+    ZYDIS_MAKE_SHORTSTRING("pfcpit1"),+    ZYDIS_MAKE_SHORTSTRING("pfmax"),+    ZYDIS_MAKE_SHORTSTRING("pfmin"),+    ZYDIS_MAKE_SHORTSTRING("pfmul"),+    ZYDIS_MAKE_SHORTSTRING("pfnacc"),+    ZYDIS_MAKE_SHORTSTRING("pfpnacc"),+    ZYDIS_MAKE_SHORTSTRING("pfrcp"),+    ZYDIS_MAKE_SHORTSTRING("pfrcpit2"),+    ZYDIS_MAKE_SHORTSTRING("pfrsqit1"),+    ZYDIS_MAKE_SHORTSTRING("pfsqrt"),+    ZYDIS_MAKE_SHORTSTRING("pfsub"),+    ZYDIS_MAKE_SHORTSTRING("pfsubr"),+    ZYDIS_MAKE_SHORTSTRING("phaddd"),+    ZYDIS_MAKE_SHORTSTRING("phaddsw"),+    ZYDIS_MAKE_SHORTSTRING("phaddw"),+    ZYDIS_MAKE_SHORTSTRING("phminposuw"),+    ZYDIS_MAKE_SHORTSTRING("phsubd"),+    ZYDIS_MAKE_SHORTSTRING("phsubsw"),+    ZYDIS_MAKE_SHORTSTRING("phsubw"),+    ZYDIS_MAKE_SHORTSTRING("pi2fd"),+    ZYDIS_MAKE_SHORTSTRING("pi2fw"),+    ZYDIS_MAKE_SHORTSTRING("pinsrb"),+    ZYDIS_MAKE_SHORTSTRING("pinsrd"),+    ZYDIS_MAKE_SHORTSTRING("pinsrq"),+    ZYDIS_MAKE_SHORTSTRING("pinsrw"),+    ZYDIS_MAKE_SHORTSTRING("pmaddubsw"),+    ZYDIS_MAKE_SHORTSTRING("pmaddwd"),+    ZYDIS_MAKE_SHORTSTRING("pmaxsb"),+    ZYDIS_MAKE_SHORTSTRING("pmaxsd"),+    ZYDIS_MAKE_SHORTSTRING("pmaxsw"),+    ZYDIS_MAKE_SHORTSTRING("pmaxub"),+    ZYDIS_MAKE_SHORTSTRING("pmaxud"),+    ZYDIS_MAKE_SHORTSTRING("pmaxuw"),+    ZYDIS_MAKE_SHORTSTRING("pminsb"),+    ZYDIS_MAKE_SHORTSTRING("pminsd"),+    ZYDIS_MAKE_SHORTSTRING("pminsw"),+    ZYDIS_MAKE_SHORTSTRING("pminub"),+    ZYDIS_MAKE_SHORTSTRING("pminud"),+    ZYDIS_MAKE_SHORTSTRING("pminuw"),+    ZYDIS_MAKE_SHORTSTRING("pmovmskb"),+    ZYDIS_MAKE_SHORTSTRING("pmovsxbd"),+    ZYDIS_MAKE_SHORTSTRING("pmovsxbq"),+    ZYDIS_MAKE_SHORTSTRING("pmovsxbw"),+    ZYDIS_MAKE_SHORTSTRING("pmovsxdq"),+    ZYDIS_MAKE_SHORTSTRING("pmovsxwd"),+    ZYDIS_MAKE_SHORTSTRING("pmovsxwq"),+    ZYDIS_MAKE_SHORTSTRING("pmovzxbd"),+    ZYDIS_MAKE_SHORTSTRING("pmovzxbq"),+    ZYDIS_MAKE_SHORTSTRING("pmovzxbw"),+    ZYDIS_MAKE_SHORTSTRING("pmovzxdq"),+    ZYDIS_MAKE_SHORTSTRING("pmovzxwd"),+    ZYDIS_MAKE_SHORTSTRING("pmovzxwq"),+    ZYDIS_MAKE_SHORTSTRING("pmuldq"),+    ZYDIS_MAKE_SHORTSTRING("pmulhrsw"),+    ZYDIS_MAKE_SHORTSTRING("pmulhrw"),+    ZYDIS_MAKE_SHORTSTRING("pmulhuw"),+    ZYDIS_MAKE_SHORTSTRING("pmulhw"),+    ZYDIS_MAKE_SHORTSTRING("pmulld"),+    ZYDIS_MAKE_SHORTSTRING("pmullw"),+    ZYDIS_MAKE_SHORTSTRING("pmuludq"),+    ZYDIS_MAKE_SHORTSTRING("pop"),+    ZYDIS_MAKE_SHORTSTRING("popa"),+    ZYDIS_MAKE_SHORTSTRING("popad"),+    ZYDIS_MAKE_SHORTSTRING("popcnt"),+    ZYDIS_MAKE_SHORTSTRING("popf"),+    ZYDIS_MAKE_SHORTSTRING("popfd"),+    ZYDIS_MAKE_SHORTSTRING("popfq"),+    ZYDIS_MAKE_SHORTSTRING("por"),+    ZYDIS_MAKE_SHORTSTRING("prefetch"),+    ZYDIS_MAKE_SHORTSTRING("prefetchnta"),+    ZYDIS_MAKE_SHORTSTRING("prefetcht0"),+    ZYDIS_MAKE_SHORTSTRING("prefetcht1"),+    ZYDIS_MAKE_SHORTSTRING("prefetcht2"),+    ZYDIS_MAKE_SHORTSTRING("prefetchw"),+    ZYDIS_MAKE_SHORTSTRING("prefetchwt1"),+    ZYDIS_MAKE_SHORTSTRING("psadbw"),+    ZYDIS_MAKE_SHORTSTRING("pshufb"),+    ZYDIS_MAKE_SHORTSTRING("pshufd"),+    ZYDIS_MAKE_SHORTSTRING("pshufhw"),+    ZYDIS_MAKE_SHORTSTRING("pshuflw"),+    ZYDIS_MAKE_SHORTSTRING("pshufw"),+    ZYDIS_MAKE_SHORTSTRING("psignb"),+    ZYDIS_MAKE_SHORTSTRING("psignd"),+    ZYDIS_MAKE_SHORTSTRING("psignw"),+    ZYDIS_MAKE_SHORTSTRING("pslld"),+    ZYDIS_MAKE_SHORTSTRING("pslldq"),+    ZYDIS_MAKE_SHORTSTRING("psllq"),+    ZYDIS_MAKE_SHORTSTRING("psllw"),+    ZYDIS_MAKE_SHORTSTRING("psrad"),+    ZYDIS_MAKE_SHORTSTRING("psraw"),+    ZYDIS_MAKE_SHORTSTRING("psrld"),+    ZYDIS_MAKE_SHORTSTRING("psrldq"),+    ZYDIS_MAKE_SHORTSTRING("psrlq"),+    ZYDIS_MAKE_SHORTSTRING("psrlw"),+    ZYDIS_MAKE_SHORTSTRING("psubb"),+    ZYDIS_MAKE_SHORTSTRING("psubd"),+    ZYDIS_MAKE_SHORTSTRING("psubq"),+    ZYDIS_MAKE_SHORTSTRING("psubsb"),+    ZYDIS_MAKE_SHORTSTRING("psubsw"),+    ZYDIS_MAKE_SHORTSTRING("psubusb"),+    ZYDIS_MAKE_SHORTSTRING("psubusw"),+    ZYDIS_MAKE_SHORTSTRING("psubw"),+    ZYDIS_MAKE_SHORTSTRING("pswapd"),+    ZYDIS_MAKE_SHORTSTRING("ptest"),+    ZYDIS_MAKE_SHORTSTRING("ptwrite"),+    ZYDIS_MAKE_SHORTSTRING("punpckhbw"),+    ZYDIS_MAKE_SHORTSTRING("punpckhdq"),+    ZYDIS_MAKE_SHORTSTRING("punpckhqdq"),+    ZYDIS_MAKE_SHORTSTRING("punpckhwd"),+    ZYDIS_MAKE_SHORTSTRING("punpcklbw"),+    ZYDIS_MAKE_SHORTSTRING("punpckldq"),+    ZYDIS_MAKE_SHORTSTRING("punpcklqdq"),+    ZYDIS_MAKE_SHORTSTRING("punpcklwd"),+    ZYDIS_MAKE_SHORTSTRING("push"),+    ZYDIS_MAKE_SHORTSTRING("pusha"),+    ZYDIS_MAKE_SHORTSTRING("pushad"),+    ZYDIS_MAKE_SHORTSTRING("pushf"),+    ZYDIS_MAKE_SHORTSTRING("pushfd"),+    ZYDIS_MAKE_SHORTSTRING("pushfq"),+    ZYDIS_MAKE_SHORTSTRING("pxor"),+    ZYDIS_MAKE_SHORTSTRING("rcl"),+    ZYDIS_MAKE_SHORTSTRING("rcpps"),+    ZYDIS_MAKE_SHORTSTRING("rcpss"),+    ZYDIS_MAKE_SHORTSTRING("rcr"),+    ZYDIS_MAKE_SHORTSTRING("rdfsbase"),+    ZYDIS_MAKE_SHORTSTRING("rdgsbase"),+    ZYDIS_MAKE_SHORTSTRING("rdmsr"),+    ZYDIS_MAKE_SHORTSTRING("rdpid"),+    ZYDIS_MAKE_SHORTSTRING("rdpkru"),+    ZYDIS_MAKE_SHORTSTRING("rdpmc"),+    ZYDIS_MAKE_SHORTSTRING("rdpru"),+    ZYDIS_MAKE_SHORTSTRING("rdrand"),+    ZYDIS_MAKE_SHORTSTRING("rdseed"),+    ZYDIS_MAKE_SHORTSTRING("rdsspd"),+    ZYDIS_MAKE_SHORTSTRING("rdsspq"),+    ZYDIS_MAKE_SHORTSTRING("rdtsc"),+    ZYDIS_MAKE_SHORTSTRING("rdtscp"),+    ZYDIS_MAKE_SHORTSTRING("ret"),+    ZYDIS_MAKE_SHORTSTRING("rol"),+    ZYDIS_MAKE_SHORTSTRING("ror"),+    ZYDIS_MAKE_SHORTSTRING("rorx"),+    ZYDIS_MAKE_SHORTSTRING("roundpd"),+    ZYDIS_MAKE_SHORTSTRING("roundps"),+    ZYDIS_MAKE_SHORTSTRING("roundsd"),+    ZYDIS_MAKE_SHORTSTRING("roundss"),+    ZYDIS_MAKE_SHORTSTRING("rsm"),+    ZYDIS_MAKE_SHORTSTRING("rsqrtps"),+    ZYDIS_MAKE_SHORTSTRING("rsqrtss"),+    ZYDIS_MAKE_SHORTSTRING("rstorssp"),+    ZYDIS_MAKE_SHORTSTRING("sahf"),+    ZYDIS_MAKE_SHORTSTRING("salc"),+    ZYDIS_MAKE_SHORTSTRING("sar"),+    ZYDIS_MAKE_SHORTSTRING("sarx"),+    ZYDIS_MAKE_SHORTSTRING("saveprevssp"),+    ZYDIS_MAKE_SHORTSTRING("sbb"),+    ZYDIS_MAKE_SHORTSTRING("scasb"),+    ZYDIS_MAKE_SHORTSTRING("scasd"),+    ZYDIS_MAKE_SHORTSTRING("scasq"),+    ZYDIS_MAKE_SHORTSTRING("scasw"),+    ZYDIS_MAKE_SHORTSTRING("setb"),+    ZYDIS_MAKE_SHORTSTRING("setbe"),+    ZYDIS_MAKE_SHORTSTRING("setl"),+    ZYDIS_MAKE_SHORTSTRING("setle"),+    ZYDIS_MAKE_SHORTSTRING("setnb"),+    ZYDIS_MAKE_SHORTSTRING("setnbe"),+    ZYDIS_MAKE_SHORTSTRING("setnl"),+    ZYDIS_MAKE_SHORTSTRING("setnle"),+    ZYDIS_MAKE_SHORTSTRING("setno"),+    ZYDIS_MAKE_SHORTSTRING("setnp"),+    ZYDIS_MAKE_SHORTSTRING("setns"),+    ZYDIS_MAKE_SHORTSTRING("setnz"),+    ZYDIS_MAKE_SHORTSTRING("seto"),+    ZYDIS_MAKE_SHORTSTRING("setp"),+    ZYDIS_MAKE_SHORTSTRING("sets"),+    ZYDIS_MAKE_SHORTSTRING("setssbsy"),+    ZYDIS_MAKE_SHORTSTRING("setz"),+    ZYDIS_MAKE_SHORTSTRING("sfence"),+    ZYDIS_MAKE_SHORTSTRING("sgdt"),+    ZYDIS_MAKE_SHORTSTRING("sha1msg1"),+    ZYDIS_MAKE_SHORTSTRING("sha1msg2"),+    ZYDIS_MAKE_SHORTSTRING("sha1nexte"),+    ZYDIS_MAKE_SHORTSTRING("sha1rnds4"),+    ZYDIS_MAKE_SHORTSTRING("sha256msg1"),+    ZYDIS_MAKE_SHORTSTRING("sha256msg2"),+    ZYDIS_MAKE_SHORTSTRING("sha256rnds2"),+    ZYDIS_MAKE_SHORTSTRING("shl"),+    ZYDIS_MAKE_SHORTSTRING("shld"),+    ZYDIS_MAKE_SHORTSTRING("shlx"),+    ZYDIS_MAKE_SHORTSTRING("shr"),+    ZYDIS_MAKE_SHORTSTRING("shrd"),+    ZYDIS_MAKE_SHORTSTRING("shrx"),+    ZYDIS_MAKE_SHORTSTRING("shufpd"),+    ZYDIS_MAKE_SHORTSTRING("shufps"),+    ZYDIS_MAKE_SHORTSTRING("sidt"),+    ZYDIS_MAKE_SHORTSTRING("skinit"),+    ZYDIS_MAKE_SHORTSTRING("sldt"),+    ZYDIS_MAKE_SHORTSTRING("slwpcb"),+    ZYDIS_MAKE_SHORTSTRING("smsw"),+    ZYDIS_MAKE_SHORTSTRING("spflt"),+    ZYDIS_MAKE_SHORTSTRING("sqrtpd"),+    ZYDIS_MAKE_SHORTSTRING("sqrtps"),+    ZYDIS_MAKE_SHORTSTRING("sqrtsd"),+    ZYDIS_MAKE_SHORTSTRING("sqrtss"),+    ZYDIS_MAKE_SHORTSTRING("stac"),+    ZYDIS_MAKE_SHORTSTRING("stc"),+    ZYDIS_MAKE_SHORTSTRING("std"),+    ZYDIS_MAKE_SHORTSTRING("stgi"),+    ZYDIS_MAKE_SHORTSTRING("sti"),+    ZYDIS_MAKE_SHORTSTRING("stmxcsr"),+    ZYDIS_MAKE_SHORTSTRING("stosb"),+    ZYDIS_MAKE_SHORTSTRING("stosd"),+    ZYDIS_MAKE_SHORTSTRING("stosq"),+    ZYDIS_MAKE_SHORTSTRING("stosw"),+    ZYDIS_MAKE_SHORTSTRING("str"),+    ZYDIS_MAKE_SHORTSTRING("sub"),+    ZYDIS_MAKE_SHORTSTRING("subpd"),+    ZYDIS_MAKE_SHORTSTRING("subps"),+    ZYDIS_MAKE_SHORTSTRING("subsd"),+    ZYDIS_MAKE_SHORTSTRING("subss"),+    ZYDIS_MAKE_SHORTSTRING("swapgs"),+    ZYDIS_MAKE_SHORTSTRING("syscall"),+    ZYDIS_MAKE_SHORTSTRING("sysenter"),+    ZYDIS_MAKE_SHORTSTRING("sysexit"),+    ZYDIS_MAKE_SHORTSTRING("sysret"),+    ZYDIS_MAKE_SHORTSTRING("t1mskc"),+    ZYDIS_MAKE_SHORTSTRING("test"),+    ZYDIS_MAKE_SHORTSTRING("tpause"),+    ZYDIS_MAKE_SHORTSTRING("tzcnt"),+    ZYDIS_MAKE_SHORTSTRING("tzcnti"),+    ZYDIS_MAKE_SHORTSTRING("tzmsk"),+    ZYDIS_MAKE_SHORTSTRING("ucomisd"),+    ZYDIS_MAKE_SHORTSTRING("ucomiss"),+    ZYDIS_MAKE_SHORTSTRING("ud0"),+    ZYDIS_MAKE_SHORTSTRING("ud1"),+    ZYDIS_MAKE_SHORTSTRING("ud2"),+    ZYDIS_MAKE_SHORTSTRING("umonitor"),+    ZYDIS_MAKE_SHORTSTRING("umwait"),+    ZYDIS_MAKE_SHORTSTRING("unpckhpd"),+    ZYDIS_MAKE_SHORTSTRING("unpckhps"),+    ZYDIS_MAKE_SHORTSTRING("unpcklpd"),+    ZYDIS_MAKE_SHORTSTRING("unpcklps"),+    ZYDIS_MAKE_SHORTSTRING("v4fmaddps"),+    ZYDIS_MAKE_SHORTSTRING("v4fmaddss"),+    ZYDIS_MAKE_SHORTSTRING("v4fnmaddps"),+    ZYDIS_MAKE_SHORTSTRING("v4fnmaddss"),+    ZYDIS_MAKE_SHORTSTRING("vaddnpd"),+    ZYDIS_MAKE_SHORTSTRING("vaddnps"),+    ZYDIS_MAKE_SHORTSTRING("vaddpd"),+    ZYDIS_MAKE_SHORTSTRING("vaddps"),+    ZYDIS_MAKE_SHORTSTRING("vaddsd"),+    ZYDIS_MAKE_SHORTSTRING("vaddsetsps"),+    ZYDIS_MAKE_SHORTSTRING("vaddss"),+    ZYDIS_MAKE_SHORTSTRING("vaddsubpd"),+    ZYDIS_MAKE_SHORTSTRING("vaddsubps"),+    ZYDIS_MAKE_SHORTSTRING("vaesdec"),+    ZYDIS_MAKE_SHORTSTRING("vaesdeclast"),+    ZYDIS_MAKE_SHORTSTRING("vaesenc"),+    ZYDIS_MAKE_SHORTSTRING("vaesenclast"),+    ZYDIS_MAKE_SHORTSTRING("vaesimc"),+    ZYDIS_MAKE_SHORTSTRING("vaeskeygenassist"),+    ZYDIS_MAKE_SHORTSTRING("valignd"),+    ZYDIS_MAKE_SHORTSTRING("valignq"),+    ZYDIS_MAKE_SHORTSTRING("vandnpd"),+    ZYDIS_MAKE_SHORTSTRING("vandnps"),+    ZYDIS_MAKE_SHORTSTRING("vandpd"),+    ZYDIS_MAKE_SHORTSTRING("vandps"),+    ZYDIS_MAKE_SHORTSTRING("vblendmpd"),+    ZYDIS_MAKE_SHORTSTRING("vblendmps"),+    ZYDIS_MAKE_SHORTSTRING("vblendpd"),+    ZYDIS_MAKE_SHORTSTRING("vblendps"),+    ZYDIS_MAKE_SHORTSTRING("vblendvpd"),+    ZYDIS_MAKE_SHORTSTRING("vblendvps"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastf128"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastf32x2"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastf32x4"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastf32x8"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastf64x2"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastf64x4"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcasti128"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcasti32x2"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcasti32x4"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcasti32x8"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcasti64x2"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcasti64x4"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastsd"),+    ZYDIS_MAKE_SHORTSTRING("vbroadcastss"),+    ZYDIS_MAKE_SHORTSTRING("vcmppd"),+    ZYDIS_MAKE_SHORTSTRING("vcmpps"),+    ZYDIS_MAKE_SHORTSTRING("vcmpsd"),+    ZYDIS_MAKE_SHORTSTRING("vcmpss"),+    ZYDIS_MAKE_SHORTSTRING("vcomisd"),+    ZYDIS_MAKE_SHORTSTRING("vcomiss"),+    ZYDIS_MAKE_SHORTSTRING("vcompresspd"),+    ZYDIS_MAKE_SHORTSTRING("vcompressps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtdq2pd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtdq2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtfxpntdq2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtfxpntpd2dq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtfxpntpd2udq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtfxpntps2dq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtfxpntps2udq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtfxpntudq2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtne2ps2bf16"),+    ZYDIS_MAKE_SHORTSTRING("vcvtneps2bf16"),+    ZYDIS_MAKE_SHORTSTRING("vcvtpd2dq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtpd2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtpd2qq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtpd2udq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtpd2uqq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtph2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtps2dq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtps2pd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtps2ph"),+    ZYDIS_MAKE_SHORTSTRING("vcvtps2qq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtps2udq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtps2uqq"),+    ZYDIS_MAKE_SHORTSTRING("vcvtqq2pd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtqq2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtsd2si"),+    ZYDIS_MAKE_SHORTSTRING("vcvtsd2ss"),+    ZYDIS_MAKE_SHORTSTRING("vcvtsd2usi"),+    ZYDIS_MAKE_SHORTSTRING("vcvtsi2sd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtsi2ss"),+    ZYDIS_MAKE_SHORTSTRING("vcvtss2sd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtss2si"),+    ZYDIS_MAKE_SHORTSTRING("vcvtss2usi"),+    ZYDIS_MAKE_SHORTSTRING("vcvttpd2dq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttpd2qq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttpd2udq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttpd2uqq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttps2dq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttps2qq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttps2udq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttps2uqq"),+    ZYDIS_MAKE_SHORTSTRING("vcvttsd2si"),+    ZYDIS_MAKE_SHORTSTRING("vcvttsd2usi"),+    ZYDIS_MAKE_SHORTSTRING("vcvttss2si"),+    ZYDIS_MAKE_SHORTSTRING("vcvttss2usi"),+    ZYDIS_MAKE_SHORTSTRING("vcvtudq2pd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtudq2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtuqq2pd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtuqq2ps"),+    ZYDIS_MAKE_SHORTSTRING("vcvtusi2sd"),+    ZYDIS_MAKE_SHORTSTRING("vcvtusi2ss"),+    ZYDIS_MAKE_SHORTSTRING("vdbpsadbw"),+    ZYDIS_MAKE_SHORTSTRING("vdivpd"),+    ZYDIS_MAKE_SHORTSTRING("vdivps"),+    ZYDIS_MAKE_SHORTSTRING("vdivsd"),+    ZYDIS_MAKE_SHORTSTRING("vdivss"),+    ZYDIS_MAKE_SHORTSTRING("vdpbf16ps"),+    ZYDIS_MAKE_SHORTSTRING("vdppd"),+    ZYDIS_MAKE_SHORTSTRING("vdpps"),+    ZYDIS_MAKE_SHORTSTRING("verr"),+    ZYDIS_MAKE_SHORTSTRING("verw"),+    ZYDIS_MAKE_SHORTSTRING("vexp223ps"),+    ZYDIS_MAKE_SHORTSTRING("vexp2pd"),+    ZYDIS_MAKE_SHORTSTRING("vexp2ps"),+    ZYDIS_MAKE_SHORTSTRING("vexpandpd"),+    ZYDIS_MAKE_SHORTSTRING("vexpandps"),+    ZYDIS_MAKE_SHORTSTRING("vextractf128"),+    ZYDIS_MAKE_SHORTSTRING("vextractf32x4"),+    ZYDIS_MAKE_SHORTSTRING("vextractf32x8"),+    ZYDIS_MAKE_SHORTSTRING("vextractf64x2"),+    ZYDIS_MAKE_SHORTSTRING("vextractf64x4"),+    ZYDIS_MAKE_SHORTSTRING("vextracti128"),+    ZYDIS_MAKE_SHORTSTRING("vextracti32x4"),+    ZYDIS_MAKE_SHORTSTRING("vextracti32x8"),+    ZYDIS_MAKE_SHORTSTRING("vextracti64x2"),+    ZYDIS_MAKE_SHORTSTRING("vextracti64x4"),+    ZYDIS_MAKE_SHORTSTRING("vextractps"),+    ZYDIS_MAKE_SHORTSTRING("vfixupimmpd"),+    ZYDIS_MAKE_SHORTSTRING("vfixupimmps"),+    ZYDIS_MAKE_SHORTSTRING("vfixupimmsd"),+    ZYDIS_MAKE_SHORTSTRING("vfixupimmss"),+    ZYDIS_MAKE_SHORTSTRING("vfixupnanpd"),+    ZYDIS_MAKE_SHORTSTRING("vfixupnanps"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd132pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd132ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd132sd"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd132ss"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd213pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd213ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd213sd"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd213ss"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd231pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd231ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd231sd"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd231ss"),+    ZYDIS_MAKE_SHORTSTRING("vfmadd233ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddpd"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddps"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsd"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddss"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsub132pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsub132ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsub213pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsub213ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsub231pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsub231ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsubpd"),+    ZYDIS_MAKE_SHORTSTRING("vfmaddsubps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub132pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub132ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub132sd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub132ss"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub213pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub213ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub213sd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub213ss"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub231pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub231ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub231sd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsub231ss"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubadd132pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubadd132ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubadd213pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubadd213ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubadd231pd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubadd231ps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubaddpd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubaddps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubpd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubps"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubsd"),+    ZYDIS_MAKE_SHORTSTRING("vfmsubss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd132pd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd132ps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd132sd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd132ss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd213pd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd213ps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd213sd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd213ss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd231pd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd231ps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd231sd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmadd231ss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmaddpd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmaddps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmaddsd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmaddss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub132pd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub132ps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub132sd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub132ss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub213pd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub213ps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub213sd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub213ss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub231pd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub231ps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub231sd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsub231ss"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsubpd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsubps"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsubsd"),+    ZYDIS_MAKE_SHORTSTRING("vfnmsubss"),+    ZYDIS_MAKE_SHORTSTRING("vfpclasspd"),+    ZYDIS_MAKE_SHORTSTRING("vfpclassps"),+    ZYDIS_MAKE_SHORTSTRING("vfpclasssd"),+    ZYDIS_MAKE_SHORTSTRING("vfpclassss"),+    ZYDIS_MAKE_SHORTSTRING("vfrczpd"),+    ZYDIS_MAKE_SHORTSTRING("vfrczps"),+    ZYDIS_MAKE_SHORTSTRING("vfrczsd"),+    ZYDIS_MAKE_SHORTSTRING("vfrczss"),+    ZYDIS_MAKE_SHORTSTRING("vgatherdpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherdps"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf0dpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf0dps"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf0hintdpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf0hintdps"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf0qpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf0qps"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf1dpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf1dps"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf1qpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherpf1qps"),+    ZYDIS_MAKE_SHORTSTRING("vgatherqpd"),+    ZYDIS_MAKE_SHORTSTRING("vgatherqps"),+    ZYDIS_MAKE_SHORTSTRING("vgetexppd"),+    ZYDIS_MAKE_SHORTSTRING("vgetexpps"),+    ZYDIS_MAKE_SHORTSTRING("vgetexpsd"),+    ZYDIS_MAKE_SHORTSTRING("vgetexpss"),+    ZYDIS_MAKE_SHORTSTRING("vgetmantpd"),+    ZYDIS_MAKE_SHORTSTRING("vgetmantps"),+    ZYDIS_MAKE_SHORTSTRING("vgetmantsd"),+    ZYDIS_MAKE_SHORTSTRING("vgetmantss"),+    ZYDIS_MAKE_SHORTSTRING("vgf2p8affineinvqb"),+    ZYDIS_MAKE_SHORTSTRING("vgf2p8affineqb"),+    ZYDIS_MAKE_SHORTSTRING("vgf2p8mulb"),+    ZYDIS_MAKE_SHORTSTRING("vgmaxabsps"),+    ZYDIS_MAKE_SHORTSTRING("vgmaxpd"),+    ZYDIS_MAKE_SHORTSTRING("vgmaxps"),+    ZYDIS_MAKE_SHORTSTRING("vgminpd"),+    ZYDIS_MAKE_SHORTSTRING("vgminps"),+    ZYDIS_MAKE_SHORTSTRING("vhaddpd"),+    ZYDIS_MAKE_SHORTSTRING("vhaddps"),+    ZYDIS_MAKE_SHORTSTRING("vhsubpd"),+    ZYDIS_MAKE_SHORTSTRING("vhsubps"),+    ZYDIS_MAKE_SHORTSTRING("vinsertf128"),+    ZYDIS_MAKE_SHORTSTRING("vinsertf32x4"),+    ZYDIS_MAKE_SHORTSTRING("vinsertf32x8"),+    ZYDIS_MAKE_SHORTSTRING("vinsertf64x2"),+    ZYDIS_MAKE_SHORTSTRING("vinsertf64x4"),+    ZYDIS_MAKE_SHORTSTRING("vinserti128"),+    ZYDIS_MAKE_SHORTSTRING("vinserti32x4"),+    ZYDIS_MAKE_SHORTSTRING("vinserti32x8"),+    ZYDIS_MAKE_SHORTSTRING("vinserti64x2"),+    ZYDIS_MAKE_SHORTSTRING("vinserti64x4"),+    ZYDIS_MAKE_SHORTSTRING("vinsertps"),+    ZYDIS_MAKE_SHORTSTRING("vlddqu"),+    ZYDIS_MAKE_SHORTSTRING("vldmxcsr"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpackhd"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpackhpd"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpackhps"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpackhq"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpackld"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpacklpd"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpacklps"),+    ZYDIS_MAKE_SHORTSTRING("vloadunpacklq"),+    ZYDIS_MAKE_SHORTSTRING("vlog2ps"),+    ZYDIS_MAKE_SHORTSTRING("vmaskmovdqu"),+    ZYDIS_MAKE_SHORTSTRING("vmaskmovpd"),+    ZYDIS_MAKE_SHORTSTRING("vmaskmovps"),+    ZYDIS_MAKE_SHORTSTRING("vmaxpd"),+    ZYDIS_MAKE_SHORTSTRING("vmaxps"),+    ZYDIS_MAKE_SHORTSTRING("vmaxsd"),+    ZYDIS_MAKE_SHORTSTRING("vmaxss"),+    ZYDIS_MAKE_SHORTSTRING("vmcall"),+    ZYDIS_MAKE_SHORTSTRING("vmclear"),+    ZYDIS_MAKE_SHORTSTRING("vmfunc"),+    ZYDIS_MAKE_SHORTSTRING("vminpd"),+    ZYDIS_MAKE_SHORTSTRING("vminps"),+    ZYDIS_MAKE_SHORTSTRING("vminsd"),+    ZYDIS_MAKE_SHORTSTRING("vminss"),+    ZYDIS_MAKE_SHORTSTRING("vmlaunch"),+    ZYDIS_MAKE_SHORTSTRING("vmload"),+    ZYDIS_MAKE_SHORTSTRING("vmmcall"),+    ZYDIS_MAKE_SHORTSTRING("vmovapd"),+    ZYDIS_MAKE_SHORTSTRING("vmovaps"),+    ZYDIS_MAKE_SHORTSTRING("vmovd"),+    ZYDIS_MAKE_SHORTSTRING("vmovddup"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqa"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqa32"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqa64"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqu"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqu16"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqu32"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqu64"),+    ZYDIS_MAKE_SHORTSTRING("vmovdqu8"),+    ZYDIS_MAKE_SHORTSTRING("vmovhlps"),+    ZYDIS_MAKE_SHORTSTRING("vmovhpd"),+    ZYDIS_MAKE_SHORTSTRING("vmovhps"),+    ZYDIS_MAKE_SHORTSTRING("vmovlhps"),+    ZYDIS_MAKE_SHORTSTRING("vmovlpd"),+    ZYDIS_MAKE_SHORTSTRING("vmovlps"),+    ZYDIS_MAKE_SHORTSTRING("vmovmskpd"),+    ZYDIS_MAKE_SHORTSTRING("vmovmskps"),+    ZYDIS_MAKE_SHORTSTRING("vmovnrapd"),+    ZYDIS_MAKE_SHORTSTRING("vmovnraps"),+    ZYDIS_MAKE_SHORTSTRING("vmovnrngoapd"),+    ZYDIS_MAKE_SHORTSTRING("vmovnrngoaps"),+    ZYDIS_MAKE_SHORTSTRING("vmovntdq"),+    ZYDIS_MAKE_SHORTSTRING("vmovntdqa"),+    ZYDIS_MAKE_SHORTSTRING("vmovntpd"),+    ZYDIS_MAKE_SHORTSTRING("vmovntps"),+    ZYDIS_MAKE_SHORTSTRING("vmovq"),+    ZYDIS_MAKE_SHORTSTRING("vmovsd"),+    ZYDIS_MAKE_SHORTSTRING("vmovshdup"),+    ZYDIS_MAKE_SHORTSTRING("vmovsldup"),+    ZYDIS_MAKE_SHORTSTRING("vmovss"),+    ZYDIS_MAKE_SHORTSTRING("vmovupd"),+    ZYDIS_MAKE_SHORTSTRING("vmovups"),+    ZYDIS_MAKE_SHORTSTRING("vmpsadbw"),+    ZYDIS_MAKE_SHORTSTRING("vmptrld"),+    ZYDIS_MAKE_SHORTSTRING("vmptrst"),+    ZYDIS_MAKE_SHORTSTRING("vmread"),+    ZYDIS_MAKE_SHORTSTRING("vmresume"),+    ZYDIS_MAKE_SHORTSTRING("vmrun"),+    ZYDIS_MAKE_SHORTSTRING("vmsave"),+    ZYDIS_MAKE_SHORTSTRING("vmulpd"),+    ZYDIS_MAKE_SHORTSTRING("vmulps"),+    ZYDIS_MAKE_SHORTSTRING("vmulsd"),+    ZYDIS_MAKE_SHORTSTRING("vmulss"),+    ZYDIS_MAKE_SHORTSTRING("vmwrite"),+    ZYDIS_MAKE_SHORTSTRING("vmxoff"),+    ZYDIS_MAKE_SHORTSTRING("vmxon"),+    ZYDIS_MAKE_SHORTSTRING("vorpd"),+    ZYDIS_MAKE_SHORTSTRING("vorps"),+    ZYDIS_MAKE_SHORTSTRING("vp2intersectd"),+    ZYDIS_MAKE_SHORTSTRING("vp2intersectq"),+    ZYDIS_MAKE_SHORTSTRING("vp4dpwssd"),+    ZYDIS_MAKE_SHORTSTRING("vp4dpwssds"),+    ZYDIS_MAKE_SHORTSTRING("vpabsb"),+    ZYDIS_MAKE_SHORTSTRING("vpabsd"),+    ZYDIS_MAKE_SHORTSTRING("vpabsq"),+    ZYDIS_MAKE_SHORTSTRING("vpabsw"),+    ZYDIS_MAKE_SHORTSTRING("vpackssdw"),+    ZYDIS_MAKE_SHORTSTRING("vpacksswb"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorehd"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorehpd"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorehps"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorehq"),+    ZYDIS_MAKE_SHORTSTRING("vpackstoreld"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorelpd"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorelps"),+    ZYDIS_MAKE_SHORTSTRING("vpackstorelq"),+    ZYDIS_MAKE_SHORTSTRING("vpackusdw"),+    ZYDIS_MAKE_SHORTSTRING("vpackuswb"),+    ZYDIS_MAKE_SHORTSTRING("vpadcd"),+    ZYDIS_MAKE_SHORTSTRING("vpaddb"),+    ZYDIS_MAKE_SHORTSTRING("vpaddd"),+    ZYDIS_MAKE_SHORTSTRING("vpaddq"),+    ZYDIS_MAKE_SHORTSTRING("vpaddsb"),+    ZYDIS_MAKE_SHORTSTRING("vpaddsetcd"),+    ZYDIS_MAKE_SHORTSTRING("vpaddsetsd"),+    ZYDIS_MAKE_SHORTSTRING("vpaddsw"),+    ZYDIS_MAKE_SHORTSTRING("vpaddusb"),+    ZYDIS_MAKE_SHORTSTRING("vpaddusw"),+    ZYDIS_MAKE_SHORTSTRING("vpaddw"),+    ZYDIS_MAKE_SHORTSTRING("vpalignr"),+    ZYDIS_MAKE_SHORTSTRING("vpand"),+    ZYDIS_MAKE_SHORTSTRING("vpandd"),+    ZYDIS_MAKE_SHORTSTRING("vpandn"),+    ZYDIS_MAKE_SHORTSTRING("vpandnd"),+    ZYDIS_MAKE_SHORTSTRING("vpandnq"),+    ZYDIS_MAKE_SHORTSTRING("vpandq"),+    ZYDIS_MAKE_SHORTSTRING("vpavgb"),+    ZYDIS_MAKE_SHORTSTRING("vpavgw"),+    ZYDIS_MAKE_SHORTSTRING("vpblendd"),+    ZYDIS_MAKE_SHORTSTRING("vpblendmb"),+    ZYDIS_MAKE_SHORTSTRING("vpblendmd"),+    ZYDIS_MAKE_SHORTSTRING("vpblendmq"),+    ZYDIS_MAKE_SHORTSTRING("vpblendmw"),+    ZYDIS_MAKE_SHORTSTRING("vpblendvb"),+    ZYDIS_MAKE_SHORTSTRING("vpblendw"),+    ZYDIS_MAKE_SHORTSTRING("vpbroadcastb"),+    ZYDIS_MAKE_SHORTSTRING("vpbroadcastd"),+    ZYDIS_MAKE_SHORTSTRING("vpbroadcastmb2q"),+    ZYDIS_MAKE_SHORTSTRING("vpbroadcastmw2d"),+    ZYDIS_MAKE_SHORTSTRING("vpbroadcastq"),+    ZYDIS_MAKE_SHORTSTRING("vpbroadcastw"),+    ZYDIS_MAKE_SHORTSTRING("vpclmulqdq"),+    ZYDIS_MAKE_SHORTSTRING("vpcmov"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpb"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpd"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpeqb"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpeqd"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpeqq"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpeqw"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpestri"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpestrm"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpgtb"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpgtd"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpgtq"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpgtw"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpistri"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpistrm"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpltd"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpq"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpub"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpud"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpuq"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpuw"),+    ZYDIS_MAKE_SHORTSTRING("vpcmpw"),+    ZYDIS_MAKE_SHORTSTRING("vpcomb"),+    ZYDIS_MAKE_SHORTSTRING("vpcomd"),+    ZYDIS_MAKE_SHORTSTRING("vpcompressb"),+    ZYDIS_MAKE_SHORTSTRING("vpcompressd"),+    ZYDIS_MAKE_SHORTSTRING("vpcompressq"),+    ZYDIS_MAKE_SHORTSTRING("vpcompressw"),+    ZYDIS_MAKE_SHORTSTRING("vpcomq"),+    ZYDIS_MAKE_SHORTSTRING("vpcomub"),+    ZYDIS_MAKE_SHORTSTRING("vpcomud"),+    ZYDIS_MAKE_SHORTSTRING("vpcomuq"),+    ZYDIS_MAKE_SHORTSTRING("vpcomuw"),+    ZYDIS_MAKE_SHORTSTRING("vpcomw"),+    ZYDIS_MAKE_SHORTSTRING("vpconflictd"),+    ZYDIS_MAKE_SHORTSTRING("vpconflictq"),+    ZYDIS_MAKE_SHORTSTRING("vpdpbusd"),+    ZYDIS_MAKE_SHORTSTRING("vpdpbusds"),+    ZYDIS_MAKE_SHORTSTRING("vpdpwssd"),+    ZYDIS_MAKE_SHORTSTRING("vpdpwssds"),+    ZYDIS_MAKE_SHORTSTRING("vperm2f128"),+    ZYDIS_MAKE_SHORTSTRING("vperm2i128"),+    ZYDIS_MAKE_SHORTSTRING("vpermb"),+    ZYDIS_MAKE_SHORTSTRING("vpermd"),+    ZYDIS_MAKE_SHORTSTRING("vpermf32x4"),+    ZYDIS_MAKE_SHORTSTRING("vpermi2b"),+    ZYDIS_MAKE_SHORTSTRING("vpermi2d"),+    ZYDIS_MAKE_SHORTSTRING("vpermi2pd"),+    ZYDIS_MAKE_SHORTSTRING("vpermi2ps"),+    ZYDIS_MAKE_SHORTSTRING("vpermi2q"),+    ZYDIS_MAKE_SHORTSTRING("vpermi2w"),+    ZYDIS_MAKE_SHORTSTRING("vpermil2pd"),+    ZYDIS_MAKE_SHORTSTRING("vpermil2ps"),+    ZYDIS_MAKE_SHORTSTRING("vpermilpd"),+    ZYDIS_MAKE_SHORTSTRING("vpermilps"),+    ZYDIS_MAKE_SHORTSTRING("vpermpd"),+    ZYDIS_MAKE_SHORTSTRING("vpermps"),+    ZYDIS_MAKE_SHORTSTRING("vpermq"),+    ZYDIS_MAKE_SHORTSTRING("vpermt2b"),+    ZYDIS_MAKE_SHORTSTRING("vpermt2d"),+    ZYDIS_MAKE_SHORTSTRING("vpermt2pd"),+    ZYDIS_MAKE_SHORTSTRING("vpermt2ps"),+    ZYDIS_MAKE_SHORTSTRING("vpermt2q"),+    ZYDIS_MAKE_SHORTSTRING("vpermt2w"),+    ZYDIS_MAKE_SHORTSTRING("vpermw"),+    ZYDIS_MAKE_SHORTSTRING("vpexpandb"),+    ZYDIS_MAKE_SHORTSTRING("vpexpandd"),+    ZYDIS_MAKE_SHORTSTRING("vpexpandq"),+    ZYDIS_MAKE_SHORTSTRING("vpexpandw"),+    ZYDIS_MAKE_SHORTSTRING("vpextrb"),+    ZYDIS_MAKE_SHORTSTRING("vpextrd"),+    ZYDIS_MAKE_SHORTSTRING("vpextrq"),+    ZYDIS_MAKE_SHORTSTRING("vpextrw"),+    ZYDIS_MAKE_SHORTSTRING("vpgatherdd"),+    ZYDIS_MAKE_SHORTSTRING("vpgatherdq"),+    ZYDIS_MAKE_SHORTSTRING("vpgatherqd"),+    ZYDIS_MAKE_SHORTSTRING("vpgatherqq"),+    ZYDIS_MAKE_SHORTSTRING("vphaddbd"),+    ZYDIS_MAKE_SHORTSTRING("vphaddbq"),+    ZYDIS_MAKE_SHORTSTRING("vphaddbw"),+    ZYDIS_MAKE_SHORTSTRING("vphaddd"),+    ZYDIS_MAKE_SHORTSTRING("vphadddq"),+    ZYDIS_MAKE_SHORTSTRING("vphaddsw"),+    ZYDIS_MAKE_SHORTSTRING("vphaddubd"),+    ZYDIS_MAKE_SHORTSTRING("vphaddubq"),+    ZYDIS_MAKE_SHORTSTRING("vphaddubw"),+    ZYDIS_MAKE_SHORTSTRING("vphaddudq"),+    ZYDIS_MAKE_SHORTSTRING("vphadduwd"),+    ZYDIS_MAKE_SHORTSTRING("vphadduwq"),+    ZYDIS_MAKE_SHORTSTRING("vphaddw"),+    ZYDIS_MAKE_SHORTSTRING("vphaddwd"),+    ZYDIS_MAKE_SHORTSTRING("vphaddwq"),+    ZYDIS_MAKE_SHORTSTRING("vphminposuw"),+    ZYDIS_MAKE_SHORTSTRING("vphsubbw"),+    ZYDIS_MAKE_SHORTSTRING("vphsubd"),+    ZYDIS_MAKE_SHORTSTRING("vphsubdq"),+    ZYDIS_MAKE_SHORTSTRING("vphsubsw"),+    ZYDIS_MAKE_SHORTSTRING("vphsubw"),+    ZYDIS_MAKE_SHORTSTRING("vphsubwd"),+    ZYDIS_MAKE_SHORTSTRING("vpinsrb"),+    ZYDIS_MAKE_SHORTSTRING("vpinsrd"),+    ZYDIS_MAKE_SHORTSTRING("vpinsrq"),+    ZYDIS_MAKE_SHORTSTRING("vpinsrw"),+    ZYDIS_MAKE_SHORTSTRING("vplzcntd"),+    ZYDIS_MAKE_SHORTSTRING("vplzcntq"),+    ZYDIS_MAKE_SHORTSTRING("vpmacsdd"),+    ZYDIS_MAKE_SHORTSTRING("vpmacsdqh"),+    ZYDIS_MAKE_SHORTSTRING("vpmacsdql"),+    ZYDIS_MAKE_SHORTSTRING("vpmacssdd"),+    ZYDIS_MAKE_SHORTSTRING("vpmacssdqh"),+    ZYDIS_MAKE_SHORTSTRING("vpmacssdql"),+    ZYDIS_MAKE_SHORTSTRING("vpmacsswd"),+    ZYDIS_MAKE_SHORTSTRING("vpmacssww"),+    ZYDIS_MAKE_SHORTSTRING("vpmacswd"),+    ZYDIS_MAKE_SHORTSTRING("vpmacsww"),+    ZYDIS_MAKE_SHORTSTRING("vpmadcsswd"),+    ZYDIS_MAKE_SHORTSTRING("vpmadcswd"),+    ZYDIS_MAKE_SHORTSTRING("vpmadd231d"),+    ZYDIS_MAKE_SHORTSTRING("vpmadd233d"),+    ZYDIS_MAKE_SHORTSTRING("vpmadd52huq"),+    ZYDIS_MAKE_SHORTSTRING("vpmadd52luq"),+    ZYDIS_MAKE_SHORTSTRING("vpmaddubsw"),+    ZYDIS_MAKE_SHORTSTRING("vpmaddwd"),+    ZYDIS_MAKE_SHORTSTRING("vpmaskmovd"),+    ZYDIS_MAKE_SHORTSTRING("vpmaskmovq"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxsb"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxsd"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxsq"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxsw"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxub"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxud"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxuq"),+    ZYDIS_MAKE_SHORTSTRING("vpmaxuw"),+    ZYDIS_MAKE_SHORTSTRING("vpminsb"),+    ZYDIS_MAKE_SHORTSTRING("vpminsd"),+    ZYDIS_MAKE_SHORTSTRING("vpminsq"),+    ZYDIS_MAKE_SHORTSTRING("vpminsw"),+    ZYDIS_MAKE_SHORTSTRING("vpminub"),+    ZYDIS_MAKE_SHORTSTRING("vpminud"),+    ZYDIS_MAKE_SHORTSTRING("vpminuq"),+    ZYDIS_MAKE_SHORTSTRING("vpminuw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovb2m"),+    ZYDIS_MAKE_SHORTSTRING("vpmovd2m"),+    ZYDIS_MAKE_SHORTSTRING("vpmovdb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovdw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovm2b"),+    ZYDIS_MAKE_SHORTSTRING("vpmovm2d"),+    ZYDIS_MAKE_SHORTSTRING("vpmovm2q"),+    ZYDIS_MAKE_SHORTSTRING("vpmovm2w"),+    ZYDIS_MAKE_SHORTSTRING("vpmovmskb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovq2m"),+    ZYDIS_MAKE_SHORTSTRING("vpmovqb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovqd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovqw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsdb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsdw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsqb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsqd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsqw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovswb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsxbd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsxbq"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsxbw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsxdq"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsxwd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovsxwq"),+    ZYDIS_MAKE_SHORTSTRING("vpmovusdb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovusdw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovusqb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovusqd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovusqw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovuswb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovw2m"),+    ZYDIS_MAKE_SHORTSTRING("vpmovwb"),+    ZYDIS_MAKE_SHORTSTRING("vpmovzxbd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovzxbq"),+    ZYDIS_MAKE_SHORTSTRING("vpmovzxbw"),+    ZYDIS_MAKE_SHORTSTRING("vpmovzxdq"),+    ZYDIS_MAKE_SHORTSTRING("vpmovzxwd"),+    ZYDIS_MAKE_SHORTSTRING("vpmovzxwq"),+    ZYDIS_MAKE_SHORTSTRING("vpmuldq"),+    ZYDIS_MAKE_SHORTSTRING("vpmulhd"),+    ZYDIS_MAKE_SHORTSTRING("vpmulhrsw"),+    ZYDIS_MAKE_SHORTSTRING("vpmulhud"),+    ZYDIS_MAKE_SHORTSTRING("vpmulhuw"),+    ZYDIS_MAKE_SHORTSTRING("vpmulhw"),+    ZYDIS_MAKE_SHORTSTRING("vpmulld"),+    ZYDIS_MAKE_SHORTSTRING("vpmullq"),+    ZYDIS_MAKE_SHORTSTRING("vpmullw"),+    ZYDIS_MAKE_SHORTSTRING("vpmultishiftqb"),+    ZYDIS_MAKE_SHORTSTRING("vpmuludq"),+    ZYDIS_MAKE_SHORTSTRING("vpopcntb"),+    ZYDIS_MAKE_SHORTSTRING("vpopcntd"),+    ZYDIS_MAKE_SHORTSTRING("vpopcntq"),+    ZYDIS_MAKE_SHORTSTRING("vpopcntw"),+    ZYDIS_MAKE_SHORTSTRING("vpor"),+    ZYDIS_MAKE_SHORTSTRING("vpord"),+    ZYDIS_MAKE_SHORTSTRING("vporq"),+    ZYDIS_MAKE_SHORTSTRING("vpperm"),+    ZYDIS_MAKE_SHORTSTRING("vprefetch0"),+    ZYDIS_MAKE_SHORTSTRING("vprefetch1"),+    ZYDIS_MAKE_SHORTSTRING("vprefetch2"),+    ZYDIS_MAKE_SHORTSTRING("vprefetche0"),+    ZYDIS_MAKE_SHORTSTRING("vprefetche1"),+    ZYDIS_MAKE_SHORTSTRING("vprefetche2"),+    ZYDIS_MAKE_SHORTSTRING("vprefetchenta"),+    ZYDIS_MAKE_SHORTSTRING("vprefetchnta"),+    ZYDIS_MAKE_SHORTSTRING("vprold"),+    ZYDIS_MAKE_SHORTSTRING("vprolq"),+    ZYDIS_MAKE_SHORTSTRING("vprolvd"),+    ZYDIS_MAKE_SHORTSTRING("vprolvq"),+    ZYDIS_MAKE_SHORTSTRING("vprord"),+    ZYDIS_MAKE_SHORTSTRING("vprorq"),+    ZYDIS_MAKE_SHORTSTRING("vprorvd"),+    ZYDIS_MAKE_SHORTSTRING("vprorvq"),+    ZYDIS_MAKE_SHORTSTRING("vprotb"),+    ZYDIS_MAKE_SHORTSTRING("vprotd"),+    ZYDIS_MAKE_SHORTSTRING("vprotq"),+    ZYDIS_MAKE_SHORTSTRING("vprotw"),+    ZYDIS_MAKE_SHORTSTRING("vpsadbw"),+    ZYDIS_MAKE_SHORTSTRING("vpsbbd"),+    ZYDIS_MAKE_SHORTSTRING("vpsbbrd"),+    ZYDIS_MAKE_SHORTSTRING("vpscatterdd"),+    ZYDIS_MAKE_SHORTSTRING("vpscatterdq"),+    ZYDIS_MAKE_SHORTSTRING("vpscatterqd"),+    ZYDIS_MAKE_SHORTSTRING("vpscatterqq"),+    ZYDIS_MAKE_SHORTSTRING("vpshab"),+    ZYDIS_MAKE_SHORTSTRING("vpshad"),+    ZYDIS_MAKE_SHORTSTRING("vpshaq"),+    ZYDIS_MAKE_SHORTSTRING("vpshaw"),+    ZYDIS_MAKE_SHORTSTRING("vpshlb"),+    ZYDIS_MAKE_SHORTSTRING("vpshld"),+    ZYDIS_MAKE_SHORTSTRING("vpshldd"),+    ZYDIS_MAKE_SHORTSTRING("vpshldq"),+    ZYDIS_MAKE_SHORTSTRING("vpshldvd"),+    ZYDIS_MAKE_SHORTSTRING("vpshldvq"),+    ZYDIS_MAKE_SHORTSTRING("vpshldvw"),+    ZYDIS_MAKE_SHORTSTRING("vpshldw"),+    ZYDIS_MAKE_SHORTSTRING("vpshlq"),+    ZYDIS_MAKE_SHORTSTRING("vpshlw"),+    ZYDIS_MAKE_SHORTSTRING("vpshrdd"),+    ZYDIS_MAKE_SHORTSTRING("vpshrdq"),+    ZYDIS_MAKE_SHORTSTRING("vpshrdvd"),+    ZYDIS_MAKE_SHORTSTRING("vpshrdvq"),+    ZYDIS_MAKE_SHORTSTRING("vpshrdvw"),+    ZYDIS_MAKE_SHORTSTRING("vpshrdw"),+    ZYDIS_MAKE_SHORTSTRING("vpshufb"),+    ZYDIS_MAKE_SHORTSTRING("vpshufbitqmb"),+    ZYDIS_MAKE_SHORTSTRING("vpshufd"),+    ZYDIS_MAKE_SHORTSTRING("vpshufhw"),+    ZYDIS_MAKE_SHORTSTRING("vpshuflw"),+    ZYDIS_MAKE_SHORTSTRING("vpsignb"),+    ZYDIS_MAKE_SHORTSTRING("vpsignd"),+    ZYDIS_MAKE_SHORTSTRING("vpsignw"),+    ZYDIS_MAKE_SHORTSTRING("vpslld"),+    ZYDIS_MAKE_SHORTSTRING("vpslldq"),+    ZYDIS_MAKE_SHORTSTRING("vpsllq"),+    ZYDIS_MAKE_SHORTSTRING("vpsllvd"),+    ZYDIS_MAKE_SHORTSTRING("vpsllvq"),+    ZYDIS_MAKE_SHORTSTRING("vpsllvw"),+    ZYDIS_MAKE_SHORTSTRING("vpsllw"),+    ZYDIS_MAKE_SHORTSTRING("vpsrad"),+    ZYDIS_MAKE_SHORTSTRING("vpsraq"),+    ZYDIS_MAKE_SHORTSTRING("vpsravd"),+    ZYDIS_MAKE_SHORTSTRING("vpsravq"),+    ZYDIS_MAKE_SHORTSTRING("vpsravw"),+    ZYDIS_MAKE_SHORTSTRING("vpsraw"),+    ZYDIS_MAKE_SHORTSTRING("vpsrld"),+    ZYDIS_MAKE_SHORTSTRING("vpsrldq"),+    ZYDIS_MAKE_SHORTSTRING("vpsrlq"),+    ZYDIS_MAKE_SHORTSTRING("vpsrlvd"),+    ZYDIS_MAKE_SHORTSTRING("vpsrlvq"),+    ZYDIS_MAKE_SHORTSTRING("vpsrlvw"),+    ZYDIS_MAKE_SHORTSTRING("vpsrlw"),+    ZYDIS_MAKE_SHORTSTRING("vpsubb"),+    ZYDIS_MAKE_SHORTSTRING("vpsubd"),+    ZYDIS_MAKE_SHORTSTRING("vpsubq"),+    ZYDIS_MAKE_SHORTSTRING("vpsubrd"),+    ZYDIS_MAKE_SHORTSTRING("vpsubrsetbd"),+    ZYDIS_MAKE_SHORTSTRING("vpsubsb"),+    ZYDIS_MAKE_SHORTSTRING("vpsubsetbd"),+    ZYDIS_MAKE_SHORTSTRING("vpsubsw"),+    ZYDIS_MAKE_SHORTSTRING("vpsubusb"),+    ZYDIS_MAKE_SHORTSTRING("vpsubusw"),+    ZYDIS_MAKE_SHORTSTRING("vpsubw"),+    ZYDIS_MAKE_SHORTSTRING("vpternlogd"),+    ZYDIS_MAKE_SHORTSTRING("vpternlogq"),+    ZYDIS_MAKE_SHORTSTRING("vptest"),+    ZYDIS_MAKE_SHORTSTRING("vptestmb"),+    ZYDIS_MAKE_SHORTSTRING("vptestmd"),+    ZYDIS_MAKE_SHORTSTRING("vptestmq"),+    ZYDIS_MAKE_SHORTSTRING("vptestmw"),+    ZYDIS_MAKE_SHORTSTRING("vptestnmb"),+    ZYDIS_MAKE_SHORTSTRING("vptestnmd"),+    ZYDIS_MAKE_SHORTSTRING("vptestnmq"),+    ZYDIS_MAKE_SHORTSTRING("vptestnmw"),+    ZYDIS_MAKE_SHORTSTRING("vpunpckhbw"),+    ZYDIS_MAKE_SHORTSTRING("vpunpckhdq"),+    ZYDIS_MAKE_SHORTSTRING("vpunpckhqdq"),+    ZYDIS_MAKE_SHORTSTRING("vpunpckhwd"),+    ZYDIS_MAKE_SHORTSTRING("vpunpcklbw"),+    ZYDIS_MAKE_SHORTSTRING("vpunpckldq"),+    ZYDIS_MAKE_SHORTSTRING("vpunpcklqdq"),+    ZYDIS_MAKE_SHORTSTRING("vpunpcklwd"),+    ZYDIS_MAKE_SHORTSTRING("vpxor"),+    ZYDIS_MAKE_SHORTSTRING("vpxord"),+    ZYDIS_MAKE_SHORTSTRING("vpxorq"),+    ZYDIS_MAKE_SHORTSTRING("vrangepd"),+    ZYDIS_MAKE_SHORTSTRING("vrangeps"),+    ZYDIS_MAKE_SHORTSTRING("vrangesd"),+    ZYDIS_MAKE_SHORTSTRING("vrangess"),+    ZYDIS_MAKE_SHORTSTRING("vrcp14pd"),+    ZYDIS_MAKE_SHORTSTRING("vrcp14ps"),+    ZYDIS_MAKE_SHORTSTRING("vrcp14sd"),+    ZYDIS_MAKE_SHORTSTRING("vrcp14ss"),+    ZYDIS_MAKE_SHORTSTRING("vrcp23ps"),+    ZYDIS_MAKE_SHORTSTRING("vrcp28pd"),+    ZYDIS_MAKE_SHORTSTRING("vrcp28ps"),+    ZYDIS_MAKE_SHORTSTRING("vrcp28sd"),+    ZYDIS_MAKE_SHORTSTRING("vrcp28ss"),+    ZYDIS_MAKE_SHORTSTRING("vrcpps"),+    ZYDIS_MAKE_SHORTSTRING("vrcpss"),+    ZYDIS_MAKE_SHORTSTRING("vreducepd"),+    ZYDIS_MAKE_SHORTSTRING("vreduceps"),+    ZYDIS_MAKE_SHORTSTRING("vreducesd"),+    ZYDIS_MAKE_SHORTSTRING("vreducess"),+    ZYDIS_MAKE_SHORTSTRING("vrndfxpntpd"),+    ZYDIS_MAKE_SHORTSTRING("vrndfxpntps"),+    ZYDIS_MAKE_SHORTSTRING("vrndscalepd"),+    ZYDIS_MAKE_SHORTSTRING("vrndscaleps"),+    ZYDIS_MAKE_SHORTSTRING("vrndscalesd"),+    ZYDIS_MAKE_SHORTSTRING("vrndscaless"),+    ZYDIS_MAKE_SHORTSTRING("vroundpd"),+    ZYDIS_MAKE_SHORTSTRING("vroundps"),+    ZYDIS_MAKE_SHORTSTRING("vroundsd"),+    ZYDIS_MAKE_SHORTSTRING("vroundss"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt14pd"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt14ps"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt14sd"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt14ss"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt23ps"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt28pd"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt28ps"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt28sd"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrt28ss"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrtps"),+    ZYDIS_MAKE_SHORTSTRING("vrsqrtss"),+    ZYDIS_MAKE_SHORTSTRING("vscalefpd"),+    ZYDIS_MAKE_SHORTSTRING("vscalefps"),+    ZYDIS_MAKE_SHORTSTRING("vscalefsd"),+    ZYDIS_MAKE_SHORTSTRING("vscalefss"),+    ZYDIS_MAKE_SHORTSTRING("vscaleps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterdpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterdps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf0dpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf0dps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf0hintdpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf0hintdps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf0qpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf0qps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf1dpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf1dps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf1qpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterpf1qps"),+    ZYDIS_MAKE_SHORTSTRING("vscatterqpd"),+    ZYDIS_MAKE_SHORTSTRING("vscatterqps"),+    ZYDIS_MAKE_SHORTSTRING("vshuff32x4"),+    ZYDIS_MAKE_SHORTSTRING("vshuff64x2"),+    ZYDIS_MAKE_SHORTSTRING("vshufi32x4"),+    ZYDIS_MAKE_SHORTSTRING("vshufi64x2"),+    ZYDIS_MAKE_SHORTSTRING("vshufpd"),+    ZYDIS_MAKE_SHORTSTRING("vshufps"),+    ZYDIS_MAKE_SHORTSTRING("vsqrtpd"),+    ZYDIS_MAKE_SHORTSTRING("vsqrtps"),+    ZYDIS_MAKE_SHORTSTRING("vsqrtsd"),+    ZYDIS_MAKE_SHORTSTRING("vsqrtss"),+    ZYDIS_MAKE_SHORTSTRING("vstmxcsr"),+    ZYDIS_MAKE_SHORTSTRING("vsubpd"),+    ZYDIS_MAKE_SHORTSTRING("vsubps"),+    ZYDIS_MAKE_SHORTSTRING("vsubrpd"),+    ZYDIS_MAKE_SHORTSTRING("vsubrps"),+    ZYDIS_MAKE_SHORTSTRING("vsubsd"),+    ZYDIS_MAKE_SHORTSTRING("vsubss"),+    ZYDIS_MAKE_SHORTSTRING("vtestpd"),+    ZYDIS_MAKE_SHORTSTRING("vtestps"),+    ZYDIS_MAKE_SHORTSTRING("vucomisd"),+    ZYDIS_MAKE_SHORTSTRING("vucomiss"),+    ZYDIS_MAKE_SHORTSTRING("vunpckhpd"),+    ZYDIS_MAKE_SHORTSTRING("vunpckhps"),+    ZYDIS_MAKE_SHORTSTRING("vunpcklpd"),+    ZYDIS_MAKE_SHORTSTRING("vunpcklps"),+    ZYDIS_MAKE_SHORTSTRING("vxorpd"),+    ZYDIS_MAKE_SHORTSTRING("vxorps"),+    ZYDIS_MAKE_SHORTSTRING("vzeroall"),+    ZYDIS_MAKE_SHORTSTRING("vzeroupper"),+    ZYDIS_MAKE_SHORTSTRING("wbinvd"),+    ZYDIS_MAKE_SHORTSTRING("wrfsbase"),+    ZYDIS_MAKE_SHORTSTRING("wrgsbase"),+    ZYDIS_MAKE_SHORTSTRING("wrmsr"),+    ZYDIS_MAKE_SHORTSTRING("wrpkru"),+    ZYDIS_MAKE_SHORTSTRING("wrssd"),+    ZYDIS_MAKE_SHORTSTRING("wrssq"),+    ZYDIS_MAKE_SHORTSTRING("wrussd"),+    ZYDIS_MAKE_SHORTSTRING("wrussq"),+    ZYDIS_MAKE_SHORTSTRING("xabort"),+    ZYDIS_MAKE_SHORTSTRING("xadd"),+    ZYDIS_MAKE_SHORTSTRING("xbegin"),+    ZYDIS_MAKE_SHORTSTRING("xchg"),+    ZYDIS_MAKE_SHORTSTRING("xcrypt_cbc"),+    ZYDIS_MAKE_SHORTSTRING("xcrypt_cfb"),+    ZYDIS_MAKE_SHORTSTRING("xcrypt_ctr"),+    ZYDIS_MAKE_SHORTSTRING("xcrypt_ecb"),+    ZYDIS_MAKE_SHORTSTRING("xcrypt_ofb"),+    ZYDIS_MAKE_SHORTSTRING("xend"),+    ZYDIS_MAKE_SHORTSTRING("xgetbv"),+    ZYDIS_MAKE_SHORTSTRING("xlat"),+    ZYDIS_MAKE_SHORTSTRING("xor"),+    ZYDIS_MAKE_SHORTSTRING("xorpd"),+    ZYDIS_MAKE_SHORTSTRING("xorps"),+    ZYDIS_MAKE_SHORTSTRING("xrstor"),+    ZYDIS_MAKE_SHORTSTRING("xrstor64"),+    ZYDIS_MAKE_SHORTSTRING("xrstors"),+    ZYDIS_MAKE_SHORTSTRING("xrstors64"),+    ZYDIS_MAKE_SHORTSTRING("xsave"),+    ZYDIS_MAKE_SHORTSTRING("xsave64"),+    ZYDIS_MAKE_SHORTSTRING("xsavec"),+    ZYDIS_MAKE_SHORTSTRING("xsavec64"),+    ZYDIS_MAKE_SHORTSTRING("xsaveopt"),+    ZYDIS_MAKE_SHORTSTRING("xsaveopt64"),+    ZYDIS_MAKE_SHORTSTRING("xsaves"),+    ZYDIS_MAKE_SHORTSTRING("xsaves64"),+    ZYDIS_MAKE_SHORTSTRING("xsetbv"),+    ZYDIS_MAKE_SHORTSTRING("xsha1"),+    ZYDIS_MAKE_SHORTSTRING("xsha256"),+    ZYDIS_MAKE_SHORTSTRING("xstore"),+    ZYDIS_MAKE_SHORTSTRING("xtest")+};
+ external/zydis/src/Generated/EnumRegister.inc view
@@ -0,0 +1,280 @@+static const ZydisShortString STR_REGISTER[] =+{+    ZYDIS_MAKE_SHORTSTRING("none"),++    // General purpose registers  8-bit+    ZYDIS_MAKE_SHORTSTRING("al"),+    ZYDIS_MAKE_SHORTSTRING("cl"),+    ZYDIS_MAKE_SHORTSTRING("dl"),+    ZYDIS_MAKE_SHORTSTRING("bl"),+    ZYDIS_MAKE_SHORTSTRING("ah"),+    ZYDIS_MAKE_SHORTSTRING("ch"),+    ZYDIS_MAKE_SHORTSTRING("dh"),+    ZYDIS_MAKE_SHORTSTRING("bh"),+    ZYDIS_MAKE_SHORTSTRING("spl"),+    ZYDIS_MAKE_SHORTSTRING("bpl"),+    ZYDIS_MAKE_SHORTSTRING("sil"),+    ZYDIS_MAKE_SHORTSTRING("dil"),+    ZYDIS_MAKE_SHORTSTRING("r8b"),+    ZYDIS_MAKE_SHORTSTRING("r9b"),+    ZYDIS_MAKE_SHORTSTRING("r10b"),+    ZYDIS_MAKE_SHORTSTRING("r11b"),+    ZYDIS_MAKE_SHORTSTRING("r12b"),+    ZYDIS_MAKE_SHORTSTRING("r13b"),+    ZYDIS_MAKE_SHORTSTRING("r14b"),+    ZYDIS_MAKE_SHORTSTRING("r15b"),+    // General purpose registers 16-bit+    ZYDIS_MAKE_SHORTSTRING("ax"),+    ZYDIS_MAKE_SHORTSTRING("cx"),+    ZYDIS_MAKE_SHORTSTRING("dx"),+    ZYDIS_MAKE_SHORTSTRING("bx"),+    ZYDIS_MAKE_SHORTSTRING("sp"),+    ZYDIS_MAKE_SHORTSTRING("bp"),+    ZYDIS_MAKE_SHORTSTRING("si"),+    ZYDIS_MAKE_SHORTSTRING("di"),+    ZYDIS_MAKE_SHORTSTRING("r8w"),+    ZYDIS_MAKE_SHORTSTRING("r9w"),+    ZYDIS_MAKE_SHORTSTRING("r10w"),+    ZYDIS_MAKE_SHORTSTRING("r11w"),+    ZYDIS_MAKE_SHORTSTRING("r12w"),+    ZYDIS_MAKE_SHORTSTRING("r13w"),+    ZYDIS_MAKE_SHORTSTRING("r14w"),+    ZYDIS_MAKE_SHORTSTRING("r15w"),+    // General purpose registers 32-bit+    ZYDIS_MAKE_SHORTSTRING("eax"),+    ZYDIS_MAKE_SHORTSTRING("ecx"),+    ZYDIS_MAKE_SHORTSTRING("edx"),+    ZYDIS_MAKE_SHORTSTRING("ebx"),+    ZYDIS_MAKE_SHORTSTRING("esp"),+    ZYDIS_MAKE_SHORTSTRING("ebp"),+    ZYDIS_MAKE_SHORTSTRING("esi"),+    ZYDIS_MAKE_SHORTSTRING("edi"),+    ZYDIS_MAKE_SHORTSTRING("r8d"),+    ZYDIS_MAKE_SHORTSTRING("r9d"),+    ZYDIS_MAKE_SHORTSTRING("r10d"),+    ZYDIS_MAKE_SHORTSTRING("r11d"),+    ZYDIS_MAKE_SHORTSTRING("r12d"),+    ZYDIS_MAKE_SHORTSTRING("r13d"),+    ZYDIS_MAKE_SHORTSTRING("r14d"),+    ZYDIS_MAKE_SHORTSTRING("r15d"),+    // General purpose registers 64-bit+    ZYDIS_MAKE_SHORTSTRING("rax"),+    ZYDIS_MAKE_SHORTSTRING("rcx"),+    ZYDIS_MAKE_SHORTSTRING("rdx"),+    ZYDIS_MAKE_SHORTSTRING("rbx"),+    ZYDIS_MAKE_SHORTSTRING("rsp"),+    ZYDIS_MAKE_SHORTSTRING("rbp"),+    ZYDIS_MAKE_SHORTSTRING("rsi"),+    ZYDIS_MAKE_SHORTSTRING("rdi"),+    ZYDIS_MAKE_SHORTSTRING("r8"),+    ZYDIS_MAKE_SHORTSTRING("r9"),+    ZYDIS_MAKE_SHORTSTRING("r10"),+    ZYDIS_MAKE_SHORTSTRING("r11"),+    ZYDIS_MAKE_SHORTSTRING("r12"),+    ZYDIS_MAKE_SHORTSTRING("r13"),+    ZYDIS_MAKE_SHORTSTRING("r14"),+    ZYDIS_MAKE_SHORTSTRING("r15"),+    // Floating point legacy registers+    ZYDIS_MAKE_SHORTSTRING("st0"),+    ZYDIS_MAKE_SHORTSTRING("st1"),+    ZYDIS_MAKE_SHORTSTRING("st2"),+    ZYDIS_MAKE_SHORTSTRING("st3"),+    ZYDIS_MAKE_SHORTSTRING("st4"),+    ZYDIS_MAKE_SHORTSTRING("st5"),+    ZYDIS_MAKE_SHORTSTRING("st6"),+    ZYDIS_MAKE_SHORTSTRING("st7"),+    ZYDIS_MAKE_SHORTSTRING("x87control"),+    ZYDIS_MAKE_SHORTSTRING("x87status"),+    ZYDIS_MAKE_SHORTSTRING("x87tag"),+    // Floating point multimedia registers+    ZYDIS_MAKE_SHORTSTRING("mm0"),+    ZYDIS_MAKE_SHORTSTRING("mm1"),+    ZYDIS_MAKE_SHORTSTRING("mm2"),+    ZYDIS_MAKE_SHORTSTRING("mm3"),+    ZYDIS_MAKE_SHORTSTRING("mm4"),+    ZYDIS_MAKE_SHORTSTRING("mm5"),+    ZYDIS_MAKE_SHORTSTRING("mm6"),+    ZYDIS_MAKE_SHORTSTRING("mm7"),+    // Floating point vector registers 128-bit+    ZYDIS_MAKE_SHORTSTRING("xmm0"),+    ZYDIS_MAKE_SHORTSTRING("xmm1"),+    ZYDIS_MAKE_SHORTSTRING("xmm2"),+    ZYDIS_MAKE_SHORTSTRING("xmm3"),+    ZYDIS_MAKE_SHORTSTRING("xmm4"),+    ZYDIS_MAKE_SHORTSTRING("xmm5"),+    ZYDIS_MAKE_SHORTSTRING("xmm6"),+    ZYDIS_MAKE_SHORTSTRING("xmm7"),+    ZYDIS_MAKE_SHORTSTRING("xmm8"),+    ZYDIS_MAKE_SHORTSTRING("xmm9"),+    ZYDIS_MAKE_SHORTSTRING("xmm10"),+    ZYDIS_MAKE_SHORTSTRING("xmm11"),+    ZYDIS_MAKE_SHORTSTRING("xmm12"),+    ZYDIS_MAKE_SHORTSTRING("xmm13"),+    ZYDIS_MAKE_SHORTSTRING("xmm14"),+    ZYDIS_MAKE_SHORTSTRING("xmm15"),+    ZYDIS_MAKE_SHORTSTRING("xmm16"),+    ZYDIS_MAKE_SHORTSTRING("xmm17"),+    ZYDIS_MAKE_SHORTSTRING("xmm18"),+    ZYDIS_MAKE_SHORTSTRING("xmm19"),+    ZYDIS_MAKE_SHORTSTRING("xmm20"),+    ZYDIS_MAKE_SHORTSTRING("xmm21"),+    ZYDIS_MAKE_SHORTSTRING("xmm22"),+    ZYDIS_MAKE_SHORTSTRING("xmm23"),+    ZYDIS_MAKE_SHORTSTRING("xmm24"),+    ZYDIS_MAKE_SHORTSTRING("xmm25"),+    ZYDIS_MAKE_SHORTSTRING("xmm26"),+    ZYDIS_MAKE_SHORTSTRING("xmm27"),+    ZYDIS_MAKE_SHORTSTRING("xmm28"),+    ZYDIS_MAKE_SHORTSTRING("xmm29"),+    ZYDIS_MAKE_SHORTSTRING("xmm30"),+    ZYDIS_MAKE_SHORTSTRING("xmm31"),+    // Floating point vector registers 256-bit+    ZYDIS_MAKE_SHORTSTRING("ymm0"),+    ZYDIS_MAKE_SHORTSTRING("ymm1"),+    ZYDIS_MAKE_SHORTSTRING("ymm2"),+    ZYDIS_MAKE_SHORTSTRING("ymm3"),+    ZYDIS_MAKE_SHORTSTRING("ymm4"),+    ZYDIS_MAKE_SHORTSTRING("ymm5"),+    ZYDIS_MAKE_SHORTSTRING("ymm6"),+    ZYDIS_MAKE_SHORTSTRING("ymm7"),+    ZYDIS_MAKE_SHORTSTRING("ymm8"),+    ZYDIS_MAKE_SHORTSTRING("ymm9"),+    ZYDIS_MAKE_SHORTSTRING("ymm10"),+    ZYDIS_MAKE_SHORTSTRING("ymm11"),+    ZYDIS_MAKE_SHORTSTRING("ymm12"),+    ZYDIS_MAKE_SHORTSTRING("ymm13"),+    ZYDIS_MAKE_SHORTSTRING("ymm14"),+    ZYDIS_MAKE_SHORTSTRING("ymm15"),+    ZYDIS_MAKE_SHORTSTRING("ymm16"),+    ZYDIS_MAKE_SHORTSTRING("ymm17"),+    ZYDIS_MAKE_SHORTSTRING("ymm18"),+    ZYDIS_MAKE_SHORTSTRING("ymm19"),+    ZYDIS_MAKE_SHORTSTRING("ymm20"),+    ZYDIS_MAKE_SHORTSTRING("ymm21"),+    ZYDIS_MAKE_SHORTSTRING("ymm22"),+    ZYDIS_MAKE_SHORTSTRING("ymm23"),+    ZYDIS_MAKE_SHORTSTRING("ymm24"),+    ZYDIS_MAKE_SHORTSTRING("ymm25"),+    ZYDIS_MAKE_SHORTSTRING("ymm26"),+    ZYDIS_MAKE_SHORTSTRING("ymm27"),+    ZYDIS_MAKE_SHORTSTRING("ymm28"),+    ZYDIS_MAKE_SHORTSTRING("ymm29"),+    ZYDIS_MAKE_SHORTSTRING("ymm30"),+    ZYDIS_MAKE_SHORTSTRING("ymm31"),+    // Floating point vector registers 512-bit+    ZYDIS_MAKE_SHORTSTRING("zmm0"),+    ZYDIS_MAKE_SHORTSTRING("zmm1"),+    ZYDIS_MAKE_SHORTSTRING("zmm2"),+    ZYDIS_MAKE_SHORTSTRING("zmm3"),+    ZYDIS_MAKE_SHORTSTRING("zmm4"),+    ZYDIS_MAKE_SHORTSTRING("zmm5"),+    ZYDIS_MAKE_SHORTSTRING("zmm6"),+    ZYDIS_MAKE_SHORTSTRING("zmm7"),+    ZYDIS_MAKE_SHORTSTRING("zmm8"),+    ZYDIS_MAKE_SHORTSTRING("zmm9"),+    ZYDIS_MAKE_SHORTSTRING("zmm10"),+    ZYDIS_MAKE_SHORTSTRING("zmm11"),+    ZYDIS_MAKE_SHORTSTRING("zmm12"),+    ZYDIS_MAKE_SHORTSTRING("zmm13"),+    ZYDIS_MAKE_SHORTSTRING("zmm14"),+    ZYDIS_MAKE_SHORTSTRING("zmm15"),+    ZYDIS_MAKE_SHORTSTRING("zmm16"),+    ZYDIS_MAKE_SHORTSTRING("zmm17"),+    ZYDIS_MAKE_SHORTSTRING("zmm18"),+    ZYDIS_MAKE_SHORTSTRING("zmm19"),+    ZYDIS_MAKE_SHORTSTRING("zmm20"),+    ZYDIS_MAKE_SHORTSTRING("zmm21"),+    ZYDIS_MAKE_SHORTSTRING("zmm22"),+    ZYDIS_MAKE_SHORTSTRING("zmm23"),+    ZYDIS_MAKE_SHORTSTRING("zmm24"),+    ZYDIS_MAKE_SHORTSTRING("zmm25"),+    ZYDIS_MAKE_SHORTSTRING("zmm26"),+    ZYDIS_MAKE_SHORTSTRING("zmm27"),+    ZYDIS_MAKE_SHORTSTRING("zmm28"),+    ZYDIS_MAKE_SHORTSTRING("zmm29"),+    ZYDIS_MAKE_SHORTSTRING("zmm30"),+    ZYDIS_MAKE_SHORTSTRING("zmm31"),+    // Flags registers+    ZYDIS_MAKE_SHORTSTRING("flags"),+    ZYDIS_MAKE_SHORTSTRING("eflags"),+    ZYDIS_MAKE_SHORTSTRING("rflags"),+    // Instruction-pointer registers+    ZYDIS_MAKE_SHORTSTRING("ip"),+    ZYDIS_MAKE_SHORTSTRING("eip"),+    ZYDIS_MAKE_SHORTSTRING("rip"),+    // Segment registers+    ZYDIS_MAKE_SHORTSTRING("es"),+    ZYDIS_MAKE_SHORTSTRING("cs"),+    ZYDIS_MAKE_SHORTSTRING("ss"),+    ZYDIS_MAKE_SHORTSTRING("ds"),+    ZYDIS_MAKE_SHORTSTRING("fs"),+    ZYDIS_MAKE_SHORTSTRING("gs"),+    // Table registers+    ZYDIS_MAKE_SHORTSTRING("gdtr"),+    ZYDIS_MAKE_SHORTSTRING("ldtr"),+    ZYDIS_MAKE_SHORTSTRING("idtr"),+    ZYDIS_MAKE_SHORTSTRING("tr"),+    // Test registers+    ZYDIS_MAKE_SHORTSTRING("tr0"),+    ZYDIS_MAKE_SHORTSTRING("tr1"),+    ZYDIS_MAKE_SHORTSTRING("tr2"),+    ZYDIS_MAKE_SHORTSTRING("tr3"),+    ZYDIS_MAKE_SHORTSTRING("tr4"),+    ZYDIS_MAKE_SHORTSTRING("tr5"),+    ZYDIS_MAKE_SHORTSTRING("tr6"),+    ZYDIS_MAKE_SHORTSTRING("tr7"),+    // Control registers+    ZYDIS_MAKE_SHORTSTRING("cr0"),+    ZYDIS_MAKE_SHORTSTRING("cr1"),+    ZYDIS_MAKE_SHORTSTRING("cr2"),+    ZYDIS_MAKE_SHORTSTRING("cr3"),+    ZYDIS_MAKE_SHORTSTRING("cr4"),+    ZYDIS_MAKE_SHORTSTRING("cr5"),+    ZYDIS_MAKE_SHORTSTRING("cr6"),+    ZYDIS_MAKE_SHORTSTRING("cr7"),+    ZYDIS_MAKE_SHORTSTRING("cr8"),+    ZYDIS_MAKE_SHORTSTRING("cr9"),+    ZYDIS_MAKE_SHORTSTRING("cr10"),+    ZYDIS_MAKE_SHORTSTRING("cr11"),+    ZYDIS_MAKE_SHORTSTRING("cr12"),+    ZYDIS_MAKE_SHORTSTRING("cr13"),+    ZYDIS_MAKE_SHORTSTRING("cr14"),+    ZYDIS_MAKE_SHORTSTRING("cr15"),+    // Debug registers+    ZYDIS_MAKE_SHORTSTRING("dr0"),+    ZYDIS_MAKE_SHORTSTRING("dr1"),+    ZYDIS_MAKE_SHORTSTRING("dr2"),+    ZYDIS_MAKE_SHORTSTRING("dr3"),+    ZYDIS_MAKE_SHORTSTRING("dr4"),+    ZYDIS_MAKE_SHORTSTRING("dr5"),+    ZYDIS_MAKE_SHORTSTRING("dr6"),+    ZYDIS_MAKE_SHORTSTRING("dr7"),+    ZYDIS_MAKE_SHORTSTRING("dr8"),+    ZYDIS_MAKE_SHORTSTRING("dr9"),+    ZYDIS_MAKE_SHORTSTRING("dr10"),+    ZYDIS_MAKE_SHORTSTRING("dr11"),+    ZYDIS_MAKE_SHORTSTRING("dr12"),+    ZYDIS_MAKE_SHORTSTRING("dr13"),+    ZYDIS_MAKE_SHORTSTRING("dr14"),+    ZYDIS_MAKE_SHORTSTRING("dr15"),+    // Mask registers+    ZYDIS_MAKE_SHORTSTRING("k0"),+    ZYDIS_MAKE_SHORTSTRING("k1"),+    ZYDIS_MAKE_SHORTSTRING("k2"),+    ZYDIS_MAKE_SHORTSTRING("k3"),+    ZYDIS_MAKE_SHORTSTRING("k4"),+    ZYDIS_MAKE_SHORTSTRING("k5"),+    ZYDIS_MAKE_SHORTSTRING("k6"),+    ZYDIS_MAKE_SHORTSTRING("k7"),+    // Bound registers+    ZYDIS_MAKE_SHORTSTRING("bnd0"),+    ZYDIS_MAKE_SHORTSTRING("bnd1"),+    ZYDIS_MAKE_SHORTSTRING("bnd2"),+    ZYDIS_MAKE_SHORTSTRING("bnd3"),+    ZYDIS_MAKE_SHORTSTRING("bndcfg"),+    ZYDIS_MAKE_SHORTSTRING("bndstatus"),+    // Uncategorized+    ZYDIS_MAKE_SHORTSTRING("mxcsr"),+    ZYDIS_MAKE_SHORTSTRING("pkru"),+    ZYDIS_MAKE_SHORTSTRING("xcr0")+};
+ external/zydis/src/Generated/FormatterStrings.inc view
@@ -0,0 +1,694 @@+#pragma pack(push, 1)+static const ZydisShortString STR_ADD = ZYDIS_MAKE_SHORTSTRING("+");+static const struct ZydisPredefinedTokenADD_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_ADD = { 4, 2, { ZYDIS_TOKEN_DELIMITER, 0, '+', '\0' } };+static const ZydisPredefinedToken* const TOK_ADD = (const ZydisPredefinedToken* const)&TOK_DATA_ADD;+static const ZydisShortString STR_ADDR_RELATIVE = ZYDIS_MAKE_SHORTSTRING("$");+static const struct ZydisPredefinedTokenADDR_RELATIVE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_ADDR_RELATIVE = { 4, 2, { ZYDIS_TOKEN_ADDRESS_REL, 0, '$', '\0' } };+static const ZydisPredefinedToken* const TOK_ADDR_RELATIVE = (const ZydisPredefinedToken* const)&TOK_DATA_ADDR_RELATIVE;+static const ZydisShortString STR_DECO_1TO2 = ZYDIS_MAKE_SHORTSTRING(" {1to2}");+static const struct ZydisPredefinedTokenDECO_1TO2_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_1TO2 = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, '1', 't', 'o', '2', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_1TO2 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_1TO2;+static const ZydisShortString STR_DECO_1TO4 = ZYDIS_MAKE_SHORTSTRING(" {1to4}");+static const struct ZydisPredefinedTokenDECO_1TO4_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_1TO4 = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, '1', 't', 'o', '4', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_1TO4 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_1TO4;+static const ZydisShortString STR_DECO_1TO8 = ZYDIS_MAKE_SHORTSTRING(" {1to8}");+static const struct ZydisPredefinedTokenDECO_1TO8_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_1TO8 = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, '1', 't', 'o', '8', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_1TO8 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_1TO8;+static const ZydisShortString STR_DECO_1TO16 = ZYDIS_MAKE_SHORTSTRING(" {1to16}");+static const struct ZydisPredefinedTokenDECO_1TO16_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[20];+} TOK_DATA_DECO_1TO16 = { 20, 18, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 6, '1', 't', 'o', '1', '6', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_1TO16 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_1TO16;+static const ZydisShortString STR_DECO_4TO8 = ZYDIS_MAKE_SHORTSTRING(" {4to8}");+static const struct ZydisPredefinedTokenDECO_4TO8_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_4TO8 = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, '4', 't', 'o', '8', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_4TO8 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_4TO8;+static const ZydisShortString STR_DECO_4TO16 = ZYDIS_MAKE_SHORTSTRING(" {4to16}");+static const struct ZydisPredefinedTokenDECO_4TO16_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[20];+} TOK_DATA_DECO_4TO16 = { 20, 18, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 6, '4', 't', 'o', '1', '6', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_4TO16 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_4TO16;+static const ZydisShortString STR_DECO_AAAA = ZYDIS_MAKE_SHORTSTRING(" {aaaa}");+static const struct ZydisPredefinedTokenDECO_AAAA_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_AAAA = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'a', 'a', 'a', 'a', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_AAAA = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_AAAA;+static const ZydisShortString STR_DECO_BADC = ZYDIS_MAKE_SHORTSTRING(" {badc}");+static const struct ZydisPredefinedTokenDECO_BADC_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_BADC = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'b', 'a', 'd', 'c', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_BADC = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_BADC;+static const ZydisShortString STR_DECO_BBBB = ZYDIS_MAKE_SHORTSTRING(" {bbbb}");+static const struct ZydisPredefinedTokenDECO_BBBB_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_BBBB = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'b', 'b', 'b', 'b', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_BBBB = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_BBBB;+static const ZydisShortString STR_DECO_BEGIN = ZYDIS_MAKE_SHORTSTRING(" {");+static const struct ZydisPredefinedTokenDECO_BEGIN_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[8];+} TOK_DATA_DECO_BEGIN = { 8, 6, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 0, '{', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_BEGIN = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_BEGIN;+static const ZydisShortString STR_DECO_CCCC = ZYDIS_MAKE_SHORTSTRING(" {cccc}");+static const struct ZydisPredefinedTokenDECO_CCCC_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_CCCC = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'c', 'c', 'c', 'c', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_CCCC = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_CCCC;+static const ZydisShortString STR_DECO_CDAB = ZYDIS_MAKE_SHORTSTRING(" {cdab}");+static const struct ZydisPredefinedTokenDECO_CDAB_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_CDAB = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'c', 'd', 'a', 'b', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_CDAB = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_CDAB;+static const ZydisShortString STR_DECO_DACB = ZYDIS_MAKE_SHORTSTRING(" {dacb}");+static const struct ZydisPredefinedTokenDECO_DACB_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_DACB = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'd', 'a', 'c', 'b', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_DACB = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_DACB;+static const ZydisShortString STR_DECO_DDDD = ZYDIS_MAKE_SHORTSTRING(" {dddd}");+static const struct ZydisPredefinedTokenDECO_DDDD_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_DDDD = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'd', 'd', 'd', 'd', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_DDDD = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_DDDD;+static const ZydisShortString STR_DECO_EH = ZYDIS_MAKE_SHORTSTRING(" {cdab}");+static const struct ZydisPredefinedTokenDECO_EH_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[19];+} TOK_DATA_DECO_EH = { 19, 17, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 5, 'c', 'd', 'a', 'b', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_EH = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_EH;+static const ZydisShortString STR_DECO_END = ZYDIS_MAKE_SHORTSTRING("}");+static const struct ZydisPredefinedTokenDECO_END_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_DECO_END = { 4, 2, { ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_END = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_END;+static const ZydisShortString STR_DECO_FLOAT16 = ZYDIS_MAKE_SHORTSTRING(" {float16}");+static const struct ZydisPredefinedTokenDECO_FLOAT16_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[22];+} TOK_DATA_DECO_FLOAT16 = { 22, 20, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 8, 'f', 'l', 'o', 'a', 't', '1', '6', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_FLOAT16 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_FLOAT16;+static const ZydisShortString STR_DECO_RD = ZYDIS_MAKE_SHORTSTRING(" {rd}");+static const struct ZydisPredefinedTokenDECO_RD_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[17];+} TOK_DATA_DECO_RD = { 17, 15, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 3, 'r', 'd', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RD = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RD;+static const ZydisShortString STR_DECO_RD_SAE = ZYDIS_MAKE_SHORTSTRING(" {rd-sae}");+static const struct ZydisPredefinedTokenDECO_RD_SAE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[21];+} TOK_DATA_DECO_RD_SAE = { 21, 19, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 7, 'r', 'd', '-', 's', 'a', 'e', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RD_SAE = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RD_SAE;+static const ZydisShortString STR_DECO_RN = ZYDIS_MAKE_SHORTSTRING(" {rn}");+static const struct ZydisPredefinedTokenDECO_RN_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[17];+} TOK_DATA_DECO_RN = { 17, 15, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 3, 'r', 'n', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RN = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RN;+static const ZydisShortString STR_DECO_RN_SAE = ZYDIS_MAKE_SHORTSTRING(" {rn-sae}");+static const struct ZydisPredefinedTokenDECO_RN_SAE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[21];+} TOK_DATA_DECO_RN_SAE = { 21, 19, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 7, 'r', 'n', '-', 's', 'a', 'e', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RN_SAE = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RN_SAE;+static const ZydisShortString STR_DECO_RU = ZYDIS_MAKE_SHORTSTRING(" {ru}");+static const struct ZydisPredefinedTokenDECO_RU_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[17];+} TOK_DATA_DECO_RU = { 17, 15, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 3, 'r', 'u', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RU = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RU;+static const ZydisShortString STR_DECO_RU_SAE = ZYDIS_MAKE_SHORTSTRING(" {ru-sae}");+static const struct ZydisPredefinedTokenDECO_RU_SAE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[21];+} TOK_DATA_DECO_RU_SAE = { 21, 19, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 7, 'r', 'u', '-', 's', 'a', 'e', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RU_SAE = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RU_SAE;+static const ZydisShortString STR_DECO_RZ = ZYDIS_MAKE_SHORTSTRING(" {rz}");+static const struct ZydisPredefinedTokenDECO_RZ_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[17];+} TOK_DATA_DECO_RZ = { 17, 15, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 3, 'r', 'z', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RZ = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RZ;+static const ZydisShortString STR_DECO_RZ_SAE = ZYDIS_MAKE_SHORTSTRING(" {rz-sae}");+static const struct ZydisPredefinedTokenDECO_RZ_SAE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[21];+} TOK_DATA_DECO_RZ_SAE = { 21, 19, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 7, 'r', 'z', '-', 's', 'a', 'e', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_RZ_SAE = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_RZ_SAE;+static const ZydisShortString STR_DECO_SAE = ZYDIS_MAKE_SHORTSTRING(" {sae}");+static const struct ZydisPredefinedTokenDECO_SAE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[18];+} TOK_DATA_DECO_SAE = { 18, 16, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 4, 's', 'a', 'e', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_SAE = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_SAE;+static const ZydisShortString STR_DECO_SINT8 = ZYDIS_MAKE_SHORTSTRING(" {sint8}");+static const struct ZydisPredefinedTokenDECO_SINT8_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[20];+} TOK_DATA_DECO_SINT8 = { 20, 18, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 6, 's', 'i', 'n', 't', '8', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_SINT8 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_SINT8;+static const ZydisShortString STR_DECO_SINT16 = ZYDIS_MAKE_SHORTSTRING(" {sint16}");+static const struct ZydisPredefinedTokenDECO_SINT16_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[21];+} TOK_DATA_DECO_SINT16 = { 21, 19, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 7, 's', 'i', 'n', 't', '1', '6', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_SINT16 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_SINT16;+static const ZydisShortString STR_DECO_UINT8 = ZYDIS_MAKE_SHORTSTRING(" {uint8}");+static const struct ZydisPredefinedTokenDECO_UINT8_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[20];+} TOK_DATA_DECO_UINT8 = { 20, 18, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 6, 'u', 'i', 'n', 't', '8', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_UINT8 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_UINT8;+static const ZydisShortString STR_DECO_UINT16 = ZYDIS_MAKE_SHORTSTRING(" {uint16}");+static const struct ZydisPredefinedTokenDECO_UINT16_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[21];+} TOK_DATA_DECO_UINT16 = { 21, 19, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 7, 'u', 'i', 'n', 't', '1', '6', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_UINT16 = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_UINT16;+static const ZydisShortString STR_DECO_ZERO = ZYDIS_MAKE_SHORTSTRING(" {z}");+static const struct ZydisPredefinedTokenDECO_ZERO_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[16];+} TOK_DATA_DECO_ZERO = { 16, 14, { ZYDIS_TOKEN_WHITESPACE, 2, ' ', '\0', ZYDIS_TOKEN_PARENTHESIS_OPEN, 2, '{', '\0', ZYDIS_TOKEN_DECORATOR, 2, 'z', '\0', ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, '}', '\0' } };+static const ZydisPredefinedToken* const TOK_DECO_ZERO = (const ZydisPredefinedToken* const)&TOK_DATA_DECO_ZERO;+static const ZydisShortString STR_DELIM_MEMORY = ZYDIS_MAKE_SHORTSTRING(",");+static const struct ZydisPredefinedTokenDELIM_MEMORY_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_DELIM_MEMORY = { 4, 2, { ZYDIS_TOKEN_DELIMITER, 0, ',', '\0' } };+static const ZydisPredefinedToken* const TOK_DELIM_MEMORY = (const ZydisPredefinedToken* const)&TOK_DATA_DELIM_MEMORY;+static const ZydisShortString STR_DELIM_MNEMONIC = ZYDIS_MAKE_SHORTSTRING(" ");+static const struct ZydisPredefinedTokenDELIM_MNEMONIC_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_DELIM_MNEMONIC = { 4, 2, { ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_DELIM_MNEMONIC = (const ZydisPredefinedToken* const)&TOK_DATA_DELIM_MNEMONIC;+static const ZydisShortString STR_DELIM_OPERAND = ZYDIS_MAKE_SHORTSTRING(", ");+static const struct ZydisPredefinedTokenDELIM_OPERAND_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[8];+} TOK_DATA_DELIM_OPERAND = { 8, 6, { ZYDIS_TOKEN_DELIMITER, 2, ',', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_DELIM_OPERAND = (const ZydisPredefinedToken* const)&TOK_DATA_DELIM_OPERAND;+static const ZydisShortString STR_DELIM_SEGMENT = ZYDIS_MAKE_SHORTSTRING(":");+static const struct ZydisPredefinedTokenDELIM_SEGMENT_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_DELIM_SEGMENT = { 4, 2, { ZYDIS_TOKEN_DELIMITER, 0, ':', '\0' } };+static const ZydisPredefinedToken* const TOK_DELIM_SEGMENT = (const ZydisPredefinedToken* const)&TOK_DATA_DELIM_SEGMENT;+static const ZydisShortString STR_FAR = ZYDIS_MAKE_SHORTSTRING(" far");+static const ZydisShortString STR_FAR_ATT = ZYDIS_MAKE_SHORTSTRING("l");+static const ZydisShortString STR_IMMEDIATE = ZYDIS_MAKE_SHORTSTRING("$");+static const struct ZydisPredefinedTokenIMMEDIATE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_IMMEDIATE = { 4, 2, { ZYDIS_TOKEN_IMMEDIATE, 0, '$', '\0' } };+static const ZydisPredefinedToken* const TOK_IMMEDIATE = (const ZydisPredefinedToken* const)&TOK_DATA_IMMEDIATE;+static const ZydisShortString STR_INVALID_MNEMONIC = ZYDIS_MAKE_SHORTSTRING("invalid");+static const struct ZydisPredefinedTokenINVALID_MNEMONIC_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[10];+} TOK_DATA_INVALID_MNEMONIC = { 10, 2, { ZYDIS_TOKEN_MNEMONIC, 0, 'i', 'n', 'v', 'a', 'l', 'i', 'd', '\0' } };+static const ZydisPredefinedToken* const TOK_INVALID_MNEMONIC = (const ZydisPredefinedToken* const)&TOK_DATA_INVALID_MNEMONIC;+static const ZydisShortString STR_INVALID_REG = ZYDIS_MAKE_SHORTSTRING("invalid");+static const struct ZydisPredefinedTokenINVALID_REG_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[10];+} TOK_DATA_INVALID_REG = { 10, 2, { ZYDIS_TOKEN_REGISTER, 0, 'i', 'n', 'v', 'a', 'l', 'i', 'd', '\0' } };+static const ZydisPredefinedToken* const TOK_INVALID_REG = (const ZydisPredefinedToken* const)&TOK_DATA_INVALID_REG;+static const ZydisShortString STR_MEMORY_BEGIN_ATT = ZYDIS_MAKE_SHORTSTRING("(");+static const struct ZydisPredefinedTokenMEMORY_BEGIN_ATT_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_MEMORY_BEGIN_ATT = { 4, 2, { ZYDIS_TOKEN_PARENTHESIS_OPEN, 0, '(', '\0' } };+static const ZydisPredefinedToken* const TOK_MEMORY_BEGIN_ATT = (const ZydisPredefinedToken* const)&TOK_DATA_MEMORY_BEGIN_ATT;+static const ZydisShortString STR_MEMORY_BEGIN_INTEL = ZYDIS_MAKE_SHORTSTRING("[");+static const struct ZydisPredefinedTokenMEMORY_BEGIN_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_MEMORY_BEGIN_INTEL = { 4, 2, { ZYDIS_TOKEN_PARENTHESIS_OPEN, 0, '[', '\0' } };+static const ZydisPredefinedToken* const TOK_MEMORY_BEGIN_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_MEMORY_BEGIN_INTEL;+static const ZydisShortString STR_MEMORY_END_ATT = ZYDIS_MAKE_SHORTSTRING(")");+static const struct ZydisPredefinedTokenMEMORY_END_ATT_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_MEMORY_END_ATT = { 4, 2, { ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, ')', '\0' } };+static const ZydisPredefinedToken* const TOK_MEMORY_END_ATT = (const ZydisPredefinedToken* const)&TOK_DATA_MEMORY_END_ATT;+static const ZydisShortString STR_MEMORY_END_INTEL = ZYDIS_MAKE_SHORTSTRING("]");+static const struct ZydisPredefinedTokenMEMORY_END_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_MEMORY_END_INTEL = { 4, 2, { ZYDIS_TOKEN_PARENTHESIS_CLOSE, 0, ']', '\0' } };+static const ZydisPredefinedToken* const TOK_MEMORY_END_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_MEMORY_END_INTEL;+static const ZydisShortString STR_MUL = ZYDIS_MAKE_SHORTSTRING("*");+static const struct ZydisPredefinedTokenMUL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_MUL = { 4, 2, { ZYDIS_TOKEN_DELIMITER, 0, '*', '\0' } };+static const ZydisPredefinedToken* const TOK_MUL = (const ZydisPredefinedToken* const)&TOK_DATA_MUL;+static const ZydisShortString STR_NEAR = ZYDIS_MAKE_SHORTSTRING(" near");+static const ZydisShortString STR_PREF_BND = ZYDIS_MAKE_SHORTSTRING("bnd ");+static const struct ZydisPredefinedTokenPREF_BND_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[10];+} TOK_DATA_PREF_BND = { 10, 8, { ZYDIS_TOKEN_PREFIX, 4, 'b', 'n', 'd', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_BND = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_BND;+static const ZydisShortString STR_PREF_LOCK = ZYDIS_MAKE_SHORTSTRING("lock ");+static const struct ZydisPredefinedTokenPREF_LOCK_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[11];+} TOK_DATA_PREF_LOCK = { 11, 9, { ZYDIS_TOKEN_PREFIX, 5, 'l', 'o', 'c', 'k', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_LOCK = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_LOCK;+static const ZydisShortString STR_PREF_REP = ZYDIS_MAKE_SHORTSTRING("rep ");+static const struct ZydisPredefinedTokenPREF_REP_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[10];+} TOK_DATA_PREF_REP = { 10, 8, { ZYDIS_TOKEN_PREFIX, 4, 'r', 'e', 'p', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REP = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REP;+static const ZydisShortString STR_PREF_REPE = ZYDIS_MAKE_SHORTSTRING("repe ");+static const struct ZydisPredefinedTokenPREF_REPE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[11];+} TOK_DATA_PREF_REPE = { 11, 9, { ZYDIS_TOKEN_PREFIX, 5, 'r', 'e', 'p', 'e', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REPE = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REPE;+static const ZydisShortString STR_PREF_REPNE = ZYDIS_MAKE_SHORTSTRING("repne ");+static const struct ZydisPredefinedTokenPREF_REPNE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[12];+} TOK_DATA_PREF_REPNE = { 12, 10, { ZYDIS_TOKEN_PREFIX, 6, 'r', 'e', 'p', 'n', 'e', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REPNE = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REPNE;+static const ZydisShortString STR_PREF_REX_4A = ZYDIS_MAKE_SHORTSTRING("rex.wx ");+static const struct ZydisPredefinedTokenPREF_REX_4A_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[13];+} TOK_DATA_PREF_REX_4A = { 13, 11, { ZYDIS_TOKEN_PREFIX, 7, 'r', 'e', 'x', '.', 'w', 'x', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_4A = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4A;+static const ZydisShortString STR_PREF_REX_4B = ZYDIS_MAKE_SHORTSTRING("rex.wxb ");+static const struct ZydisPredefinedTokenPREF_REX_4B_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[14];+} TOK_DATA_PREF_REX_4B = { 14, 12, { ZYDIS_TOKEN_PREFIX, 8, 'r', 'e', 'x', '.', 'w', 'x', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_4B = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4B;+static const ZydisShortString STR_PREF_REX_4C = ZYDIS_MAKE_SHORTSTRING("rex.wr ");+static const struct ZydisPredefinedTokenPREF_REX_4C_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[13];+} TOK_DATA_PREF_REX_4C = { 13, 11, { ZYDIS_TOKEN_PREFIX, 7, 'r', 'e', 'x', '.', 'w', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_4C = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4C;+static const ZydisShortString STR_PREF_REX_4D = ZYDIS_MAKE_SHORTSTRING("rex.wrb ");+static const struct ZydisPredefinedTokenPREF_REX_4D_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[14];+} TOK_DATA_PREF_REX_4D = { 14, 12, { ZYDIS_TOKEN_PREFIX, 8, 'r', 'e', 'x', '.', 'w', 'r', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_4D = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4D;+static const ZydisShortString STR_PREF_REX_4E = ZYDIS_MAKE_SHORTSTRING("rex.wrx ");+static const struct ZydisPredefinedTokenPREF_REX_4E_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[14];+} TOK_DATA_PREF_REX_4E = { 14, 12, { ZYDIS_TOKEN_PREFIX, 8, 'r', 'e', 'x', '.', 'w', 'r', 'x', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_4E = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4E;+static const ZydisShortString STR_PREF_REX_4F = ZYDIS_MAKE_SHORTSTRING("rex.wrxb ");+static const struct ZydisPredefinedTokenPREF_REX_4F_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[15];+} TOK_DATA_PREF_REX_4F = { 15, 13, { ZYDIS_TOKEN_PREFIX, 9, 'r', 'e', 'x', '.', 'w', 'r', 'x', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_4F = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_4F;+static const ZydisShortString STR_PREF_REX_40 = ZYDIS_MAKE_SHORTSTRING("rex ");+static const struct ZydisPredefinedTokenPREF_REX_40_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[10];+} TOK_DATA_PREF_REX_40 = { 10, 8, { ZYDIS_TOKEN_PREFIX, 4, 'r', 'e', 'x', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_40 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_40;+static const ZydisShortString STR_PREF_REX_41 = ZYDIS_MAKE_SHORTSTRING("rex.b ");+static const struct ZydisPredefinedTokenPREF_REX_41_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[12];+} TOK_DATA_PREF_REX_41 = { 12, 10, { ZYDIS_TOKEN_PREFIX, 6, 'r', 'e', 'x', '.', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_41 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_41;+static const ZydisShortString STR_PREF_REX_42 = ZYDIS_MAKE_SHORTSTRING("rex.x ");+static const struct ZydisPredefinedTokenPREF_REX_42_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[12];+} TOK_DATA_PREF_REX_42 = { 12, 10, { ZYDIS_TOKEN_PREFIX, 6, 'r', 'e', 'x', '.', 'x', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_42 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_42;+static const ZydisShortString STR_PREF_REX_43 = ZYDIS_MAKE_SHORTSTRING("rex.xb ");+static const struct ZydisPredefinedTokenPREF_REX_43_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[13];+} TOK_DATA_PREF_REX_43 = { 13, 11, { ZYDIS_TOKEN_PREFIX, 7, 'r', 'e', 'x', '.', 'x', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_43 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_43;+static const ZydisShortString STR_PREF_REX_44 = ZYDIS_MAKE_SHORTSTRING("rex.r ");+static const struct ZydisPredefinedTokenPREF_REX_44_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[12];+} TOK_DATA_PREF_REX_44 = { 12, 10, { ZYDIS_TOKEN_PREFIX, 6, 'r', 'e', 'x', '.', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_44 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_44;+static const ZydisShortString STR_PREF_REX_45 = ZYDIS_MAKE_SHORTSTRING("rex.rb ");+static const struct ZydisPredefinedTokenPREF_REX_45_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[13];+} TOK_DATA_PREF_REX_45 = { 13, 11, { ZYDIS_TOKEN_PREFIX, 7, 'r', 'e', 'x', '.', 'r', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_45 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_45;+static const ZydisShortString STR_PREF_REX_46 = ZYDIS_MAKE_SHORTSTRING("rex.rx ");+static const struct ZydisPredefinedTokenPREF_REX_46_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[13];+} TOK_DATA_PREF_REX_46 = { 13, 11, { ZYDIS_TOKEN_PREFIX, 7, 'r', 'e', 'x', '.', 'r', 'x', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_46 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_46;+static const ZydisShortString STR_PREF_REX_47 = ZYDIS_MAKE_SHORTSTRING("rex.rxb ");+static const struct ZydisPredefinedTokenPREF_REX_47_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[14];+} TOK_DATA_PREF_REX_47 = { 14, 12, { ZYDIS_TOKEN_PREFIX, 8, 'r', 'e', 'x', '.', 'r', 'x', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_47 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_47;+static const ZydisShortString STR_PREF_REX_48 = ZYDIS_MAKE_SHORTSTRING("rex.w ");+static const struct ZydisPredefinedTokenPREF_REX_48_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[12];+} TOK_DATA_PREF_REX_48 = { 12, 10, { ZYDIS_TOKEN_PREFIX, 6, 'r', 'e', 'x', '.', 'w', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_48 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_48;+static const ZydisShortString STR_PREF_REX_49 = ZYDIS_MAKE_SHORTSTRING("rex.wb ");+static const struct ZydisPredefinedTokenPREF_REX_49_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[13];+} TOK_DATA_PREF_REX_49 = { 13, 11, { ZYDIS_TOKEN_PREFIX, 7, 'r', 'e', 'x', '.', 'w', 'b', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_REX_49 = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_REX_49;+static const ZydisShortString STR_PREF_SEG_CS = ZYDIS_MAKE_SHORTSTRING("cs ");+static const struct ZydisPredefinedTokenPREF_SEG_CS_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[9];+} TOK_DATA_PREF_SEG_CS = { 9, 7, { ZYDIS_TOKEN_PREFIX, 3, 'c', 's', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_SEG_CS = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_SEG_CS;+static const ZydisShortString STR_PREF_SEG_DS = ZYDIS_MAKE_SHORTSTRING("ds ");+static const struct ZydisPredefinedTokenPREF_SEG_DS_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[9];+} TOK_DATA_PREF_SEG_DS = { 9, 7, { ZYDIS_TOKEN_PREFIX, 3, 'd', 's', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_SEG_DS = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_SEG_DS;+static const ZydisShortString STR_PREF_SEG_ES = ZYDIS_MAKE_SHORTSTRING("es ");+static const struct ZydisPredefinedTokenPREF_SEG_ES_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[9];+} TOK_DATA_PREF_SEG_ES = { 9, 7, { ZYDIS_TOKEN_PREFIX, 3, 'e', 's', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_SEG_ES = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_SEG_ES;+static const ZydisShortString STR_PREF_SEG_FS = ZYDIS_MAKE_SHORTSTRING("fs ");+static const struct ZydisPredefinedTokenPREF_SEG_FS_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[9];+} TOK_DATA_PREF_SEG_FS = { 9, 7, { ZYDIS_TOKEN_PREFIX, 3, 'f', 's', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_SEG_FS = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_SEG_FS;+static const ZydisShortString STR_PREF_SEG_GS = ZYDIS_MAKE_SHORTSTRING("gs ");+static const struct ZydisPredefinedTokenPREF_SEG_GS_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[9];+} TOK_DATA_PREF_SEG_GS = { 9, 7, { ZYDIS_TOKEN_PREFIX, 3, 'g', 's', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_SEG_GS = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_SEG_GS;+static const ZydisShortString STR_PREF_SEG_SS = ZYDIS_MAKE_SHORTSTRING("ss ");+static const struct ZydisPredefinedTokenPREF_SEG_SS_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[9];+} TOK_DATA_PREF_SEG_SS = { 9, 7, { ZYDIS_TOKEN_PREFIX, 3, 's', 's', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_SEG_SS = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_SEG_SS;+static const ZydisShortString STR_PREF_XACQUIRE = ZYDIS_MAKE_SHORTSTRING("xacquire ");+static const struct ZydisPredefinedTokenPREF_XACQUIRE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[15];+} TOK_DATA_PREF_XACQUIRE = { 15, 13, { ZYDIS_TOKEN_PREFIX, 9, 'x', 'a', 'c', 'q', 'u', 'i', 'r', 'e', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_XACQUIRE = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_XACQUIRE;+static const ZydisShortString STR_PREF_XRELEASE = ZYDIS_MAKE_SHORTSTRING("xrelease ");+static const struct ZydisPredefinedTokenPREF_XRELEASE_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[15];+} TOK_DATA_PREF_XRELEASE = { 15, 13, { ZYDIS_TOKEN_PREFIX, 9, 'x', 'r', 'e', 'l', 'e', 'a', 's', 'e', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_PREF_XRELEASE = (const ZydisPredefinedToken* const)&TOK_DATA_PREF_XRELEASE;+static const ZydisShortString STR_REGISTER = ZYDIS_MAKE_SHORTSTRING("%");+static const struct ZydisPredefinedTokenREGISTER_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_REGISTER = { 4, 2, { ZYDIS_TOKEN_REGISTER, 0, '%', '\0' } };+static const ZydisPredefinedToken* const TOK_REGISTER = (const ZydisPredefinedToken* const)&TOK_DATA_REGISTER;+static const ZydisShortString STR_SHORT = ZYDIS_MAKE_SHORTSTRING(" short");+static const ZydisShortString STR_SIZE_8_ATT = ZYDIS_MAKE_SHORTSTRING("b");+static const ZydisShortString STR_SIZE_8_INTEL = ZYDIS_MAKE_SHORTSTRING("byte ptr ");+static const struct ZydisPredefinedTokenSIZE_8_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[15];+} TOK_DATA_SIZE_8_INTEL = { 15, 13, { ZYDIS_TOKEN_TYPECAST, 9, 'b', 'y', 't', 'e', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_8_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_8_INTEL;+static const ZydisShortString STR_SIZE_16_ATT = ZYDIS_MAKE_SHORTSTRING("w");+static const ZydisShortString STR_SIZE_16_INTEL = ZYDIS_MAKE_SHORTSTRING("word ptr ");+static const struct ZydisPredefinedTokenSIZE_16_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[15];+} TOK_DATA_SIZE_16_INTEL = { 15, 13, { ZYDIS_TOKEN_TYPECAST, 9, 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_16_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_16_INTEL;+static const ZydisShortString STR_SIZE_32_ATT = ZYDIS_MAKE_SHORTSTRING("l");+static const ZydisShortString STR_SIZE_32_INTEL = ZYDIS_MAKE_SHORTSTRING("dword ptr ");+static const struct ZydisPredefinedTokenSIZE_32_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[16];+} TOK_DATA_SIZE_32_INTEL = { 16, 14, { ZYDIS_TOKEN_TYPECAST, 10, 'd', 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_32_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_32_INTEL;+static const ZydisShortString STR_SIZE_48 = ZYDIS_MAKE_SHORTSTRING("fword ptr ");+static const struct ZydisPredefinedTokenSIZE_48_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[16];+} TOK_DATA_SIZE_48 = { 16, 14, { ZYDIS_TOKEN_TYPECAST, 10, 'f', 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_48 = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_48;+static const ZydisShortString STR_SIZE_64_ATT = ZYDIS_MAKE_SHORTSTRING("q");+static const ZydisShortString STR_SIZE_64_INTEL = ZYDIS_MAKE_SHORTSTRING("qword ptr ");+static const struct ZydisPredefinedTokenSIZE_64_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[16];+} TOK_DATA_SIZE_64_INTEL = { 16, 14, { ZYDIS_TOKEN_TYPECAST, 10, 'q', 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_64_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_64_INTEL;+static const ZydisShortString STR_SIZE_80 = ZYDIS_MAKE_SHORTSTRING("tbyte ptr ");+static const struct ZydisPredefinedTokenSIZE_80_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[16];+} TOK_DATA_SIZE_80 = { 16, 14, { ZYDIS_TOKEN_TYPECAST, 10, 't', 'b', 'y', 't', 'e', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_80 = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_80;+static const ZydisShortString STR_SIZE_128_ATT = ZYDIS_MAKE_SHORTSTRING("x");+static const ZydisShortString STR_SIZE_128_INTEL = ZYDIS_MAKE_SHORTSTRING("xmmword ptr ");+static const struct ZydisPredefinedTokenSIZE_128_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[18];+} TOK_DATA_SIZE_128_INTEL = { 18, 16, { ZYDIS_TOKEN_TYPECAST, 12, 'x', 'm', 'm', 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_128_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_128_INTEL;+static const ZydisShortString STR_SIZE_256_ATT = ZYDIS_MAKE_SHORTSTRING("y");+static const ZydisShortString STR_SIZE_256_INTEL = ZYDIS_MAKE_SHORTSTRING("ymmword ptr ");+static const struct ZydisPredefinedTokenSIZE_256_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[18];+} TOK_DATA_SIZE_256_INTEL = { 18, 16, { ZYDIS_TOKEN_TYPECAST, 12, 'y', 'm', 'm', 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_256_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_256_INTEL;+static const ZydisShortString STR_SIZE_512_ATT = ZYDIS_MAKE_SHORTSTRING("z");+static const ZydisShortString STR_SIZE_512_INTEL = ZYDIS_MAKE_SHORTSTRING("zmmword ptr ");+static const struct ZydisPredefinedTokenSIZE_512_INTEL_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[18];+} TOK_DATA_SIZE_512_INTEL = { 18, 16, { ZYDIS_TOKEN_TYPECAST, 12, 'z', 'm', 'm', 'w', 'o', 'r', 'd', ' ', 'p', 't', 'r', '\0', ZYDIS_TOKEN_WHITESPACE, 0, ' ', '\0' } };+static const ZydisPredefinedToken* const TOK_SIZE_512_INTEL = (const ZydisPredefinedToken* const)&TOK_DATA_SIZE_512_INTEL;+static const ZydisShortString STR_SUB = ZYDIS_MAKE_SHORTSTRING("-");+static const struct ZydisPredefinedTokenSUB_+{+  ZyanU8 size;+  ZyanU8 next;+  ZyanU8 data[4];+} TOK_DATA_SUB = { 4, 2, { ZYDIS_TOKEN_DELIMITER, 0, '-', '\0' } };+static const ZydisPredefinedToken* const TOK_SUB = (const ZydisPredefinedToken* const)&TOK_DATA_SUB;+static const ZydisShortString STR_WHITESPACE = ZYDIS_MAKE_SHORTSTRING(" ");+#pragma pack(pop)
+ external/zydis/src/Generated/InstructionDefinitions.inc view

file too large to diff

+ external/zydis/src/Generated/InstructionEncodings.inc view
@@ -0,0 +1,23 @@+static const ZydisInstructionEncodingInfo INSTR_ENCODINGS[] =+{+    { 0, { { 0, 0, 0 } }, { { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM, { { 0, 0, 0 } }, { { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_DISP, { { 16, 32, 64 } }, { { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 8, 8, 8 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 16, 16, 16 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 16, 32, 64 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 8, 8, 8 }, ZYAN_TRUE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 16, 32, 32 }, ZYAN_TRUE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 8, 8, 8 }, ZYAN_TRUE, ZYAN_TRUE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 16, 32, 32 }, ZYAN_TRUE, ZYAN_TRUE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 32, 32, 32 }, ZYAN_TRUE, ZYAN_TRUE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 8, 8, 8 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 32, 32, 32 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 8, 8, 8 }, ZYAN_TRUE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 16, 32, 32 }, ZYAN_TRUE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0, { { 0, 0, 0 } }, { { { 16, 32, 32 }, ZYAN_TRUE, ZYAN_TRUE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_FORCE_REG_FORM, { { 0, 0, 0 } }, { { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE }, { { 0, 0, 0 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0 | ZYDIS_INSTR_ENC_FLAG_HAS_IMM1, { { 0, 0, 0 } }, { { { 16, 16, 16 }, ZYAN_FALSE, ZYAN_FALSE }, { { 8, 8, 8 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_IMM0 | ZYDIS_INSTR_ENC_FLAG_HAS_IMM1, { { 0, 0, 0 } }, { { { 16, 32, 32 }, ZYAN_TRUE, ZYAN_TRUE }, { { 16, 16, 16 }, ZYAN_FALSE, ZYAN_FALSE } } }, +    { ZYDIS_INSTR_ENC_FLAG_HAS_MODRM | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0 | ZYDIS_INSTR_ENC_FLAG_HAS_IMM1, { { 0, 0, 0 } }, { { { 8, 8, 8 }, ZYAN_FALSE, ZYAN_FALSE }, { { 8, 8, 8 }, ZYAN_FALSE, ZYAN_FALSE } } }+};
+ external/zydis/src/Generated/OperandDefinitions.inc view
@@ -0,0 +1,6800 @@+#ifndef ZYDIS_MINIMAL_MODE+const ZydisOperandDefinition OPERAND_DEFINITIONS[] =+{+    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_BX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_BP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 32, 0 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ESP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ESI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 32, 0 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_BX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_BP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 32, 0 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ESI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDI } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 32, 0 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x6 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x7 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_AAX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ABX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x6 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_AAX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ABX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x6 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x7 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ABX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_R11 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_R11 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_R11 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_R11 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_R11 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x6 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x7 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM16 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x5 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x6 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x7 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AH } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AH } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_PTR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 6 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 8, 16 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 8, 16 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x2 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x2 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_CONDWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x2 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x2 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 10, 20, 40 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 10, 20, 40 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_PKRU } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM16 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM16 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 8, 16 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDREAD, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RSP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ESP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_PKRU } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XCR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 576, 576, 576 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XCR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 576, 576, 576 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XCR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 576, 576, 576 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XCR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XCR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x7 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC5, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_IS4 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AH } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_CC3, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR_ASZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_BCD80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_BCD80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST1 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_FPR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_IP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 6 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 2, ZYDIS_IMPLMEM_BASE_ABP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x5 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 6 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ES } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_FS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_ASZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR_ASZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 0, ZYDIS_IMPLMEM_BASE_AGPR_REG } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR_ASZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_AGPR_REG } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ASI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ES } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_OPCODE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_FS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ES } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_SS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_OPCODE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_FS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_SSZ, { .id = 0x4 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .mem = { 0, ZYDIS_IMPLMEM_BASE_ASP } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_IMM1, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NONE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_XMM0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .mem = { 1, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RSP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ESP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ADI } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT256, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT256, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT256, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT256, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT256, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT256, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_CONDREAD_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_AGEN, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MIB, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 24, 24, 24 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MIB, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 12, 12, 12 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_AGEN, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MIB, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 24, 24, 24 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MIB, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 12, 12, 12 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_BND, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RDX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_DX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_OPCODE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_FLOAT80, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ST0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 14, 14, 14 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 28, 28, 28 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 94, 94, 94 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 108, 108, 108 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 14, 14, 14 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 28, 28, 28 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 94, 94, 94 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 108, 108, 108 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_X87STATUS } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EBX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EIP } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_ECX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AH } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_MXCSR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_AGEN, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 6, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_IDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 6, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_IDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_LDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_LDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_TR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_TR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_SREG, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_SREG, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_SREG, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_SREG, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MOFFS, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_DISP16_32_64 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MOFFS, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_DISP16_32_64 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MOFFS, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_DISP16_32_64 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MOFFS, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_DISP16_32_64 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_OPCODE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_OPCODE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM16_32_64 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_SIMM16_32_32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_CR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_CR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_DR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_DR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_CR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_CR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_DR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_DR, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_RCX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MMX, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_IP_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AH } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR8, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 6, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_GDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 10, 10, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_IDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 6, 6, 10 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_IDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_LDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_LDTR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_CR0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_MXCSR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_TR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_TR } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INT1, { .reg = { ZYDIS_IMPLREG_TYPE_FLAGS_SSZ, { .id = 0x3F } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_UIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ_CONDWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_EAX } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR16_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_OPCODE } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_IMPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_GPR_OSZ, { .id = 0x0 } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_MEM, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .mem = { 4, ZYDIS_IMPLMEM_BASE_ABX } } }, +    { ZYDIS_SEMANTIC_OPTYPE_IMPLICIT_REG, ZYDIS_OPERAND_VISIBILITY_HIDDEN, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .reg = { ZYDIS_IMPLREG_TYPE_STATIC, { .reg = ZYDIS_REGISTER_AL } } } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM8 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_NDSNDD } }, +    { ZYDIS_SEMANTIC_OPTYPE_REL, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_JIMM32 } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT128, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBY, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 4, 4, 4 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_FLOAT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT32, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_XMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 16, 16, 16 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_YMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 32, 32, 32 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_REG } }, +    { ZYDIS_SEMANTIC_OPTYPE_ZMM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_UINT16, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM_VSIBZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_VARIABLE, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MASK, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 2, 2, 2 }, ZYDIS_IELEMENT_TYPE_INT1, { .encoding = ZYDIS_OPERAND_ENCODING_MASK } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 64, 64, 64 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READWRITE, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 512, 512, 512 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 512, 512, 512 }, ZYDIS_IELEMENT_TYPE_STRUCT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 8, 8, 8 }, ZYDIS_IELEMENT_TYPE_UINT8, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_MEM, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 1, 1, 1 }, ZYDIS_IELEMENT_TYPE_INT64, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR_ASZ, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_READ, { 0, 0, 0 }, ZYDIS_IELEMENT_TYPE_INVALID, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }, +    { ZYDIS_SEMANTIC_OPTYPE_GPR32_32_64, ZYDIS_OPERAND_VISIBILITY_EXPLICIT, ZYDIS_OPERAND_ACTION_WRITE, { 4, 4, 8 }, ZYDIS_IELEMENT_TYPE_INT, { .encoding = ZYDIS_OPERAND_ENCODING_MODRM_RM } }+};+#endif
+ external/zydis/src/MetaInfo.c view
@@ -0,0 +1,68 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/MetaInfo.h>++/* ============================================================================================== */+/* Enum strings                                                                                   */+/* ============================================================================================== */++#include <Generated/EnumInstructionCategory.inc>+#include <Generated/EnumISASet.inc>+#include <Generated/EnumISAExt.inc>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++const char* ZydisCategoryGetString(ZydisInstructionCategory category)+{+    if ((ZyanUSize)category >= ZYAN_ARRAY_LENGTH(STR_INSTRUCTIONCATEGORY))+    {+        return ZYAN_NULL;+    }+    return STR_INSTRUCTIONCATEGORY[category];+}++const char* ZydisISASetGetString(ZydisISASet isa_set)+{+    if ((ZyanUSize)isa_set >= ZYAN_ARRAY_LENGTH(STR_ISASET))+    {+        return ZYAN_NULL;+    }+    return STR_ISASET[isa_set];+}++const char* ZydisISAExtGetString(ZydisISAExt isa_ext)+{+    if ((ZyanUSize)isa_ext >= ZYAN_ARRAY_LENGTH(STR_ISAEXT))+    {+        return ZYAN_NULL;+    }+    return STR_ISAEXT[isa_ext];+}++/* ============================================================================================== */
+ external/zydis/src/Mnemonic.c view
@@ -0,0 +1,52 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Mnemonic.h>+#include <Generated/EnumMnemonic.inc>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++const char* ZydisMnemonicGetString(ZydisMnemonic mnemonic)+{+    if ((ZyanUSize)mnemonic >= ZYAN_ARRAY_LENGTH(STR_MNEMONIC))+    {+        return ZYAN_NULL;+    }+    return (const char*)STR_MNEMONIC[mnemonic].data;+}++const ZydisShortString* ZydisMnemonicGetStringWrapped(ZydisMnemonic mnemonic)+{+    if ((ZyanUSize)mnemonic >= ZYAN_ARRAY_LENGTH(STR_MNEMONIC))+    {+        return ZYAN_NULL;+    }+    return &STR_MNEMONIC[mnemonic];+}++/* ============================================================================================== */
+ external/zydis/src/Register.c view
@@ -0,0 +1,303 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Register.h>++/* ============================================================================================== */+/* Register strings                                                                               */+/* ============================================================================================== */++#include <Generated/EnumRegister.inc>++/* ============================================================================================== */+/* Register-class mapping                                                                         */+/* ============================================================================================== */++/**+ * Defines the `ZydisRegisterMapItem` struct.+ */+typedef struct ZydisRegisterMapItem_+{+    /**+     * The register class.+     */+    ZydisRegisterClass class;+    /**+     * The lowest register of the current class.+     */+    ZydisRegister lo;+    /**+     * The highest register of the current class.+     */+    ZydisRegister hi;+    /**+     * The width of registers of the current class in 16- and 32-bit mode.+     */+    ZydisRegisterWidth width;+    /**+     * The width of registers of the current class in 64-bit mode.+     */+    ZydisRegisterWidth width64;+} ZydisRegisterMapItem;++/**+ * Provides register to register-class and register-class + id to register mappings.+ */+static const ZydisRegisterMapItem REGISTER_MAP[] =+{+    { ZYDIS_REGCLASS_INVALID  , ZYDIS_REGISTER_NONE   , ZYDIS_REGISTER_NONE   ,   0   ,   0 },+    { ZYDIS_REGCLASS_GPR8     , ZYDIS_REGISTER_AL     , ZYDIS_REGISTER_R15B   ,   8   ,   8 },+    { ZYDIS_REGCLASS_GPR16    , ZYDIS_REGISTER_AX     , ZYDIS_REGISTER_R15W   ,  16   ,  16 },+    { ZYDIS_REGCLASS_GPR32    , ZYDIS_REGISTER_EAX    , ZYDIS_REGISTER_R15D   ,  32   ,  32 },+    { ZYDIS_REGCLASS_GPR64    , ZYDIS_REGISTER_RAX    , ZYDIS_REGISTER_R15    ,   0   ,  64 },+    { ZYDIS_REGCLASS_X87      , ZYDIS_REGISTER_ST0    , ZYDIS_REGISTER_ST7    ,  80   ,  80 },+    { ZYDIS_REGCLASS_MMX      , ZYDIS_REGISTER_MM0    , ZYDIS_REGISTER_MM7    ,  64   ,  64 },+    { ZYDIS_REGCLASS_XMM      , ZYDIS_REGISTER_XMM0   , ZYDIS_REGISTER_XMM31  , 128   , 128 },+    { ZYDIS_REGCLASS_YMM      , ZYDIS_REGISTER_YMM0   , ZYDIS_REGISTER_YMM31  , 256   , 256 },+    { ZYDIS_REGCLASS_ZMM      , ZYDIS_REGISTER_ZMM0   , ZYDIS_REGISTER_ZMM31  , 512   , 512 },+    { ZYDIS_REGCLASS_FLAGS    , ZYDIS_REGISTER_FLAGS  , ZYDIS_REGISTER_RFLAGS ,   0   ,   0 },+    { ZYDIS_REGCLASS_IP       , ZYDIS_REGISTER_IP     , ZYDIS_REGISTER_RIP    ,   0   ,   0 },+    { ZYDIS_REGCLASS_SEGMENT  , ZYDIS_REGISTER_ES     , ZYDIS_REGISTER_GS     ,  16   ,  16 },+    { ZYDIS_REGCLASS_TEST     , ZYDIS_REGISTER_TR0    , ZYDIS_REGISTER_TR7    ,  32   ,  32 },+    { ZYDIS_REGCLASS_CONTROL  , ZYDIS_REGISTER_CR0    , ZYDIS_REGISTER_CR15   ,  32   ,  64 },+    { ZYDIS_REGCLASS_DEBUG    , ZYDIS_REGISTER_DR0    , ZYDIS_REGISTER_DR15   ,  32   ,  64 },+    { ZYDIS_REGCLASS_MASK     , ZYDIS_REGISTER_K0     , ZYDIS_REGISTER_K7     ,   0   ,   0 },+    { ZYDIS_REGCLASS_BOUND    , ZYDIS_REGISTER_BND0   , ZYDIS_REGISTER_BND3   , 128   , 128 }+};++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Register                                                                                       */+/* ---------------------------------------------------------------------------------------------- */++ZydisRegister ZydisRegisterEncode(ZydisRegisterClass register_class, ZyanU8 id)+{+    switch (register_class)+    {+    case ZYDIS_REGCLASS_INVALID:+    case ZYDIS_REGCLASS_FLAGS:+    case ZYDIS_REGCLASS_IP:+        break;+    default:+        if (((ZyanUSize)register_class < ZYAN_ARRAY_LENGTH(REGISTER_MAP)) &&+            (id <= (REGISTER_MAP[register_class].hi - REGISTER_MAP[register_class].lo)))+        {+            return REGISTER_MAP[register_class].lo + id;+        }+    }+    return ZYDIS_REGISTER_NONE;+}++ZyanI8 ZydisRegisterGetId(ZydisRegister reg)+{+    for (ZyanUSize i = 0; i < ZYAN_ARRAY_LENGTH(REGISTER_MAP); ++i)+    {+        switch (REGISTER_MAP[i].class)+        {+        case ZYDIS_REGCLASS_INVALID:+        case ZYDIS_REGCLASS_FLAGS:+        case ZYDIS_REGCLASS_IP:+            break;+        default:+            if ((reg >= REGISTER_MAP[i].lo) && (reg <= REGISTER_MAP[i].hi))+            {+                return (ZyanU8)(reg - REGISTER_MAP[i].lo);+            }+        }+    }+    return -1;+}++ZydisRegisterClass ZydisRegisterGetClass(ZydisRegister reg)+{+    for (ZyanUSize i = 0; i < ZYAN_ARRAY_LENGTH(REGISTER_MAP); ++i)+    {+        if ((reg >= REGISTER_MAP[i].lo) && (reg <= REGISTER_MAP[i].hi))+        {+            return REGISTER_MAP[i].class;+        }+    }+    return ZYDIS_REGCLASS_INVALID;+}++ZydisRegisterWidth ZydisRegisterGetWidth(ZydisMachineMode mode, ZydisRegister reg)+{+    // Special cases+    switch (reg)+    {+    case ZYDIS_REGISTER_X87CONTROL:+    case ZYDIS_REGISTER_X87STATUS:+    case ZYDIS_REGISTER_X87TAG:+        return 16;+    case ZYDIS_REGISTER_IP:+    case ZYDIS_REGISTER_FLAGS:+        return 16;+    case ZYDIS_REGISTER_EIP:+    case ZYDIS_REGISTER_EFLAGS:+        return 32;+    case ZYDIS_REGISTER_RIP:+    case ZYDIS_REGISTER_RFLAGS:+        return (mode == ZYDIS_MACHINE_MODE_LONG_64) ? 64 : 0;+    case ZYDIS_REGISTER_BNDCFG:+    case ZYDIS_REGISTER_BNDSTATUS:+        return 64;+    case ZYDIS_REGISTER_XCR0:+        return 64;+    case ZYDIS_REGISTER_PKRU:+    case ZYDIS_REGISTER_MXCSR:+        return 32;+    default:+        break;+    }++    // Register classes+    for (ZyanUSize i = 0; i < ZYAN_ARRAY_LENGTH(REGISTER_MAP); ++i)+    {+        if ((reg >= REGISTER_MAP[i].lo) && (reg <= REGISTER_MAP[i].hi))+        {+            return (mode == ZYDIS_MACHINE_MODE_LONG_64) ?+                REGISTER_MAP[i].width64 : REGISTER_MAP[i].width;+        }+    }+    return 0;+}++ZydisRegister ZydisRegisterGetLargestEnclosing(ZydisMachineMode mode,+    ZydisRegister reg)+{+    static const ZyanU8 GPR8_MAPPING[20] =+    {+        /* AL   */  0,+        /* CL   */  1,+        /* DL   */  2,+        /* BL   */  3,+        /* AH   */  0,+        /* CH   */  1,+        /* DH   */  2,+        /* BH   */  3,+        /* SPL  */  4,+        /* BPL  */  5,+        /* SIL  */  6,+        /* DIL  */  7,+        /* R8B  */  8,+        /* R9B  */  9,+        /* R10B */ 10,+        /* R11B */ 11,+        /* R12B */ 12,+        /* R13B */ 13,+        /* R14B */ 14,+        /* R15B */ 15,+    };++    for (ZyanUSize i = 0; i < ZYAN_ARRAY_LENGTH(REGISTER_MAP); ++i)+    {+        if ((reg >= REGISTER_MAP[i].lo) && (reg <= REGISTER_MAP[i].hi))+        {+            const ZydisRegisterClass reg_class = REGISTER_MAP[i].class;+            if ((reg_class == ZYDIS_REGCLASS_GPR64) && (mode != ZYDIS_MACHINE_MODE_LONG_64))+            {+                return ZYDIS_REGISTER_NONE;+            }++            ZyanU8 reg_id = (ZyanU8)(reg - REGISTER_MAP[reg_class].lo);+            switch (reg_class)+            {+            case ZYDIS_REGCLASS_GPR8:+                reg_id = GPR8_MAPPING[reg_id];+                ZYAN_FALLTHROUGH;+            case ZYDIS_REGCLASS_GPR16:+            case ZYDIS_REGCLASS_GPR32:+            case ZYDIS_REGCLASS_GPR64:+                switch (mode)+                {+                case ZYDIS_MACHINE_MODE_LONG_64:+                    return REGISTER_MAP[ZYDIS_REGCLASS_GPR64].lo + reg_id;+                case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+                case ZYDIS_MACHINE_MODE_LEGACY_32:+                    return REGISTER_MAP[ZYDIS_REGCLASS_GPR32].lo + reg_id;+                case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+                case ZYDIS_MACHINE_MODE_LEGACY_16:+                case ZYDIS_MACHINE_MODE_REAL_16:+                    return REGISTER_MAP[ZYDIS_REGCLASS_GPR16].lo + reg_id;+                default:+                    return ZYDIS_REGISTER_NONE;+                }+            case ZYDIS_REGCLASS_XMM:+            case ZYDIS_REGCLASS_YMM:+            case ZYDIS_REGCLASS_ZMM:+#if defined(ZYDIS_DISABLE_AVX512) && defined(ZYDIS_DISABLE_KNC)+                return REGISTER_MAP[ZYDIS_REGCLASS_YMM].lo + reg_id;+#else+                return REGISTER_MAP[ZYDIS_REGCLASS_ZMM].lo + reg_id;+#endif+            default:+                return ZYDIS_REGISTER_NONE;+            }+        }+    }++    return ZYDIS_REGISTER_NONE;+}++const char* ZydisRegisterGetString(ZydisRegister reg)+{+    if ((ZyanUSize)reg >= ZYAN_ARRAY_LENGTH(STR_REGISTER))+    {+        return ZYAN_NULL;+    }+    return STR_REGISTER[reg].data;+}++const ZydisShortString* ZydisRegisterGetStringWrapped(ZydisRegister reg)+{+    if ((ZyanUSize)reg >= ZYAN_ARRAY_LENGTH(STR_REGISTER))+    {+        return ZYAN_NULL;+    }+    return &STR_REGISTER[reg];+}++/* ---------------------------------------------------------------------------------------------- */+/* Register class                                                                                 */+/* ---------------------------------------------------------------------------------------------- */++ZydisRegisterWidth ZydisRegisterClassGetWidth(ZydisMachineMode mode,+    ZydisRegisterClass register_class)+{+    if ((ZyanUSize)register_class < ZYAN_ARRAY_LENGTH(REGISTER_MAP))+    {+        return (mode == ZYDIS_MACHINE_MODE_LONG_64) ?+            REGISTER_MAP[register_class].width64 : REGISTER_MAP[register_class].width;+    }+    return 0;+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/SharedData.c view
@@ -0,0 +1,187 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Internal/SharedData.h>++/* ============================================================================================== */+/* Data tables                                                                                    */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Instruction definitions                                                                        */+/* ---------------------------------------------------------------------------------------------- */++#ifdef ZYDIS_MINIMAL_MODE+#   define ZYDIS_NOTMIN(x)+#else+#   define ZYDIS_NOTMIN(x) , x+#endif++#include <Generated/InstructionDefinitions.inc>++#undef ZYDIS_NOTMIN++/* ---------------------------------------------------------------------------------------------- */+/* Operand definitions                                                                            */+/* ---------------------------------------------------------------------------------------------- */++#define ZYDIS_OPERAND_DEFINITION(type, encoding, access) \+    { type, encoding, access }++#include <Generated/OperandDefinitions.inc>++#undef ZYDIS_OPERAND_DEFINITION++/* ---------------------------------------------------------------------------------------------- */+/* Accessed CPU flags                                                                             */+/* ---------------------------------------------------------------------------------------------- */++#include <Generated/AccessedFlags.inc>++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */+/* Functions                                                                                      */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Instruction definition                                                                         */+/* ---------------------------------------------------------------------------------------------- */++void ZydisGetInstructionDefinition(ZydisInstructionEncoding encoding, ZyanU16 id,+    const ZydisInstructionDefinition** definition)+{+    switch (encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_LEGACY:+        *definition = (ZydisInstructionDefinition*)&ISTR_DEFINITIONS_LEGACY[id];+        break;+    case ZYDIS_INSTRUCTION_ENCODING_3DNOW:+        *definition = (ZydisInstructionDefinition*)&ISTR_DEFINITIONS_3DNOW[id];+        break;+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+        *definition = (ZydisInstructionDefinition*)&ISTR_DEFINITIONS_XOP[id];+        break;+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+        *definition = (ZydisInstructionDefinition*)&ISTR_DEFINITIONS_VEX[id];+        break;+#ifndef ZYDIS_DISABLE_AVX512+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        *definition = (ZydisInstructionDefinition*)&ISTR_DEFINITIONS_EVEX[id];+        break;+#endif+#ifndef ZYDIS_DISABLE_KNC+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        *definition = (ZydisInstructionDefinition*)&ISTR_DEFINITIONS_MVEX[id];+        break;+#endif+    default:+        ZYAN_UNREACHABLE;+    }+}++/* ---------------------------------------------------------------------------------------------- */+/* Operand definition                                                                             */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+ZyanU8 ZydisGetOperandDefinitions(const ZydisInstructionDefinition* definition,+    const ZydisOperandDefinition** operand)+{+    if (definition->operand_count == 0)+    {+        *operand = ZYAN_NULL;+        return 0;+    }+    ZYAN_ASSERT(definition->operand_reference != 0xFFFF);+    *operand = &OPERAND_DEFINITIONS[definition->operand_reference];+    return definition->operand_count;+}+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Element info                                                                                   */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+void ZydisGetElementInfo(ZydisInternalElementType element, ZydisElementType* type,+    ZydisElementSize* size)+{+    static const struct+    {+        ZydisElementType type;+        ZydisElementSize size;+    } lookup[ZYDIS_IELEMENT_TYPE_MAX_VALUE + 1] =+    {+        { ZYDIS_ELEMENT_TYPE_INVALID  ,   0 },+        { ZYDIS_ELEMENT_TYPE_INVALID  ,   0 },+        { ZYDIS_ELEMENT_TYPE_STRUCT   ,   0 },+        { ZYDIS_ELEMENT_TYPE_INT      ,   0 },+        { ZYDIS_ELEMENT_TYPE_UINT     ,   0 },+        { ZYDIS_ELEMENT_TYPE_INT      ,   1 },+        { ZYDIS_ELEMENT_TYPE_INT      ,   8 },+        { ZYDIS_ELEMENT_TYPE_INT      ,  16 },+        { ZYDIS_ELEMENT_TYPE_INT      ,  32 },+        { ZYDIS_ELEMENT_TYPE_INT      ,  64 },+        { ZYDIS_ELEMENT_TYPE_UINT     ,   8 },+        { ZYDIS_ELEMENT_TYPE_UINT     ,  16 },+        { ZYDIS_ELEMENT_TYPE_UINT     ,  32 },+        { ZYDIS_ELEMENT_TYPE_UINT     ,  64 },+        { ZYDIS_ELEMENT_TYPE_UINT     , 128 },+        { ZYDIS_ELEMENT_TYPE_UINT     , 256 },+        { ZYDIS_ELEMENT_TYPE_FLOAT16  ,  16 },+        { ZYDIS_ELEMENT_TYPE_FLOAT32  ,  32 },+        { ZYDIS_ELEMENT_TYPE_FLOAT64  ,  64 },+        { ZYDIS_ELEMENT_TYPE_FLOAT80  ,  80 },+        { ZYDIS_ELEMENT_TYPE_LONGBCD  ,  80 },+        { ZYDIS_ELEMENT_TYPE_CC       ,   3 },+        { ZYDIS_ELEMENT_TYPE_CC       ,   5 }+    };++    ZYAN_ASSERT(element < ZYAN_ARRAY_LENGTH(lookup));++    *type = lookup[element].type;+    *size = lookup[element].size;+}+#endif++/* ---------------------------------------------------------------------------------------------- */+/* Accessed CPU flags                                                                             */+/* ---------------------------------------------------------------------------------------------- */++#ifndef ZYDIS_MINIMAL_MODE+ZyanBool ZydisGetAccessedFlags(const ZydisInstructionDefinition* definition,+    const ZydisAccessedFlags** flags)+{+    ZYAN_ASSERT(definition->flags_reference < ZYAN_ARRAY_LENGTH(ACCESSED_FLAGS));+    *flags = &ACCESSED_FLAGS[definition->flags_reference];+    return (definition->flags_reference != 0);+}+#endif++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/String.c view
@@ -0,0 +1,362 @@+/***************************************************************************************************
+
+  Zyan Disassembler Library (Zydis)
+
+  Original Author : Florian Bernd, Joel Hoener
+
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+
+***************************************************************************************************/
+
+#include <Zydis/Internal/String.h>
+
+/* ============================================================================================== */
+/* Constants                                                                                      */
+/* ============================================================================================== */
+
+/* ---------------------------------------------------------------------------------------------- */
+/* Defines                                                                                        */
+/* ---------------------------------------------------------------------------------------------- */
+
+#define ZYDIS_MAXCHARS_DEC_32 10
+#define ZYDIS_MAXCHARS_DEC_64 20
+#define ZYDIS_MAXCHARS_HEX_32  8
+#define ZYDIS_MAXCHARS_HEX_64 16
+
+/* ---------------------------------------------------------------------------------------------- */
+/* Lookup Tables                                                                                  */
+/* ---------------------------------------------------------------------------------------------- */
+
+static const char* const DECIMAL_LOOKUP =
+    "00010203040506070809"
+    "10111213141516171819"
+    "20212223242526272829"
+    "30313233343536373839"
+    "40414243444546474849"
+    "50515253545556575859"
+    "60616263646566676869"
+    "70717273747576777879"
+    "80818283848586878889"
+    "90919293949596979899";
+
+/* ---------------------------------------------------------------------------------------------- */
+
+/* ============================================================================================== */
+/* Internal Functions                                                                             */
+/* ============================================================================================== */
+
+/* ---------------------------------------------------------------------------------------------- */
+/* Decimal                                                                                        */
+/* ---------------------------------------------------------------------------------------------- */
+
+#if defined(ZYAN_X86) || defined(ZYAN_ARM) || defined(ZYAN_EMSCRIPTEN)
+ZyanStatus ZydisStringAppendDecU32(ZyanString* string, ZyanU32 value, ZyanU8 padding_length)
+{
+    ZYAN_ASSERT(string);
+    ZYAN_ASSERT(!string->vector.allocator);
+
+    char buffer[ZYDIS_MAXCHARS_DEC_32];
+    char *buffer_end = &buffer[ZYDIS_MAXCHARS_DEC_32];
+    char *buffer_write_pointer = buffer_end;
+    while (value >= 100)
+    {
+        const ZyanU32 value_old = value;
+        buffer_write_pointer -= 2;
+        value /= 100;
+        ZYAN_MEMCPY(buffer_write_pointer, &DECIMAL_LOOKUP[(value_old - (value * 100)) * 2], 2);
+    }
+    buffer_write_pointer -= 2;
+    ZYAN_MEMCPY(buffer_write_pointer, &DECIMAL_LOOKUP[value * 2], 2);
+
+    const ZyanUSize offset_odd    = (ZyanUSize)(value < 10);
+    const ZyanUSize length_number = buffer_end - buffer_write_pointer - offset_odd;
+    const ZyanUSize length_total  = ZYAN_MAX(length_number, padding_length);
+    const ZyanUSize length_target = string->vector.size;
+
+    if (string->vector.size + length_total > string->vector.capacity)
+    {
+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+    }
+
+    ZyanUSize offset_write = 0;
+    if (padding_length > length_number)
+    {
+        offset_write = padding_length - length_number;
+        ZYAN_MEMSET((char*)string->vector.data + length_target - 1, '0', offset_write);
+    }
+
+    ZYAN_MEMCPY((char*)string->vector.data + length_target + offset_write - 1,
+        buffer_write_pointer + offset_odd, length_number);
+    string->vector.size = length_target + length_total;
+    ZYDIS_STRING_NULLTERMINATE(string);
+
+    return ZYAN_STATUS_SUCCESS;
+}
+#endif
+
+ZyanStatus ZydisStringAppendDecU64(ZyanString* string, ZyanU64 value, ZyanU8 padding_length)
+{
+    ZYAN_ASSERT(string);
+    ZYAN_ASSERT(!string->vector.allocator);
+
+    char buffer[ZYDIS_MAXCHARS_DEC_64];
+    char *buffer_end = &buffer[ZYDIS_MAXCHARS_DEC_64];
+    char *buffer_write_pointer = buffer_end;
+    while (value >= 100)
+    {
+        const ZyanU64 value_old = value;
+        buffer_write_pointer -= 2;
+        value /= 100;
+        ZYAN_MEMCPY(buffer_write_pointer, &DECIMAL_LOOKUP[(value_old - (value * 100)) * 2], 2);
+    }
+    buffer_write_pointer -= 2;
+    ZYAN_MEMCPY(buffer_write_pointer, &DECIMAL_LOOKUP[value * 2], 2);
+
+    const ZyanUSize offset_odd    = (ZyanUSize)(value < 10);
+    const ZyanUSize length_number = buffer_end - buffer_write_pointer - offset_odd;
+    const ZyanUSize length_total  = ZYAN_MAX(length_number, padding_length);
+    const ZyanUSize length_target = string->vector.size;
+
+    if (string->vector.size + length_total > string->vector.capacity)
+    {
+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+    }
+
+    ZyanUSize offset_write = 0;
+    if (padding_length > length_number)
+    {
+        offset_write = padding_length - length_number;
+        ZYAN_MEMSET((char*)string->vector.data + length_target - 1, '0', offset_write);
+    }
+
+    ZYAN_MEMCPY((char*)string->vector.data + length_target + offset_write - 1,
+        buffer_write_pointer + offset_odd, length_number);
+    string->vector.size = length_target + length_total;
+    ZYDIS_STRING_NULLTERMINATE(string);
+
+    return ZYAN_STATUS_SUCCESS;
+}
+
+/* ---------------------------------------------------------------------------------------------- */
+/* Hexadecimal                                                                                    */
+/* ---------------------------------------------------------------------------------------------- */
+
+#if defined(ZYAN_X86) || defined(ZYAN_ARM) || defined(ZYAN_EMSCRIPTEN)
+ZyanStatus ZydisStringAppendHexU32(ZyanString* string, ZyanU32 value, ZyanU8 padding_length,
+    ZyanBool uppercase)
+{
+    ZYAN_ASSERT(string);
+    ZYAN_ASSERT(!string->vector.allocator);
+
+    const ZyanUSize len = string->vector.size;
+    const ZyanUSize remaining = string->vector.capacity - string->vector.size;
+
+    if (remaining < (ZyanUSize)padding_length)
+    {
+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+    }
+
+    if (!value)
+    {
+        const ZyanU8 n = (padding_length ? padding_length : 1);
+
+        if (remaining < (ZyanUSize)n)
+        {
+            return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+        }
+
+        ZYAN_MEMSET((char*)string->vector.data + len - 1, '0', n);
+        string->vector.size = len + n;
+        ZYDIS_STRING_NULLTERMINATE(string);
+
+        return ZYAN_STATUS_SUCCESS;
+    }
+
+    ZyanU8 n = 0;
+    char* buffer = ZYAN_NULL;
+    for (ZyanI8 i = ZYDIS_MAXCHARS_HEX_32 - 1; i >= 0; --i)
+    {
+        const ZyanU8 v = (value >> i * 4) & 0x0F;
+        if (!n)
+        {
+            if (!v)
+            {
+                continue;
+            }
+            if (remaining <= (ZyanU8)i)
+            {
+                return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+            }
+            buffer = (char*)string->vector.data + len - 1;
+            if (padding_length > i)
+            {
+                n = padding_length - i - 1;
+                ZYAN_MEMSET(buffer, '0', n);
+            }
+        }
+        ZYAN_ASSERT(buffer);
+        if (uppercase)
+        {
+            buffer[n++] = "0123456789ABCDEF"[v];
+        } else
+        {
+            buffer[n++] = "0123456789abcdef"[v];
+        }
+    }
+    string->vector.size = len + n;
+    ZYDIS_STRING_NULLTERMINATE(string);
+
+    return ZYAN_STATUS_SUCCESS;
+}
+#endif
+
+ZyanStatus ZydisStringAppendHexU64(ZyanString* string, ZyanU64 value, ZyanU8 padding_length,
+    ZyanBool uppercase)
+{
+    ZYAN_ASSERT(string);
+    ZYAN_ASSERT(!string->vector.allocator);
+
+    const ZyanUSize len = string->vector.size;
+    const ZyanUSize remaining = string->vector.capacity - string->vector.size;
+
+    if (remaining < (ZyanUSize)padding_length)
+    {
+        return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+    }
+
+    if (!value)
+    {
+        const ZyanU8 n = (padding_length ? padding_length : 1);
+
+        if (remaining < (ZyanUSize)n)
+        {
+            return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+        }
+
+        ZYAN_MEMSET((char*)string->vector.data + len - 1, '0', n);
+        string->vector.size = len + n;
+        ZYDIS_STRING_NULLTERMINATE(string);
+
+        return ZYAN_STATUS_SUCCESS;
+    }
+
+    ZyanU8 n = 0;
+    char* buffer = ZYAN_NULL;
+    for (ZyanI8 i = ((value & 0xFFFFFFFF00000000) ?
+        ZYDIS_MAXCHARS_HEX_64 : ZYDIS_MAXCHARS_HEX_32) - 1; i >= 0; --i)
+    {
+        const ZyanU8 v = (value >> i * 4) & 0x0F;
+        if (!n)
+        {
+            if (!v)
+            {
+                continue;
+            }
+            if (remaining <= (ZyanU8)i)
+            {
+                return ZYAN_STATUS_INSUFFICIENT_BUFFER_SIZE;
+            }
+            buffer = (char*)string->vector.data + len - 1;
+            if (padding_length > i)
+            {
+                n = padding_length - i - 1;
+                ZYAN_MEMSET(buffer, '0', n);
+            }
+        }
+        ZYAN_ASSERT(buffer);
+        if (uppercase)
+        {
+            buffer[n++] = "0123456789ABCDEF"[v];
+        } else
+        {
+            buffer[n++] = "0123456789abcdef"[v];
+        }
+    }
+    string->vector.size = len + n;
+    ZYDIS_STRING_NULLTERMINATE(string);
+
+    return ZYAN_STATUS_SUCCESS;
+}
+
+/* ---------------------------------------------------------------------------------------------- */
+
+/* ============================================================================================== */
+/* Public Functions                                                                               */
+/* ============================================================================================== */
+
+/* ---------------------------------------------------------------------------------------------- */
+/* Formatting                                                                                     */
+/* ---------------------------------------------------------------------------------------------- */
+
+ZyanStatus ZydisStringAppendDecU(ZyanString* string, ZyanU64 value, ZyanU8 padding_length,
+    const ZyanStringView* prefix, const ZyanStringView* suffix)
+{
+    if (prefix)
+    {
+        ZYAN_CHECK(ZydisStringAppend(string, prefix));
+    }
+
+#if defined(ZYAN_X64) || defined(ZYAN_AARCH64)
+    ZYAN_CHECK(ZydisStringAppendDecU64(string, value, padding_length));
+#else
+    if (value & 0xFFFFFFFF00000000)
+    {
+        ZYAN_CHECK(ZydisStringAppendDecU64(string, value, padding_length));
+    }
+    ZYAN_CHECK(ZydisStringAppendDecU32(string, (ZyanU32)value, padding_length));
+#endif
+
+    if (suffix)
+    {
+        return ZydisStringAppend(string, suffix);
+    }
+    return ZYAN_STATUS_SUCCESS;
+}
+
+ZyanStatus ZydisStringAppendHexU(ZyanString* string, ZyanU64 value, ZyanU8 padding_length,
+    ZyanBool uppercase, const ZyanStringView* prefix, const ZyanStringView* suffix)
+{
+    if (prefix)
+    {
+        ZYAN_CHECK(ZydisStringAppend(string, prefix));
+    }
+
+#if defined(ZYAN_X64) || defined(ZYAN_AARCH64)
+    ZYAN_CHECK(ZydisStringAppendHexU64(string, value, padding_length, uppercase));
+#else
+    if (value & 0xFFFFFFFF00000000)
+    {
+        ZYAN_CHECK(ZydisStringAppendHexU64(string, value, padding_length, uppercase));
+    }
+    else
+    {
+        ZYAN_CHECK(ZydisStringAppendHexU32(string, (ZyanU32)value, padding_length, uppercase));
+    }
+#endif
+
+    if (suffix)
+    {
+        return ZydisStringAppend(string, suffix);
+    }
+    return ZYAN_STATUS_SUCCESS;
+}
+
+/* ---------------------------------------------------------------------------------------------- */
+
+/* ============================================================================================== */
+ external/zydis/src/Utils.c view
@@ -0,0 +1,369 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zycore/LibC.h>+#include <Zydis/Utils.h>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++/* ---------------------------------------------------------------------------------------------- */+/* Address calculation                                                                            */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisCalcAbsoluteAddress(const ZydisDecodedInstruction* instruction,+    const ZydisDecodedOperand* operand, ZyanU64 runtime_address, ZyanU64* result_address)+{+    if (!instruction || !operand || !result_address)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    switch (operand->type)+    {+    case ZYDIS_OPERAND_TYPE_MEMORY:+        if (!operand->mem.disp.has_displacement)+        {+            return ZYAN_STATUS_INVALID_ARGUMENT;+        }+        if (operand->mem.base == ZYDIS_REGISTER_EIP)+        {+            *result_address = ((ZyanU32)runtime_address + instruction->length ++                (ZyanU32)operand->mem.disp.value);+            return ZYAN_STATUS_SUCCESS;+        }+        if (operand->mem.base == ZYDIS_REGISTER_RIP)+        {+            *result_address = (ZyanU64)(runtime_address + instruction->length ++                operand->mem.disp.value);+            return ZYAN_STATUS_SUCCESS;+        }+        if ((operand->mem.base == ZYDIS_REGISTER_NONE) &&+            (operand->mem.index == ZYDIS_REGISTER_NONE))+        {+            switch (instruction->address_width)+            {+            case 16:+                *result_address = (ZyanU64)operand->mem.disp.value & 0x000000000000FFFF;+                return ZYAN_STATUS_SUCCESS;+            case 32:+                *result_address = (ZyanU64)operand->mem.disp.value & 0x00000000FFFFFFFF;+                return ZYAN_STATUS_SUCCESS;+            case 64:+                *result_address = (ZyanU64)operand->mem.disp.value;+                return ZYAN_STATUS_SUCCESS;+            default:+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+        }+        break;+    case ZYDIS_OPERAND_TYPE_IMMEDIATE:+        if (operand->imm.is_signed && operand->imm.is_relative)+        {+            *result_address = (ZyanU64)((ZyanI64)runtime_address + instruction->length ++                operand->imm.value.s);+            switch (instruction->machine_mode)+            {+            case ZYDIS_MACHINE_MODE_LONG_COMPAT_16:+            case ZYDIS_MACHINE_MODE_LEGACY_16:+            case ZYDIS_MACHINE_MODE_REAL_16:+            case ZYDIS_MACHINE_MODE_LONG_COMPAT_32:+            case ZYDIS_MACHINE_MODE_LEGACY_32:+                if (operand->size == 16)+                {+                    *result_address &= 0xFFFF;+                }+                break;+            case ZYDIS_MACHINE_MODE_LONG_64:+                break;+            default:+                return ZYAN_STATUS_INVALID_ARGUMENT;+            }+            return ZYAN_STATUS_SUCCESS;+        }+        break;+    default:+        break;+    }++    return ZYAN_STATUS_INVALID_ARGUMENT;+}++ZyanStatus ZydisCalcAbsoluteAddressEx(const ZydisDecodedInstruction* instruction,+    const ZydisDecodedOperand* operand, ZyanU64 runtime_address,+    const ZydisRegisterContext* register_context, ZyanU64* result_address)+{+    // TODO: Test this with AGEN/MIB operands+    // TODO: Add support for Gather/Scatter instructions++    if (!instruction || !operand || !register_context || !result_address)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    if ((operand->type != ZYDIS_OPERAND_TYPE_MEMORY) ||+        ((operand->mem.base == ZYDIS_REGISTER_NONE) &&+         (operand->mem.index == ZYDIS_REGISTER_NONE)) ||+        (operand->mem.base == ZYDIS_REGISTER_EIP) ||+        (operand->mem.base == ZYDIS_REGISTER_RIP))+    {+        return ZydisCalcAbsoluteAddress(instruction, operand, runtime_address, result_address);+    }++    ZyanU64 value = operand->mem.disp.value;+    if (operand->mem.base)+    {+        value += register_context->values[operand->mem.base];+    }+    if (operand->mem.index)+    {+        value += register_context->values[operand->mem.index] * operand->mem.scale;+    }++    switch (instruction->address_width)+    {+    case 16:+        *result_address = value & 0x000000000000FFFF;+        return ZYAN_STATUS_SUCCESS;+    case 32:+        *result_address = value & 0x00000000FFFFFFFF;+        return ZYAN_STATUS_SUCCESS;+    case 64:+        *result_address = value;+        return ZYAN_STATUS_SUCCESS;+    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }+}++/* ---------------------------------------------------------------------------------------------- */+/* Accessed CPU flags                                                                             */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisGetAccessedFlagsByAction(const ZydisDecodedInstruction* instruction,+    ZydisCPUFlagAction action, ZydisCPUFlags* flags)+{+    if (!instruction || !flags)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    *flags = 0;+    for (ZyanUSize i = 0; i < ZYAN_ARRAY_LENGTH(instruction->accessed_flags); ++i)+    {+        if (instruction->accessed_flags[i].action == action)+        {+            *flags |= (1 << i);+        }+    }++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisGetAccessedFlagsRead(const ZydisDecodedInstruction* instruction,+    ZydisCPUFlags* flags)+{+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_TESTED, flags));+    ZydisCPUFlags temp;+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED,+        &temp));+    *flags |= temp;++    return ZYAN_STATUS_SUCCESS;+}++ZyanStatus ZydisGetAccessedFlagsWritten(const ZydisDecodedInstruction* instruction,+    ZydisCPUFlags* flags)+{+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_TESTED_MODIFIED,+        flags));+    ZydisCPUFlags temp;+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_MODIFIED, &temp));+    *flags |= temp;+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_SET_0, &temp));+    *flags |= temp;+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_SET_1, &temp));+    *flags |= temp;+    ZYAN_CHECK(ZydisGetAccessedFlagsByAction(instruction, ZYDIS_CPUFLAG_ACTION_UNDEFINED, &temp));+    *flags |= temp;++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */+/* Instruction segments                                                                           */+/* ---------------------------------------------------------------------------------------------- */++ZyanStatus ZydisGetInstructionSegments(const ZydisDecodedInstruction* instruction,+    ZydisInstructionSegments* segments)+{+    if (!instruction || !segments)+    {+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }++    ZYAN_MEMSET(segments, 0, sizeof(*segments));++    // Legacy prefixes and `REX`+    if (instruction->raw.prefix_count)+    {+        const ZyanU8 rex_offset = (instruction->attributes & ZYDIS_ATTRIB_HAS_REX) ? 1 : 0;+        if (!rex_offset || (instruction->raw.prefix_count > 1))+        {+            segments->segments[segments->count  ].type   = ZYDIS_INSTR_SEGMENT_PREFIXES;+            segments->segments[segments->count  ].offset = 0;+            segments->segments[segments->count++].size   =+                instruction->raw.prefix_count - rex_offset;+        }+        if (rex_offset)+        {+            segments->segments[segments->count  ].type   = ZYDIS_INSTR_SEGMENT_REX;+            segments->segments[segments->count  ].offset =+                instruction->raw.prefix_count - rex_offset;+            segments->segments[segments->count++].size   = 1;+        }+    }++    // Encoding prefixes+    ZydisInstructionSegment segment_type = ZYDIS_INSTR_SEGMENT_NONE;+    ZyanU8 segment_offset = 0;+    ZyanU8 segment_size = 0;+    switch (instruction->encoding)+    {+    case ZYDIS_INSTRUCTION_ENCODING_XOP:+        segment_type = ZYDIS_INSTR_SEGMENT_XOP;+        segment_offset = instruction->raw.xop.offset;+        segment_size = 3;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_VEX:+        segment_type = ZYDIS_INSTR_SEGMENT_VEX;+        segment_offset = instruction->raw.vex.offset;+        segment_size = instruction->raw.vex.size;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_EVEX:+        segment_type = ZYDIS_INSTR_SEGMENT_EVEX;+        segment_offset = instruction->raw.evex.offset;+        segment_size = 4;+        break;+    case ZYDIS_INSTRUCTION_ENCODING_MVEX:+        segment_type = ZYDIS_INSTR_SEGMENT_MVEX;+        segment_offset = instruction->raw.mvex.offset;+        segment_size = 4;+        break;+    default:+        break;+    }+    if (segment_type)+    {+        segments->segments[segments->count  ].type   = segment_type;+        segments->segments[segments->count  ].offset = segment_offset;+        segments->segments[segments->count++].size   = segment_size;+    }++    // Opcode+    segment_size = 1;+    if ((instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_LEGACY) ||+        (instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_3DNOW))+    {+        switch (instruction->opcode_map)+        {+        case ZYDIS_OPCODE_MAP_DEFAULT:+            break;+        case ZYDIS_OPCODE_MAP_0F:+            ZYAN_FALLTHROUGH;+        case ZYDIS_OPCODE_MAP_0F0F:+            segment_size = 2;+            break;+        case ZYDIS_OPCODE_MAP_0F38:+            ZYAN_FALLTHROUGH;+        case ZYDIS_OPCODE_MAP_0F3A:+            segment_size = 3;+            break;+        default:+            ZYAN_UNREACHABLE;+        }+    }+    segments->segments[segments->count  ].type = ZYDIS_INSTR_SEGMENT_OPCODE;+    if (segments->count)+    {+        segments->segments[segments->count].offset =+            segments->segments[segments->count - 1].offset ++            segments->segments[segments->count - 1].size;+    } else+    {+        segments->segments[segments->count].offset = 0;+    }+    segments->segments[segments->count++].size = segment_size;++    // ModRM+    if (instruction->attributes & ZYDIS_ATTRIB_HAS_MODRM)+    {+        segments->segments[segments->count  ].type = ZYDIS_INSTR_SEGMENT_MODRM;+        segments->segments[segments->count  ].offset = instruction->raw.modrm.offset;+        segments->segments[segments->count++].size = 1;+    }++    // SIB+    if (instruction->attributes & ZYDIS_ATTRIB_HAS_SIB)+    {+        segments->segments[segments->count  ].type = ZYDIS_INSTR_SEGMENT_SIB;+        segments->segments[segments->count  ].offset = instruction->raw.sib.offset;+        segments->segments[segments->count++].size = 1;+    }++    // Displacement+    if (instruction->raw.disp.size)+    {+        segments->segments[segments->count  ].type = ZYDIS_INSTR_SEGMENT_DISPLACEMENT;+        segments->segments[segments->count  ].offset = instruction->raw.disp.offset;+        segments->segments[segments->count++].size = instruction->raw.disp.size / 8;+    }++    // Immediates+    for (ZyanU8 i = 0; i < 2; ++i)+    {+        if (instruction->raw.imm[i].size)+        {+            segments->segments[segments->count  ].type = ZYDIS_INSTR_SEGMENT_IMMEDIATE;+            segments->segments[segments->count  ].offset = instruction->raw.imm[i].offset;+            segments->segments[segments->count++].size = instruction->raw.imm[i].size / 8;+        }+    }++    if (instruction->encoding == ZYDIS_INSTRUCTION_ENCODING_3DNOW)+    {+        segments->segments[segments->count].type = ZYDIS_INSTR_SEGMENT_OPCODE;+        segments->segments[segments->count].offset = instruction->length -1;+        segments->segments[segments->count++].size = 1;+    }++    return ZYAN_STATUS_SUCCESS;+}++/* ---------------------------------------------------------------------------------------------- */++/* ============================================================================================== */
+ external/zydis/src/Zydis.c view
@@ -0,0 +1,73 @@+/***************************************************************************************************++  Zyan Disassembler Library (Zydis)++  Original Author : Florian Bernd++ * Permission is hereby granted, free of charge, to any person obtaining a copy+ * of this software and associated documentation files (the "Software"), to deal+ * in the Software without restriction, including without limitation the rights+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+ * copies of the Software, and to permit persons to whom the Software is+ * furnished to do so, subject to the following conditions:+ *+ * The above copyright notice and this permission notice shall be included in all+ * copies or substantial portions of the Software.+ *+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+ * SOFTWARE.++***************************************************************************************************/++#include <Zydis/Zydis.h>++/* ============================================================================================== */+/* Exported functions                                                                             */+/* ============================================================================================== */++ZyanU64 ZydisGetVersion(void)+{+    return ZYDIS_VERSION;+}++ZyanStatus ZydisIsFeatureEnabled(ZydisFeature feature)+{+    switch (feature)+    {+    case ZYDIS_FEATURE_DECODER:+#ifndef ZYDIS_DISABLE_DECODER+        return ZYAN_STATUS_TRUE;+#else+        return ZYAN_STATUS_FALSE;+#endif+    case ZYDIS_FEATURE_FORMATTER:+#ifndef ZYDIS_DISABLE_FORMATTER+        return ZYAN_STATUS_TRUE;+#else+        return ZYAN_STATUS_FALSE;+#endif+    case ZYDIS_FEATURE_AVX512:+#ifndef ZYDIS_DISABLE_AVX512+        return ZYAN_STATUS_TRUE;+#else+        return ZYAN_STATUS_FALSE;+#endif++    case ZYDIS_FEATURE_KNC:+#ifndef ZYDIS_DISABLE_KNC+        return ZYAN_STATUS_TRUE;+#else+        return ZYAN_STATUS_FALSE;+#endif++    default:+        return ZYAN_STATUS_INVALID_ARGUMENT;+    }+}++/* ============================================================================================== */
+ src/Zydis.hs view
@@ -0,0 +1,26 @@+-- Zydis.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++module Zydis+  ( module M+  )+where++import           Zydis.Decoder                 as M+import           Zydis.Types                   as M
+ src/Zydis/AddressWidth.hs view
@@ -0,0 +1,34 @@+-- AddressWidth.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.AddressWidth+  ( AddressWidth(..)+  )+where++import           Zydis.Util++data AddressWidth+  = AddressWidth16+  | AddressWidth32+  | AddressWidth64+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt AddressWidth
+ src/Zydis/BranchType.hs view
@@ -0,0 +1,35 @@+-- BranchType.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.BranchType+  ( BranchType(..)+  )+where++import           Zydis.Util++data BranchType+  = BranchTypeNone+  | BranchTypeShort+  | BranchTypeNear+  | BranchTypeFar+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt BranchType
+ src/Zydis/BroadcastMode.hs view
@@ -0,0 +1,44 @@+-- BroadcastMode.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.BroadcastMode+  ( BroadcastMode(..)+  )+where++import           Zydis.Util++data BroadcastMode+  = BroadcastModeInvalid+  | BroadcastMode1To2+  | BroadcastMode1To4+  | BroadcastMode1To8+  | BroadcastMode1To16+  | BroadcastMode1To32+  | BroadcastMode1To64+  | BroadcastMode2To4+  | BroadcastMode2To8+  | BroadcastMode2To16+  | BroadcastMode4To8+  | BroadcastMode4To16+  | BroadcastMode8To16+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt BroadcastMode
+ src/Zydis/CPUFlagAction.hs view
@@ -0,0 +1,38 @@+-- CPUFlagAction.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia      #-}++module Zydis.CPUFlagAction+  ( CPUFlagAction(..)+  )+where++import           Zydis.Util++data CPUFlagAction+  = CPUFlagActionNone+  | CPUFlagActionTested+  | CPUFlagActionTestedModified+  | CPUFlagActionModified+  | CPUFlagActionSet0+  | CPUFlagActionSet1+  | CPUFlagActionUndefined+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt CPUFlagAction
+ src/Zydis/Constants.hs view
@@ -0,0 +1,33 @@+-- Constants.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DataKinds #-}++module Zydis.Constants+  ( ZydisMaxInstructionLength+  , ZydisMaxOperandCount+  , ZydisCpuFlagMaxValue+  , ZydisRawImmediateCount+  )+where++type ZydisCpuFlagMaxValue = 21+type ZydisMaxInstructionLength = 15+type ZydisMaxOperandCount = 10+type ZydisRawImmediateCount = 2
+ src/Zydis/ConversionMode.hs view
@@ -0,0 +1,37 @@+-- ConversionMode.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.ConversionMode+  ( ConversionMode(..)+  )+where++import           Zydis.Util++data ConversionMode+  = ConversionModeInvalid+  | ConversionModeFloat16+  | ConversionModeSint8+  | ConversionModeUint8+  | ConversionModeSint16+  | ConversionModeUint16+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt ConversionMode
+ src/Zydis/Decoder.hs view
@@ -0,0 +1,147 @@+-- Decoder.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE BangPatterns             #-}+{-# LANGUAGE ForeignFunctionInterface #-}+{-# LANGUAGE TypeApplications         #-}++module Zydis.Decoder+  ( ZyanStatus+  , ZyanUSize+  , Offset+  , Length+  , initialize+  , decodeBuffer+  , decodeFullBuffer+  )+where++import           Data.Bits+import           Data.ByteString               as BS+import           Data.ByteString.Internal+import           Data.Vector+import           Data.Word+import           Foreign.ForeignPtr+import           Foreign.Marshal+import           Foreign.Ptr+import           Foreign.Storable+import           Zydis.Types++-- * FFI types++type MachineModeC = Word32++type AddressWidthC = Word32++type ZyanStatus = Word32++type ZyanUSize = Word64++type Offset = ZyanUSize++type Length = ZyanUSize++-- * FFI declarations++foreign import ccall unsafe "ZydisDecoderInit" c_ZydisDecoderInit+  :: Ptr Decoder -> MachineModeC -> AddressWidthC -> IO ZyanStatus++foreign import ccall unsafe "ZydisDecoderDecodeBuffer" c_ZydisDecoderDecodeBuffer+  :: Ptr Decoder -> Ptr Word8 -> ZyanUSize -> Ptr DecodedInstruction -> IO ZyanStatus++-- * FFI bridges++-- | Directly stolen from https://github.com/zyantific/zycore-c/blob/71440fa634d1313db735d3262d453be641bb404f/include/Zycore/Status.h#L81+zyanSuccess :: Word32 -> Bool+zyanSuccess x = (x .&. 0x80000000) == 0+{-# INLINE zyanSuccess #-}++-- | Initialize a Zydis decoder, required to decode instructions.+initialize :: MachineMode -> AddressWidth -> IO (Either ZyanStatus Decoder)+initialize mm aw = alloca go+ where+  go decoder = do+    r <- c_ZydisDecoderInit decoder+                            (fromIntegral $ fromEnum mm)+                            (fromIntegral $ fromEnum aw)+    if zyanSuccess r then Right <$> peek decoder else pure $ Left r+{-# INLINE initialize #-}++-- | Decode a single intruction.+decodeBuffer+  :: Decoder+  -> ByteString+  -> Offset+  -> Length+  -> IO (Either ZyanStatus DecodedInstruction)+decodeBuffer d bs o l = alloca @Decoder go+ where+  (bufferForeignPtr, _, _) = toForeignPtr bs++  go decoderPtr = alloca @DecodedInstruction $ go' decoderPtr++  go' decoderPtr decodedInstructionPtr =+    withForeignPtr bufferForeignPtr $ go'' decoderPtr decodedInstructionPtr++  go'' decoderPtr decodedInstructionPtr bufferPtr = do+    poke decoderPtr d+    doDecodeInstruction decoderPtr decodedInstructionPtr bufferPtr o l+{-# INLINE decodeBuffer #-}++-- | Efficiently decode an entire buffer of instructions.+decodeFullBuffer+  :: Decoder -> ByteString -> IO (Either ZyanStatus (Vector DecodedInstruction))+decodeFullBuffer d bs = alloca @Decoder go+ where+  (bufferForeignPtr, _, bufferLength) = toForeignPtr bs++  go decoderPtr = alloca @DecodedInstruction $ go' decoderPtr++  go' decoderPtr decodedInstructionPtr =+    withForeignPtr bufferForeignPtr $ go'' decoderPtr decodedInstructionPtr++  go'' decoderPtr decodedInstructionPtr bufferPtr = do+    poke decoderPtr d+    loop (mempty @(Vector DecodedInstruction), 0, fromIntegral bufferLength)+   where+    loop (!v, !o, !l)+      | l > 0 = do+        x <- doDecodeInstruction decoderPtr decodedInstructionPtr bufferPtr o l+        case x of+          Right i -> do+            let il = fromIntegral $ decodedInstructionLength i+            loop (v <> pure i, o + il, l - il)+          Left s -> pure $ Left s+      | otherwise = pure $ Right v+{-# INLINE decodeFullBuffer #-}++doDecodeInstruction+  :: Ptr Decoder+  -> Ptr DecodedInstruction+  -> Ptr Word8+  -> Offset+  -> Length+  -> IO (Either ZyanStatus DecodedInstruction)+doDecodeInstruction decoderPtr decodedInstructionPtr bufferPtr o l = do+  r <- c_ZydisDecoderDecodeBuffer decoderPtr+                                  (plusPtr bufferPtr (fromIntegral o))+                                  l+                                  decodedInstructionPtr+  if zyanSuccess r then Right <$> peek decodedInstructionPtr else pure $ Left r+{-# INLINE doDecodeInstruction #-}
+ src/Zydis/ElementType.hs view
@@ -0,0 +1,41 @@+-- ElementType.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.ElementType+  ( ElementType(..)+  )+where++import           Zydis.Util++data ElementType+  = ElementTypeInvalid+  | ElementTypeStruct+  | ElementTypeUint+  | ElementTypeInt+  | ElementTypeFloat16+  | ElementTypeFloat32+  | ElementTypeFloat64+  | ElementTypeFloat80+  | ElementTypeLongbcd+  | ElementTypeCc+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt ElementType
+ src/Zydis/ExceptionClass.hs view
@@ -0,0 +1,72 @@+-- ExceptionClass.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.ExceptionClass+  ( ExceptionClass(..)+  )+where++import           Zydis.Util++data ExceptionClass+  = ExceptionClassNone+  | ExceptionClassSse1+  | ExceptionClassSse2+  | ExceptionClassSse3+  | ExceptionClassSse4+  | ExceptionClassSse5+  | ExceptionClassSse7+  | ExceptionClassAvx1+  | ExceptionClassAvx2+  | ExceptionClassAvx3+  | ExceptionClassAvx4+  | ExceptionClassAvx5+  | ExceptionClassAvx6+  | ExceptionClassAvx7+  | ExceptionClassAvx8+  | ExceptionClassAvx11+  | ExceptionClassAvx12+  | ExceptionClassE1+  | ExceptionClassE1Nf+  | ExceptionClassE2+  | ExceptionClassE2Nf+  | ExceptionClassE3+  | ExceptionClassE3Nf+  | ExceptionClassE4+  | ExceptionClassE4Nf+  | ExceptionClassE5+  | ExceptionClassE5Nf+  | ExceptionClassE6+  | ExceptionClassE6Nf+  | ExceptionClassE7Nm+  | ExceptionClassE7Nm128+  | ExceptionClassE9Nf+  | ExceptionClassE10+  | ExceptionClassE10Nf+  | ExceptionClassE11+  | ExceptionClassE11Nf+  | ExceptionClassE12+  | ExceptionClassE12Np+  | ExceptionClassK20+  | ExceptionClassK21+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt ExceptionClass+
+ src/Zydis/ISAExt.hs view
@@ -0,0 +1,105 @@+-- ISAExt.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.ISAExt+  ( ISAExt(..)+  )+where++import           Zydis.Util++data ISAExt+  = ISAExtInvalid+  | ISAExtAdoxAdcx+  | ISAExtAes+  | ISAExtAmd3Dnow+  | ISAExtAvx+  | ISAExtAvx2+  | ISAExtAvx2Gather+  | ISAExtAvx512Evex+  | ISAExtAvx512Vex+  | ISAExtAvxaes+  | ISAExtBase+  | ISAExtBmi1+  | ISAExtBmi2+  | ISAExtCet+  | ISAExtCldemote+  | ISAExtClflushopt+  | ISAExtClfsh+  | ISAExtClwb+  | ISAExtClzero+  | ISAExtEnqcmd+  | ISAExtF16C+  | ISAExtFma+  | ISAExtFma4+  | ISAExtGfni+  | ISAExtInvpcid+  | ISAExtKnc+  | ISAExtKnce+  | ISAExtKncv+  | ISAExtLongmode+  | ISAExtLzcnt+  | ISAExtMmx+  | ISAExtMonitor+  | ISAExtMonitorx+  | ISAExtMovbe+  | ISAExtMovdir+  | ISAExtMpx+  | ISAExtPadlock+  | ISAExtPause+  | ISAExtPclmulqdq+  | ISAExtPconfig+  | ISAExtPku+  | ISAExtPrefetchwt1+  | ISAExtPt+  | ISAExtRdpid+  | ISAExtRdpru+  | ISAExtRdrand+  | ISAExtRdseed+  | ISAExtRdtscp+  | ISAExtRdwrfsgs+  | ISAExtRtm+  | ISAExtSgx+  | ISAExtSgxEnclv+  | ISAExtSha+  | ISAExtSmap+  | ISAExtSmx+  | ISAExtSse+  | ISAExtSse2+  | ISAExtSse3+  | ISAExtSse4+  | ISAExtSse4A+  | ISAExtSsse3+  | ISAExtSvm+  | ISAExtTbm+  | ISAExtVaes+  | ISAExtVmfunc+  | ISAExtVpclmulqdq+  | ISAExtVtx+  | ISAExtWaitpkg+  | ISAExtX87+  | ISAExtXop+  | ISAExtXsave+  | ISAExtXsavec+  | ISAExtXsaveopt+  | ISAExtXsaves+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt ISAExt
+ src/Zydis/ISASet.hs view
@@ -0,0 +1,194 @@+-- ISASet.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.ISASet+  ( ISASet(..)+  )+where++import           Zydis.Util++data ISASet+  = ISASetInvalid+  | ISASetAdoxAdcx+  | ISASetAes+  | ISASetAmd+  | ISASetAmd3Dnow+  | ISASetAvx+  | ISASetAvx2+  | ISASetAvx2Gather+  | ISASetAvx512Bw128+  | ISASetAvx512Bw128N+  | ISASetAvx512Bw256+  | ISASetAvx512Bw512+  | ISASetAvx512BwKop+  | ISASetAvx512Cd128+  | ISASetAvx512Cd256+  | ISASetAvx512Cd512+  | ISASetAvx512Dq128+  | ISASetAvx512Dq128N+  | ISASetAvx512Dq256+  | ISASetAvx512Dq512+  | ISASetAvx512DqKop+  | ISASetAvx512DqScalar+  | ISASetAvx512Er512+  | ISASetAvx512ErScalar+  | ISASetAvx512F128+  | ISASetAvx512F128N+  | ISASetAvx512F256+  | ISASetAvx512F512+  | ISASetAvx512FKop+  | ISASetAvx512FScalar+  | ISASetAvx512Pf512+  | ISASetAvx5124Fmaps512+  | ISASetAvx5124FmapsScalar+  | ISASetAvx5124Vnniw512+  | ISASetAvx512Bf16128+  | ISASetAvx512Bf16256+  | ISASetAvx512Bf16512+  | ISASetAvx512Bitalg128+  | ISASetAvx512Bitalg256+  | ISASetAvx512Bitalg512+  | ISASetAvx512Gfni128+  | ISASetAvx512Gfni256+  | ISASetAvx512Gfni512+  | ISASetAvx512Ifma128+  | ISASetAvx512Ifma256+  | ISASetAvx512Ifma512+  | ISASetAvx512Vaes128+  | ISASetAvx512Vaes256+  | ISASetAvx512Vaes512+  | ISASetAvx512Vbmi2128+  | ISASetAvx512Vbmi2256+  | ISASetAvx512Vbmi2512+  | ISASetAvx512Vbmi128+  | ISASetAvx512Vbmi256+  | ISASetAvx512Vbmi512+  | ISASetAvx512Vnni128+  | ISASetAvx512Vnni256+  | ISASetAvx512Vnni512+  | ISASetAvx512Vp2Intersect128+  | ISASetAvx512Vp2Intersect256+  | ISASetAvx512Vp2Intersect512+  | ISASetAvx512Vpclmulqdq128+  | ISASetAvx512Vpclmulqdq256+  | ISASetAvx512Vpclmulqdq512+  | ISASetAvx512Vpopcntdq128+  | ISASetAvx512Vpopcntdq256+  | ISASetAvx512Vpopcntdq512+  | ISASetAvxaes+  | ISASetAvxGfni+  | ISASetBmi1+  | ISASetBmi2+  | ISASetCet+  | ISASetCldemote+  | ISASetClflushopt+  | ISASetClfsh+  | ISASetClwb+  | ISASetClzero+  | ISASetCmov+  | ISASetCmpxchg16B+  | ISASetEnqcmd+  | ISASetF16C+  | ISASetFatNop+  | ISASetFcmov+  | ISASetFma+  | ISASetFma4+  | ISASetFxsave+  | ISASetFxsave64+  | ISASetGfni+  | ISASetI186+  | ISASetI286Protected+  | ISASetI286Real+  | ISASetI386+  | ISASetI486+  | ISASetI486Real+  | ISASetI86+  | ISASetInvpcid+  | ISASetKnce+  | ISASetKncjkbr+  | ISASetKncstream+  | ISASetKncv+  | ISASetKncMisc+  | ISASetKncPfHint+  | ISASetLahf+  | ISASetLongmode+  | ISASetLzcnt+  | ISASetMonitor+  | ISASetMonitorx+  | ISASetMovbe+  | ISASetMovdir+  | ISASetMpx+  | ISASetPadlockAce+  | ISASetPadlockPhe+  | ISASetPadlockPmm+  | ISASetPadlockRng+  | ISASetPause+  | ISASetPclmulqdq+  | ISASetPconfig+  | ISASetPentiummmx+  | ISASetPentiumreal+  | ISASetPku+  | ISASetPopcnt+  | ISASetPpro+  | ISASetPrefetchwt1+  | ISASetPrefetchNop+  | ISASetPt+  | ISASetRdpid+  | ISASetRdpmc+  | ISASetRdpru+  | ISASetRdrand+  | ISASetRdseed+  | ISASetRdtscp+  | ISASetRdwrfsgs+  | ISASetRtm+  | ISASetSgx+  | ISASetSgxEnclv+  | ISASetSha+  | ISASetSmap+  | ISASetSmx+  | ISASetSse+  | ISASetSse2+  | ISASetSse2Mmx+  | ISASetSse3+  | ISASetSse3X87+  | ISASetSse4+  | ISASetSse42+  | ISASetSse4A+  | ISASetSsemxcsr+  | ISASetSsePrefetch+  | ISASetSsse3+  | ISASetSsse3Mmx+  | ISASetSvm+  | ISASetTbm+  | ISASetVaes+  | ISASetVmfunc+  | ISASetVpclmulqdq+  | ISASetVtx+  | ISASetWaitpkg+  | ISASetX87+  | ISASetXop+  | ISASetXsave+  | ISASetXsavec+  | ISASetXsaveopt+  | ISASetXsaves+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt ISASet
+ src/Zydis/InstructionCategory.hs view
@@ -0,0 +1,130 @@+-- InstructionCategory.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.InstructionCategory+  ( InstructionCategory(..)+  )+where++import           Zydis.Util++data InstructionCategory+  = InstructionCategoryInvalid+  | InstructionCategoryAdoxAdcx+  | InstructionCategoryAes+  | InstructionCategoryAmd3Dnow+  | InstructionCategoryAvx+  | InstructionCategoryAvx2+  | InstructionCategoryAvx2Gather+  | InstructionCategoryAvx512+  | InstructionCategoryAvx5124Fmaps+  | InstructionCategoryAvx5124Vnniw+  | InstructionCategoryAvx512Bitalg+  | InstructionCategoryAvx512Vbmi+  | InstructionCategoryAvx512Vp2Intersect+  | InstructionCategoryBinary+  | InstructionCategoryBitbyte+  | InstructionCategoryBlend+  | InstructionCategoryBmi1+  | InstructionCategoryBmi2+  | InstructionCategoryBroadcast+  | InstructionCategoryCall+  | InstructionCategoryCet+  | InstructionCategoryCldemote+  | InstructionCategoryClflushopt+  | InstructionCategoryClwb+  | InstructionCategoryClzero+  | InstructionCategoryCmov+  | InstructionCategoryCompress+  | InstructionCategoryCondBr+  | InstructionCategoryConflict+  | InstructionCategoryConvert+  | InstructionCategoryDataxfer+  | InstructionCategoryDecimal+  | InstructionCategoryEnqcmd+  | InstructionCategoryExpand+  | InstructionCategoryFcmov+  | InstructionCategoryFlagop+  | InstructionCategoryFma4+  | InstructionCategoryGather+  | InstructionCategoryGfni+  | InstructionCategoryIfma+  | InstructionCategoryInterrupt+  | InstructionCategoryIo+  | InstructionCategoryIostringop+  | InstructionCategoryKmask+  | InstructionCategoryKnc+  | InstructionCategoryKncmask+  | InstructionCategoryKncscalar+  | InstructionCategoryLogical+  | InstructionCategoryLogicalFp+  | InstructionCategoryLzcnt+  | InstructionCategoryMisc+  | InstructionCategoryMmx+  | InstructionCategoryMovdir+  | InstructionCategoryMpx+  | InstructionCategoryNop+  | InstructionCategoryPadlock+  | InstructionCategoryPclmulqdq+  | InstructionCategoryPconfig+  | InstructionCategoryPku+  | InstructionCategoryPop+  | InstructionCategoryPrefetch+  | InstructionCategoryPrefetchwt1+  | InstructionCategoryPt+  | InstructionCategoryPush+  | InstructionCategoryRdpid+  | InstructionCategoryRdpru+  | InstructionCategoryRdrand+  | InstructionCategoryRdseed+  | InstructionCategoryRdwrfsgs+  | InstructionCategoryRet+  | InstructionCategoryRotate+  | InstructionCategoryScatter+  | InstructionCategorySegop+  | InstructionCategorySemaphore+  | InstructionCategorySetcc+  | InstructionCategorySgx+  | InstructionCategorySha+  | InstructionCategoryShift+  | InstructionCategorySmap+  | InstructionCategorySse+  | InstructionCategoryStringop+  | InstructionCategorySttni+  | InstructionCategorySyscall+  | InstructionCategorySysret+  | InstructionCategorySystem+  | InstructionCategoryTbm+  | InstructionCategoryUfma+  | InstructionCategoryUncondBr+  | InstructionCategoryVaes+  | InstructionCategoryVbmi2+  | InstructionCategoryVfma+  | InstructionCategoryVpclmulqdq+  | InstructionCategoryVtx+  | InstructionCategoryWaitpkg+  | InstructionCategoryWidenop+  | InstructionCategoryX87Alu+  | InstructionCategoryXop+  | InstructionCategoryXsave+  | InstructionCategoryXsaveopt+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt InstructionCategory
+ src/Zydis/InstructionEncoding.hs view
@@ -0,0 +1,37 @@+-- InstructionEncoding.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.InstructionEncoding+  ( InstructionEncoding+  )+where++import           Zydis.Util++data InstructionEncoding+  = InstructionEncodingLegacy+  | InstructionEncoding3Dnow+  | InstructionEncodingXop+  | InstructionEncodingVex+  | InstructionEncodingEvex+  | InstructionEncodingMvex+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt InstructionEncoding
+ src/Zydis/MachineMode.hs view
@@ -0,0 +1,37 @@+-- MachineMode.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia              #-}++module Zydis.MachineMode+  ( MachineMode(..)+  )+where++import           Zydis.Util++data MachineMode+  = MachineModeLong64+  | MachineModeLongCompat32+  | MachineModeLongCompat16+  | MachineModeLegacy32+  | MachineModeLegacy16+  | MachineModeReal16+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt MachineMode
+ src/Zydis/MaskMode.hs view
@@ -0,0 +1,37 @@+-- MaskMode.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.MaskMode+  ( MaskMode(..)+  )+where++import           Zydis.Util++data MaskMode+  = MaskModeInvalid+  | MaskModeDisabled+  | MaskModeMerging+  | MaskModeZeroing+  | MaskModeControl+  | MaskModeControlZeroing+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt MaskMode
+ src/Zydis/Mnemonic.hs view
@@ -0,0 +1,1637 @@+-- Mnemonic.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.Mnemonic+  ( Mnemonic(..)+  )+where++import           Zydis.Util++data Mnemonic+  = MnemonicInvalid+  | MnemonicAaa+  | MnemonicAad+  | MnemonicAam+  | MnemonicAas+  | MnemonicAdc+  | MnemonicAdcx+  | MnemonicAdd+  | MnemonicAddpd+  | MnemonicAddps+  | MnemonicAddsd+  | MnemonicAddss+  | MnemonicAddsubpd+  | MnemonicAddsubps+  | MnemonicAdox+  | MnemonicAesdec+  | MnemonicAesdeclast+  | MnemonicAesenc+  | MnemonicAesenclast+  | MnemonicAesimc+  | MnemonicAeskeygenassist+  | MnemonicAnd+  | MnemonicAndn+  | MnemonicAndnpd+  | MnemonicAndnps+  | MnemonicAndpd+  | MnemonicAndps+  | MnemonicArpl+  | MnemonicBextr+  | MnemonicBlcfill+  | MnemonicBlci+  | MnemonicBlcic+  | MnemonicBlcmsk+  | MnemonicBlcs+  | MnemonicBlendpd+  | MnemonicBlendps+  | MnemonicBlendvpd+  | MnemonicBlendvps+  | MnemonicBlsfill+  | MnemonicBlsi+  | MnemonicBlsic+  | MnemonicBlsmsk+  | MnemonicBlsr+  | MnemonicBndcl+  | MnemonicBndcn+  | MnemonicBndcu+  | MnemonicBndldx+  | MnemonicBndmk+  | MnemonicBndmov+  | MnemonicBndstx+  | MnemonicBound+  | MnemonicBsf+  | MnemonicBsr+  | MnemonicBswap+  | MnemonicBt+  | MnemonicBtc+  | MnemonicBtr+  | MnemonicBts+  | MnemonicBzhi+  | MnemonicCall+  | MnemonicCbw+  | MnemonicCdq+  | MnemonicCdqe+  | MnemonicClac+  | MnemonicClc+  | MnemonicCld+  | MnemonicCldemote+  | MnemonicClevict0+  | MnemonicClevict1+  | MnemonicClflush+  | MnemonicClflushopt+  | MnemonicClgi+  | MnemonicCli+  | MnemonicClrssbsy+  | MnemonicClts+  | MnemonicClwb+  | MnemonicClzero+  | MnemonicCmc+  | MnemonicCmovb+  | MnemonicCmovbe+  | MnemonicCmovl+  | MnemonicCmovle+  | MnemonicCmovnb+  | MnemonicCmovnbe+  | MnemonicCmovnl+  | MnemonicCmovnle+  | MnemonicCmovno+  | MnemonicCmovnp+  | MnemonicCmovns+  | MnemonicCmovnz+  | MnemonicCmovo+  | MnemonicCmovp+  | MnemonicCmovs+  | MnemonicCmovz+  | MnemonicCmp+  | MnemonicCmppd+  | MnemonicCmpps+  | MnemonicCmpsb+  | MnemonicCmpsd+  | MnemonicCmpsq+  | MnemonicCmpss+  | MnemonicCmpsw+  | MnemonicCmpxchg+  | MnemonicCmpxchg16B+  | MnemonicCmpxchg8B+  | MnemonicComisd+  | MnemonicComiss+  | MnemonicCpuid+  | MnemonicCqo+  | MnemonicCrc32+  | MnemonicCvtdq2Pd+  | MnemonicCvtdq2Ps+  | MnemonicCvtpd2Dq+  | MnemonicCvtpd2Pi+  | MnemonicCvtpd2Ps+  | MnemonicCvtpi2Pd+  | MnemonicCvtpi2Ps+  | MnemonicCvtps2Dq+  | MnemonicCvtps2Pd+  | MnemonicCvtps2Pi+  | MnemonicCvtsd2Si+  | MnemonicCvtsd2Ss+  | MnemonicCvtsi2Sd+  | MnemonicCvtsi2Ss+  | MnemonicCvtss2Sd+  | MnemonicCvtss2Si+  | MnemonicCvttpd2Dq+  | MnemonicCvttpd2Pi+  | MnemonicCvttps2Dq+  | MnemonicCvttps2Pi+  | MnemonicCvttsd2Si+  | MnemonicCvttss2Si+  | MnemonicCwd+  | MnemonicCwde+  | MnemonicDaa+  | MnemonicDas+  | MnemonicDec+  | MnemonicDelay+  | MnemonicDiv+  | MnemonicDivpd+  | MnemonicDivps+  | MnemonicDivsd+  | MnemonicDivss+  | MnemonicDppd+  | MnemonicDpps+  | MnemonicEmms+  | MnemonicEncls+  | MnemonicEnclu+  | MnemonicEnclv+  | MnemonicEndbr32+  | MnemonicEndbr64+  | MnemonicEnqcmd+  | MnemonicEnqcmds+  | MnemonicEnter+  | MnemonicExtractps+  | MnemonicExtrq+  | MnemonicF2Xm1+  | MnemonicFabs+  | MnemonicFadd+  | MnemonicFaddp+  | MnemonicFbld+  | MnemonicFbstp+  | MnemonicFchs+  | MnemonicFcmovb+  | MnemonicFcmovbe+  | MnemonicFcmove+  | MnemonicFcmovnb+  | MnemonicFcmovnbe+  | MnemonicFcmovne+  | MnemonicFcmovnu+  | MnemonicFcmovu+  | MnemonicFcom+  | MnemonicFcomi+  | MnemonicFcomip+  | MnemonicFcomp+  | MnemonicFcompp+  | MnemonicFcos+  | MnemonicFdecstp+  | MnemonicFdisi8087Nop+  | MnemonicFdiv+  | MnemonicFdivp+  | MnemonicFdivr+  | MnemonicFdivrp+  | MnemonicFemms+  | MnemonicFeni8087Nop+  | MnemonicFfree+  | MnemonicFfreep+  | MnemonicFiadd+  | MnemonicFicom+  | MnemonicFicomp+  | MnemonicFidiv+  | MnemonicFidivr+  | MnemonicFild+  | MnemonicFimul+  | MnemonicFincstp+  | MnemonicFist+  | MnemonicFistp+  | MnemonicFisttp+  | MnemonicFisub+  | MnemonicFisubr+  | MnemonicFld+  | MnemonicFld1+  | MnemonicFldcw+  | MnemonicFldenv+  | MnemonicFldl2E+  | MnemonicFldl2T+  | MnemonicFldlg2+  | MnemonicFldln2+  | MnemonicFldpi+  | MnemonicFldz+  | MnemonicFmul+  | MnemonicFmulp+  | MnemonicFnclex+  | MnemonicFninit+  | MnemonicFnop+  | MnemonicFnsave+  | MnemonicFnstcw+  | MnemonicFnstenv+  | MnemonicFnstsw+  | MnemonicFpatan+  | MnemonicFprem+  | MnemonicFprem1+  | MnemonicFptan+  | MnemonicFrndint+  | MnemonicFrstor+  | MnemonicFscale+  | MnemonicFsetpm287Nop+  | MnemonicFsin+  | MnemonicFsincos+  | MnemonicFsqrt+  | MnemonicFst+  | MnemonicFstp+  | MnemonicFstpnce+  | MnemonicFsub+  | MnemonicFsubp+  | MnemonicFsubr+  | MnemonicFsubrp+  | MnemonicFtst+  | MnemonicFucom+  | MnemonicFucomi+  | MnemonicFucomip+  | MnemonicFucomp+  | MnemonicFucompp+  | MnemonicFwait+  | MnemonicFxam+  | MnemonicFxch+  | MnemonicFxrstor+  | MnemonicFxrstor64+  | MnemonicFxsave+  | MnemonicFxsave64+  | MnemonicFxtract+  | MnemonicFyl2X+  | MnemonicFyl2Xp1+  | MnemonicGetsec+  | MnemonicGf2P8Affineinvqb+  | MnemonicGf2P8Affineqb+  | MnemonicGf2P8Mulb+  | MnemonicHaddpd+  | MnemonicHaddps+  | MnemonicHlt+  | MnemonicHsubpd+  | MnemonicHsubps+  | MnemonicIdiv+  | MnemonicImul+  | MnemonicIn+  | MnemonicInc+  | MnemonicIncsspd+  | MnemonicIncsspq+  | MnemonicInsb+  | MnemonicInsd+  | MnemonicInsertps+  | MnemonicInsertq+  | MnemonicInsw+  | MnemonicInt+  | MnemonicInt1+  | MnemonicInt3+  | MnemonicInto+  | MnemonicInvd+  | MnemonicInvept+  | MnemonicInvlpg+  | MnemonicInvlpga+  | MnemonicInvpcid+  | MnemonicInvvpid+  | MnemonicIret+  | MnemonicIretd+  | MnemonicIretq+  | MnemonicJb+  | MnemonicJbe+  | MnemonicJcxz+  | MnemonicJecxz+  | MnemonicJknzd+  | MnemonicJkzd+  | MnemonicJl+  | MnemonicJle+  | MnemonicJmp+  | MnemonicJnb+  | MnemonicJnbe+  | MnemonicJnl+  | MnemonicJnle+  | MnemonicJno+  | MnemonicJnp+  | MnemonicJns+  | MnemonicJnz+  | MnemonicJo+  | MnemonicJp+  | MnemonicJrcxz+  | MnemonicJs+  | MnemonicJz+  | MnemonicKaddb+  | MnemonicKaddd+  | MnemonicKaddq+  | MnemonicKaddw+  | MnemonicKand+  | MnemonicKandb+  | MnemonicKandd+  | MnemonicKandn+  | MnemonicKandnb+  | MnemonicKandnd+  | MnemonicKandnq+  | MnemonicKandnr+  | MnemonicKandnw+  | MnemonicKandq+  | MnemonicKandw+  | MnemonicKconcath+  | MnemonicKconcatl+  | MnemonicKextract+  | MnemonicKmerge2L1H+  | MnemonicKmerge2L1L+  | MnemonicKmov+  | MnemonicKmovb+  | MnemonicKmovd+  | MnemonicKmovq+  | MnemonicKmovw+  | MnemonicKnot+  | MnemonicKnotb+  | MnemonicKnotd+  | MnemonicKnotq+  | MnemonicKnotw+  | MnemonicKor+  | MnemonicKorb+  | MnemonicKord+  | MnemonicKorq+  | MnemonicKortest+  | MnemonicKortestb+  | MnemonicKortestd+  | MnemonicKortestq+  | MnemonicKortestw+  | MnemonicKorw+  | MnemonicKshiftlb+  | MnemonicKshiftld+  | MnemonicKshiftlq+  | MnemonicKshiftlw+  | MnemonicKshiftrb+  | MnemonicKshiftrd+  | MnemonicKshiftrq+  | MnemonicKshiftrw+  | MnemonicKtestb+  | MnemonicKtestd+  | MnemonicKtestq+  | MnemonicKtestw+  | MnemonicKunpckbw+  | MnemonicKunpckdq+  | MnemonicKunpckwd+  | MnemonicKxnor+  | MnemonicKxnorb+  | MnemonicKxnord+  | MnemonicKxnorq+  | MnemonicKxnorw+  | MnemonicKxor+  | MnemonicKxorb+  | MnemonicKxord+  | MnemonicKxorq+  | MnemonicKxorw+  | MnemonicLahf+  | MnemonicLar+  | MnemonicLddqu+  | MnemonicLdmxcsr+  | MnemonicLds+  | MnemonicLea+  | MnemonicLeave+  | MnemonicLes+  | MnemonicLfence+  | MnemonicLfs+  | MnemonicLgdt+  | MnemonicLgs+  | MnemonicLidt+  | MnemonicLldt+  | MnemonicLlwpcb+  | MnemonicLmsw+  | MnemonicLodsb+  | MnemonicLodsd+  | MnemonicLodsq+  | MnemonicLodsw+  | MnemonicLoop+  | MnemonicLoope+  | MnemonicLoopne+  | MnemonicLsl+  | MnemonicLss+  | MnemonicLtr+  | MnemonicLwpins+  | MnemonicLwpval+  | MnemonicLzcnt+  | MnemonicMaskmovdqu+  | MnemonicMaskmovq+  | MnemonicMaxpd+  | MnemonicMaxps+  | MnemonicMaxsd+  | MnemonicMaxss+  | MnemonicMfence+  | MnemonicMinpd+  | MnemonicMinps+  | MnemonicMinsd+  | MnemonicMinss+  | MnemonicMonitor+  | MnemonicMonitorx+  | MnemonicMontmul+  | MnemonicMov+  | MnemonicMovapd+  | MnemonicMovaps+  | MnemonicMovbe+  | MnemonicMovd+  | MnemonicMovddup+  | MnemonicMovdir64B+  | MnemonicMovdiri+  | MnemonicMovdq2Q+  | MnemonicMovdqa+  | MnemonicMovdqu+  | MnemonicMovhlps+  | MnemonicMovhpd+  | MnemonicMovhps+  | MnemonicMovlhps+  | MnemonicMovlpd+  | MnemonicMovlps+  | MnemonicMovmskpd+  | MnemonicMovmskps+  | MnemonicMovntdq+  | MnemonicMovntdqa+  | MnemonicMovnti+  | MnemonicMovntpd+  | MnemonicMovntps+  | MnemonicMovntq+  | MnemonicMovntsd+  | MnemonicMovntss+  | MnemonicMovq+  | MnemonicMovq2Dq+  | MnemonicMovsb+  | MnemonicMovsd+  | MnemonicMovshdup+  | MnemonicMovsldup+  | MnemonicMovsq+  | MnemonicMovss+  | MnemonicMovsw+  | MnemonicMovsx+  | MnemonicMovsxd+  | MnemonicMovupd+  | MnemonicMovups+  | MnemonicMovzx+  | MnemonicMpsadbw+  | MnemonicMul+  | MnemonicMulpd+  | MnemonicMulps+  | MnemonicMulsd+  | MnemonicMulss+  | MnemonicMulx+  | MnemonicMwait+  | MnemonicMwaitx+  | MnemonicNeg+  | MnemonicNop+  | MnemonicNot+  | MnemonicOr+  | MnemonicOrpd+  | MnemonicOrps+  | MnemonicOut+  | MnemonicOutsb+  | MnemonicOutsd+  | MnemonicOutsw+  | MnemonicPabsb+  | MnemonicPabsd+  | MnemonicPabsw+  | MnemonicPackssdw+  | MnemonicPacksswb+  | MnemonicPackusdw+  | MnemonicPackuswb+  | MnemonicPaddb+  | MnemonicPaddd+  | MnemonicPaddq+  | MnemonicPaddsb+  | MnemonicPaddsw+  | MnemonicPaddusb+  | MnemonicPaddusw+  | MnemonicPaddw+  | MnemonicPalignr+  | MnemonicPand+  | MnemonicPandn+  | MnemonicPause+  | MnemonicPavgb+  | MnemonicPavgusb+  | MnemonicPavgw+  | MnemonicPblendvb+  | MnemonicPblendw+  | MnemonicPclmulqdq+  | MnemonicPcmpeqb+  | MnemonicPcmpeqd+  | MnemonicPcmpeqq+  | MnemonicPcmpeqw+  | MnemonicPcmpestri+  | MnemonicPcmpestrm+  | MnemonicPcmpgtb+  | MnemonicPcmpgtd+  | MnemonicPcmpgtq+  | MnemonicPcmpgtw+  | MnemonicPcmpistri+  | MnemonicPcmpistrm+  | MnemonicPconfig+  | MnemonicPdep+  | MnemonicPext+  | MnemonicPextrb+  | MnemonicPextrd+  | MnemonicPextrq+  | MnemonicPextrw+  | MnemonicPf2Id+  | MnemonicPf2Iw+  | MnemonicPfacc+  | MnemonicPfadd+  | MnemonicPfcmpeq+  | MnemonicPfcmpge+  | MnemonicPfcmpgt+  | MnemonicPfcpit1+  | MnemonicPfmax+  | MnemonicPfmin+  | MnemonicPfmul+  | MnemonicPfnacc+  | MnemonicPfpnacc+  | MnemonicPfrcp+  | MnemonicPfrcpit2+  | MnemonicPfrsqit1+  | MnemonicPfsqrt+  | MnemonicPfsub+  | MnemonicPfsubr+  | MnemonicPhaddd+  | MnemonicPhaddsw+  | MnemonicPhaddw+  | MnemonicPhminposuw+  | MnemonicPhsubd+  | MnemonicPhsubsw+  | MnemonicPhsubw+  | MnemonicPi2Fd+  | MnemonicPi2Fw+  | MnemonicPinsrb+  | MnemonicPinsrd+  | MnemonicPinsrq+  | MnemonicPinsrw+  | MnemonicPmaddubsw+  | MnemonicPmaddwd+  | MnemonicPmaxsb+  | MnemonicPmaxsd+  | MnemonicPmaxsw+  | MnemonicPmaxub+  | MnemonicPmaxud+  | MnemonicPmaxuw+  | MnemonicPminsb+  | MnemonicPminsd+  | MnemonicPminsw+  | MnemonicPminub+  | MnemonicPminud+  | MnemonicPminuw+  | MnemonicPmovmskb+  | MnemonicPmovsxbd+  | MnemonicPmovsxbq+  | MnemonicPmovsxbw+  | MnemonicPmovsxdq+  | MnemonicPmovsxwd+  | MnemonicPmovsxwq+  | MnemonicPmovzxbd+  | MnemonicPmovzxbq+  | MnemonicPmovzxbw+  | MnemonicPmovzxdq+  | MnemonicPmovzxwd+  | MnemonicPmovzxwq+  | MnemonicPmuldq+  | MnemonicPmulhrsw+  | MnemonicPmulhrw+  | MnemonicPmulhuw+  | MnemonicPmulhw+  | MnemonicPmulld+  | MnemonicPmullw+  | MnemonicPmuludq+  | MnemonicPop+  | MnemonicPopa+  | MnemonicPopad+  | MnemonicPopcnt+  | MnemonicPopf+  | MnemonicPopfd+  | MnemonicPopfq+  | MnemonicPor+  | MnemonicPrefetch+  | MnemonicPrefetchnta+  | MnemonicPrefetcht0+  | MnemonicPrefetcht1+  | MnemonicPrefetcht2+  | MnemonicPrefetchw+  | MnemonicPrefetchwt1+  | MnemonicPsadbw+  | MnemonicPshufb+  | MnemonicPshufd+  | MnemonicPshufhw+  | MnemonicPshuflw+  | MnemonicPshufw+  | MnemonicPsignb+  | MnemonicPsignd+  | MnemonicPsignw+  | MnemonicPslld+  | MnemonicPslldq+  | MnemonicPsllq+  | MnemonicPsllw+  | MnemonicPsrad+  | MnemonicPsraw+  | MnemonicPsrld+  | MnemonicPsrldq+  | MnemonicPsrlq+  | MnemonicPsrlw+  | MnemonicPsubb+  | MnemonicPsubd+  | MnemonicPsubq+  | MnemonicPsubsb+  | MnemonicPsubsw+  | MnemonicPsubusb+  | MnemonicPsubusw+  | MnemonicPsubw+  | MnemonicPswapd+  | MnemonicPtest+  | MnemonicPtwrite+  | MnemonicPunpckhbw+  | MnemonicPunpckhdq+  | MnemonicPunpckhqdq+  | MnemonicPunpckhwd+  | MnemonicPunpcklbw+  | MnemonicPunpckldq+  | MnemonicPunpcklqdq+  | MnemonicPunpcklwd+  | MnemonicPush+  | MnemonicPusha+  | MnemonicPushad+  | MnemonicPushf+  | MnemonicPushfd+  | MnemonicPushfq+  | MnemonicPxor+  | MnemonicRcl+  | MnemonicRcpps+  | MnemonicRcpss+  | MnemonicRcr+  | MnemonicRdfsbase+  | MnemonicRdgsbase+  | MnemonicRdmsr+  | MnemonicRdpid+  | MnemonicRdpkru+  | MnemonicRdpmc+  | MnemonicRdpru+  | MnemonicRdrand+  | MnemonicRdseed+  | MnemonicRdsspd+  | MnemonicRdsspq+  | MnemonicRdtsc+  | MnemonicRdtscp+  | MnemonicRet+  | MnemonicRol+  | MnemonicRor+  | MnemonicRorx+  | MnemonicRoundpd+  | MnemonicRoundps+  | MnemonicRoundsd+  | MnemonicRoundss+  | MnemonicRsm+  | MnemonicRsqrtps+  | MnemonicRsqrtss+  | MnemonicRstorssp+  | MnemonicSahf+  | MnemonicSalc+  | MnemonicSar+  | MnemonicSarx+  | MnemonicSaveprevssp+  | MnemonicSbb+  | MnemonicScasb+  | MnemonicScasd+  | MnemonicScasq+  | MnemonicScasw+  | MnemonicSetb+  | MnemonicSetbe+  | MnemonicSetl+  | MnemonicSetle+  | MnemonicSetnb+  | MnemonicSetnbe+  | MnemonicSetnl+  | MnemonicSetnle+  | MnemonicSetno+  | MnemonicSetnp+  | MnemonicSetns+  | MnemonicSetnz+  | MnemonicSeto+  | MnemonicSetp+  | MnemonicSets+  | MnemonicSetssbsy+  | MnemonicSetz+  | MnemonicSfence+  | MnemonicSgdt+  | MnemonicSha1Msg1+  | MnemonicSha1Msg2+  | MnemonicSha1Nexte+  | MnemonicSha1Rnds4+  | MnemonicSha256Msg1+  | MnemonicSha256Msg2+  | MnemonicSha256Rnds2+  | MnemonicShl+  | MnemonicShld+  | MnemonicShlx+  | MnemonicShr+  | MnemonicShrd+  | MnemonicShrx+  | MnemonicShufpd+  | MnemonicShufps+  | MnemonicSidt+  | MnemonicSkinit+  | MnemonicSldt+  | MnemonicSlwpcb+  | MnemonicSmsw+  | MnemonicSpflt+  | MnemonicSqrtpd+  | MnemonicSqrtps+  | MnemonicSqrtsd+  | MnemonicSqrtss+  | MnemonicStac+  | MnemonicStc+  | MnemonicStd+  | MnemonicStgi+  | MnemonicSti+  | MnemonicStmxcsr+  | MnemonicStosb+  | MnemonicStosd+  | MnemonicStosq+  | MnemonicStosw+  | MnemonicStr+  | MnemonicSub+  | MnemonicSubpd+  | MnemonicSubps+  | MnemonicSubsd+  | MnemonicSubss+  | MnemonicSwapgs+  | MnemonicSyscall+  | MnemonicSysenter+  | MnemonicSysexit+  | MnemonicSysret+  | MnemonicT1Mskc+  | MnemonicTest+  | MnemonicTpause+  | MnemonicTzcnt+  | MnemonicTzcnti+  | MnemonicTzmsk+  | MnemonicUcomisd+  | MnemonicUcomiss+  | MnemonicUd0+  | MnemonicUd1+  | MnemonicUd2+  | MnemonicUmonitor+  | MnemonicUmwait+  | MnemonicUnpckhpd+  | MnemonicUnpckhps+  | MnemonicUnpcklpd+  | MnemonicUnpcklps+  | MnemonicV4Fmaddps+  | MnemonicV4Fmaddss+  | MnemonicV4Fnmaddps+  | MnemonicV4Fnmaddss+  | MnemonicVaddnpd+  | MnemonicVaddnps+  | MnemonicVaddpd+  | MnemonicVaddps+  | MnemonicVaddsd+  | MnemonicVaddsetsps+  | MnemonicVaddss+  | MnemonicVaddsubpd+  | MnemonicVaddsubps+  | MnemonicVaesdec+  | MnemonicVaesdeclast+  | MnemonicVaesenc+  | MnemonicVaesenclast+  | MnemonicVaesimc+  | MnemonicVaeskeygenassist+  | MnemonicValignd+  | MnemonicValignq+  | MnemonicVandnpd+  | MnemonicVandnps+  | MnemonicVandpd+  | MnemonicVandps+  | MnemonicVblendmpd+  | MnemonicVblendmps+  | MnemonicVblendpd+  | MnemonicVblendps+  | MnemonicVblendvpd+  | MnemonicVblendvps+  | MnemonicVbroadcastf128+  | MnemonicVbroadcastf32X2+  | MnemonicVbroadcastf32X4+  | MnemonicVbroadcastf32X8+  | MnemonicVbroadcastf64X2+  | MnemonicVbroadcastf64X4+  | MnemonicVbroadcasti128+  | MnemonicVbroadcasti32X2+  | MnemonicVbroadcasti32X4+  | MnemonicVbroadcasti32X8+  | MnemonicVbroadcasti64X2+  | MnemonicVbroadcasti64X4+  | MnemonicVbroadcastsd+  | MnemonicVbroadcastss+  | MnemonicVcmppd+  | MnemonicVcmpps+  | MnemonicVcmpsd+  | MnemonicVcmpss+  | MnemonicVcomisd+  | MnemonicVcomiss+  | MnemonicVcompresspd+  | MnemonicVcompressps+  | MnemonicVcvtdq2Pd+  | MnemonicVcvtdq2Ps+  | MnemonicVcvtfxpntdq2Ps+  | MnemonicVcvtfxpntpd2Dq+  | MnemonicVcvtfxpntpd2Udq+  | MnemonicVcvtfxpntps2Dq+  | MnemonicVcvtfxpntps2Udq+  | MnemonicVcvtfxpntudq2Ps+  | MnemonicVcvtne2Ps2Bf16+  | MnemonicVcvtneps2Bf16+  | MnemonicVcvtpd2Dq+  | MnemonicVcvtpd2Ps+  | MnemonicVcvtpd2Qq+  | MnemonicVcvtpd2Udq+  | MnemonicVcvtpd2Uqq+  | MnemonicVcvtph2Ps+  | MnemonicVcvtps2Dq+  | MnemonicVcvtps2Pd+  | MnemonicVcvtps2Ph+  | MnemonicVcvtps2Qq+  | MnemonicVcvtps2Udq+  | MnemonicVcvtps2Uqq+  | MnemonicVcvtqq2Pd+  | MnemonicVcvtqq2Ps+  | MnemonicVcvtsd2Si+  | MnemonicVcvtsd2Ss+  | MnemonicVcvtsd2Usi+  | MnemonicVcvtsi2Sd+  | MnemonicVcvtsi2Ss+  | MnemonicVcvtss2Sd+  | MnemonicVcvtss2Si+  | MnemonicVcvtss2Usi+  | MnemonicVcvttpd2Dq+  | MnemonicVcvttpd2Qq+  | MnemonicVcvttpd2Udq+  | MnemonicVcvttpd2Uqq+  | MnemonicVcvttps2Dq+  | MnemonicVcvttps2Qq+  | MnemonicVcvttps2Udq+  | MnemonicVcvttps2Uqq+  | MnemonicVcvttsd2Si+  | MnemonicVcvttsd2Usi+  | MnemonicVcvttss2Si+  | MnemonicVcvttss2Usi+  | MnemonicVcvtudq2Pd+  | MnemonicVcvtudq2Ps+  | MnemonicVcvtuqq2Pd+  | MnemonicVcvtuqq2Ps+  | MnemonicVcvtusi2Sd+  | MnemonicVcvtusi2Ss+  | MnemonicVdbpsadbw+  | MnemonicVdivpd+  | MnemonicVdivps+  | MnemonicVdivsd+  | MnemonicVdivss+  | MnemonicVdpbf16Ps+  | MnemonicVdppd+  | MnemonicVdpps+  | MnemonicVerr+  | MnemonicVerw+  | MnemonicVexp223Ps+  | MnemonicVexp2Pd+  | MnemonicVexp2Ps+  | MnemonicVexpandpd+  | MnemonicVexpandps+  | MnemonicVextractf128+  | MnemonicVextractf32X4+  | MnemonicVextractf32X8+  | MnemonicVextractf64X2+  | MnemonicVextractf64X4+  | MnemonicVextracti128+  | MnemonicVextracti32X4+  | MnemonicVextracti32X8+  | MnemonicVextracti64X2+  | MnemonicVextracti64X4+  | MnemonicVextractps+  | MnemonicVfixupimmpd+  | MnemonicVfixupimmps+  | MnemonicVfixupimmsd+  | MnemonicVfixupimmss+  | MnemonicVfixupnanpd+  | MnemonicVfixupnanps+  | MnemonicVfmadd132Pd+  | MnemonicVfmadd132Ps+  | MnemonicVfmadd132Sd+  | MnemonicVfmadd132Ss+  | MnemonicVfmadd213Pd+  | MnemonicVfmadd213Ps+  | MnemonicVfmadd213Sd+  | MnemonicVfmadd213Ss+  | MnemonicVfmadd231Pd+  | MnemonicVfmadd231Ps+  | MnemonicVfmadd231Sd+  | MnemonicVfmadd231Ss+  | MnemonicVfmadd233Ps+  | MnemonicVfmaddpd+  | MnemonicVfmaddps+  | MnemonicVfmaddsd+  | MnemonicVfmaddss+  | MnemonicVfmaddsub132Pd+  | MnemonicVfmaddsub132Ps+  | MnemonicVfmaddsub213Pd+  | MnemonicVfmaddsub213Ps+  | MnemonicVfmaddsub231Pd+  | MnemonicVfmaddsub231Ps+  | MnemonicVfmaddsubpd+  | MnemonicVfmaddsubps+  | MnemonicVfmsub132Pd+  | MnemonicVfmsub132Ps+  | MnemonicVfmsub132Sd+  | MnemonicVfmsub132Ss+  | MnemonicVfmsub213Pd+  | MnemonicVfmsub213Ps+  | MnemonicVfmsub213Sd+  | MnemonicVfmsub213Ss+  | MnemonicVfmsub231Pd+  | MnemonicVfmsub231Ps+  | MnemonicVfmsub231Sd+  | MnemonicVfmsub231Ss+  | MnemonicVfmsubadd132Pd+  | MnemonicVfmsubadd132Ps+  | MnemonicVfmsubadd213Pd+  | MnemonicVfmsubadd213Ps+  | MnemonicVfmsubadd231Pd+  | MnemonicVfmsubadd231Ps+  | MnemonicVfmsubaddpd+  | MnemonicVfmsubaddps+  | MnemonicVfmsubpd+  | MnemonicVfmsubps+  | MnemonicVfmsubsd+  | MnemonicVfmsubss+  | MnemonicVfnmadd132Pd+  | MnemonicVfnmadd132Ps+  | MnemonicVfnmadd132Sd+  | MnemonicVfnmadd132Ss+  | MnemonicVfnmadd213Pd+  | MnemonicVfnmadd213Ps+  | MnemonicVfnmadd213Sd+  | MnemonicVfnmadd213Ss+  | MnemonicVfnmadd231Pd+  | MnemonicVfnmadd231Ps+  | MnemonicVfnmadd231Sd+  | MnemonicVfnmadd231Ss+  | MnemonicVfnmaddpd+  | MnemonicVfnmaddps+  | MnemonicVfnmaddsd+  | MnemonicVfnmaddss+  | MnemonicVfnmsub132Pd+  | MnemonicVfnmsub132Ps+  | MnemonicVfnmsub132Sd+  | MnemonicVfnmsub132Ss+  | MnemonicVfnmsub213Pd+  | MnemonicVfnmsub213Ps+  | MnemonicVfnmsub213Sd+  | MnemonicVfnmsub213Ss+  | MnemonicVfnmsub231Pd+  | MnemonicVfnmsub231Ps+  | MnemonicVfnmsub231Sd+  | MnemonicVfnmsub231Ss+  | MnemonicVfnmsubpd+  | MnemonicVfnmsubps+  | MnemonicVfnmsubsd+  | MnemonicVfnmsubss+  | MnemonicVfpclasspd+  | MnemonicVfpclassps+  | MnemonicVfpclasssd+  | MnemonicVfpclassss+  | MnemonicVfrczpd+  | MnemonicVfrczps+  | MnemonicVfrczsd+  | MnemonicVfrczss+  | MnemonicVgatherdpd+  | MnemonicVgatherdps+  | MnemonicVgatherpf0Dpd+  | MnemonicVgatherpf0Dps+  | MnemonicVgatherpf0Hintdpd+  | MnemonicVgatherpf0Hintdps+  | MnemonicVgatherpf0Qpd+  | MnemonicVgatherpf0Qps+  | MnemonicVgatherpf1Dpd+  | MnemonicVgatherpf1Dps+  | MnemonicVgatherpf1Qpd+  | MnemonicVgatherpf1Qps+  | MnemonicVgatherqpd+  | MnemonicVgatherqps+  | MnemonicVgetexppd+  | MnemonicVgetexpps+  | MnemonicVgetexpsd+  | MnemonicVgetexpss+  | MnemonicVgetmantpd+  | MnemonicVgetmantps+  | MnemonicVgetmantsd+  | MnemonicVgetmantss+  | MnemonicVgf2P8Affineinvqb+  | MnemonicVgf2P8Affineqb+  | MnemonicVgf2P8Mulb+  | MnemonicVgmaxabsps+  | MnemonicVgmaxpd+  | MnemonicVgmaxps+  | MnemonicVgminpd+  | MnemonicVgminps+  | MnemonicVhaddpd+  | MnemonicVhaddps+  | MnemonicVhsubpd+  | MnemonicVhsubps+  | MnemonicVinsertf128+  | MnemonicVinsertf32X4+  | MnemonicVinsertf32X8+  | MnemonicVinsertf64X2+  | MnemonicVinsertf64X4+  | MnemonicVinserti128+  | MnemonicVinserti32X4+  | MnemonicVinserti32X8+  | MnemonicVinserti64X2+  | MnemonicVinserti64X4+  | MnemonicVinsertps+  | MnemonicVlddqu+  | MnemonicVldmxcsr+  | MnemonicVloadunpackhd+  | MnemonicVloadunpackhpd+  | MnemonicVloadunpackhps+  | MnemonicVloadunpackhq+  | MnemonicVloadunpackld+  | MnemonicVloadunpacklpd+  | MnemonicVloadunpacklps+  | MnemonicVloadunpacklq+  | MnemonicVlog2Ps+  | MnemonicVmaskmovdqu+  | MnemonicVmaskmovpd+  | MnemonicVmaskmovps+  | MnemonicVmaxpd+  | MnemonicVmaxps+  | MnemonicVmaxsd+  | MnemonicVmaxss+  | MnemonicVmcall+  | MnemonicVmclear+  | MnemonicVmfunc+  | MnemonicVminpd+  | MnemonicVminps+  | MnemonicVminsd+  | MnemonicVminss+  | MnemonicVmlaunch+  | MnemonicVmload+  | MnemonicVmmcall+  | MnemonicVmovapd+  | MnemonicVmovaps+  | MnemonicVmovd+  | MnemonicVmovddup+  | MnemonicVmovdqa+  | MnemonicVmovdqa32+  | MnemonicVmovdqa64+  | MnemonicVmovdqu+  | MnemonicVmovdqu16+  | MnemonicVmovdqu32+  | MnemonicVmovdqu64+  | MnemonicVmovdqu8+  | MnemonicVmovhlps+  | MnemonicVmovhpd+  | MnemonicVmovhps+  | MnemonicVmovlhps+  | MnemonicVmovlpd+  | MnemonicVmovlps+  | MnemonicVmovmskpd+  | MnemonicVmovmskps+  | MnemonicVmovnrapd+  | MnemonicVmovnraps+  | MnemonicVmovnrngoapd+  | MnemonicVmovnrngoaps+  | MnemonicVmovntdq+  | MnemonicVmovntdqa+  | MnemonicVmovntpd+  | MnemonicVmovntps+  | MnemonicVmovq+  | MnemonicVmovsd+  | MnemonicVmovshdup+  | MnemonicVmovsldup+  | MnemonicVmovss+  | MnemonicVmovupd+  | MnemonicVmovups+  | MnemonicVmpsadbw+  | MnemonicVmptrld+  | MnemonicVmptrst+  | MnemonicVmread+  | MnemonicVmresume+  | MnemonicVmrun+  | MnemonicVmsave+  | MnemonicVmulpd+  | MnemonicVmulps+  | MnemonicVmulsd+  | MnemonicVmulss+  | MnemonicVmwrite+  | MnemonicVmxoff+  | MnemonicVmxon+  | MnemonicVorpd+  | MnemonicVorps+  | MnemonicVp2Intersectd+  | MnemonicVp2Intersectq+  | MnemonicVp4Dpwssd+  | MnemonicVp4Dpwssds+  | MnemonicVpabsb+  | MnemonicVpabsd+  | MnemonicVpabsq+  | MnemonicVpabsw+  | MnemonicVpackssdw+  | MnemonicVpacksswb+  | MnemonicVpackstorehd+  | MnemonicVpackstorehpd+  | MnemonicVpackstorehps+  | MnemonicVpackstorehq+  | MnemonicVpackstoreld+  | MnemonicVpackstorelpd+  | MnemonicVpackstorelps+  | MnemonicVpackstorelq+  | MnemonicVpackusdw+  | MnemonicVpackuswb+  | MnemonicVpadcd+  | MnemonicVpaddb+  | MnemonicVpaddd+  | MnemonicVpaddq+  | MnemonicVpaddsb+  | MnemonicVpaddsetcd+  | MnemonicVpaddsetsd+  | MnemonicVpaddsw+  | MnemonicVpaddusb+  | MnemonicVpaddusw+  | MnemonicVpaddw+  | MnemonicVpalignr+  | MnemonicVpand+  | MnemonicVpandd+  | MnemonicVpandn+  | MnemonicVpandnd+  | MnemonicVpandnq+  | MnemonicVpandq+  | MnemonicVpavgb+  | MnemonicVpavgw+  | MnemonicVpblendd+  | MnemonicVpblendmb+  | MnemonicVpblendmd+  | MnemonicVpblendmq+  | MnemonicVpblendmw+  | MnemonicVpblendvb+  | MnemonicVpblendw+  | MnemonicVpbroadcastb+  | MnemonicVpbroadcastd+  | MnemonicVpbroadcastmb2Q+  | MnemonicVpbroadcastmw2D+  | MnemonicVpbroadcastq+  | MnemonicVpbroadcastw+  | MnemonicVpclmulqdq+  | MnemonicVpcmov+  | MnemonicVpcmpb+  | MnemonicVpcmpd+  | MnemonicVpcmpeqb+  | MnemonicVpcmpeqd+  | MnemonicVpcmpeqq+  | MnemonicVpcmpeqw+  | MnemonicVpcmpestri+  | MnemonicVpcmpestrm+  | MnemonicVpcmpgtb+  | MnemonicVpcmpgtd+  | MnemonicVpcmpgtq+  | MnemonicVpcmpgtw+  | MnemonicVpcmpistri+  | MnemonicVpcmpistrm+  | MnemonicVpcmpltd+  | MnemonicVpcmpq+  | MnemonicVpcmpub+  | MnemonicVpcmpud+  | MnemonicVpcmpuq+  | MnemonicVpcmpuw+  | MnemonicVpcmpw+  | MnemonicVpcomb+  | MnemonicVpcomd+  | MnemonicVpcompressb+  | MnemonicVpcompressd+  | MnemonicVpcompressq+  | MnemonicVpcompressw+  | MnemonicVpcomq+  | MnemonicVpcomub+  | MnemonicVpcomud+  | MnemonicVpcomuq+  | MnemonicVpcomuw+  | MnemonicVpcomw+  | MnemonicVpconflictd+  | MnemonicVpconflictq+  | MnemonicVpdpbusd+  | MnemonicVpdpbusds+  | MnemonicVpdpwssd+  | MnemonicVpdpwssds+  | MnemonicVperm2F128+  | MnemonicVperm2I128+  | MnemonicVpermb+  | MnemonicVpermd+  | MnemonicVpermf32X4+  | MnemonicVpermi2B+  | MnemonicVpermi2D+  | MnemonicVpermi2Pd+  | MnemonicVpermi2Ps+  | MnemonicVpermi2Q+  | MnemonicVpermi2W+  | MnemonicVpermil2Pd+  | MnemonicVpermil2Ps+  | MnemonicVpermilpd+  | MnemonicVpermilps+  | MnemonicVpermpd+  | MnemonicVpermps+  | MnemonicVpermq+  | MnemonicVpermt2B+  | MnemonicVpermt2D+  | MnemonicVpermt2Pd+  | MnemonicVpermt2Ps+  | MnemonicVpermt2Q+  | MnemonicVpermt2W+  | MnemonicVpermw+  | MnemonicVpexpandb+  | MnemonicVpexpandd+  | MnemonicVpexpandq+  | MnemonicVpexpandw+  | MnemonicVpextrb+  | MnemonicVpextrd+  | MnemonicVpextrq+  | MnemonicVpextrw+  | MnemonicVpgatherdd+  | MnemonicVpgatherdq+  | MnemonicVpgatherqd+  | MnemonicVpgatherqq+  | MnemonicVphaddbd+  | MnemonicVphaddbq+  | MnemonicVphaddbw+  | MnemonicVphaddd+  | MnemonicVphadddq+  | MnemonicVphaddsw+  | MnemonicVphaddubd+  | MnemonicVphaddubq+  | MnemonicVphaddubw+  | MnemonicVphaddudq+  | MnemonicVphadduwd+  | MnemonicVphadduwq+  | MnemonicVphaddw+  | MnemonicVphaddwd+  | MnemonicVphaddwq+  | MnemonicVphminposuw+  | MnemonicVphsubbw+  | MnemonicVphsubd+  | MnemonicVphsubdq+  | MnemonicVphsubsw+  | MnemonicVphsubw+  | MnemonicVphsubwd+  | MnemonicVpinsrb+  | MnemonicVpinsrd+  | MnemonicVpinsrq+  | MnemonicVpinsrw+  | MnemonicVplzcntd+  | MnemonicVplzcntq+  | MnemonicVpmacsdd+  | MnemonicVpmacsdqh+  | MnemonicVpmacsdql+  | MnemonicVpmacssdd+  | MnemonicVpmacssdqh+  | MnemonicVpmacssdql+  | MnemonicVpmacsswd+  | MnemonicVpmacssww+  | MnemonicVpmacswd+  | MnemonicVpmacsww+  | MnemonicVpmadcsswd+  | MnemonicVpmadcswd+  | MnemonicVpmadd231D+  | MnemonicVpmadd233D+  | MnemonicVpmadd52Huq+  | MnemonicVpmadd52Luq+  | MnemonicVpmaddubsw+  | MnemonicVpmaddwd+  | MnemonicVpmaskmovd+  | MnemonicVpmaskmovq+  | MnemonicVpmaxsb+  | MnemonicVpmaxsd+  | MnemonicVpmaxsq+  | MnemonicVpmaxsw+  | MnemonicVpmaxub+  | MnemonicVpmaxud+  | MnemonicVpmaxuq+  | MnemonicVpmaxuw+  | MnemonicVpminsb+  | MnemonicVpminsd+  | MnemonicVpminsq+  | MnemonicVpminsw+  | MnemonicVpminub+  | MnemonicVpminud+  | MnemonicVpminuq+  | MnemonicVpminuw+  | MnemonicVpmovb2M+  | MnemonicVpmovd2M+  | MnemonicVpmovdb+  | MnemonicVpmovdw+  | MnemonicVpmovm2B+  | MnemonicVpmovm2D+  | MnemonicVpmovm2Q+  | MnemonicVpmovm2W+  | MnemonicVpmovmskb+  | MnemonicVpmovq2M+  | MnemonicVpmovqb+  | MnemonicVpmovqd+  | MnemonicVpmovqw+  | MnemonicVpmovsdb+  | MnemonicVpmovsdw+  | MnemonicVpmovsqb+  | MnemonicVpmovsqd+  | MnemonicVpmovsqw+  | MnemonicVpmovswb+  | MnemonicVpmovsxbd+  | MnemonicVpmovsxbq+  | MnemonicVpmovsxbw+  | MnemonicVpmovsxdq+  | MnemonicVpmovsxwd+  | MnemonicVpmovsxwq+  | MnemonicVpmovusdb+  | MnemonicVpmovusdw+  | MnemonicVpmovusqb+  | MnemonicVpmovusqd+  | MnemonicVpmovusqw+  | MnemonicVpmovuswb+  | MnemonicVpmovw2M+  | MnemonicVpmovwb+  | MnemonicVpmovzxbd+  | MnemonicVpmovzxbq+  | MnemonicVpmovzxbw+  | MnemonicVpmovzxdq+  | MnemonicVpmovzxwd+  | MnemonicVpmovzxwq+  | MnemonicVpmuldq+  | MnemonicVpmulhd+  | MnemonicVpmulhrsw+  | MnemonicVpmulhud+  | MnemonicVpmulhuw+  | MnemonicVpmulhw+  | MnemonicVpmulld+  | MnemonicVpmullq+  | MnemonicVpmullw+  | MnemonicVpmultishiftqb+  | MnemonicVpmuludq+  | MnemonicVpopcntb+  | MnemonicVpopcntd+  | MnemonicVpopcntq+  | MnemonicVpopcntw+  | MnemonicVpor+  | MnemonicVpord+  | MnemonicVporq+  | MnemonicVpperm+  | MnemonicVprefetch0+  | MnemonicVprefetch1+  | MnemonicVprefetch2+  | MnemonicVprefetche0+  | MnemonicVprefetche1+  | MnemonicVprefetche2+  | MnemonicVprefetchenta+  | MnemonicVprefetchnta+  | MnemonicVprold+  | MnemonicVprolq+  | MnemonicVprolvd+  | MnemonicVprolvq+  | MnemonicVprord+  | MnemonicVprorq+  | MnemonicVprorvd+  | MnemonicVprorvq+  | MnemonicVprotb+  | MnemonicVprotd+  | MnemonicVprotq+  | MnemonicVprotw+  | MnemonicVpsadbw+  | MnemonicVpsbbd+  | MnemonicVpsbbrd+  | MnemonicVpscatterdd+  | MnemonicVpscatterdq+  | MnemonicVpscatterqd+  | MnemonicVpscatterqq+  | MnemonicVpshab+  | MnemonicVpshad+  | MnemonicVpshaq+  | MnemonicVpshaw+  | MnemonicVpshlb+  | MnemonicVpshld+  | MnemonicVpshldd+  | MnemonicVpshldq+  | MnemonicVpshldvd+  | MnemonicVpshldvq+  | MnemonicVpshldvw+  | MnemonicVpshldw+  | MnemonicVpshlq+  | MnemonicVpshlw+  | MnemonicVpshrdd+  | MnemonicVpshrdq+  | MnemonicVpshrdvd+  | MnemonicVpshrdvq+  | MnemonicVpshrdvw+  | MnemonicVpshrdw+  | MnemonicVpshufb+  | MnemonicVpshufbitqmb+  | MnemonicVpshufd+  | MnemonicVpshufhw+  | MnemonicVpshuflw+  | MnemonicVpsignb+  | MnemonicVpsignd+  | MnemonicVpsignw+  | MnemonicVpslld+  | MnemonicVpslldq+  | MnemonicVpsllq+  | MnemonicVpsllvd+  | MnemonicVpsllvq+  | MnemonicVpsllvw+  | MnemonicVpsllw+  | MnemonicVpsrad+  | MnemonicVpsraq+  | MnemonicVpsravd+  | MnemonicVpsravq+  | MnemonicVpsravw+  | MnemonicVpsraw+  | MnemonicVpsrld+  | MnemonicVpsrldq+  | MnemonicVpsrlq+  | MnemonicVpsrlvd+  | MnemonicVpsrlvq+  | MnemonicVpsrlvw+  | MnemonicVpsrlw+  | MnemonicVpsubb+  | MnemonicVpsubd+  | MnemonicVpsubq+  | MnemonicVpsubrd+  | MnemonicVpsubrsetbd+  | MnemonicVpsubsb+  | MnemonicVpsubsetbd+  | MnemonicVpsubsw+  | MnemonicVpsubusb+  | MnemonicVpsubusw+  | MnemonicVpsubw+  | MnemonicVpternlogd+  | MnemonicVpternlogq+  | MnemonicVptest+  | MnemonicVptestmb+  | MnemonicVptestmd+  | MnemonicVptestmq+  | MnemonicVptestmw+  | MnemonicVptestnmb+  | MnemonicVptestnmd+  | MnemonicVptestnmq+  | MnemonicVptestnmw+  | MnemonicVpunpckhbw+  | MnemonicVpunpckhdq+  | MnemonicVpunpckhqdq+  | MnemonicVpunpckhwd+  | MnemonicVpunpcklbw+  | MnemonicVpunpckldq+  | MnemonicVpunpcklqdq+  | MnemonicVpunpcklwd+  | MnemonicVpxor+  | MnemonicVpxord+  | MnemonicVpxorq+  | MnemonicVrangepd+  | MnemonicVrangeps+  | MnemonicVrangesd+  | MnemonicVrangess+  | MnemonicVrcp14Pd+  | MnemonicVrcp14Ps+  | MnemonicVrcp14Sd+  | MnemonicVrcp14Ss+  | MnemonicVrcp23Ps+  | MnemonicVrcp28Pd+  | MnemonicVrcp28Ps+  | MnemonicVrcp28Sd+  | MnemonicVrcp28Ss+  | MnemonicVrcpps+  | MnemonicVrcpss+  | MnemonicVreducepd+  | MnemonicVreduceps+  | MnemonicVreducesd+  | MnemonicVreducess+  | MnemonicVrndfxpntpd+  | MnemonicVrndfxpntps+  | MnemonicVrndscalepd+  | MnemonicVrndscaleps+  | MnemonicVrndscalesd+  | MnemonicVrndscaless+  | MnemonicVroundpd+  | MnemonicVroundps+  | MnemonicVroundsd+  | MnemonicVroundss+  | MnemonicVrsqrt14Pd+  | MnemonicVrsqrt14Ps+  | MnemonicVrsqrt14Sd+  | MnemonicVrsqrt14Ss+  | MnemonicVrsqrt23Ps+  | MnemonicVrsqrt28Pd+  | MnemonicVrsqrt28Ps+  | MnemonicVrsqrt28Sd+  | MnemonicVrsqrt28Ss+  | MnemonicVrsqrtps+  | MnemonicVrsqrtss+  | MnemonicVscalefpd+  | MnemonicVscalefps+  | MnemonicVscalefsd+  | MnemonicVscalefss+  | MnemonicVscaleps+  | MnemonicVscatterdpd+  | MnemonicVscatterdps+  | MnemonicVscatterpf0Dpd+  | MnemonicVscatterpf0Dps+  | MnemonicVscatterpf0Hintdpd+  | MnemonicVscatterpf0Hintdps+  | MnemonicVscatterpf0Qpd+  | MnemonicVscatterpf0Qps+  | MnemonicVscatterpf1Dpd+  | MnemonicVscatterpf1Dps+  | MnemonicVscatterpf1Qpd+  | MnemonicVscatterpf1Qps+  | MnemonicVscatterqpd+  | MnemonicVscatterqps+  | MnemonicVshuff32X4+  | MnemonicVshuff64X2+  | MnemonicVshufi32X4+  | MnemonicVshufi64X2+  | MnemonicVshufpd+  | MnemonicVshufps+  | MnemonicVsqrtpd+  | MnemonicVsqrtps+  | MnemonicVsqrtsd+  | MnemonicVsqrtss+  | MnemonicVstmxcsr+  | MnemonicVsubpd+  | MnemonicVsubps+  | MnemonicVsubrpd+  | MnemonicVsubrps+  | MnemonicVsubsd+  | MnemonicVsubss+  | MnemonicVtestpd+  | MnemonicVtestps+  | MnemonicVucomisd+  | MnemonicVucomiss+  | MnemonicVunpckhpd+  | MnemonicVunpckhps+  | MnemonicVunpcklpd+  | MnemonicVunpcklps+  | MnemonicVxorpd+  | MnemonicVxorps+  | MnemonicVzeroall+  | MnemonicVzeroupper+  | MnemonicWbinvd+  | MnemonicWrfsbase+  | MnemonicWrgsbase+  | MnemonicWrmsr+  | MnemonicWrpkru+  | MnemonicWrssd+  | MnemonicWrssq+  | MnemonicWrussd+  | MnemonicWrussq+  | MnemonicXabort+  | MnemonicXadd+  | MnemonicXbegin+  | MnemonicXchg+  | MnemonicXcryptCbc+  | MnemonicXcryptCfb+  | MnemonicXcryptCtr+  | MnemonicXcryptEcb+  | MnemonicXcryptOfb+  | MnemonicXend+  | MnemonicXgetbv+  | MnemonicXlat+  | MnemonicXor+  | MnemonicXorpd+  | MnemonicXorps+  | MnemonicXrstor+  | MnemonicXrstor64+  | MnemonicXrstors+  | MnemonicXrstors64+  | MnemonicXsave+  | MnemonicXsave64+  | MnemonicXsavec+  | MnemonicXsavec64+  | MnemonicXsaveopt+  | MnemonicXsaveopt64+  | MnemonicXsaves+  | MnemonicXsaves64+  | MnemonicXsetbv+  | MnemonicXsha1+  | MnemonicXsha256+  | MnemonicXstore+  | MnemonicXtest+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt Mnemonic
+ src/Zydis/OpcodeMap.hs view
@@ -0,0 +1,39 @@+-- OpcodeMap.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.OpcodeMap+  ( OpcodeMap(..)+  )+where++import           Zydis.Util++data OpcodeMap+  = OpcodeMapDefault+  | OpcodeMap0F+  | OpcodeMap0F38+  | OpcodeMap0F3A+  | OpcodeMap0F0F+  | OpcodeMapXop8+  | OpcodeMapXop9+  | OpcodeMapXopa+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt OpcodeMap
+ src/Zydis/Operand.hs view
@@ -0,0 +1,171 @@+-- Operand.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingStrategies #-}++module Zydis.Operand+  ( Operand(..)+  )+where++import           Data.Int+import           Data.Word+import           Foreign.Storable+import qualified Foreign.Storable.Record       as Store++import           Zydis.ElementType+import           Zydis.OperandEncoding+import           Zydis.OperandMemoryType+import           Zydis.OperandType+import           Zydis.OperandVisibility+import           Zydis.Register+++data OperandImmediate =+  OperandImmediate+  { operandImmediateIsSigned   :: !Word8+  , operandImmediateIsRelative :: !Word8+  , operandImmediateValue      :: {-# UNPACK #-}!Word64+  }+  deriving stock (Show, Eq)++decoderOperandImmediateStore :: Store.Dictionary OperandImmediate+decoderOperandImmediateStore =+  Store.run+    $   OperandImmediate+    <$> Store.element operandImmediateIsSigned+    <*> Store.element operandImmediateIsRelative+    <*> Store.element operandImmediateValue++instance Storable OperandImmediate where+  alignment = Store.alignment decoderOperandImmediateStore+  sizeOf    = Store.sizeOf decoderOperandImmediateStore+  peek      = Store.peek decoderOperandImmediateStore+  poke      = Store.poke decoderOperandImmediateStore++data OperandPointer =+  OperandPointer+  { operandPointerSegment :: {-# UNPACK #-}!Word16+  , operandPointerOffset  :: {-# UNPACK #-}!Word32+  }+  deriving stock (Show, Eq)++decoderOperandPointerStore :: Store.Dictionary OperandPointer+decoderOperandPointerStore =+  Store.run+    $   OperandPointer+    <$> Store.element operandPointerSegment+    <*> Store.element operandPointerOffset++instance Storable OperandPointer where+  alignment = Store.alignment decoderOperandPointerStore+  sizeOf    = Store.sizeOf decoderOperandPointerStore+  peek      = Store.peek decoderOperandPointerStore+  poke      = Store.poke decoderOperandPointerStore++data OperandMemoryDisplacement =+  OperandMemoryDisplacement+    { operandMemoryDisplacementHasDisplacement :: !Word8+    , operandMemoryDisplacementValue           :: {-# UNPACK #-}!Int64+    }+  deriving stock (Show, Eq)++decoderOperandMemoryDisplacementStore+  :: Store.Dictionary OperandMemoryDisplacement+decoderOperandMemoryDisplacementStore =+  Store.run+    $   OperandMemoryDisplacement+    <$> Store.element operandMemoryDisplacementHasDisplacement+    <*> Store.element operandMemoryDisplacementValue++instance Storable OperandMemoryDisplacement where+  alignment = Store.alignment decoderOperandMemoryDisplacementStore+  sizeOf    = Store.sizeOf decoderOperandMemoryDisplacementStore+  peek      = Store.peek decoderOperandMemoryDisplacementStore+  poke      = Store.poke decoderOperandMemoryDisplacementStore++data OperandMemory =+  OperandMemory+    { operandMemoryType         :: !OperandMemoryType+    , operandMemorySegment      :: !Register+    , operandMemoryBase         :: !Register+    , operandMemoryIndex        :: !Register+    , operandMemoryScale        :: {-# UNPACK #-}!Word8+    , operandMemoryDisplacement :: !OperandMemoryDisplacement+    }+  deriving stock (Show, Eq)++decoderOperandMemoryStore :: Store.Dictionary OperandMemory+decoderOperandMemoryStore =+  Store.run+    $   OperandMemory+    <$> Store.element operandMemoryType+    <*> Store.element operandMemorySegment+    <*> Store.element operandMemoryBase+    <*> Store.element operandMemoryIndex+    <*> Store.element operandMemoryScale+    <*> Store.element operandMemoryDisplacement++instance Storable OperandMemory where+  alignment = Store.alignment decoderOperandMemoryStore+  sizeOf    = Store.sizeOf decoderOperandMemoryStore+  peek      = Store.peek decoderOperandMemoryStore+  poke      = Store.poke decoderOperandMemoryStore++data Operand =+  Operand+    { operandId           :: {-# UNPACK #-}!Word8+    , operandType         :: !OperandType+    , operandVisibility   :: !OperandVisibility+    , operandActions      :: {-# UNPACK #-}!Word8+    , operandEncoding     :: !OperandEncoding+    , operandSize         :: {-# UNPACK #-}!Word16+    , operandElementType  :: !ElementType+    , operandElementSize  :: {-# UNPACK #-}!Word16+    , operandElementCount :: {-# UNPACK #-}!Word16+    , operandRegister     :: !Register+    , operandMemory       :: !OperandMemory+    , operandPointer      :: !OperandPointer+    , operandImmediate    :: !OperandImmediate+    }+  deriving stock (Show, Eq)++decoderOperandStore :: Store.Dictionary Operand+decoderOperandStore =+  Store.run+    $   Operand+    <$> Store.element operandId+    <*> Store.element operandType+    <*> Store.element operandVisibility+    <*> Store.element operandActions+    <*> Store.element operandEncoding+    <*> Store.element operandSize+    <*> Store.element operandElementType+    <*> Store.element operandElementSize+    <*> Store.element operandElementCount+    <*> Store.element operandRegister+    <*> Store.element operandMemory+    <*> Store.element operandPointer+    <*> Store.element operandImmediate++instance Storable Operand where+  alignment = Store.alignment decoderOperandStore+  sizeOf    = Store.sizeOf decoderOperandStore+  peek      = Store.peek decoderOperandStore+  poke      = Store.poke decoderOperandStore
+ src/Zydis/OperandEncoding.hs view
@@ -0,0 +1,66 @@+-- OperandEncoding.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.OperandEncoding+  ( OperandEncoding(..)+  )+where++import           Zydis.Util++data OperandEncoding+  = OperandEncodingNone+  | OperandEncodingModrmReg+  | OperandEncodingModrmRm+  | OperandEncodingOpcode+  | OperandEncodingNdsndd+  | OperandEncodingIs4+  | OperandEncodingMask+  | OperandEncodingDisp8+  | OperandEncodingDisp16+  | OperandEncodingDisp32+  | OperandEncodingDisp64+  | OperandEncodingDisp163264+  | OperandEncodingDisp323264+  | OperandEncodingDisp163232+  | OperandEncodingUimm8+  | OperandEncodingUimm16+  | OperandEncodingUimm32+  | OperandEncodingUimm64+  | OperandEncodingUimm163264+  | OperandEncodingUimm323264+  | OperandEncodingUimm163232+  | OperandEncodingSimm8+  | OperandEncodingSimm16+  | OperandEncodingSimm32+  | OperandEncodingSimm64+  | OperandEncodingSimm163264+  | OperandEncodingSimm323264+  | OperandEncodingSimm163232+  | OperandEncodingJimm8+  | OperandEncodingJimm16+  | OperandEncodingJimm32+  | OperandEncodingJimm64+  | OperandEncodingJimm163264+  | OperandEncodingJimm323264+  | OperandEncodingJimm163232+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt OperandEncoding
+ src/Zydis/OperandMemoryType.hs view
@@ -0,0 +1,35 @@+-- OperandMemoryType.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.OperandMemoryType+  ( OperandMemoryType(..)+  )+where++import           Zydis.Util++data OperandMemoryType+  = OperandMemopTypeInvalid+  | OperandMemopTypeMem+  | OperandMemopTypeAgen+  | OperandMemopTypeMib+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt OperandMemoryType
+ src/Zydis/OperandType.hs view
@@ -0,0 +1,37 @@+-- OperandType.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.OperandType+  ( OperandType(..)+  )+where++import           Zydis.Util++data OperandType+  = OperandTypeUnused+  | OperandTypeRegister+  | OperandTypeMemory+  | OperandTypePointer+  | OperandTypeImmediate+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt OperandType+
+ src/Zydis/OperandVisibility.hs view
@@ -0,0 +1,35 @@+-- OperandVisibility.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.OperandVisibility+  ( OperandVisibility(..)+  )+where++import           Zydis.Util++data OperandVisibility+  = OperandVisibilityInvalid+  | OperandVisibilityExplicit+  | OperandVisibilityImplicit+  | OperandVisibilityHidden+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt OperandVisibility
+ src/Zydis/PrefixType.hs view
@@ -0,0 +1,34 @@+-- PrefixType.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.PrefixType+  ( PrefixType(..)+  )+where++import           Zydis.Util++data PrefixType+  = PrefixTypeIgnored+  | PrefixTypeEffective+  | PrefixTypeMandatory+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt PrefixType
+ src/Zydis/Register.hs view
@@ -0,0 +1,287 @@+-- Register.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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++{-# LANGUAGE DerivingVia #-}++module Zydis.Register+  ( Register(..)+  )+where++import           Zydis.Util++data Register+  = RegisterNone+  | RegisterAl+  | RegisterCl+  | RegisterDl+  | RegisterBl+  | RegisterAh+  | RegisterCh+  | RegisterDh+  | RegisterBh+  | RegisterSpl+  | RegisterBpl+  | RegisterSil+  | RegisterDil+  | RegisterR8B+  | RegisterR9B+  | RegisterR10B+  | RegisterR11B+  | RegisterR12B+  | RegisterR13B+  | RegisterR14B+  | RegisterR15B+  | RegisterAx+  | RegisterCx+  | RegisterDx+  | RegisterBx+  | RegisterSp+  | RegisterBp+  | RegisterSi+  | RegisterDi+  | RegisterR8W+  | RegisterR9W+  | RegisterR10W+  | RegisterR11W+  | RegisterR12W+  | RegisterR13W+  | RegisterR14W+  | RegisterR15W+  | RegisterEax+  | RegisterEcx+  | RegisterEdx+  | RegisterEbx+  | RegisterEsp+  | RegisterEbp+  | RegisterEsi+  | RegisterEdi+  | RegisterR8D+  | RegisterR9D+  | RegisterR10D+  | RegisterR11D+  | RegisterR12D+  | RegisterR13D+  | RegisterR14D+  | RegisterR15D+  | RegisterRax+  | RegisterRcx+  | RegisterRdx+  | RegisterRbx+  | RegisterRsp+  | RegisterRbp+  | RegisterRsi+  | RegisterRdi+  | RegisterR8+  | RegisterR9+  | RegisterR10+  | RegisterR11+  | RegisterR12+  | RegisterR13+  | RegisterR14+  | RegisterR15+  | RegisterSt0+  | RegisterSt1+  | RegisterSt2+  | RegisterSt3+  | RegisterSt4+  | RegisterSt5+  | RegisterSt6+  | RegisterSt7+  | RegisterX87Control+  | RegisterX87Status+  | RegisterX87Tag+  | RegisterMm0+  | RegisterMm1+  | RegisterMm2+  | RegisterMm3+  | RegisterMm4+  | RegisterMm5+  | RegisterMm6+  | RegisterMm7+  | RegisterXmm0+  | RegisterXmm1+  | RegisterXmm2+  | RegisterXmm3+  | RegisterXmm4+  | RegisterXmm5+  | RegisterXmm6+  | RegisterXmm7+  | RegisterXmm8+  | RegisterXmm9+  | RegisterXmm10+  | RegisterXmm11+  | RegisterXmm12+  | RegisterXmm13+  | RegisterXmm14+  | RegisterXmm15+  | RegisterXmm16+  | RegisterXmm17+  | RegisterXmm18+  | RegisterXmm19+  | RegisterXmm20+  | RegisterXmm21+  | RegisterXmm22+  | RegisterXmm23+  | RegisterXmm24+  | RegisterXmm25+  | RegisterXmm26+  | RegisterXmm27+  | RegisterXmm28+  | RegisterXmm29+  | RegisterXmm30+  | RegisterXmm31+  | RegisterYmm0+  | RegisterYmm1+  | RegisterYmm2+  | RegisterYmm3+  | RegisterYmm4+  | RegisterYmm5+  | RegisterYmm6+  | RegisterYmm7+  | RegisterYmm8+  | RegisterYmm9+  | RegisterYmm10+  | RegisterYmm11+  | RegisterYmm12+  | RegisterYmm13+  | RegisterYmm14+  | RegisterYmm15+  | RegisterYmm16+  | RegisterYmm17+  | RegisterYmm18+  | RegisterYmm19+  | RegisterYmm20+  | RegisterYmm21+  | RegisterYmm22+  | RegisterYmm23+  | RegisterYmm24+  | RegisterYmm25+  | RegisterYmm26+  | RegisterYmm27+  | RegisterYmm28+  | RegisterYmm29+  | RegisterYmm30+  | RegisterYmm31+  | RegisterZmm0+  | RegisterZmm1+  | RegisterZmm2+  | RegisterZmm3+  | RegisterZmm4+  | RegisterZmm5+  | RegisterZmm6+  | RegisterZmm7+  | RegisterZmm8+  | RegisterZmm9+  | RegisterZmm10+  | RegisterZmm11+  | RegisterZmm12+  | RegisterZmm13+  | RegisterZmm14+  | RegisterZmm15+  | RegisterZmm16+  | RegisterZmm17+  | RegisterZmm18+  | RegisterZmm19+  | RegisterZmm20+  | RegisterZmm21+  | RegisterZmm22+  | RegisterZmm23+  | RegisterZmm24+  | RegisterZmm25+  | RegisterZmm26+  | RegisterZmm27+  | RegisterZmm28+  | RegisterZmm29+  | RegisterZmm30+  | RegisterZmm31+  | RegisterFlags+  | RegisterEflags+  | RegisterRflags+  | RegisterIp+  | RegisterEip+  | RegisterRip+  | RegisterEs+  | RegisterCs+  | RegisterSs+  | RegisterDs+  | RegisterFs+  | RegisterGs+  | RegisterGdtr+  | RegisterLdtr+  | RegisterIdtr+  | RegisterTr+  | RegisterTr0+  | RegisterTr1+  | RegisterTr2+  | RegisterTr3+  | RegisterTr4+  | RegisterTr5+  | RegisterTr6+  | RegisterTr7+  | RegisterCr0+  | RegisterCr1+  | RegisterCr2+  | RegisterCr3+  | RegisterCr4+  | RegisterCr5+  | RegisterCr6+  | RegisterCr7+  | RegisterCr8+  | RegisterCr9+  | RegisterCr10+  | RegisterCr11+  | RegisterCr12+  | RegisterCr13+  | RegisterCr14+  | RegisterCr15+  | RegisterDr0+  | RegisterDr1+  | RegisterDr2+  | RegisterDr3+  | RegisterDr4+  | RegisterDr5+  | RegisterDr6+  | RegisterDr7+  | RegisterDr8+  | RegisterDr9+  | RegisterDr10+  | RegisterDr11+  | RegisterDr12+  | RegisterDr13+  | RegisterDr14+  | RegisterDr15+  | RegisterK0+  | RegisterK1+  | RegisterK2+  | RegisterK3+  | RegisterK4+  | RegisterK5+  | RegisterK6+  | RegisterK7+  | RegisterBnd0+  | RegisterBnd1+  | RegisterBnd2+  | RegisterBnd3+  | RegisterBndcfg+  | RegisterBndstatus+  | RegisterMxcsr+  | RegisterPkru+  | RegisterXcr0+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt Register
+ src/Zydis/RoundingMode.hs view
@@ -0,0 +1,37 @@+-- RoundingMode.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.RoundingMode+  ( RoundingMode(..)+  )+where++import           Zydis.Util++data RoundingMode+  = RoundingModeInvalid+  | RoundingModeRn+  | RoundingModeRd+  | RoundingModeRu+  | RoundingModeRz+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt RoundingMode+
+ src/Zydis/SwizzleMode.hs view
@@ -0,0 +1,40 @@+-- SwizzleMode.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingVia #-}++module Zydis.SwizzleMode+  ( SwizzleMode(..)+  )+where++import           Zydis.Util++data SwizzleMode+  = SwizzleModeInvalid+  | SwizzleModeDcba+  | SwizzleModeCdab+  | SwizzleModeBadc+  | SwizzleModeDacb+  | SwizzleModeAaaa+  | SwizzleModeBbbb+  | SwizzleModeCccc+  | SwizzleModeDddd+  deriving stock (Show, Eq, Bounded, Enum)+  deriving Storable via StorableExt SwizzleMode
+ src/Zydis/Types.hs view
@@ -0,0 +1,585 @@+-- Types.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded @gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DataKinds           #-}+{-# LANGUAGE DerivingVia         #-}+{-# LANGUAGE RankNTypes          #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE TypeOperators       #-}++module Zydis.Types+  ( MachineMode(..)+  , AddressWidth(..)+  , Decoder(..)+  , DecodedInstruction(..)+  , DecodedInstructionRawImmediate(..)+  , DecodedInstructionRawDisp(..)+  , DecodedInstructionRawSib(..)+  , DecodedInstructionModRm(..)+  , DecodedInstructionRawMvex(..)+  , DecodedInstructionRawEvex(..)+  , DecodedInstructionRawVex(..)+  , DecodedInstructionRawXop(..)+  , DecodedInstructionRawRex(..)+  , DecodedInstructionRawPrefix(..)+  , DecodedInstructionRaw(..)+  , DecodedInstructionMeta(..)+  , DecodedInstructionAvxBroadcast(..)+  , DecodedInstructionAvxMask(..)+  , DecodedInstructionAvx(..)+  , module Z+  )+where++import           Data.Int+import           Data.Word+import           Foreign.Storable+import qualified Foreign.Storable.Record       as Store+import           GHC.TypeLits++import           Zydis.AddressWidth            as Z+import           Zydis.BranchType              as Z+import           Zydis.BroadcastMode           as Z+import           Zydis.Constants               as Z+import           Zydis.ConversionMode          as Z+import           Zydis.CPUFlagAction           as Z+import           Zydis.ExceptionClass          as Z+import           Zydis.InstructionCategory     as Z+import           Zydis.InstructionEncoding     as Z+import           Zydis.ISAExt                  as Z+import           Zydis.ISASet                  as Z+import           Zydis.MachineMode             as Z+import           Zydis.MaskMode                as Z+import           Zydis.Mnemonic                as Z+import           Zydis.OpcodeMap               as Z+import           Zydis.Operand                 as Z+import           Zydis.PrefixType              as Z+import           Zydis.Register                as Z+import           Zydis.RoundingMode            as Z+import           Zydis.SwizzleMode             as Z+import           Zydis.Util++data DecodedInstructionRawImmediate =+  DecodedInstructionRawImmediate+  { decodedInstructionRawImmediateIsSigned   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawImmediateIsRelative :: {-# UNPACK #-}!Word8+  , decodedInstructionRawImmediateValue      :: {-# UNPACK #-}!Word64+  , decodedInstructionRawImmediateSize       :: {-# UNPACK #-}!Word8+  , decodedInstructionRawImmediateOffset     :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decoderInstructionRawImmediateStore+  :: Store.Dictionary DecodedInstructionRawImmediate+decoderInstructionRawImmediateStore =+  Store.run+    $   DecodedInstructionRawImmediate+    <$> Store.element decodedInstructionRawImmediateIsSigned+    <*> Store.element decodedInstructionRawImmediateIsRelative+    <*> Store.element decodedInstructionRawImmediateValue+    <*> Store.element decodedInstructionRawImmediateSize+    <*> Store.element decodedInstructionRawImmediateOffset++instance Storable DecodedInstructionRawImmediate where+  alignment = Store.alignment decoderInstructionRawImmediateStore+  sizeOf    = Store.sizeOf decoderInstructionRawImmediateStore+  peek      = Store.peek decoderInstructionRawImmediateStore+  poke      = Store.poke decoderInstructionRawImmediateStore++data DecodedInstructionRawDisp =+  DecodedInstructionRawDisp+  { decodedInstructionRawDispValue  :: {-# UNPACK #-}!Int64+  , decodedInstructionRawDispSize   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawDispOffset :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decoderInstructionRawDispStore :: Store.Dictionary DecodedInstructionRawDisp+decoderInstructionRawDispStore =+  Store.run+    $   DecodedInstructionRawDisp+    <$> Store.element decodedInstructionRawDispValue+    <*> Store.element decodedInstructionRawDispSize+    <*> Store.element decodedInstructionRawDispOffset++instance Storable DecodedInstructionRawDisp where+  alignment = Store.alignment decoderInstructionRawDispStore+  sizeOf    = Store.sizeOf decoderInstructionRawDispStore+  peek      = Store.peek decoderInstructionRawDispStore+  poke      = Store.poke decoderInstructionRawDispStore++data DecodedInstructionRawSib =+  DecodedInstructionRawSib+  { decodedInstructionRawSibScale  :: {-# UNPACK #-}!Word8+  , decodedInstructionRawSibIndex  :: {-# UNPACK #-}!Word8+  , decodedInstructionRawSibBase   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawSibOffset :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionRawSibStore :: Store.Dictionary DecodedInstructionRawSib+decodedInstructionRawSibStore =+  Store.run+    $   DecodedInstructionRawSib+    <$> Store.element decodedInstructionRawSibScale+    <*> Store.element decodedInstructionRawSibIndex+    <*> Store.element decodedInstructionRawSibBase+    <*> Store.element decodedInstructionRawSibOffset++instance Storable DecodedInstructionRawSib where+  alignment = Store.alignment decodedInstructionRawSibStore+  sizeOf    = Store.sizeOf decodedInstructionRawSibStore+  peek      = Store.peek decodedInstructionRawSibStore+  poke      = Store.poke decodedInstructionRawSibStore++data DecodedInstructionModRm =+  DecodedInstructionModRm+  { decodedInstructionModRmAddressingMode :: {-# UNPACK #-}!Word8+  , decodedInstructionModRmRegister       :: {-# UNPACK #-}!Word8+  , decodedInstructionModRmRM             :: {-# UNPACK #-}!Word8+  , decodedInstructionModRmOffset         :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionModRmStore :: Store.Dictionary DecodedInstructionModRm+decodedInstructionModRmStore =+  Store.run+    $   DecodedInstructionModRm+    <$> Store.element decodedInstructionModRmAddressingMode+    <*> Store.element decodedInstructionModRmRegister+    <*> Store.element decodedInstructionModRmRM+    <*> Store.element decodedInstructionModRmOffset++instance Storable DecodedInstructionModRm where+  alignment = Store.alignment decodedInstructionModRmStore+  sizeOf    = Store.sizeOf decodedInstructionModRmStore+  peek      = Store.peek decodedInstructionModRmStore+  poke      = Store.poke decodedInstructionModRmStore++data DecodedInstructionRawMvex =+  DecodedInstructionRawMvex+  { decodedInstructionRawMvexR      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexX      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexB      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexR2     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexMMMM   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexW      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexVVVV   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexPP     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexE      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexSSS    :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexV2     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexKKK    :: {-# UNPACK #-}!Word8+  , decodedInstructionRawMvexOffset :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionRawMvexStore :: Store.Dictionary DecodedInstructionRawMvex+decodedInstructionRawMvexStore =+  Store.run+    $   DecodedInstructionRawMvex+    <$> Store.element decodedInstructionRawMvexR+    <*> Store.element decodedInstructionRawMvexX+    <*> Store.element decodedInstructionRawMvexB+    <*> Store.element decodedInstructionRawMvexR2+    <*> Store.element decodedInstructionRawMvexMMMM+    <*> Store.element decodedInstructionRawMvexW+    <*> Store.element decodedInstructionRawMvexVVVV+    <*> Store.element decodedInstructionRawMvexPP+    <*> Store.element decodedInstructionRawMvexE+    <*> Store.element decodedInstructionRawMvexSSS+    <*> Store.element decodedInstructionRawMvexV2+    <*> Store.element decodedInstructionRawMvexKKK+    <*> Store.element decodedInstructionRawMvexOffset++instance Storable DecodedInstructionRawMvex where+  alignment = Store.alignment decodedInstructionRawMvexStore+  sizeOf    = Store.sizeOf decodedInstructionRawMvexStore+  peek      = Store.peek decodedInstructionRawMvexStore+  poke      = Store.poke decodedInstructionRawMvexStore++data DecodedInstructionRawEvex =+  DecodedInstructionRawEvex+  { decodedInstructionRawEvexR      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexX      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexB      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexR2     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexMM     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexW      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexVVVV   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexPP     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexZ      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexL2     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexL      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexB'     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexV2     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexAAA    :: {-# UNPACK #-}!Word8+  , decodedInstructionRawEvexOffset :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionRawEvexStore :: Store.Dictionary DecodedInstructionRawEvex+decodedInstructionRawEvexStore =+  Store.run+    $   DecodedInstructionRawEvex+    <$> Store.element decodedInstructionRawEvexR+    <*> Store.element decodedInstructionRawEvexX+    <*> Store.element decodedInstructionRawEvexB+    <*> Store.element decodedInstructionRawEvexR2+    <*> Store.element decodedInstructionRawEvexMM+    <*> Store.element decodedInstructionRawEvexW+    <*> Store.element decodedInstructionRawEvexVVVV+    <*> Store.element decodedInstructionRawEvexPP+    <*> Store.element decodedInstructionRawEvexZ+    <*> Store.element decodedInstructionRawEvexL2+    <*> Store.element decodedInstructionRawEvexL+    <*> Store.element decodedInstructionRawEvexB'+    <*> Store.element decodedInstructionRawEvexV2+    <*> Store.element decodedInstructionRawEvexAAA+    <*> Store.element decodedInstructionRawEvexOffset++instance Storable DecodedInstructionRawEvex where+  alignment = Store.alignment decodedInstructionRawEvexStore+  sizeOf    = Store.sizeOf decodedInstructionRawEvexStore+  peek      = Store.peek decodedInstructionRawEvexStore+  poke      = Store.poke decodedInstructionRawEvexStore++data DecodedInstructionRawVex =+  DecodedInstructionRawVex+  { decodedInstructionRawVexR      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexX      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexB      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexMMMMM  :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexW      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexVVVV   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexL      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexPP     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexOffset :: {-# UNPACK #-}!Word8+  , decodedInstructionRawVexSize   :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionRawVexStore :: Store.Dictionary DecodedInstructionRawVex+decodedInstructionRawVexStore =+  Store.run+    $   DecodedInstructionRawVex+    <$> Store.element decodedInstructionRawVexR+    <*> Store.element decodedInstructionRawVexX+    <*> Store.element decodedInstructionRawVexB+    <*> Store.element decodedInstructionRawVexMMMMM+    <*> Store.element decodedInstructionRawVexW+    <*> Store.element decodedInstructionRawVexVVVV+    <*> Store.element decodedInstructionRawVexL+    <*> Store.element decodedInstructionRawVexPP+    <*> Store.element decodedInstructionRawVexOffset+    <*> Store.element decodedInstructionRawVexSize++instance Storable DecodedInstructionRawVex where+  alignment = Store.alignment decodedInstructionRawVexStore+  sizeOf    = Store.sizeOf decodedInstructionRawVexStore+  peek      = Store.peek decodedInstructionRawVexStore+  poke      = Store.poke decodedInstructionRawVexStore++data DecodedInstructionRawXop =+  DecodedInstructionRawXop+  { decodedInstructionRawXopR      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopX      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopB      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopMMMMM  :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopW      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopVVVV   :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopL      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopPP     :: {-# UNPACK #-}!Word8+  , decodedInstructionRawXopOffset :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)+++decodedInstructionRawXopStore :: Store.Dictionary DecodedInstructionRawXop+decodedInstructionRawXopStore =+  Store.run+    $   DecodedInstructionRawXop+    <$> Store.element decodedInstructionRawXopR+    <*> Store.element decodedInstructionRawXopX+    <*> Store.element decodedInstructionRawXopB+    <*> Store.element decodedInstructionRawXopMMMMM+    <*> Store.element decodedInstructionRawXopW+    <*> Store.element decodedInstructionRawXopVVVV+    <*> Store.element decodedInstructionRawXopL+    <*> Store.element decodedInstructionRawXopPP+    <*> Store.element decodedInstructionRawXopOffset++instance Storable DecodedInstructionRawXop where+  alignment = Store.alignment decodedInstructionRawXopStore+  sizeOf    = Store.sizeOf decodedInstructionRawXopStore+  peek      = Store.peek decodedInstructionRawXopStore+  poke      = Store.poke decodedInstructionRawXopStore++data DecodedInstructionRawRex =+  DecodedInstructionRawRex+  { decodedInstructionRawRexW      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawRexR      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawRexX      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawRexB      :: {-# UNPACK #-}!Word8+  , decodedInstructionRawRexOffset :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionRawRexStore :: Store.Dictionary DecodedInstructionRawRex+decodedInstructionRawRexStore =+  Store.run+    $   DecodedInstructionRawRex+    <$> Store.element decodedInstructionRawRexW+    <*> Store.element decodedInstructionRawRexR+    <*> Store.element decodedInstructionRawRexX+    <*> Store.element decodedInstructionRawRexB+    <*> Store.element decodedInstructionRawRexOffset++instance Storable DecodedInstructionRawRex where+  alignment = Store.alignment decodedInstructionRawRexStore+  sizeOf    = Store.sizeOf decodedInstructionRawRexStore+  peek      = Store.peek decodedInstructionRawRexStore+  poke      = Store.poke decodedInstructionRawRexStore++data DecodedInstructionRawPrefix =+  DecodedInstructionRawPrefix+  { decodedInstructionRawPrefixType  :: !PrefixType+  , decodedInstructionRawPrefixValue :: {-# UNPACK #-}!Word8+  }+  deriving stock (Show, Eq)++decodedInstructionRawPrefixStore :: Store.Dictionary DecodedInstructionRawPrefix+decodedInstructionRawPrefixStore =+  Store.run+    $   DecodedInstructionRawPrefix+    <$> Store.element decodedInstructionRawPrefixType+    <*> Store.element decodedInstructionRawPrefixValue++instance Storable DecodedInstructionRawPrefix where+  alignment = Store.alignment decodedInstructionRawPrefixStore+  sizeOf    = Store.sizeOf decodedInstructionRawPrefixStore+  peek      = Store.peek decodedInstructionRawPrefixStore+  poke      = Store.poke decodedInstructionRawPrefixStore++data DecodedInstructionRaw =+  DecodedInstructionRaw+  { decodedInstructionRawPrefixCount :: {-# UNPACK #-}!Word8+  , decodedInstructionRawPrefixes    :: !(StorableFixedArray DecodedInstructionRawPrefix ZydisMaxInstructionLength)+  , decodedInstructionRawRex         :: !DecodedInstructionRawRex+  , decodedInstructionRawXop         :: !DecodedInstructionRawXop+  , decodedInstructionRawVex         :: !DecodedInstructionRawVex+  , decodedInstructionRawEvex        :: !DecodedInstructionRawEvex+  , decodedInstructionRawMvex        :: !DecodedInstructionRawMvex+  , decodedInstructionRawModRm       :: !DecodedInstructionModRm+  , decodedInstructionRawSib         :: !DecodedInstructionRawSib+  , decodedInstructionRawDisp        :: !DecodedInstructionRawDisp+  , decodedInstructionRawImmediates  :: !(StorableFixedArray DecodedInstructionRawImmediate ZydisRawImmediateCount)+  }+  deriving stock (Show, Eq)++decodedInstructionRawStore :: Store.Dictionary DecodedInstructionRaw+decodedInstructionRawStore =+  Store.run+    $   DecodedInstructionRaw+    <$> Store.element decodedInstructionRawPrefixCount+    <*> Store.element decodedInstructionRawPrefixes+    <*> Store.element decodedInstructionRawRex+    <*> Store.element decodedInstructionRawXop+    <*> Store.element decodedInstructionRawVex+    <*> Store.element decodedInstructionRawEvex+    <*> Store.element decodedInstructionRawMvex+    <*> Store.element decodedInstructionRawModRm+    <*> Store.element decodedInstructionRawSib+    <*> Store.element decodedInstructionRawDisp+    <*> Store.element decodedInstructionRawImmediates++instance Storable DecodedInstructionRaw where+  alignment = Store.alignment decodedInstructionRawStore+  sizeOf    = Store.sizeOf decodedInstructionRawStore+  peek      = Store.peek decodedInstructionRawStore+  poke      = Store.poke decodedInstructionRawStore++data DecodedInstructionMeta =+  DecodedInstructionMeta+    { decodedInstructionMetaCategory   :: !InstructionCategory+    , decodedInstructionMetaISASet     :: !ISASet+    , decodedInstructionMetaISAExt     :: !ISAExt+    , decodedInstructionBranchType     :: !BranchType+    , decodedInstructionExceptionClass :: !ExceptionClass+    }+  deriving stock (Show, Eq)++decodedInstructionMetaStore :: Store.Dictionary DecodedInstructionMeta+decodedInstructionMetaStore =+  Store.run+    $   DecodedInstructionMeta+    <$> Store.element decodedInstructionMetaCategory+    <*> Store.element decodedInstructionMetaISASet+    <*> Store.element decodedInstructionMetaISAExt+    <*> Store.element decodedInstructionBranchType+    <*> Store.element decodedInstructionExceptionClass++instance Storable DecodedInstructionMeta where+  alignment = Store.alignment decodedInstructionMetaStore+  sizeOf    = Store.sizeOf decodedInstructionMetaStore+  peek      = Store.peek decodedInstructionMetaStore+  poke      = Store.poke decodedInstructionMetaStore++data DecodedInstructionAvxBroadcast =+  DecodedInstructionAvxBroadcast+    { decodedInstructionAvxBroadcastIsStatic :: {-# UNPACK #-}!Word8+    , decodedInstructionAvxBroadcastMode     :: !BroadcastMode+    }+  deriving stock (Show, Eq)++decodedInstructionAvxBroadcastStore+  :: Store.Dictionary DecodedInstructionAvxBroadcast+decodedInstructionAvxBroadcastStore =+  Store.run+    $   DecodedInstructionAvxBroadcast+    <$> Store.element decodedInstructionAvxBroadcastIsStatic+    <*> Store.element decodedInstructionAvxBroadcastMode++instance Storable DecodedInstructionAvxBroadcast where+  alignment = Store.alignment decodedInstructionAvxBroadcastStore+  sizeOf    = Store.sizeOf decodedInstructionAvxBroadcastStore+  peek      = Store.peek decodedInstructionAvxBroadcastStore+  poke      = Store.poke decodedInstructionAvxBroadcastStore++data DecodedInstructionAvxMask =+  DecodedInstructionAvxMask+    { decodedInstructionAvxMaskMode :: !MaskMode+    , decodedInstructionAvxRegister :: !Register+    }+  deriving stock (Show, Eq)++decodedInstructionAvxMaskStore :: Store.Dictionary DecodedInstructionAvxMask+decodedInstructionAvxMaskStore =+  Store.run+    $   DecodedInstructionAvxMask+    <$> Store.element decodedInstructionAvxMaskMode+    <*> Store.element decodedInstructionAvxRegister++instance Storable DecodedInstructionAvxMask where+  alignment = Store.alignment decodedInstructionAvxMaskStore+  sizeOf    = Store.sizeOf decodedInstructionAvxMaskStore+  peek      = Store.peek decodedInstructionAvxMaskStore+  poke      = Store.poke decodedInstructionAvxMaskStore++data DecodedInstructionAvx =+  DecodedInstructionAvx+    { decodedInstructionAvxVectorLength    :: {-# UNPACK #-}!Word16+    , decodedInstructionAvxMask            :: !DecodedInstructionAvxMask+    , decodedInstructionAvxBroadcast       :: !DecodedInstructionAvxBroadcast+    , decodedInstructionAvxRoundingMode    :: !RoundingMode+    , decodedInstructionAvxSwizzleMode     :: !SwizzleMode+    , decodedInstructionAvxConversionMode  :: !ConversionMode+    , decodedInstructionAvxHasSAE          :: {-# UNPACK #-}!Word8+    , decodedInstructionAvxHasEvictionHint :: {-# UNPACK #-}!Word8+    }+  deriving stock (Show, Eq)++decodedInstructionAvxStore :: Store.Dictionary DecodedInstructionAvx+decodedInstructionAvxStore =+  Store.run+    $   DecodedInstructionAvx+    <$> Store.element decodedInstructionAvxVectorLength+    <*> Store.element decodedInstructionAvxMask+    <*> Store.element decodedInstructionAvxBroadcast+    <*> Store.element decodedInstructionAvxRoundingMode+    <*> Store.element decodedInstructionAvxSwizzleMode+    <*> Store.element decodedInstructionAvxConversionMode+    <*> Store.element decodedInstructionAvxHasSAE+    <*> Store.element decodedInstructionAvxHasEvictionHint++instance Storable DecodedInstructionAvx where+  alignment = Store.alignment decodedInstructionAvxStore+  sizeOf    = Store.sizeOf decodedInstructionAvxStore+  peek      = Store.peek decodedInstructionAvxStore+  poke      = Store.poke decodedInstructionAvxStore++data DecodedInstruction =+  DecodedInstruction+    { decodedInstructionMachineMode   :: !MachineMode+    , decodedInstructionMnemonic      :: !Mnemonic+    , decodedInstructionLength        :: {-# UNPACK #-}!Word8+    , decodedInstructionEncoding      :: !InstructionEncoding+    , decodedInstructionOpcodeMap     :: !OpcodeMap+    , decodedInstructionOpcode        :: {-# UNPACK #-}!Word8+    , decodedInstructionStackWidth    :: {-# UNPACK #-}!Word8+    , decodedInstructionOperandWidth  :: {-# UNPACK #-}!Word8+    , decodedInstructionAddressWidth  :: {-# UNPACK #-}!Word8+    , decodedInstructionOperandCount  :: {-# UNPACK #-}!Word8+    , decodedInstructionOperands      :: !(StorableFixedArray Operand ZydisMaxOperandCount)+    , decodedInstructionAttributes    :: {-# UNPACK #-}!Word64+    , decodedInstructionAccessedFlags :: !(StorableFixedArray CPUFlagAction (ZydisCpuFlagMaxValue + 1))+    , decodedInstructionAvx           :: !DecodedInstructionAvx+    , decodedInstructionMeta          :: !DecodedInstructionMeta+    , decodedInstructionRaw           :: !DecodedInstructionRaw+    }+  deriving stock (Show, Eq)++decodedInstructionStore :: Store.Dictionary DecodedInstruction+decodedInstructionStore =+  Store.run+    $   DecodedInstruction+    <$> Store.element decodedInstructionMachineMode+    <*> Store.element decodedInstructionMnemonic+    <*> Store.element decodedInstructionLength+    <*> Store.element decodedInstructionEncoding+    <*> Store.element decodedInstructionOpcodeMap+    <*> Store.element decodedInstructionOpcode+    <*> Store.element decodedInstructionStackWidth+    <*> Store.element decodedInstructionOperandWidth+    <*> Store.element decodedInstructionAddressWidth+    <*> Store.element decodedInstructionOperandCount+    <*> Store.element decodedInstructionOperands+    <*> Store.element decodedInstructionAttributes+    <*> Store.element decodedInstructionAccessedFlags+    <*> Store.element decodedInstructionAvx+    <*> Store.element decodedInstructionMeta+    <*> Store.element decodedInstructionRaw++instance Storable DecodedInstruction where+  alignment = Store.alignment decodedInstructionStore+  sizeOf    = Store.sizeOf decodedInstructionStore+  peek      = Store.peek decodedInstructionStore+  poke      = Store.poke decodedInstructionStore++data Decoder =+  Decoder+    { decoderMachineMode  :: !MachineMode+    , decoderAddressWidth :: !AddressWidth+    , decoderDecoderMode  :: {-# UNPACK #-}!Word8+    }+  deriving stock (Show, Eq)++decoderStore :: Store.Dictionary Decoder+decoderStore =+  Store.run+    $   Decoder+    <$> Store.element decoderMachineMode+    <*> Store.element decoderAddressWidth+    <*> Store.element decoderDecoderMode++instance Storable Decoder where+  alignment = Store.alignment decoderStore+  sizeOf    = Store.sizeOf decoderStore+  peek      = Store.peek decoderStore+  poke      = Store.poke decoderStore
+ src/Zydis/Util.hs view
@@ -0,0 +1,99 @@+-- Util.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE DerivingStrategies  #-}+{-# LANGUAGE FlexibleInstances   #-}+{-# LANGUAGE PolyKinds           #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE TypeApplications    #-}++-- |+-- = This handy module extend Storable typeclasse with default instances for C-like enums/fixed arrays (FFI).+--+-- Using 'StorableExt', we are now able to use deriving via clause on sum types.+--+-- @+-- data X+--   = A+--   | B+--   | C+--   deriving stock Enum+--   deriving Storable via StorableExt X+-- @+--+-- This type will be stored as a word32 (C enum FFI).+--+-- Using the 'StorableFixedArray', we are now able to encode fixed sizes in the type (in conjunction with storable-record "Foreign.Storable.FixedArray").+--+-- @+-- data X = X (StorableFixedArray Word32 10)+-- @+--+-- This type will be stored as 10 contiguous word32 (C fixed array).+--+module Zydis.Util+  ( StorableExt(..)+  , StorableFixedArray(..)+  , Storable+  )+where++import           Data.Foldable+import           Data.Proxy+import           Data.Vector+import           Data.Word+import           Foreign.Ptr+import           Foreign.Storable+import qualified Foreign.Storable.FixedArray   as Fixed+import           GHC.TypeLits+++-- | Wrapper to extend storable default instances.+newtype StorableExt a =+  StorableExt+    { unStorableExt :: a+    }+  deriving stock (Show, Eq)++instance forall a. Enum a => Storable (StorableExt a) where+  alignment = const $ alignment @Word32 undefined+  sizeOf = const $ sizeOf @Word32 undefined+  peek = fmap (StorableExt . toEnum . fromIntegral) . peek . castPtr @_ @Word32+  poke ptr v =+    poke (castPtr @_ @Word32 ptr) (fromIntegral $ fromEnum $ unStorableExt v)++-- | Wrapper to extend storable default instances.+newtype StorableFixedArray a b =+  StorableFixedArray+    { unStorableFixedArray :: Vector a+    }+  deriving stock (Show, Eq)++instance forall a b. (Storable a, KnownNat b) => Storable (StorableFixedArray a b) where+  alignment = const $ alignment @a undefined+  sizeOf =+    const $ Fixed.sizeOfArray @a (fromIntegral $ natVal (Proxy @b)) undefined+  peek ptr = StorableFixedArray <$> Fixed.run ptr' loop+   where+    ptr' = castPtr ptr+    loop = replicateM (fromIntegral $ natVal (Proxy @b)) Fixed.peekNext+  poke ptr x = Fixed.run ptr' $ loop $ unStorableFixedArray x+   where+    ptr' = castPtr ptr+    loop = traverse_ Fixed.pokeNext
+ src_c/ZycoreExportConfig.h view
@@ -0,0 +1,41 @@+#ifndef ZYCORE_EXPORT_H+#define ZYCORE_EXPORT_H++#ifdef ZYCORE_STATIC_DEFINE+#  define ZYCORE_EXPORT+#  define ZYCORE_NO_EXPORT+#else+#  ifndef ZYCORE_EXPORT+#    ifdef Zycore_EXPORTS+/* We are building this library */+#      define ZYCORE_EXPORT+#    else+/* We are using this library */+#      define ZYCORE_EXPORT+#    endif+#  endif++#  ifndef ZYCORE_NO_EXPORT+#    define ZYCORE_NO_EXPORT+#  endif+#endif++#ifndef ZYCORE_DEPRECATED+#  define ZYCORE_DEPRECATED __attribute__ ((__deprecated__))+#endif++#ifndef ZYCORE_DEPRECATED_EXPORT+#  define ZYCORE_DEPRECATED_EXPORT ZYCORE_EXPORT ZYCORE_DEPRECATED+#endif++#ifndef ZYCORE_DEPRECATED_NO_EXPORT+#  define ZYCORE_DEPRECATED_NO_EXPORT ZYCORE_NO_EXPORT ZYCORE_DEPRECATED+#endif++#if 0 /* DEFINE_NO_DEPRECATED */+#  ifndef ZYCORE_NO_DEPRECATED+#    define ZYCORE_NO_DEPRECATED+#  endif+#endif++#endif /* ZYCORE_EXPORT_H */
+ src_c/ZydisExportConfig.h view
@@ -0,0 +1,41 @@+#ifndef ZYDIS_EXPORT_H+#define ZYDIS_EXPORT_H++#ifdef ZYDIS_STATIC_DEFINE+#  define ZYDIS_EXPORT+#  define ZYDIS_NO_EXPORT+#else+#  ifndef ZYDIS_EXPORT+#    ifdef Zydis_EXPORTS+/* We are building this library */+#      define ZYDIS_EXPORT __attribute__((visibility("default")))+#    else+/* We are using this library */+#      define ZYDIS_EXPORT __attribute__((visibility("default")))+#    endif+#  endif++#  ifndef ZYDIS_NO_EXPORT+#    define ZYDIS_NO_EXPORT __attribute__((visibility("hidden")))+#  endif+#endif++#ifndef ZYDIS_DEPRECATED+#  define ZYDIS_DEPRECATED __attribute__ ((__deprecated__))+#endif++#ifndef ZYDIS_DEPRECATED_EXPORT+#  define ZYDIS_DEPRECATED_EXPORT ZYDIS_EXPORT ZYDIS_DEPRECATED+#endif++#ifndef ZYDIS_DEPRECATED_NO_EXPORT+#  define ZYDIS_DEPRECATED_NO_EXPORT ZYDIS_NO_EXPORT ZYDIS_DEPRECATED+#endif++#if 0 /* DEFINE_NO_DEPRECATED */+#  ifndef ZYDIS_NO_DEPRECATED+#    define ZYDIS_NO_DEPRECATED+#  endif+#endif++#endif /* ZYDIS_EXPORT_H */
+ test/Main.hs view
@@ -0,0 +1,56 @@+-- Main.hs ---++-- Copyright (C) 2020 Nerd Ed++-- Author: Nerd Ed <nerded.nerded@gmail.com>++-- This program is free software; you can redistribute it and/or+-- modify it under the terms of the GNU General Public License+-- as published by the Free Software Foundation; either version 3+-- of the License, or (at your option) any later version.++-- 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, see <http://www.gnu.org/licenses/>.++{-# LANGUAGE OverloadedStrings #-}++module Main where++import           Data.Bitraversable+import           Data.Bifoldable+import qualified Zydis                         as Z++main :: IO ()+main = test++test :: IO ()+test = bitraverse_ initFailure decode =<< initZydis+ where+  zyanError s = putStrLn . ((s <> ". ZyanStatus: ") <>) . show++  initFailure     = zyanError "Failed to initialize decoder"++  initZydis       = Z.initialize Z.MachineModeLong64 Z.AddressWidth64++  {-+     mov rax, 0xCAFEBABECAFEBABE+     push rax+     ret+  -}+  buffer          = "\x48\xB8\xBE\xBA\xFE\xCA\xBE\xBA\xFE\xCA\x50\xC3"++  decodingFailure = zyanError "Failed to decode buffer"++  {-+      Given the decoded buffer, should output: [MnemonicMov,MnemonicPush,MnemonicRet]+  -}+  printMnemonics  = print . fmap Z.decodedInstructionMnemonic++  decode decoder =+    bitraverse decodingFailure printMnemonics+      =<< Z.decodeFullBuffer decoder buffer
+ zydiskell.cabal view
@@ -0,0 +1,161 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.34.2.+--+-- see: https://github.com/sol/hpack++name:           zydiskell+version:        0.1.0.0+synopsis:       Haskell language binding for the Zydis library, a x86/x86-64 disassembler.+description:    Please see the README on GitHub at <https://github.com/nerded1337/zydiskell#readme>+category:       System, Parsing, Disassembler+homepage:       https://github.com/nerded1337/zydiskell#readme+bug-reports:    https://github.com/nerded1337/zydiskell/issues+author:         nerded+maintainer:     nerded.nerded@gmail.com+copyright:      2020 nerded+license:        GPL-3+license-file:   LICENSE+build-type:     Simple+extra-source-files:+    README.md+    ChangeLog.md++source-repository head+  type: git+  location: https://github.com/nerded1337/zydiskell++library+  exposed-modules:+      Zydis+      Zydis.AddressWidth+      Zydis.BranchType+      Zydis.BroadcastMode+      Zydis.Constants+      Zydis.ConversionMode+      Zydis.CPUFlagAction+      Zydis.Decoder+      Zydis.ElementType+      Zydis.ExceptionClass+      Zydis.InstructionCategory+      Zydis.InstructionEncoding+      Zydis.ISAExt+      Zydis.ISASet+      Zydis.MachineMode+      Zydis.MaskMode+      Zydis.Mnemonic+      Zydis.OpcodeMap+      Zydis.Operand+      Zydis.OperandEncoding+      Zydis.OperandMemoryType+      Zydis.OperandType+      Zydis.OperandVisibility+      Zydis.PrefixType+      Zydis.Register+      Zydis.RoundingMode+      Zydis.SwizzleMode+      Zydis.Types+      Zydis.Util+  other-modules:+      Paths_zydiskell+  hs-source-dirs:+      src+  ghc-options: -Wall+  include-dirs:+      ./src_c+      ./external/zydis/src+      ./external/zydis/include+      ./external/zydis/dependencies/zycore/include+  install-includes:+      ./src_c/ZydisExportConfig.h+      ./src_c/ZycoreExportConfig.h+      ./external/zydis/src/Generated/AccessedFlags.inc+      ./external/zydis/src/Generated/DecoderTables.inc+      ./external/zydis/src/Generated/EncodableInstructions.inc+      ./external/zydis/src/Generated/EnumISAExt.inc+      ./external/zydis/src/Generated/EnumISASet.inc+      ./external/zydis/src/Generated/EnumInstructionCategory.inc+      ./external/zydis/src/Generated/EnumMnemonic.inc+      ./external/zydis/src/Generated/EnumRegister.inc+      ./external/zydis/src/Generated/FormatterStrings.inc+      ./external/zydis/src/Generated/InstructionDefinitions.inc+      ./external/zydis/src/Generated/InstructionEncodings.inc+      ./external/zydis/src/Generated/OperandDefinitions.inc+      ./external/zydis/include/Zydis/Decoder.h+      ./external/zydis/include/Zydis/DecoderTypes.h+      ./external/zydis/include/Zydis/Formatter.h+      ./external/zydis/include/Zydis/FormatterBuffer.h+      ./external/zydis/include/Zydis/MetaInfo.h+      ./external/zydis/include/Zydis/Mnemonic.h+      ./external/zydis/include/Zydis/Register.h+      ./external/zydis/include/Zydis/SharedTypes.h+      ./external/zydis/include/Zydis/ShortString.h+      ./external/zydis/include/Zydis/Status.h+      ./external/zydis/include/Zydis/Utils.h+      ./external/zydis/include/Zydis/Zydis.h+      ./external/zydis/include/Zydis/Generated/EnumInstructionCategory.h+      ./external/zydis/include/Zydis/Generated/EnumISAExt.h+      ./external/zydis/include/Zydis/Generated/EnumISASet.h+      ./external/zydis/include/Zydis/Generated/EnumMnemonic.h+      ./external/zydis/include/Zydis/Generated/EnumRegister.h+      ./external/zydis/include/Zydis/Internal/DecoderData.h+      ./external/zydis/include/Zydis/Internal/FormatterATT.h+      ./external/zydis/include/Zydis/Internal/FormatterBase.h+      ./external/zydis/include/Zydis/Internal/FormatterIntel.h+      ./external/zydis/include/Zydis/Internal/SharedData.h+      ./external/zydis/include/Zydis/Internal/String.h+      ./external/zydis/dependencies/zycore/include/Zycore/Allocator.h+      ./external/zydis/dependencies/zycore/include/Zycore/ArgParse.h+      ./external/zydis/dependencies/zycore/include/Zycore/Bitset.h+      ./external/zydis/dependencies/zycore/include/Zycore/Comparison.h+      ./external/zydis/dependencies/zycore/include/Zycore/Defines.h+      ./external/zydis/dependencies/zycore/include/Zycore/Format.h+      ./external/zydis/dependencies/zycore/include/Zycore/LibC.h+      ./external/zydis/dependencies/zycore/include/Zycore/List.h+      ./external/zydis/dependencies/zycore/include/Zycore/Object.h+      ./external/zydis/dependencies/zycore/include/Zycore/Status.h+      ./external/zydis/dependencies/zycore/include/Zycore/String.h+      ./external/zydis/dependencies/zycore/include/Zycore/Types.h+      ./external/zydis/dependencies/zycore/include/Zycore/Vector.h+      ./external/zydis/dependencies/zycore/include/Zycore/Zycore.h+      ./external/zydis/dependencies/zycore/include/Zycore/API/Memory.h+      ./external/zydis/dependencies/zycore/include/Zycore/API/Synchronization.h+      ./external/zydis/dependencies/zycore/include/Zycore/API/Terminal.h+      ./external/zydis/dependencies/zycore/include/Zycore/API/Thread.h+  c-sources:+      ./external/zydis/src/Decoder.c+      ./external/zydis/src/DecoderData.c+      ./external/zydis/src/Formatter.c+      ./external/zydis/src/FormatterATT.c+      ./external/zydis/src/FormatterBase.c+      ./external/zydis/src/FormatterBuffer.c+      ./external/zydis/src/FormatterIntel.c+      ./external/zydis/src/MetaInfo.c+      ./external/zydis/src/Mnemonic.c+      ./external/zydis/src/Register.c+      ./external/zydis/src/SharedData.c+      ./external/zydis/src/String.c+      ./external/zydis/src/Utils.c+      ./external/zydis/src/Zydis.c+  build-depends:+      base >=4.7 && <4.15+    , bytestring >=0.10 && <0.11+    , storable-record >=0.0.5 && <0.0.6+    , vector >=0.12 && <0.13+  default-language: Haskell2010++test-suite zydiskell-tests+  type: exitcode-stdio-1.0+  main-is: Main.hs+  other-modules:+      Paths_zydiskell+  hs-source-dirs:+      test+  ghc-options: -Wall+  build-depends:+      base >=4.7 && <4.15+    , bytestring >=0.10 && <0.11+    , storable-record >=0.0.5 && <0.0.6+    , vector >=0.12 && <0.13+    , zydiskell+  default-language: Haskell2010