diff --git a/suite/regress/c-crashers/crash-23-x64-value-does-not-fit-in-the-fixup-field.c b/suite/regress/c-crashers/crash-23-x64-value-does-not-fit-in-the-fixup-field.c
new file mode 100644
index 0000000000000000000000000000000000000000..e65fa86f85c84f74421378aed27c93791bd41e87
--- /dev/null
+++ b/suite/regress/c-crashers/crash-23-x64-value-does-not-fit-in-the-fixup-field.c
@@ -0,0 +1,19 @@
+#include <keystone/keystone.h>
+int main(int argc, char **argv) {
+  int ks_arch = KS_ARCH_X86, ks_mode = KS_MODE_64;
+  unsigned char assembly[] = {
+    'l', 'o', 'o', 'p', ' ', '0', 'x', '1', '0', '2',
+    0x00,
+  };
+  ks_engine *ks;
+  ks_err err = ks_open(ks_arch, ks_mode, &ks);
+  if (!err) {
+    size_t count, size;
+    unsigned char *insn;
+    if (ks_asm(ks, (char *)assembly, 0, &insn, &size, &count))
+      printf("ERROR: failed on ks_asm() with error = %s, code = %u\n", ks_strerror(ks_errno(ks)), ks_errno(ks));
+    ks_free(insn);
+  }
+  ks_close(ks);
+  return 0;
+}
diff --git a/suite/regress/c-crashers/crash-24-x64-not-is16bitmemoperand.c b/suite/regress/c-crashers/crash-24-x64-not-is16bitmemoperand.c
new file mode 100644
index 0000000000000000000000000000000000000000..04a1ee6abe5b9ca8196157d44b233f3a7a37800f
--- /dev/null
+++ b/suite/regress/c-crashers/crash-24-x64-not-is16bitmemoperand.c
@@ -0,0 +1,19 @@
+#include <keystone/keystone.h>
+int main(int argc, char **argv) {
+  int ks_arch = KS_ARCH_X86, ks_mode = KS_MODE_64;
+  unsigned char assembly[] = {
+    'a', 'd', 'd', ' ', '[', 'a', 'l', '+', 's', 'i',
+    '+', '0', 'x', '0', ']', ',', ' ', 's', 'i', 0x00,
+  };
+  ks_engine *ks;
+  ks_err err = ks_open(ks_arch, ks_mode, &ks);
+  if (!err) {
+    size_t count, size;
+    unsigned char *insn;
+    if (ks_asm(ks, (char *)assembly, 0, &insn, &size, &count))
+      printf("ERROR: failed on ks_asm() with error = %s, code = %u\n", ks_strerror(ks_errno(ks)), ks_errno(ks));
+    ks_free(insn);
+  }
+  ks_close(ks);
+  return 0;
+}