建立 MAG160C 逆向工程交接仓库

This commit is contained in:
ZXCLI
2026-08-11 19:08:44 +08:00
commit 8409b27ba3
3135 changed files with 534408 additions and 0 deletions
@@ -0,0 +1,43 @@
import os
import unittest
class ElfAarch64Tests(unittest.TestCase):
def test_can_find_exported_mag_symbol(self):
import elf_aarch64
so_path = os.path.join(
os.getcwd(),
"IR_Camera_SDK-1.0.1",
"android",
"android",
"lib",
"arm64-v8a",
"libcoresdk.so",
)
analyzer = elf_aarch64.ElfAnalyzer(so_path)
sym = analyzer.find_symbol("MAG_LinkCamera")
self.assertIsNotNone(sym)
self.assertGreater(sym.size, 0)
self.assertGreater(sym.addr, 0)
def test_disassembles_aarch64_function_and_resolves_calls(self):
import elf_aarch64
so_path = os.path.join(
os.getcwd(),
"IR_Camera_SDK-1.0.1",
"android",
"android",
"lib",
"arm64-v8a",
"libcoresdk.so",
)
analyzer = elf_aarch64.ElfAnalyzer(so_path)
lines = analyzer.disassemble_symbol("MAG_LinkCamera")
self.assertTrue(any("MAG_LinkCamera" in line for line in lines[:2]))
self.assertTrue(any("\tbl" in line or "\tblr" in line for line in lines))
if __name__ == "__main__":
unittest.main()