There is a library in Python, angr, Can it be used for reverse analysis on the client side, and perhaps Angr can be used for symbol execution analysis and comparison of key function offsets? I'm not sure if this is helpful. Here is an example code
# Using Angr for Symbolic Execution AnalysisUsing Angr for Symbolic Execution Analysis
import angr
def find_offset_diff(old_bin, new_bin):
old_proj = angr.Project(old_bin, auto_load_libs=False)
new_proj = angr.Project(new_bin, auto_load_libs=False)
# Establish a function call graph for comparison
old_cfg = old_proj.analyses.CFGFast()
new_cfg = new_proj.analyses.CFGFast()
# Compare key function offsets
func_diff = {}
for addr, func in old_proj.kb.functions.items():
new_func = new_cfg.functions.get(func.name, None)
if new_func:
func_diff[func.addr] = new_func.addr - func.addr
return func_diff