Commit Graph

  • 73bdb23284
    workflows/ci.yml: Suppress unneeded code checks #21 Anichitei Ionel-Cristinel 2020-09-22 18:26:33 +0300
  • ad95383878
    workflows/ci.yml: Overwrite cppcheck error code Anichitei Ionel-Cristinel 2020-09-22 18:22:28 +0300
  • 45c9efd024
    workflows/ci.yml: Fix Code check job name Anichitei Ionel-Cristinel 2020-09-22 18:06:45 +0300
  • ffad2e8c48
    Run cppcheck on new commits and PRs Anichitei Ionel-Cristinel 2020-09-22 18:04:27 +0300
  • 5667dad127
    Merge pull request #1 from bitdefender/master Anichitei Ionel-Cristinel 2020-09-22 17:55:44 +0300
  • 24ae7782d6 Fixed some static code check warnings. Andrei Vlad LUTAS 2020-09-21 12:16:45 +0300
  • 4f8b030ddd Added support for Intel Key Locker instructions, as per https://software.intel.com/content/www/us/en/develop/download/intel-key-locker-specification.html. Andrei Vlad LUTAS 2020-09-16 11:56:05 +0300
  • fc62fc0b36 Updated INSTRUX size in setup.py (pybddisasm). Andrei Vlad LUTAS 2020-09-10 11:12:51 +0300
  • 33078e4670 Added support for TDX instructions, per https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-cpu-architectural-specification.pdf. Andrei Vlad LUTAS 2020-09-10 11:06:20 +0300
  • ea28907359 Fix potential division error in bdshemu, when the destination operand is not large enough to hold the result. Andrei Vlad LUTAS 2020-08-27 16:25:39 +0300
  • d61a6fa5dd * INC/DEC do not modify the CF. * Fixed FXSAVE64, PUSHAD and POPAD emulation - when explicit mnemonics were added for them, emulation support was not added, thus causing emulation to stop when encountering one of these. Andrei Vlad LUTAS 2020-08-19 19:14:22 +0300
  • 65d6f52740
    Merge pull request #20 from akisari/master vlutas 2020-08-13 13:38:07 +0300
  • f7f57da652 Changed the minimum required version to '3.5'. #20 Andrei KISARI 2020-08-13 11:17:39 +0300
  • ad5fd2d94e Fixed pull-request comments. Andrei KISARI 2020-08-13 11:13:55 +0300
  • 4adf441efa Added support for byte-like objects as input value in pybddisasm. Andrei KISARI 2020-08-13 10:55:19 +0300
  • 3d109f22d3
    Merge pull request #19 from bitdefender/stackstr_fps Anichitei Ionel-Cristinel 2020-08-11 12:11:37 +0300
  • 79ee40b113 Fixed pybddisasm build. #19 Andrei Vlad LUTAS 2020-08-11 09:37:10 +0300
  • 1d43b7b1ba Improved stack string detection heuristic: only consider registers which have been modified during emulation; registers which were provided as "input" can be ignored, as they most likely contain addresses or other data relevant to the emulated code. We are only interested in string dynamically built during our emulation. Andrei Vlad LUTAS 2020-08-11 09:26:48 +0300
  • f399cdc246
    Merge pull request #18 from bitdefender/clarifying_comments Andrei Kisari 2020-08-06 12:39:25 +0300
  • 356ed63916 Clarifying comments to the decode API arguments. #18 Andrei Vlad LUTAS 2020-08-06 12:31:08 +0300
  • 8f08850e56
    Merge pull request #17 from akisari/master vlutas 2020-08-06 10:44:26 +0300
  • a78814c19c Updated the 'argparse' header. #17 Andrei KISARI 2020-08-06 10:14:12 +0300
  • 7f782b0f22
    Merge pull request #16 from akisari/master Anichitei Ionel-Cristinel 2020-08-05 15:51:02 +0300
  • 3d8401be4c Added a check for the latest version of the library which is compatible with pybddisasm. #16 Andrei KISARI 2020-08-05 14:01:32 +0300
  • 90c020a114 Updated the README file. Andrei KISARI 2020-08-04 15:45:16 +0300
  • c6a741b711 Added the paths to bddisasm library : default install path (Linux) and local build path (Linux/Windows) Andrei KISARI 2020-08-04 15:30:12 +0300
  • 175b059b27 Changed the version of the pybddisasm package. Andrei KISARI 2020-08-04 14:14:34 +0300
  • 4dc2fe4a8a Fixed pybddisasm build. Andrei KISARI 2020-08-04 14:13:16 +0300
  • ee235fa5de Modified the python-disassembler-wraper to be able to be installed using pip. Andrei KISARI 2020-08-04 13:57:03 +0300
  • 2e69f12b88 Remove duplicate nd_decode function #15 Sebastiaan Peters 2020-08-02 23:28:40 +0200
  • ad128fd72a
    Merge pull request #13 from ianichitei/master vlutas 2020-07-31 20:16:29 +0300
  • a496ab16e5
    Rename c-cpp.yml to ci.yml #13 Anichitei Ionel-Cristinel 2020-07-31 18:21:31 +0300
  • d06fe6cf56
    Don't build bdshemu_fuzzer Anichitei Ionel-Cristinel 2020-07-31 18:18:59 +0300
  • f734bc600b
    Try to build bdshemu_fuzz Anichitei Ionel-Cristinel 2020-07-31 18:16:41 +0300
  • 053e105fd2
    Skip the build in certain situations Anichitei Ionel-Cristinel 2020-07-31 18:12:55 +0300
  • c0e7a43db3
    Disable disasmtool build Anichitei Ionel-Cristinel 2020-07-31 18:08:24 +0300
  • 4d077a75eb
    Try to fix disasmtool build Anichitei Ionel-Cristinel 2020-07-31 18:05:45 +0300
  • 079fbb8802
    Rebuild disasmtool Windows Anichitei Ionel-Cristinel 2020-07-31 18:02:30 +0300
  • 6e8937a71b
    Fix jobnames Anichitei Ionel-Cristinel 2020-07-31 17:59:54 +0300
  • 8c92cccdbb
    Run the Windows build as well Anichitei Ionel-Cristinel 2020-07-31 17:58:48 +0300
  • 1184a314a1
    Install setuptools before building pydis Anichitei Ionel-Cristinel 2020-07-31 17:29:10 +0300
  • 374dd532e6
    Try to build pydis Anichitei Ionel-Cristinel 2020-07-31 17:25:43 +0300
  • 15629ff302
    Clone rapidjson into a dedicated directory Anichitei Ionel-Cristinel 2020-07-31 17:17:46 +0300
  • 21d20ba584
    Try to build disasmtool_lix Anichitei Ionel-Cristinel 2020-07-31 17:15:50 +0300
  • af8a0cc52f
    .github/workflows: Add CI workflow Anichitei Ionel-Cristinel 2020-07-31 16:50:27 +0300
  • c1e796625a bdshemu_fuzz: Fix build Ionel-Cristinel ANICHITEI 2020-07-30 12:31:39 +0300
  • ed564dba32 Specifically flag multi-byte NOP operands as not-accessed. New capability - bddisasm can now be instructed whether to decode some instructions as NOPs are as MPX/CET/CLDEMOTE. This is the case for instructions that are mapped onto the wide NOP space: in that case, an encoding might be NOP if the feature is off, but might be something else (even #UD) if the feature is on. Added NdDecodeWithContext API - this becomes the base decode API; it received the input information filled in a ND_CONTEXT structure, whih has to be initialized only once, and can be reused across calls. The NdInitContext function must be used to initialize the context, as it ensures backwards compatibility by filling new options with default values. Improvements to the README file. Andrei Vlad LUTAS 2020-07-30 11:07:14 +0300
  • 4328dc4efa Changed REG_xxx to NDR_xxx in docs too. Andrei Vlad LUTAS 2020-07-29 11:26:07 +0300
  • 144baa5140 Renamed REG_* fields to NDR_*, so that we don't conflict with _GNU_SOURCES. Andrei Vlad LUTAS 2020-07-29 11:05:27 +0300
  • 02b7177b99
    Merge pull request #10 from cbsirb/master vlutas 2020-07-28 17:04:22 +0300
  • 2868b2afde disasmtool_lix: Added the --extended parameter which shows the instructions info #10 Cristian-Bogdan SIRB 2020-07-28 16:14:28 +0300
  • 75702e9f0d disasmtool_lix: Align the address part to the biggest one Cristian-Bogdan SIRB 2020-07-28 16:05:53 +0300
  • 5e14a6f25c
    Merge pull request #9 from cbsirb/master Andrei Kisari 2020-07-28 15:48:37 +0300
  • daa0d403a1 Fix the disasmtool_lix build #9 Cristian-Bogdan SIRB 2020-07-28 15:12:11 +0300
  • b0b7a67c8e Add braces around the ND_INSTRUCTION.Operands initializer Ionel-Cristinel ANICHITEI 2020-07-27 17:15:12 +0300
  • a20db3ce54 Fix constants.h include path Ionel-Cristinel ANICHITEI 2020-07-27 17:04:04 +0300
  • 11f1f548ff Regenerate autogenerated files Ionel-Cristinel ANICHITEI 2020-07-27 16:52:26 +0300
  • 049ecc0ab7 Don't use reserved identifiers for include guards Ionel-Cristinel ANICHITEI 2020-07-27 16:51:16 +0300
  • 0d5d2a9625 Fixed include path. Andrei KISARI 2020-07-27 11:51:02 +0300
  • 9d98a67c70 Added the 'nd_memset' implementation for pydis. Andrei KISARI 2020-07-27 11:43:41 +0300
  • d622f56211 Added SERIAL flag to the SERIALIZE instruction. CLWB memory operand is subject to load access checks, while CLDEMOTE does not access memory at all (similar to PREFETCH). Andrei Vlad LUTAS 2020-07-25 20:32:06 +0300
  • 4b2f2aee66 Added dedicated Prefetch operand access type. Internally, store the access type sepparately than the flags. Dump conditional operand accesses with exi option too. Andrei Vlad LUTAS 2020-07-25 17:16:35 +0300
  • d11fe85599 Improved linear address computation in bdshemu. Andrei Vlad LUTAS 2020-07-24 23:11:36 +0300
  • 6c248cc4c1 Handle Ignore ER bit in instruction attributes. Andrei Vlad LUTAS 2020-07-23 18:05:19 +0300
  • 7ddf7e448a Apply address size override to gla computation. Andrei Vlad LUTAS 2020-07-23 16:19:08 +0300
  • 087ffbcf95 disasmtool_lix: Add missing instructions to ins_class_to_str Ionel-Cristinel ANICHITEI 2020-07-23 15:54:05 +0300
  • cfb0f97897 Truncate the output of a relative addressing if 0x67 prefix is used. Andrei Vlad LUTAS 2020-07-23 15:31:05 +0300
  • 752bc626c4 Fixed RET with immediate - the immediate is not sign-extended. Fixed VEX decoding in 32 bit mode - vex.vvvv bit 3 is simply ignored. Fixed several FMA instructions decoding (L/W flag should be ignored). Print the 64 bit immediate value in disassembly, instead of the raw immediate (note that the operand always contains the sign-extended, full immediate). XBEGIN always uses 32/64 bit RIP size (0x66 does not affect its size). Decode WBINVD even if it's preceded by 0x66/0xF2 prefixes. Several mnemonic fixes (FXSAVE64, FXRSTOR64, PUSHA/PUSHAD...). Properly decode VPERMIL2* instructions. Fixed SSE register decoding when it is encoded in immediate. Decode SCATTER instructions even though they use the VSIB index as source. Some disp8 fixes (t1s -> t1s8/t1s16). SYSCALL/SYSRET are decoded and executed in 32 bit compat modem, even though SDM states they are invalid. RDPID uses 32/64 bit reg size, never 16. Various other minor tweaks & fixes. Re-generated the test files, and added some more, new tests. Andrei Vlad LUTAS 2020-07-23 14:08:01 +0300
  • 52ed638c13 Fixed some typos. Added SECURITY.md file. Andrei Vlad LUTAS 2020-07-22 21:47:25 +0300
  • 08f4b31b7d
    Merge pull request #2 from andreaswimmer/patch-1 Anichitei Ionel-Cristinel 2020-07-22 19:25:59 +0300
  • 0b7c9a84fe
    Fix typo "Lighetweight" in README.md #2 andreaswimmer 2020-07-22 18:10:28 +0200
  • 960e9eaeee disasmtool_lix dumper fix - dump cet_ss and cet_ibt. Andrei Vlad LUTAS 2020-07-22 09:32:18 +0300
  • 94d7894fa5 Added the Shadow Stack Pointer operand to the SYSRET and SYSENTER instructions. Regenrated CET test files, as the CPUID feature flag was split as per the last documentation into CET_SS and CET_IBT. Andrei Vlad LUTAS 2020-07-22 09:15:29 +0300
  • 3f385cc531
    Merge pull request #1 from valkheim/fix-no-color vlutas 2020-07-22 08:55:10 +0300
  • 8392c97f97 Use the documented byte granularity for cache-line accesses. Fixed CET CPUID feature flag - split into CET_SS and CET_IBT. Andrei Vlad LUTAS 2020-07-22 00:47:46 +0300
  • f936d0c020 Fix disasmtool_lix no_color option #1 Charles Paulet 2020-07-21 22:13:05 +0200
  • 9ff2543660 Added the Shadow Stack Pointer operand to the SYSCALL and SYSEXIT instructions. Moved the CET test cases in dedicated folders. Improved shadow-stack operand reporting - a distinction can be made between push/pop shadow stack accesses, and other shadow stack accesses. A new field is now present in the memory information - the shadow stack access type, which indicates: explicit access, implicit via SSP, implicit push/pop via SSP or implicit via IA32_PL0_SSP. Andrei Vlad LUTAS 2020-07-21 22:29:59 +0300
  • 811c3d0f7c Fixed several issues with CET instructions specification - shadow stack and shadow stack pointer implicit operands were missing from SETSSBSY instruction, and flags access was missing from them. Andrei Vlad LUTAS 2020-07-21 17:36:19 +0300
  • efe359b506 Typo fixes in the instruction tables. Added a reference to the git repo in the documentation. Andrei Vlad LUTAS 2020-07-21 16:38:09 +0300
  • 1d8adaf668 Use the safe NdDecodeEx API instead of the NdDecode API in the public docs example. Andrei Vlad LUTAS 2020-07-21 16:22:59 +0300
  • 698ba367a1 Initial commit. Andrei Vlad LUTAS 2020-07-21 11:19:18 +0300
  • 6ce54a28d6 Added license & readme files. Andrei Vlad LUTAS 2020-07-09 15:33:21 +0300