AI-Optimized Software Code Modification Against Decompiler Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Decompilers can generate an approximate version of source code from binary code, potentially allowing malicious actors to extract proprietary information, copy, or manipulate software, compromising copyright protection and security.

Innovation Solution

A computer-implemented algorithm using artificial intelligence techniques optimizes the addition of modification codes to software code before compilation, increasing the size of the output code to generate 'garbage' code that obscures the original code, thereby protecting copyright and preventing malicious manipulation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If decompiler is used to process binary code, then source code approximation is generated, but copyright protection and security are compromised

Engineering Contradiction:
Improvesource code approximation qualityVSAvoidcopyright protection and security
Core Design Contradiction:
Loss of informationVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary action by modifying the source code before compilation to embed obfuscation mechanisms in advance. The code modification system alters the source code structure, adds dummy operations, and transforms control flow before the binary is created, so that even when decompiled, the code remains obfuscated and difficult to reverse-engineer.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent converts the harmful effect of code decompilation into a benefit by using the decompilation process itself to generate obfuscated code. The system allows decompilation to occur but ensures the output is intentionally degraded and obfuscated, turning the potential security vulnerability into a protective mechanism that maintains copyright protection even when code is extracted.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

2Reliability

If modification codes are added to protect copyright, then code size increases, but functionality is preserved

Engineering Contradiction:
Improvecopyright protectionVSAvoidcode size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies parameter changes by systematically modifying code parameters such as variable names, control flow structures, and operation sequences. The obfuscation system transforms the code by changing these parameters while maintaining functional equivalence, thereby protecting copyright without significantly increasing code size.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent uses copying by creating redundant or duplicate code structures that serve obfuscation purposes. Dummy operations, placeholder code, and replicated control flow patterns are introduced to confuse reverse-engineering efforts while adding minimal overhead to the actual functionality.

Inventive Principle:
Principle #26Copying

3Object-affected harmful factors

If code is obfuscated to prevent reverse engineering, then decompiled code becomes garbage, but extraction of useful code becomes difficult

Engineering Contradiction:
Improvemalicious manipulation preventionVSAvoiduseful code extraction difficulty
Core Design Contradiction:
Object-affected harmful factorsVSDifficulty of detecting and measuring

Solution Approach 1:

The patent applies segmentation by dividing the code into distinct functional segments and obfuscating each segment independently. Control flow is fragmented, variables are segmented with different naming conventions, and operations are divided into separate blocks that are difficult to reassemble into meaningful source code during decompilation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses asymmetry by introducing asymmetric obfuscation patterns where the code structure deliberately lacks symmetry in variable naming, control flow patterns, and operation sequencing. This asymmetric design makes it difficult for decompilers to recognize and reconstruct the original symmetric source code structure.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentUS20250298601A1Modifying software code
Publication Date: 2025.09.25 CYLANCE INC
  • US20250298601A1 patent drawing
  • US20250298601A1 patent drawing
  • US20250298601A1 patent drawing

AI summary

Systems, methods, and software can be used to modify a software code. In some aspects, a method includes: obtaining a software code; and processing the software code to generate an output code, wherein the output code includes the software code and one or more modification codes, wherein the one or more modification codes are determined by an algorithm that is optimized according to a function of a size of the one or more modification codes and a size of the output code, wherein the size of the output code is larger than a size of the software code.