ADRL X8, aFlagXxxxxxxxxx ; "flag{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}" 
STUR X8, [X29,#var_C0] 
SUB X0, X29, #-__dst ; __dst
ADRL X1, unk_100003F10 ; __src
MOV X2, #0x98 ; __n
BL _memcpy

把 flag{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}存在 var_C0 里

把 unk_100003F10 加载在 -__dst

LDUR            X0, [X29,#var_C0]       ; __s
BL              _strlen
MOV             X8, X0
STUR            W8, [X29,#var_C4]

把 strlen 存在 C4

__text:0000000100003D88                               loc_100003D88                           ; CODE XREF: _main+1C8↑j
__text:0000000100003D88 A8 03 50 F8                   LDUR            X8, [X29,#var_100]
__text:0000000100003D8C A9 83 90 B8                   LDURSW          X9, [X29,#var_F8]
__text:0000000100003D90 08 79 69 B8                   LDR             W8, [X8,X9,LSL#2]
__text:0000000100003D94 AA 83 90 B8                   LDURSW          X10, [X29,#var_F8]
__text:0000000100003D98 A9 C3 02 D1                   SUB             X9, X29, #-__dst
__text:0000000100003D9C 29 79 6A B8                   LDR             W9, [X9,X10,LSL#2]
__text:0000000100003DA0 08 01 09 6B                   SUBS            W8, W8, W9
__text:0000000100003DA4 E8 17 9F 1A                   CSET            W8, EQ
__text:0000000100003DA8 88 00 00 37                   TBNZ            W8, #0, loc_100003DB8

加密