hack1:        
    STP X25, X26, [SP, #-0x90]    
    STP X27, X28, [SP, #-0x80]    
    STP X29, X30, [SP, #-0x70]    

mod:    
    ADD X25, {target}    
    LDR X26, [X25]    
    MOV X29, (data_end - data_start) / 16    
    ADRP X27, (data_start & 0xFFFFFFFF000)    
    ADD X27, X27, (data_start & 0xFFF)    
    BL findslot    

    LDP X25, X26, [SP, #-0x90]    
    LDP X27, X28, [SP, #-0x80]    
    LDP X29, X30, [SP, #-0x70]    

original:    
    {original}    

Return:    
    B code1 + 4    

findslot:        
    LDR X28, [X27]    
    CBZ X28, Saveptr    
    CMP X28, X25    
    BEQ Saveptr    
    ADD X27, X27, #0x10    
    SUB X29, X29, #1    
    CBNZ X29, findslot    
    B Done    

Saveptr:        
    STP X25, X26, [X27]    

Done:            
    RET