AI Slop Code Risk Monitor

x64dbg/x64dbg

SlopCodeMonitor badge for x64dbg/x64dbg Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

An open-source user mode debugger for Windows. Optimized for reverse engineering and malware analysis.

2.2 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for x64dbg/x64dbg, a C++ project with 50,082 GitHub stars. SynthScan examined 261,757 lines of code across 1467 source files, recording 461 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 2.2 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

2.2
Adjusted Signal
2.2
Raw Pattern Score
100%
Time Factor
2026-10-28
Last Push
50.1K
Stars
C++
Language
261.8K
Lines of Code
1.5K
Files
461
Pattern Hits
2026-10-31
Scan Date
0.02
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 6.3/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 334 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.3/100 · LOW

Are imports declared and package/API names verified? 14 finding(s).

Agent Over-Engineering Ratio 4.0/100 · LOW

Are wrappers, guards, and repeated structures necessary? 115 finding(s).

PR Review Velocity Impact 11.0/100 · LOW

Which changes need focused human review? 461 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 28MEDIUM 4LOW 429

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 461 distinct pattern matches across 12 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Over-Commented Block295 hits · 280 pts
SeverityFileLineSnippetContext
LOWdocs/conf.py1# -*- coding: utf-8 -*-COMMENT
LOWdocs/conf.py61copyright = u'2016, x64dbg'COMMENT
LOWdocs/conf.py81# non-false value, then it is used:COMMENT
LOWdocs/conf.py101# add_function_parentheses = TrueCOMMENT
LOWdocs/conf.py141#COMMENT
LOWdocs/conf.py161# The name of an image file (relative to this directory) to use as a favicon ofCOMMENT
LOWdocs/conf.py181#COMMENT
LOWdocs/conf.py201COMMENT
LOWdocs/conf.py221COMMENT
LOWdocs/conf.py241#COMMENT
LOWdocs/conf.py261 # 'pointsize': '10pt',COMMENT
LOWdocs/conf.py281# the title page.COMMENT
LOWdocs/conf.py321# -- Options for Texinfo output -------------------------------------------COMMENT
LOW.github/FUNDING.yml1# These are supported funding model platformsCOMMENT
LOWsrc/dbg_assert.h21// Dispatching macrosCOMMENT
LOWsrc/dbg_assert.h41#define ASSERT_FALSE2(expr, message) assert(!(expr) && (message))COMMENT
LOWsrc/dbg_assert.h61// Trigger an exception if expression is not a nullptrCOMMENT
LOWsrc/dbg_types.h1#ifndef _DBG_TYPES_H_COMMENT
LOWsrc/launcher/x64dbg_launcher.cpp1#define UNICODECOMMENT
LOWsrc/bridge/bridgemain.cpp781 X87CONTROLWORDFIELDS x87ControlWordFields;COMMENT
LOWsrc/bridge/bridgemain.cpp841 x87ControlWordFields->UM = ((ControlWord & x87CONTROLWORD_FLAG_UM) != 0);COMMENT
LOWsrc/bridge/bridgemain.h1#ifndef _BRIDGEMAIN_H_COMMENT
LOWsrc/bridge/bridgemain.h21COMMENT
LOWsrc/bridge/bridgemain.h61COMMENT
LOWsrc/bridge/bridgemain.h81COMMENT
LOWsrc/bridge/bridgemain.h101/// <param name="key">Setting key (name). Cannot be null.</param>COMMENT
LOWsrc/bridge/bridgemain.h121/// <returns>True if the operation was successful.</returns>COMMENT
LOWsrc/bridge/bridgemain.h141BRIDGE_IMPEXP int BridgeGetDbgVersion();COMMENT
LOWsrc/bridge/bridgemain.h161/// <summary>COMMENT
LOWsrc/bridge/bridgemain.h181extern "C"COMMENT
LOWsrc/bridge/bridgemain_checker.c1#include "bridgemain.h"COMMENT
LOWsrc/dbg/_plugins.h1#ifndef _PLUGINS_HCOMMENT
LOWsrc/dbg/_plugins.h21#else //x86COMMENT
LOWsrc/dbg/memory.cpp1/**COMMENT
LOWsrc/dbg/TraceRecord.cpp1#include "TraceRecord.h"COMMENT
LOWsrc/dbg/_global.h1#pragma onceCOMMENT
LOWsrc/dbg/_global.h21#include "stringutils.h"COMMENT
LOWsrc/dbg/breakpoint.h1#pragma onceCOMMENT
LOWsrc/dbg/module.cpp1#include "database_cb_batcher.h"COMMENT
LOWsrc/dbg/x64dbg.cpp1/**COMMENT
LOWsrc/dbg/x64dbg.cpp21#include "_exports.h"COMMENT
LOWsrc/dbg/stringutils.h1#ifndef _STRINGUTILS_HCOMMENT
LOWsrc/dbg/threading.h21//COMMENT
LOWsrc/dbg/_apichecker.c1// HACK: pretend we are in the same environment as a pluginCOMMENT
LOWsrc/dbg/_scriptapi.h1#ifndef _SCRIPT_API_HCOMMENT
LOWsrc/dbg/exprfunc.cpp1#include "exprfunc.h"COMMENT
LOWsrc/dbg/bridgemain.h1// NOTE: this file is only here to make _apichecker.c compileCOMMENT
LOWsrc/dbg/database.cpp1/**COMMENT
LOWsrc/dbg/_dbgfunctions.cpp1/**COMMENT
LOWsrc/dbg/_dbgfunctions.cpp21#include "stringformat.h"COMMENT
LOWsrc/dbg/value.cpp1/**COMMENT
LOWsrc/dbg/database.h21#endif // _DATABASE_HCOMMENT
LOWsrc/dbg/symbolsourcebase.h1#pragma onceCOMMENT
LOWsrc/dbg/debugger.cpp1/**COMMENT
LOWsrc/dbg/debugger.cpp21#include "module.h"COMMENT
LOWsrc/dbg/stackinfo.cpp1/**COMMENT
LOWsrc/dbg/plugin_loader.cpp1/**COMMENT
LOWsrc/dbg/debugger.h1#ifndef _DEBUGGER_HCOMMENT
LOWsrc/dbg/murmurhash.cpp1//-----------------------------------------------------------------------------COMMENT
LOWsrc/dbg/_scriptapi_misc.h1#ifndef _SCRIPTAPI_MISC_HCOMMENT
235 more matches not shown…
Empty Error Handlers28 hits · 140 pts
SeverityFileLineSnippetContext
HIGH.github/format/AStyleHelper.py96except importlib.metadata.PackageNotFoundError:CODE
HIGH.github/format/AStyleHelper.py136except OSError:CODE
HIGH.github/format/AStyleHelper.py198except OSError:CODE
HIGHsrc/test/screenreader/ui_dump.py71except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py77except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py83except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py93except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py103except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py109except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py116except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py156except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py368except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py34except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py373except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py379except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py565except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py585except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py605except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py625except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py39except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py45except Exception:CODE
HIGHsrc/test/screenreader/ui_dump.py535except Exception:CODE
HIGHsrc/test/screenreader/screenreader_check.py69except Exception:CODE
HIGHsrc/test/screenreader/screenreader_check.py337except Exception:CODE
HIGHsrc/test/screenreader/screenreader_check.py78except Exception:CODE
HIGHsrc/tests/cmdline_attach/driver.py85except Exception:CODE
HIGHsrc/tests/cmdline_attach/driver.py93except Exception:CODE
HIGHsrc/tests/attach_pause/driver.py146except subprocess.TimeoutExpired:CODE
Excessive Try-Catch Wrapping85 hits · 75 pts
SeverityFileLineSnippetContext
LOW⚡src/test/screenreader/ui_dump.py26 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py34 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py39 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py45 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py71 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py77 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py83 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py93 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py103 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py109 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py116 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py368 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py373 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py379 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py565 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py571 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py576 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py585 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py591 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py596 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py605 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py611 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py616 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py625 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py631 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py636 except Exception:CODE
LOW⚡src/test/screenreader/ui_dump.py673 except Exception as exc:CODE
LOW⚡src/test/screenreader/ui_dump.py682 except Exception as exc:CODE
LOW⚡src/test/screenreader/ui_dump.py691 except Exception as exc:CODE
LOW⚡src/test/screenreader/ui_dump.py701 except Exception as exc:CODE
LOWsrc/test/screenreader/ui_dump.py133 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py140 except Exception as exc:CODE
LOWsrc/test/screenreader/ui_dump.py156 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py179 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py210 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py215 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py238 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py274 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py324 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py403 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py415 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py535 except Exception:CODE
LOWsrc/test/screenreader/ui_dump.py659 except Exception:CODE
LOW⚡src/test/screenreader/screenreader_check.py41 except Exception:CODE
LOW⚡src/test/screenreader/screenreader_check.py49 except Exception:CODE
LOW⚡src/test/screenreader/screenreader_check.py57 except Exception:CODE
LOWsrc/test/screenreader/screenreader_check.py69 except Exception:CODE
LOWsrc/test/screenreader/screenreader_check.py78 except Exception:CODE
LOWsrc/test/screenreader/screenreader_check.py136 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py198 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py209 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py245 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py271 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py292 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py337 except Exception:CODE
LOWsrc/test/screenreader/screenreader_check.py348 except Exception as exc:CODE
LOWsrc/test/screenreader/screenreader_check.py377 except Exception as exc:CODE
LOWsrc/test/screenreader/uia_event_check.py38 except Exception:CODE
LOWsrc/test/screenreader/uia_event_check.py55 except Exception:CODE
LOWsrc/test/screenreader/uia_event_check.py59 except Exception:CODE
25 more matches not shown…
Structural Annotation Overuse9 hits · 17 pts
SeverityFileLineSnippetContext
LOWscript-plan.md133### Step 1: Fix `DbgIsDebugging()`COMMENT
LOWscript-plan.md151### Step 2: Introduce script interrupt reasonsCOMMENT
LOWscript-plan.md173### Step 3: Add a proper yield/resume handshakeCOMMENT
LOWscript-plan.md195### Step 4: Move script lifecycle inference to observed transitionsCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp79 // Step 1: Use any defined functions in the PE function tableCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp84 // Step 2: for each block that contains a CALL flag,COMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp119 // Step 3: Sort and remove duplicatesCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp125 // Step 4: Find function endsCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp130 // Step 5: Find all orphaned blocks and repeat analysis processCOMMENT
Unused Imports14 hits · 14 pts
SeverityFileLineSnippetContext
LOWdocs/genhhk.py12CODE
LOWdocs/genhhk.py12CODE
LOW.github/format/AStyleHelper.py9CODE
LOWsrc/test/screenreader/ui_dump.py1CODE
LOWsrc/test/screenreader/screenreader_check.py1CODE
LOWsrc/test/screenreader/uia_event_check.py1CODE
LOWsrc/test/screenreader/ui_common.py1CODE
LOWsrc/tests/run.py1CODE
LOWsrc/tests/cmdline_attach/driver.py1CODE
LOWsrc/tests/cmdline_attach/driver.py7CODE
LOWsrc/tests/issue2725/check.py1CODE
LOWsrc/tests/attach_pause/driver.py1CODE
LOWsrc/tests/attach_pause/driver.py8CODE
LOWsrc/cross/tests/accessibility/minidump_accessibility.py1CODE
TODO Padding9 hits · 13 pts
SeverityFileLineSnippetContext
LOWsrc/dbg/debugger.cpp2206 //TODO: implement Windows 10 unicode debug stringCOMMENT
LOWsrc/dbg/analysis/recursiveanalysis.cpp24 //TODO: implement queue to analyze multiple functionsCOMMENT
LOWsrc/cross/hex_viewer/File.h7// TODO: implement as mapped fileCOMMENT
LOWsrc/cross/ElfBug/ElfBug/thread/Registers.h53 // TODO: implementCOMMENT
LOWsrc/cross/ElfBug/ElfBug/thread/Thread.h100 // TODO: implement via PTRACE_POKEUSER on debug register offsetsCOMMENT
LOWsrc/cross/ElfBug/ElfBug/process/Process.Memory.cpp137 // TODO: implement via ptrace or /proc/pid/mem mprotectCOMMENT
LOWsrc/cross/ElfBug/ElfBug/process/Process.h54 // TODO: implement via mprotect + SIGSEGV handlingCOMMENT
LOWsrc/gui/Src/Gui/DisassemblerGraphView.cpp46 //TODO: implement ^^^COMMENT
LOWsrc/gui/Src/Gui/CPUMultiDump.cpp269 Q_UNUSED(firstAddress); // TODO: implement setTableOffset(firstAddress)CODE
Verbosity Indicators5 hits · 11 pts
SeverityFileLineSnippetContext
LOW⚡src/dbg/analysis/FunctionPass.cpp79 // Step 1: Use any defined functions in the PE function tableCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp84 // Step 2: for each block that contains a CALL flag,COMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp119 // Step 3: Sort and remove duplicatesCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp125 // Step 4: Find function endsCOMMENT
LOW⚡src/dbg/analysis/FunctionPass.cpp130 // Step 5: Find all orphaned blocks and repeat analysis processCOMMENT
Deep Nesting10 hits · 8 pts
SeverityFileLineSnippetContext
LOW.github/format/AStyleHelper.py169CODE
LOW.github/format/AStyleHelper.py309CODE
LOWsrc/test/screenreader/ui_dump.py137CODE
LOWsrc/test/screenreader/ui_dump.py438CODE
LOWsrc/test/screenreader/screenreader_check.py84CODE
LOWsrc/test/screenreader/screenreader_check.py151CODE
LOWsrc/cross/tests/accessibility/minidump_accessibility.py159CODE
LOWsrc/cross/tests/accessibility/minidump_accessibility.py311CODE
LOWsrc/cross/tests/accessibility/minidump_accessibility.py464CODE
LOWsrc/cross/tests/accessibility/minidump_accessibility.py587CODE
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMsrc/gui/Src/ThirdPartyLibs/md4c/md4c.c2541#define MD_MARK_OPENER 0x04 /* Definitely opener. */COMMENT
MEDIUMsrc/gui/Src/ThirdPartyLibs/md4c/md4c.c2542#define MD_MARK_CLOSER 0x08 /* Definitely closer. */COMMENT
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMdocs/conf.py6# This file is execfile()d with the current directory set to itsCOMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMsrc/tests/CMakeLists.txt203# random_dll intentionally remains excluded while its scaffold stays disabled.COMMENT
Hyper-Verbose Identifiers2 hits · 2 pts
SeverityFileLineSnippetContext
LOWsrc/test/screenreader/ui_dump.py261def _dump_visible_table_by_dataitems(CODE
LOWsrc/tests/run.py193def ensure_debug_engine_runtime(headless: Path, engine: str) -> None:CODE