AI-Powered Executable File Analyzer

An Interactive Overview of the System Architecture & Analysis Process

Detailed System Architecture

⚙️ User Preparation (Client-Side Effort)
Decompilation of Executable (.exe, .dll) into Source Code
👤 User's Browser (Client)
Uploads Source Code via Fetch API & Listens for Events
2. POST /analyze
10. Server-Sent Events Stream
Cloud Platform
Cloud Run Service (Flask App)
Flask Route
Smart Chunker (AST)
Streaming Analyzer
ThreadPoolExecutor
Worker Thread 1
Worker Thread 2
...
Worker Thread N
5. Parallel API Requests (Function Chunks)
8. Final Report Compilation
Generative AI API
Multiple AI Models

This section details each component of the architecture. The system is designed for efficiency, using parallel processing for speed and streaming for a real-time user experience.

User's Browser (Client)

Technology: HTML, JavaScript, Tailwind CSS.

Responsibility: Renders the UI and handles the initial file upload. It uses the `fetch` API to make a `POST` request and then processes the response as a real-time `text/event-stream`, updating the display dynamically as results for each function and the final verdict arrive.

Cloud Run Service

Technology: Docker, Python, Flask, Gunicorn.

Responsibility: The core serverless backend. Its **Streaming Analyzer** manages a **ThreadPoolExecutor**, which assigns each code chunk to a separate worker thread. These threads make concurrent API calls, drastically speeding up the analysis phase before results are streamed back.

Generative AI API

Technology: Managed cloud service for AI models.

Responsibility: Provides access to multiple foundation models. It receives parallel requests for individual function analysis and one final request for the overall report, returning structured JSON and text as responses.