By analyzing the results of the MCU Binary Static Disassembly that can perform copy mcu binary coding, the software can be illegally modified or its intellectual property rights can be stolen.
In order to prevent this situation, based on the description of the basic algorithm of static anti-sink assembly, two types of anti-static and diassembly techniques are proposed, which are branch function and jump table to compile hidden program control flow.
These two technologies can hide the actual target address of the jump instruction in the program, and can fake the false target address that caused the static disassembly compiler to make an error.
After using this technology to modify the program, the original dynamic execution results of the program will not be changed, and the efficiency of the program will not be greatly affected. This control flow hiding technique is the anti-static disassembly technique discussed in this article.
“Control flow hiding” technology is to transform the assembly code level program using a certain method to hide the key points of the program to determine the static control flow of the program as much as possible or forge some key points related to the control flow of the program to confuse the static reaction. Assembly tools to get incorrect static program control flow and thus incorrect disassembly results.