diff --git a/dlls/dbghelp/cpu_arm.c b/dlls/dbghelp/cpu_arm.c
index 2712db49556b389c7cef9abe7ef8d411fc18eabd..eeb8984f65227e130e65f80e31a9d08857a8ff83 100644
--- a/dlls/dbghelp/cpu_arm.c
+++ b/dlls/dbghelp/cpu_arm.c
@@ -224,8 +224,16 @@ static const char* arm_fetch_regname(unsigned regno)
 
 static BOOL arm_fetch_minidump_thread(struct dump_context* dc, unsigned index, unsigned flags, const CONTEXT* ctx)
 {
-    FIXME("NIY\n");
-    return FALSE;
+    if (ctx->ContextFlags && (flags & ThreadWriteInstructionWindow))
+    {
+        /* FIXME: crop values across module boundaries, */
+#ifdef __arm__
+        ULONG base = ctx->Pc <= 0x80 ? 0 : ctx->Pc - 0x80;
+        minidump_add_memory_block(dc, base, ctx->Pc + 0x80 - base, 0);
+#endif
+    }
+
+    return TRUE;
 }
 
 static BOOL arm_fetch_minidump_module(struct dump_context* dc, unsigned index, unsigned flags)