summary refs log tree commit diff stats
path: root/results/scraper/fex/2841
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-07-17 09:10:43 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-07-17 09:10:43 +0200
commitf2ec263023649e596c5076df32c2d328bc9393d2 (patch)
tree5dd86caab46e552bd2e62bf9c4fb1a7504a44db4 /results/scraper/fex/2841
parent63d2e9d409831aa8582787234cae4741847504b7 (diff)
downloadqemu-analysis-main.tar.gz
qemu-analysis-main.zip
add downloaded fex bug-reports HEAD main
Diffstat (limited to 'results/scraper/fex/2841')
-rw-r--r--results/scraper/fex/284120
1 files changed, 20 insertions, 0 deletions
diff --git a/results/scraper/fex/2841 b/results/scraper/fex/2841
new file mode 100644
index 000000000..f4dd50228
--- /dev/null
+++ b/results/scraper/fex/2841
@@ -0,0 +1,20 @@
+Denuvo needs inline self-modifying code support
+Currently it crashes because of an invalid instruction.

+The instruction stream (From Hatsune Miku Project DIVA Mega Mix+) starts as follows.

+```asm

+1569854b0  812d000000001896…  sub     dword [rel data_1569854ba], 0x1b519618  {0xa20f9090}  // Modifies the next instruction

+1569854ba  a826               test    al, 0x26  // Instruction modified

+1569854bc  61                 ??

+```

+

+The initial sub instruction in this block is modifying the code just after the instruction. Which turns it in to:

+```asm

+0x00000000   1                       90  nop

+0x00000001   1                       90  nop

+0x00000002   2                     0fa2  cpuid

+0x00000004  10     8105f2ffffff1896511b  add dword [rip - 0xe], 0x1b519618

+0x0000000e   1                       c3  ret

+```

+

+The final add there modifying the code back to what it was before.

+FEX need to have a generic (and fast) solution towards detecting something like this if we want any Denuvo Anti-Tamper games to work.
\ No newline at end of file