File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    003aa1e0
    003aa1e0golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).Open: ; void golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).Open(golang.org/x/crypto/chacha20poly1305.chacha20poly1305 * c, struct []uint8 dst, struct []uint8 nonce, struct []uint8 ciphertext, struct []uint8 additionalData)
    003aa1e0ldr x16, [x28+16]
    003aa1e4sub x17, sp, 128
    003aa1e8subs xzr, x17, x16
    003aa1ecb.ls 0x3aa3ac
    003aa1f0sub x20, sp, 256
    003aa1f4stp x29, x30, [x20-8]
    003aa1f8add sp, x20, 0
    003aa1fcsub x29, sp, 8
    003aa200str x0, [sp+264]
    003aa204str x1, [sp+272]
    003aa208str x2, [sp+280]
    003aa20cstr x3, [sp+288]
    003aa210str x4, [sp+296]
    003aa214str x5, [sp+304]
    003aa218str x6, [sp+312]
    003aa21cstr x7, [sp+320]
    003aa220str x8, [sp+328]
    003aa224str x9, [sp+336]
    003aa228str x10, [sp+344]
    003aa22cstr x11, [sp+352]
    003aa230str x12, [sp+360]
    003aa234str xzr, [sp+144]
    003aa238stp xzr, xzr, [sp+152]
    003aa23cstp xzr, xzr, [sp+128]
    003aa240ldr x13, [sp+304]
    003aa244str x13, [sp+120]
    003aa248subs xzr, x13, 12
    003aa24cb.ne 0x3aa394
    003aa250b 0x3aa254
    003aa254
    003aa254loc_3aa254:
    003aa254ldr x13, [sp+328]
    003aa258str x13, [sp+120]
    003aa25csubs xzr, x13, 16
    003aa260b.lt 0x3aa268
    003aa264b 0x3aa2a0
    003aa268
    003aa268loc_3aa268:
    003aa268str xzr, [sp+144]
    003aa26cstp xzr, xzr, [sp+152]
    003aa270adrp x27, 0x677000
    003aa274ldr x3, [x27+3920]
    003aa278adrp x27, 0x677000
    003aa27cldr x4, [x27+3928]
    003aa280str x3, [sp+128]
    003aa284str x4, [sp+136]
    003aa288ldr x0, [sp+144]
    003aa28cldr x1, [sp+152]
    003aa290ldr x2, [sp+160]
    003aa294ldp x29, x30, [sp-8]
    003aa298add sp, sp, 256
    003aa29cret x30
    003aa2a0
    003aa2a0loc_3aa2a0:
    003aa2a0ldr x13, [sp+328]
    003aa2a4str x13, [sp+120]
    003aa2a8movz x14, 65488
    003aa2acmovk x14, 0xffff0000
    003aa2b0movk x14, 0x3f00000000
    003aa2b4subs xzr, x13, x14
    003aa2b8b.hi 0x3aa380
    003aa2bcb 0x3aa2c0
    003aa2c0
    003aa2c0loc_3aa2c0:
    003aa2c0str xzr, [sp+224]
    003aa2c4stp xzr, xzr, [sp+232]
    003aa2c8stp xzr, xzr, [sp+208]
    003aa2ccldr x1, [sp+272]
    003aa2d0ldr x4, [sp+296]
    003aa2d4ldr x7, [sp+320]
    003aa2d8ldr x10, [sp+344]
    003aa2dcldr x2, [sp+280]
    003aa2e0ldr x5, [sp+304]
    003aa2e4ldr x8, [sp+328]
    003aa2e8ldr x11, [sp+352]
    003aa2ecldr x3, [sp+288]
    003aa2f0ldr x6, [sp+312]
    003aa2f4ldr x9, [sp+336]
    003aa2f8ldr x12, [sp+360]
    003aa2fcldr x0, [sp+264]
    003aa300bl golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).open
    003aa304str x0, [sp+224]
    003aa308str x1, [sp+232]
    003aa30cstr x2, [sp+240]
    003aa310str x3, [sp+208]
    003aa314str x4, [sp+216]
    003aa318ldr x13, [sp+224]
    003aa31cldr x14, [sp+232]
    003aa320ldr x15, [sp+240]
    003aa324str x13, [sp+184]
    003aa328str x14, [sp+192]
    003aa32cstr x15, [sp+200]
    003aa330ldr x13, [sp+208]
    003aa334ldr x14, [sp+216]
    003aa338str x13, [sp+168]
    003aa33cstr x14, [sp+176]
    003aa340ldr x13, [sp+184]
    003aa344ldr x14, [sp+192]
    003aa348ldr x15, [sp+200]
    003aa34cstr x13, [sp+144]
    003aa350str x14, [sp+152]
    003aa354str x15, [sp+160]
    003aa358ldr x3, [sp+168]
    003aa35cldr x4, [sp+176]
    003aa360str x3, [sp+128]
    003aa364str x4, [sp+136]
    003aa368ldr x0, [sp+144]
    003aa36cldr x1, [sp+152]
    003aa370ldr x2, [sp+160]
    003aa374ldp x29, x30, [sp-8]
    003aa378add sp, sp, 256
    003aa37cret x30
    003aa380
    003aa380loc_3aa380:
    003aa380adrp x0, 0x24b000
    003aa384add x0, x0, 2944
    003aa388adrp x1, 0x368000
    003aa38cadd x1, x1, 1488
    003aa390bl runtime.gopanic
    003aa394
    003aa394loc_3aa394:
    003aa394adrp x0, 0x24b000
    003aa398add x0, x0, 2944
    003aa39cadrp x1, 0x368000
    003aa3a0add x1, x1, 1472
    003aa3a4bl runtime.gopanic
    003aa3a8hint
    003aa3ac
    003aa3acloc_3aa3ac:
    003aa3acstp x0, x1, [sp+8]
    003aa3b0stp x2, x3, [sp+24]
    003aa3b4stp x4, x5, [sp+40]
    003aa3b8stp x6, x7, [sp+56]
    003aa3bcstp x8, x9, [sp+72]
    003aa3c0stp x10, x11, [sp+88]
    003aa3c4str x12, [sp+104]
    003aa3c8mov x3, x30
    003aa3ccbl runtime.morestack_noctxt.abi0
    003aa3d0ldp x0, x1, [sp+8]
    003aa3d4ldp x2, x3, [sp+24]
    003aa3d8ldp x4, x5, [sp+40]
    003aa3dcldp x6, x7, [sp+56]
    003aa3e0ldp x8, x9, [sp+72]
    003aa3e4ldp x10, x11, [sp+88]
    003aa3e8ldr x12, [sp+104]
    003aa3ecb 0x3aa1e0
    003aa1e0
    003aa3f0
    003aa3f0golang.org/x/crypto/chacha20poly1305.sliceForAppend: ; void golang.org/x/crypto/chacha20poly1305.sliceForAppend(struct []uint8 in, int n)
    003aa3f0ldr x16, [x28+16]
    003aa3f4sub x17, sp, 48
    003aa3f8subs xzr, x17, x16
    003aa3fcb.ls 0x3aa58c
    003aa400str x30, [sp-176]!
    003aa404stur x29, [sp-8]
    003aa408sub x29, sp, 8
    003aa40cstr x0, [sp+184]
    003aa410str x1, [sp+192]
    003aa414str x2, [sp+200]
    003aa418str x3, [sp+208]
    003aa41cstr xzr, [sp+96]
    003aa420stp xzr, xzr, [sp+104]
    003aa424str xzr, [sp+72]
    003aa428stp xzr, xzr, [sp+80]
    003aa42cldr x6, [sp+192]
    003aa430str x6, [sp+64]
    003aa434ldr x7, [sp+208]
    003aa438add x2, x6, x7
    003aa43cstr x2, [sp+40]
    003aa440ldr x6, [sp+200]
    003aa444str x6, [sp+64]
    003aa448subs xzr, x6, x2
    003aa44cb.ge 0x3aa454
    003aa450b 0x3aa47c
    003aa454
    003aa454loc_3aa454:
    003aa454ldr x6, [sp+200]
    003aa458ldr x7, [sp+184]
    003aa45csubs xzr, x6, x2
    003aa460b.hs 0x3aa468
    003aa464b 0x3aa57c
    003aa468
    003aa468loc_3aa468:
    003aa468b 0x3aa46c
    003aa46c
    003aa46cloc_3aa46c:
    003aa46cstr x7, [sp+96]
    003aa470str x2, [sp+104]
    003aa474str x6, [sp+112]
    003aa478b 0x3aa51c
    003aa47c
    003aa47cloc_3aa47c:
    003aa47cadrp x0, 0x24b000
    003aa480add x0, x0, 3072
    003aa484mov x1, x2
    003aa488bl runtime.makeslice
    003aa48cldr x3, [sp+40]
    003aa490ldr x4, [sp+40]
    003aa494str x0, [sp+96]
    003aa498str x3, [sp+104]
    003aa49cstr x4, [sp+112]
    003aa4a0str x0, [sp+144]
    003aa4a4str x3, [sp+152]
    003aa4a8str x4, [sp+160]
    003aa4acldr x3, [sp+192]
    003aa4b0ldr x4, [sp+184]
    003aa4b4ldr x5, [sp+200]
    003aa4b8str x4, [sp+120]
    003aa4bcstr x3, [sp+128]
    003aa4c0str x5, [sp+136]
    003aa4c4ldr x4, [sp+152]
    003aa4c8str x4, [sp+56]
    003aa4ccsubs xzr, x4, x3
    003aa4d0b.gt 0x3aa4d8
    003aa4d4b 0x3aa4e0
    003aa4d8
    003aa4d8loc_3aa4d8:
    003aa4d8str x3, [sp+56]
    003aa4dcb 0x3aa4e4
    003aa4e0
    003aa4e0loc_3aa4e0:
    003aa4e0b 0x3aa4e4
    003aa4e4
    003aa4e4loc_3aa4e4:
    003aa4e4ldr x6, [sp+120]
    003aa4e8ldr x7, [sp+144]
    003aa4ecsubs xzr, x6, x7
    003aa4f0b.ne 0x3aa4f8
    003aa4f4b 0x3aa514
    003aa4f8
    003aa4f8loc_3aa4f8:
    003aa4f8ldr x3, [sp+56]
    003aa4fcstr x3, [sp+48]
    003aa500ldr x2, [sp+48]
    003aa504ldr x1, [sp+120]
    003aa508ldr x0, [sp+144]
    003aa50cbl runtime.memmove
    003aa510b 0x3aa518
    003aa514
    003aa514loc_3aa514:
    003aa514b 0x3aa518
    003aa518
    003aa518loc_3aa518:
    003aa518b 0x3aa51c
    003aa51c
    003aa51cloc_3aa51c:
    003aa51cldr x0, [sp+192]
    003aa520str x0, [sp+64]
    003aa524ldr x1, [sp+104]
    003aa528ldr x6, [sp+112]
    003aa52cldr x7, [sp+96]
    003aa530b 0x3aa534
    003aa534
    003aa534loc_3aa534:
    003aa534subs xzr, x0, x1
    003aa538b.ls 0x3aa540
    003aa53cb 0x3aa578
    003aa540
    003aa540loc_3aa540:
    003aa540sub x5, x6, x0
    003aa544sub x4, x1, x0
    003aa548sub x6, xzr, x5
    003aa54cand x6, x0, x6, asr #63
    003aa550add x3, x7, x6
    003aa554str x3, [sp+72]
    003aa558str x4, [sp+80]
    003aa55cstr x5, [sp+88]
    003aa560ldr x0, [sp+96]
    003aa564ldr x1, [sp+104]
    003aa568ldr x2, [sp+112]
    003aa56cldur x29, [sp-8]
    003aa570ldr x30, [sp], 176
    003aa574ret x30
    003aa578
    003aa578loc_3aa578:
    003aa578bl runtime.panicSliceB
    003aa57c
    003aa57cloc_3aa57c:
    003aa57cmov x1, x2
    003aa580mov x2, x6
    003aa584bl runtime.panicSliceAcap
    003aa588hint
    003aa58c
    003aa58cloc_3aa58c:
    003aa58cstp x0, x1, [sp+8]
    003aa590stp x2, x3, [sp+24]
    003aa594mov x3, x30
    003aa598bl runtime.morestack_noctxt.abi0
    003aa59cldp x0, x1, [sp+8]
    003aa5a0ldp x2, x3, [sp+24]
    003aa5a4b 0x3aa3f0
    003aa5a8udf 0
    003aa5acudf 0
    003aa3f0
    003aa5b0
    003aa5b0golang.org/x/crypto/chacha20poly1305.writeWithPadding: ; void golang.org/x/crypto/chacha20poly1305.writeWithPadding(golang.org/x/crypto/internal/poly1305.MAC * p, struct []uint8 b)
    003aa5b0ldr x16, [x28+16]
    003aa5b4subs xzr, sp, x16
    003aa5b8b.ls 0x3aa65c
    003aa5bcstr x30, [sp-112]!
    003aa5c0stur x29, [sp-8]
    003aa5c4sub x29, sp, 8
    003aa5c8str x0, [sp+120]
    003aa5ccstr x1, [sp+128]
    003aa5d0str x2, [sp+136]
    003aa5d4str x3, [sp+144]
    003aa5d8bl golang.org/x/crypto/internal/poly1305.(*MAC).Write
    003aa5dcldr x4, [sp+136]
    003aa5e0str x4, [sp+72]
    003aa5e4and x4, x4, 15
    003aa5e8str x4, [sp+56]
    003aa5eccbnz x4, 0x3aa5f4
    003aa5f0b 0x3aa644
    003aa5f4
    003aa5f4loc_3aa5f4:
    003aa5f4stp xzr, xzr, [sp+40]
    003aa5f8ldr x4, [sp+56]
    003aa5fcorr x2, xzr, 16
    003aa600sub x1, x2, x4
    003aa604str x1, [sp+64]
    003aa608add x4, sp, 40
    003aa60cldrsb x27, [x4]
    003aa610subs xzr, x1, 16
    003aa614b.ls 0x3aa61c
    003aa618b 0x3aa654
    003aa61c
    003aa61cloc_3aa61c:
    003aa61cb 0x3aa620
    003aa620
    003aa620loc_3aa620:
    003aa620str x4, [sp+80]
    003aa624str x1, [sp+88]
    003aa628str x2, [sp+96]
    003aa62cldr x0, [sp+120]
    003aa630mov x3, x2
    003aa634mov x2, x1
    003aa638mov x1, x4
    003aa63cbl golang.org/x/crypto/internal/poly1305.(*MAC).Write
    003aa640b 0x3aa648
    003aa644
    003aa644loc_3aa644:
    003aa644b 0x3aa648
    003aa648
    003aa648loc_3aa648:
    003aa648ldur x29, [sp-8]
    003aa64cldr x30, [sp], 112
    003aa650ret x30
    003aa654
    003aa654loc_3aa654:
    003aa654bl runtime.panicSliceAlen
    003aa658hint
    003aa65c
    003aa65cloc_3aa65c:
    003aa65cstp x0, x1, [sp+8]
    003aa660stp x2, x3, [sp+24]
    003aa664mov x3, x30
    003aa668bl runtime.morestack_noctxt.abi0
    003aa66cldp x0, x1, [sp+8]
    003aa670ldp x2, x3, [sp+24]
    003aa674b 0x3aa5b0
    003aa678udf 0
    003aa67cudf 0
    003aa5b0
    003aa680
    003aa680golang.org/x/crypto/chacha20poly1305.writeUint64: ; void golang.org/x/crypto/chacha20poly1305.writeUint64(golang.org/x/crypto/internal/poly1305.MAC * p, int n)
    003aa680ldr x16, [x28+16]
    003aa684subs xzr, sp, x16
    003aa688b.ls 0x3aa700
    003aa68cstr x30, [sp-80]!
    003aa690stur x29, [sp-8]
    003aa694sub x29, sp, 8
    003aa698str x0, [sp+88]
    003aa69cstr x1, [sp+96]
    003aa6a0str xzr, [sp+40]
    003aa6a4add x0, sp, 40
    003aa6a8ldrsb x27, [x0]
    003aa6acb 0x3aa6b0
    003aa6b0
    003aa6b0loc_3aa6b0:
    003aa6b0str x0, [sp+48]
    003aa6b4orr x2, xzr, 8
    003aa6b8str x2, [sp+56]
    003aa6bcstr x2, [sp+64]
    003aa6c0ldr x3, [sp+96]
    003aa6c4mov x1, x2
    003aa6c8bl encoding/binary.littleEndian.PutUint64
    003aa6ccadd x1, sp, 40
    003aa6d0ldrsb x27, [x1]
    003aa6d4b 0x3aa6d8
    003aa6d8
    003aa6d8loc_3aa6d8:
    003aa6d8str x1, [sp+48]
    003aa6dcorr x3, xzr, 8
    003aa6e0str x3, [sp+56]
    003aa6e4str x3, [sp+64]
    003aa6e8ldr x0, [sp+88]
    003aa6ecmov x2, x3
    003aa6f0bl golang.org/x/crypto/internal/poly1305.(*MAC).Write
    003aa6f4ldur x29, [sp-8]
    003aa6f8ldr x30, [sp], 80
    003aa6fcret x30
    003aa700
    003aa700loc_3aa700:
    003aa700stp x0, x1, [sp+8]
    003aa704mov x3, x30
    003aa708bl runtime.morestack_noctxt.abi0
    003aa70cldp x0, x1, [sp+8]
    003aa710b 0x3aa680
    003aa714udf 0
    003aa718udf 0
    003aa71cudf 0
    003aa680
    003aa720
    003aa720golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).sealGeneric: ; void golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).sealGeneric(golang.org/x/crypto/chacha20poly1305.chacha20poly1305 * c, struct []uint8 dst, struct []uint8 nonce, struct []uint8 plaintext, struct []uint8 additionalData)
    003aa720ldr x16, [x28+16]
    003aa724sub x17, sp, 288
    003aa728subs xzr, x17, x16
    003aa72cb.ls 0x3aaa98
    003aa730sub x20, sp, 416
    003aa734stp x29, x30, [x20-8]
    003aa738add sp, x20, 0
    003aa73csub x29, sp, 8
    003aa740str x0, [sp+424]
    003aa744str x1, [sp+432]
    003aa748str x2, [sp+440]
    003aa74cstr x3, [sp+448]
    003aa750str x4, [sp+456]
    003aa754str x5, [sp+464]
    003aa758str x6, [sp+472]
    003aa75cstr x7, [sp+480]
    003aa760str x8, [sp+488]
    003aa764str x9, [sp+496]
    003aa768str x10, [sp+504]
    003aa76cstr x11, [sp+512]
    003aa770str x12, [sp+520]
    003aa774str xzr, [sp+128]
    003aa778stp xzr, xzr, [sp+136]
    003aa77cldr x4, [sp+488]
    003aa780str x4, [sp+120]
    003aa784str xzr, [sp+360]
    003aa788stp xzr, xzr, [sp+368]
    003aa78cstr xzr, [sp+336]
    003aa790stp xzr, xzr, [sp+344]
    003aa794ldr x1, [sp+440]
    003aa798ldr x2, [sp+448]
    003aa79cldr x0, [sp+432]
    003aa7a0ldr x4, [sp+120]
    003aa7a4add x3, x4, 16
    003aa7a8bl golang.org/x/crypto/chacha20poly1305.sliceForAppend
    003aa7acstr x0, [sp+360]
    003aa7b0str x1, [sp+368]
    003aa7b4str x2, [sp+376]
    003aa7b8str x3, [sp+336]
    003aa7bcstr x4, [sp+344]
    003aa7c0str x5, [sp+352]
    003aa7c4ldr x4, [sp+360]
    003aa7c8ldr x5, [sp+368]
    003aa7ccldr x6, [sp+376]
    003aa7d0str x4, [sp+288]
    003aa7d4str x5, [sp+296]
    003aa7d8str x6, [sp+304]
    003aa7dcldr x4, [sp+336]
    003aa7e0ldr x5, [sp+344]
    003aa7e4ldr x6, [sp+352]
    003aa7e8str x4, [sp+264]
    003aa7ecstr x5, [sp+272]
    003aa7f0str x6, [sp+280]
    003aa7f4ldr x4, [sp+288]
    003aa7f8ldr x5, [sp+296]
    003aa7fcldr x6, [sp+304]
    003aa800str x4, [sp+184]
    003aa804str x5, [sp+192]
    003aa808str x6, [sp+200]
    003aa80cldr x2, [sp+280]
    003aa810ldr x4, [sp+264]
    003aa814ldr x5, [sp+272]
    003aa818str x4, [sp+216]
    003aa81cstr x5, [sp+224]
    003aa820str x2, [sp+232]
    003aa824ldr x1, [sp+488]
    003aa828str x1, [sp+120]
    003aa82csubs xzr, x1, x2
    003aa830b.ls 0x3aa838
    003aa834b 0x3aaa90
    003aa838
    003aa838loc_3aa838:
    003aa838b 0x3aa83c
    003aa83c
    003aa83cloc_3aa83c:
    003aa83cstr x4, [sp+336]
    003aa840str x1, [sp+344]
    003aa844str x2, [sp+352]
    003aa848ldr x0, [sp+488]
    003aa84cstr x0, [sp+112]
    003aa850ldr x1, [sp+224]
    003aa854ldr x6, [sp+216]
    003aa858ldr x7, [sp+232]
    003aa85cb 0x3aa860
    003aa860
    003aa860loc_3aa860:
    003aa860subs xzr, x1, x0
    003aa864b.hs 0x3aa86c
    003aa868b 0x3aaa8c
    003aa86c
    003aa86cloc_3aa86c:
    003aa86csub x7, x7, x0
    003aa870sub x8, x1, x0
    003aa874sub x9, xzr, x7
    003aa878and x9, x0, x9, asr #63
    003aa87cadd x6, x6, x9
    003aa880str x6, [sp+360]
    003aa884str x8, [sp+368]
    003aa888str x7, [sp+376]
    003aa88cldr x6, [sp+336]
    003aa890ldr x7, [sp+344]
    003aa894ldr x8, [sp+352]
    003aa898str x6, [sp+240]
    003aa89cstr x7, [sp+248]
    003aa8a0str x8, [sp+256]
    003aa8a4ldr x6, [sp+360]
    003aa8a8ldr x7, [sp+368]
    003aa8acldr x8, [sp+376]
    003aa8b0str x6, [sp+152]
    003aa8b4str x7, [sp+160]
    003aa8b8str x8, [sp+168]
    003aa8bcldr x0, [sp+216]
    003aa8c0ldr x3, [sp+480]
    003aa8c4ldr x1, [sp+224]
    003aa8c8ldr x4, [sp+488]
    003aa8ccldr x2, [sp+232]
    003aa8d0ldr x5, [sp+496]
    003aa8d4bl golang.org/x/crypto/internal/alias.InexactOverlap
    003aa8d8strb w0, [sp+111]
    003aa8dctbnz w0, 0, 0x3aaa78
    003aa8e0b 0x3aa8e4
    003aa8e4
    003aa8e4loc_3aa8e4:
    003aa8e4add x27, sp, 79
    003aa8e8stp xzr, xzr, [x27]
    003aa8ecadd x27, sp, 95
    003aa8f0stp xzr, xzr, [x27]
    003aa8f4ldr x6, [sp+424]
    003aa8f8ldrsb x27, [x6]
    003aa8fcldrsb x27, [x6]
    003aa900b 0x3aa904
    003aa904
    003aa904loc_3aa904:
    003aa904str x6, [sp+360]
    003aa908orr x6, xzr, 32
    003aa90cstr x6, [sp+368]
    003aa910str x6, [sp+376]
    003aa914str xzr, [sp+328]
    003aa918stp xzr, xzr, [sp+312]
    003aa91cldr x3, [sp+456]
    003aa920ldr x4, [sp+464]
    003aa924ldr x5, [sp+472]
    003aa928ldr x0, [sp+360]
    003aa92cldr x1, [sp+368]
    003aa930ldr x2, [sp+376]
    003aa934bl golang.org/x/crypto/chacha20.NewUnauthenticatedCipher
    003aa938str x0, [sp+328]
    003aa93cstr x1, [sp+312]
    003aa940str x2, [sp+320]
    003aa944ldr x6, [sp+328]
    003aa948str x6, [sp+400]
    003aa94cldr x6, [sp+312]
    003aa950ldr x7, [sp+320]
    003aa954str x6, [sp+384]
    003aa958str x7, [sp+392]
    003aa95cldr x6, [sp+400]
    003aa960str x6, [sp+176]
    003aa964add x6, sp, 79
    003aa968ldrsb x27, [x6]
    003aa96cb 0x3aa970
    003aa970
    003aa970loc_3aa970:
    003aa970str x6, [sp+360]
    003aa974orr x6, xzr, 32
    003aa978str x6, [sp+368]
    003aa97cstr x6, [sp+376]
    003aa980add x4, sp, 79
    003aa984ldrsb x27, [x4]
    003aa988b 0x3aa98c
    003aa98c
    003aa98cloc_3aa98c:
    003aa98cstr x4, [sp+336]
    003aa990str x6, [sp+344]
    003aa994str x6, [sp+352]
    003aa998ldr x0, [sp+176]
    003aa99cldr x1, [sp+360]
    003aa9a0ldr x2, [sp+368]
    003aa9a4ldr x3, [sp+376]
    003aa9a8mov x5, x6
    003aa9acbl golang.org/x/crypto/chacha20.(*Cipher).XORKeyStream
    003aa9b0ldr x0, [sp+176]
    003aa9b4orr x1, xzr, 1
    003aa9b8bl golang.org/x/crypto/chacha20.(*Cipher).SetCounter
    003aa9bcldr x1, [sp+240]
    003aa9c0ldr x4, [sp+480]
    003aa9c4ldr x2, [sp+248]
    003aa9c8ldr x5, [sp+488]
    003aa9ccldr x3, [sp+256]
    003aa9d0ldr x6, [sp+496]
    003aa9d4ldr x0, [sp+176]
    003aa9d8bl golang.org/x/crypto/chacha20.(*Cipher).XORKeyStream
    003aa9dcadd x0, sp, 79
    003aa9e0bl golang.org/x/crypto/internal/poly1305.New
    003aa9e4str x0, [sp+208]
    003aa9e8ldr x2, [sp+512]
    003aa9ecldr x3, [sp+520]
    003aa9f0ldr x1, [sp+504]
    003aa9f4bl golang.org/x/crypto/chacha20poly1305.writeWithPadding
    003aa9f8ldr x1, [sp+240]
    003aa9fcldr x2, [sp+248]
    003aaa00ldr x3, [sp+256]
    003aaa04ldr x0, [sp+208]
    003aaa08bl golang.org/x/crypto/chacha20poly1305.writeWithPadding
    003aaa0cldr x1, [sp+512]
    003aaa10str x1, [sp+112]
    003aaa14ldr x0, [sp+208]
    003aaa18bl golang.org/x/crypto/chacha20poly1305.writeUint64
    003aaa1cldr x1, [sp+488]
    003aaa20str x1, [sp+112]
    003aaa24ldr x0, [sp+208]
    003aaa28bl golang.org/x/crypto/chacha20poly1305.writeUint64
    003aaa2cldr x1, [sp+152]
    003aaa30ldr x3, [sp+168]
    003aaa34b 0x3aaa38
    003aaa38
    003aaa38loc_3aaa38:
    003aaa38b 0x3aaa3c
    003aaa3c
    003aaa3cloc_3aaa3c:
    003aaa3cstr x1, [sp+336]
    003aaa40str xzr, [sp+344]
    003aaa44str x3, [sp+352]
    003aaa48ldr x0, [sp+208]
    003aaa4cmov x2, xzr
    003aaa50bl golang.org/x/crypto/internal/poly1305.(*MAC).Sum
    003aaa54ldr x0, [sp+184]
    003aaa58ldr x1, [sp+192]
    003aaa5cldr x2, [sp+200]
    003aaa60str x0, [sp+128]
    003aaa64str x1, [sp+136]
    003aaa68str x2, [sp+144]
    003aaa6cldp x29, x30, [sp-8]
    003aaa70add sp, sp, 416
    003aaa74ret x30
    003aaa78
    003aaa78loc_3aaa78:
    003aaa78adrp x0, 0x24b000
    003aaa7cadd x0, x0, 2944
    003aaa80adrp x1, 0x368000
    003aaa84add x1, x1, 1504
    003aaa88bl runtime.gopanic
    003aaa8c
    003aaa8cloc_3aaa8c:
    003aaa8cbl runtime.panicSliceB
    003aaa90
    003aaa90loc_3aaa90:
    003aaa90bl runtime.panicSliceAcap
    003aaa94hint
    003aaa98
    003aaa98loc_3aaa98:
    003aaa98stp x0, x1, [sp+8]
    003aaa9cstp x2, x3, [sp+24]
    003aaaa0stp x4, x5, [sp+40]
    003aaaa4stp x6, x7, [sp+56]
    003aaaa8stp x8, x9, [sp+72]
    003aaaacstp x10, x11, [sp+88]
    003aaab0str x12, [sp+104]
    003aaab4mov x3, x30
    003aaab8bl runtime.morestack_noctxt.abi0
    003aaabcldp x0, x1, [sp+8]
    003aaac0ldp x2, x3, [sp+24]
    003aaac4ldp x4, x5, [sp+40]
    003aaac8ldp x6, x7, [sp+56]
    003aaaccldp x8, x9, [sp+72]
    003aaad0ldp x10, x11, [sp+88]
    003aaad4ldr x12, [sp+104]
    003aaad8b 0x3aa720
    003aaadcudf 0
    003aa720
    003aaae0
    003aaae0golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).openGeneric: ; void golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).openGeneric(golang.org/x/crypto/chacha20poly1305.chacha20poly1305 * c, struct []uint8 dst, struct []uint8 nonce, struct []uint8 ciphertext, struct []uint8 additionalData)
    003aaae0ldr x16, [x28+16]
    003aaae4sub x17, sp, 304
    003aaae8subs xzr, x17, x16
    003aaaecb.ls 0x3aaed4
    003aaaf0sub x20, sp, 432
    003aaaf4stp x29, x30, [x20-8]
    003aaaf8add sp, x20, 0
    003aaafcsub x29, sp, 8
    003aab00str x0, [sp+440]
    003aab04str x1, [sp+448]
    003aab08str x2, [sp+456]
    003aab0cstr x3, [sp+464]
    003aab10str x4, [sp+472]
    003aab14str x5, [sp+480]
    003aab18str x6, [sp+488]
    003aab1cstr x7, [sp+496]
    003aab20str x8, [sp+504]
    003aab24str x9, [sp+512]
    003aab28str x10, [sp+520]
    003aab2cstr x11, [sp+528]
    003aab30str x12, [sp+536]
    003aab34str xzr, [sp+168]
    003aab38stp xzr, xzr, [sp+176]
    003aab3cstp xzr, xzr, [sp+152]
    003aab40ldr x6, [sp+504]
    003aab44str x6, [sp+144]
    003aab48sub x0, x6, 16
    003aab4cstr x0, [sp+136]
    003aab50ldr x1, [sp+504]
    003aab54ldr x7, [sp+512]
    003aab58ldr x8, [sp+496]
    003aab5cb 0x3aab60
    003aab60
    003aab60loc_3aab60:
    003aab60subs xzr, x1, x0
    003aab64b.hs 0x3aab6c
    003aab68b 0x3aaecc
    003aab6c
    003aab6cloc_3aab6c:
    003aab6csub x9, x1, x6
    003aab70sub x6, x7, x6
    003aab74add x6, x6, 16
    003aab78sub x7, xzr, x6
    003aab7cand x7, x0, x7, asr #63
    003aab80add x7, x8, x7
    003aab84str x7, [sp+192]
    003aab88add x7, x9, 16
    003aab8cstr x7, [sp+200]
    003aab90str x6, [sp+208]
    003aab94ldr x6, [sp+504]
    003aab98str x6, [sp+136]
    003aab9csub x1, x6, 16
    003aaba0str x1, [sp+144]
    003aaba4ldr x2, [sp+512]
    003aaba8subs xzr, x2, x1
    003aabacb.hs 0x3aabb4
    003aabb0b 0x3aaec8
    003aabb4
    003aabb4loc_3aabb4:
    003aabb4b 0x3aabb8
    003aabb8
    003aabb8loc_3aabb8:
    003aabb8str x1, [sp+504]
    003aabbcadd x27, sp, 79
    003aabc0stp xzr, xzr, [x27]
    003aabc4add x27, sp, 95
    003aabc8stp xzr, xzr, [x27]
    003aabccldr x6, [sp+440]
    003aabd0ldrsb x27, [x6]
    003aabd4ldrsb x27, [x6]
    003aabd8b 0x3aabdc
    003aabdc
    003aabdcloc_3aabdc:
    003aabdcstr x6, [sp+328]
    003aabe0orr x6, xzr, 32
    003aabe4str x6, [sp+336]
    003aabe8str x6, [sp+344]
    003aabecstr xzr, [sp+320]
    003aabf0stp xzr, xzr, [sp+304]
    003aabf4ldr x3, [sp+472]
    003aabf8ldr x4, [sp+480]
    003aabfcldr x5, [sp+488]
    003aac00ldr x0, [sp+328]
    003aac04ldr x1, [sp+336]
    003aac08ldr x2, [sp+344]
    003aac0cbl golang.org/x/crypto/chacha20.NewUnauthenticatedCipher
    003aac10str x0, [sp+320]
    003aac14str x1, [sp+304]
    003aac18str x2, [sp+312]
    003aac1cldr x6, [sp+320]
    003aac20str x6, [sp+416]
    003aac24ldr x6, [sp+304]
    003aac28ldr x7, [sp+312]
    003aac2cstr x6, [sp+400]
    003aac30str x7, [sp+408]
    003aac34ldr x6, [sp+416]
    003aac38str x6, [sp+216]
    003aac3cadd x6, sp, 79
    003aac40ldrsb x27, [x6]
    003aac44b 0x3aac48
    003aac48
    003aac48loc_3aac48:
    003aac48str x6, [sp+328]
    003aac4corr x6, xzr, 32
    003aac50str x6, [sp+336]
    003aac54str x6, [sp+344]
    003aac58add x4, sp, 79
    003aac5cldrsb x27, [x4]
    003aac60b 0x3aac64
    003aac64
    003aac64loc_3aac64:
    003aac64str x4, [sp+280]
    003aac68str x6, [sp+288]
    003aac6cstr x6, [sp+296]
    003aac70ldr x0, [sp+216]
    003aac74ldr x1, [sp+328]
    003aac78ldr x2, [sp+336]
    003aac7cldr x3, [sp+344]
    003aac80mov x5, x6
    003aac84bl golang.org/x/crypto/chacha20.(*Cipher).XORKeyStream
    003aac88ldr x0, [sp+216]
    003aac8corr x1, xzr, 1
    003aac90bl golang.org/x/crypto/chacha20.(*Cipher).SetCounter
    003aac94add x0, sp, 79
    003aac98bl golang.org/x/crypto/internal/poly1305.New
    003aac9cstr x0, [sp+248]
    003aaca0ldr x2, [sp+528]
    003aaca4ldr x3, [sp+536]
    003aaca8ldr x1, [sp+520]
    003aacacbl golang.org/x/crypto/chacha20poly1305.writeWithPadding
    003aacb0ldr x1, [sp+496]
    003aacb4ldr x2, [sp+504]
    003aacb8ldr x3, [sp+512]
    003aacbcldr x0, [sp+248]
    003aacc0bl golang.org/x/crypto/chacha20poly1305.writeWithPadding
    003aacc4ldr x1, [sp+528]
    003aacc8str x1, [sp+144]
    003aacccldr x0, [sp+248]
    003aacd0bl golang.org/x/crypto/chacha20poly1305.writeUint64
    003aacd4ldr x1, [sp+504]
    003aacd8str x1, [sp+144]
    003aacdcldr x0, [sp+248]
    003aace0bl golang.org/x/crypto/chacha20poly1305.writeUint64
    003aace4ldr x7, [sp+504]
    003aace8str x7, [sp+144]
    003aacecstr xzr, [sp+280]
    003aacf0stp xzr, xzr, [sp+288]
    003aacf4str xzr, [sp+328]
    003aacf8stp xzr, xzr, [sp+336]
    003aacfcldr x3, [sp+144]
    003aad00ldr x1, [sp+456]
    003aad04ldr x2, [sp+464]
    003aad08ldr x0, [sp+448]
    003aad0cbl golang.org/x/crypto/chacha20poly1305.sliceForAppend
    003aad10str x0, [sp+280]
    003aad14str x1, [sp+288]
    003aad18str x2, [sp+296]
    003aad1cstr x3, [sp+328]
    003aad20str x4, [sp+336]
    003aad24str x5, [sp+344]
    003aad28ldr x7, [sp+280]
    003aad2cldr x8, [sp+288]
    003aad30ldr x9, [sp+296]
    003aad34str x7, [sp+376]
    003aad38str x8, [sp+384]
    003aad3cstr x9, [sp+392]
    003aad40ldr x7, [sp+328]
    003aad44ldr x8, [sp+336]
    003aad48ldr x9, [sp+344]
    003aad4cstr x7, [sp+352]
    003aad50str x8, [sp+360]
    003aad54str x9, [sp+368]
    003aad58ldr x7, [sp+376]
    003aad5cldr x8, [sp+384]
    003aad60ldr x9, [sp+392]
    003aad64str x7, [sp+224]
    003aad68str x8, [sp+232]
    003aad6cstr x9, [sp+240]
    003aad70ldr x0, [sp+352]
    003aad74ldr x1, [sp+360]
    003aad78ldr x2, [sp+368]
    003aad7cstr x0, [sp+256]
    003aad80str x1, [sp+264]
    003aad84str x2, [sp+272]
    003aad88ldr x4, [sp+504]
    003aad8cldr x5, [sp+512]
    003aad90ldr x3, [sp+496]
    003aad94bl golang.org/x/crypto/internal/alias.InexactOverlap
    003aad98strb w0, [sp+111]
    003aad9ctbnz w0, 0, 0x3aaeb4
    003aada0b 0x3aada4
    003aada4
    003aada4loc_3aada4:
    003aada4ldr x1, [sp+192]
    003aada8ldr x2, [sp+200]
    003aadacldr x3, [sp+208]
    003aadb0ldr x0, [sp+248]
    003aadb4bl golang.org/x/crypto/internal/poly1305.(*MAC).Verify
    003aadb8strb w0, [sp+111]
    003aadbctbnz w0, 0, 0x3aadc4
    003aadc0b 0x3aae20
    003aadc4
    003aadc4loc_3aadc4:
    003aadc4ldr x1, [sp+256]
    003aadc8ldr x4, [sp+496]
    003aadccldr x2, [sp+264]
    003aadd0ldr x5, [sp+504]
    003aadd4ldr x3, [sp+272]
    003aadd8ldr x6, [sp+512]
    003aaddcldr x0, [sp+216]
    003aade0bl golang.org/x/crypto/chacha20.(*Cipher).XORKeyStream
    003aade4ldr x7, [sp+224]
    003aade8ldr x8, [sp+232]
    003aadecldr x9, [sp+240]
    003aadf0str x7, [sp+168]
    003aadf4str x8, [sp+176]
    003aadf8str x9, [sp+184]
    003aadfcstp xzr, xzr, [sp+152]
    003aae00ldr x0, [sp+168]
    003aae04ldr x1, [sp+176]
    003aae08ldr x2, [sp+184]
    003aae0cmov x3, xzr
    003aae10mov x4, xzr
    003aae14ldp x29, x30, [sp-8]
    003aae18add sp, sp, 432
    003aae1cret x30
    003aae20
    003aae20loc_3aae20:
    003aae20str xzr, [sp+128]
    003aae24ldr x5, [sp+264]
    003aae28str x5, [sp+120]
    003aae2cb 0x3aae30
    003aae30
    003aae30loc_3aae30:
    003aae30ldr x5, [sp+120]
    003aae34ldr x6, [sp+128]
    003aae38subs xzr, x5, x6
    003aae3cb.gt 0x3aae44
    003aae40b 0x3aae78
    003aae44
    003aae44loc_3aae44:
    003aae44ldr x0, [sp+128]
    003aae48str x0, [sp+112]
    003aae4cldr x1, [sp+264]
    003aae50ldr x5, [sp+256]
    003aae54subs xzr, x1, x0
    003aae58b.hi 0x3aae60
    003aae5cb 0x3aaeb0
    003aae60
    003aae60loc_3aae60:
    003aae60strb wzr, [x5+x0]
    003aae64b 0x3aae68
    003aae68
    003aae68loc_3aae68:
    003aae68ldr x5, [sp+128]
    003aae6cadd x5, x5, 1
    003aae70str x5, [sp+128]
    003aae74b 0x3aae30
    003aae78
    003aae78loc_3aae78:
    003aae78str xzr, [sp+168]
    003aae7cstp xzr, xzr, [sp+176]
    003aae80adrp x27, 0x677000
    003aae84ldr x3, [x27+3920]
    003aae88adrp x27, 0x677000
    003aae8cldr x4, [x27+3928]
    003aae90str x3, [sp+152]
    003aae94str x4, [sp+160]
    003aae98ldr x0, [sp+168]
    003aae9cldr x1, [sp+176]
    003aaea0ldr x2, [sp+184]
    003aaea4ldp x29, x30, [sp-8]
    003aaea8add sp, sp, 432
    003aaeacret x30
    003aaeb0
    003aaeb0loc_3aaeb0:
    003aaeb0bl runtime.panicIndex
    003aaeb4
    003aaeb4loc_3aaeb4:
    003aaeb4adrp x0, 0x24b000
    003aaeb8add x0, x0, 2944
    003aaebcadrp x1, 0x368000
    003aaec0add x1, x1, 1504
    003aaec4bl runtime.gopanic
    003aaec8
    003aaec8loc_3aaec8:
    003aaec8bl runtime.panicSliceAcap
    003aaecc
    003aaeccloc_3aaecc:
    003aaeccbl runtime.panicSliceB
    003aaed0hint
    003aaed4
    003aaed4loc_3aaed4:
    003aaed4stp x0, x1, [sp+8]
    003aaed8stp x2, x3, [sp+24]
    003aaedcstp x4, x5, [sp+40]
    003aaee0stp x6, x7, [sp+56]
    003aaee4stp x8, x9, [sp+72]
    003aaee8stp x10, x11, [sp+88]
    003aaeecstr x12, [sp+104]
    003aaef0mov x3, x30
    003aaef4bl runtime.morestack_noctxt.abi0
    003aaef8ldp x0, x1, [sp+8]
    003aaefcldp x2, x3, [sp+24]
    003aaf00ldp x4, x5, [sp+40]
    003aaf04ldp x6, x7, [sp+56]
    003aaf08ldp x8, x9, [sp+72]
    003aaf0cldp x10, x11, [sp+88]
    003aaf10ldr x12, [sp+104]
    003aaf14b 0x3aaae0
    003aaf18udf 0
    003aaf1cudf 0
    003aaae0
    003aaf20
    003aaf20golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).seal: ; void golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).seal(golang.org/x/crypto/chacha20poly1305.chacha20poly1305 * c, struct []uint8 dst, struct []uint8 nonce, struct []uint8 plaintext, struct []uint8 additionalData)
    003aaf20ldr x16, [x28+16]
    003aaf24sub x17, sp, 48
    003aaf28subs xzr, x17, x16
    003aaf2cb.ls 0x3aafd4
    003aaf30str x30, [sp-176]!
    003aaf34stur x29, [sp-8]
    003aaf38sub x29, sp, 8
    003aaf3cstr x0, [sp+184]
    003aaf40str x1, [sp+192]
    003aaf44str x2, [sp+200]
    003aaf48str x3, [sp+208]
    003aaf4cstr x4, [sp+216]
    003aaf50str x5, [sp+224]
    003aaf54str x6, [sp+232]
    003aaf58str x7, [sp+240]
    003aaf5cstr x8, [sp+248]
    003aaf60str x9, [sp+256]
    003aaf64str x10, [sp+264]
    003aaf68str x11, [sp+272]
    003aaf6cstr x12, [sp+280]
    003aaf70str xzr, [sp+120]
    003aaf74stp xzr, xzr, [sp+128]
    003aaf78ldr x1, [sp+192]
    003aaf7cldr x4, [sp+216]
    003aaf80ldr x7, [sp+240]
    003aaf84ldr x10, [sp+264]
    003aaf88ldr x2, [sp+200]
    003aaf8cldr x5, [sp+224]
    003aaf90ldr x8, [sp+248]
    003aaf94ldr x11, [sp+272]
    003aaf98ldr x3, [sp+208]
    003aaf9cldr x6, [sp+232]
    003aafa0ldr x9, [sp+256]
    003aafa4ldr x12, [sp+280]
    003aafa8ldr x0, [sp+184]
    003aafacbl golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).sealGeneric
    003aafb0str x0, [sp+144]
    003aafb4str x1, [sp+152]
    003aafb8str x2, [sp+160]
    003aafbcstr x0, [sp+120]
    003aafc0str x1, [sp+128]
    003aafc4str x2, [sp+136]
    003aafc8ldur x29, [sp-8]
    003aafccldr x30, [sp], 176
    003aafd0ret x30
    003aafd4
    003aafd4loc_3aafd4:
    003aafd4stp x0, x1, [sp+8]
    003aafd8stp x2, x3, [sp+24]
    003aafdcstp x4, x5, [sp+40]
    003aafe0stp x6, x7, [sp+56]
    003aafe4stp x8, x9, [sp+72]
    003aafe8stp x10, x11, [sp+88]
    003aafecstr x12, [sp+104]
    003aaff0mov x3, x30
    003aaff4bl runtime.morestack_noctxt.abi0
    003aaff8ldp x0, x1, [sp+8]
    003aaffcldp x2, x3, [sp+24]
    003ab000ldp x4, x5, [sp+40]
    003ab004ldp x6, x7, [sp+56]
    003ab008ldp x8, x9, [sp+72]
    003ab00cldp x10, x11, [sp+88]
    003ab010ldr x12, [sp+104]
    003ab014b 0x3aaf20
    003ab018udf 0
    003ab01cudf 0
    003aaf20
    003ab020
    003ab020golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).open: ; void golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).open(golang.org/x/crypto/chacha20poly1305.chacha20poly1305 * c, struct []uint8 dst, struct []uint8 nonce, struct []uint8 ciphertext, struct []uint8 additionalData)
    003ab020ldr x16, [x28+16]
    003ab024sub x17, sp, 112
    003ab028subs xzr, x17, x16
    003ab02cb.ls 0x3ab13c
    003ab030str x30, [sp-240]!
    003ab034stur x29, [sp-8]
    003ab038sub x29, sp, 8
    003ab03cstr x0, [sp+248]
    003ab040str x1, [sp+256]
    003ab044str x2, [sp+264]
    003ab048str x3, [sp+272]
    003ab04cstr x4, [sp+280]
    003ab050str x5, [sp+288]
    003ab054str x6, [sp+296]
    003ab058str x7, [sp+304]
    003ab05cstr x8, [sp+312]
    003ab060str x9, [sp+320]
    003ab064str x10, [sp+328]
    003ab068str x11, [sp+336]
    003ab06cstr x12, [sp+344]
    003ab070str xzr, [sp+128]
    003ab074stp xzr, xzr, [sp+136]
    003ab078stp xzr, xzr, [sp+112]
    003ab07cstr xzr, [sp+152]
    003ab080stp xzr, xzr, [sp+160]
    003ab084stp xzr, xzr, [sp+216]
    003ab088ldr x1, [sp+256]
    003ab08cldr x4, [sp+280]
    003ab090ldr x7, [sp+304]
    003ab094ldr x10, [sp+328]
    003ab098ldr x2, [sp+264]
    003ab09cldr x5, [sp+288]
    003ab0a0ldr x8, [sp+312]
    003ab0a4ldr x11, [sp+336]
    003ab0a8ldr x3, [sp+272]
    003ab0acldr x6, [sp+296]
    003ab0b0ldr x9, [sp+320]
    003ab0b4ldr x12, [sp+344]
    003ab0b8ldr x0, [sp+248]
    003ab0bcbl golang.org/x/crypto/chacha20poly1305.(*chacha20poly1305).openGeneric
    003ab0c0str x0, [sp+152]
    003ab0c4str x1, [sp+160]
    003ab0c8str x2, [sp+168]
    003ab0ccstr x3, [sp+216]
    003ab0d0str x4, [sp+224]
    003ab0d4ldr x13, [sp+152]
    003ab0d8ldr x14, [sp+160]
    003ab0dcldr x15, [sp+168]
    003ab0e0str x13, [sp+192]
    003ab0e4str x14, [sp+200]
    003ab0e8str x15, [sp+208]
    003ab0ecldr x13, [sp+216]
    003ab0f0ldr x14, [sp+224]
    003ab0f4str x13, [sp+176]
    003ab0f8str x14, [sp+184]
    003ab0fcldr x13, [sp+192]
    003ab100ldr x14, [sp+200]
    003ab104ldr x15, [sp+208]
    003ab108str x13, [sp+128]
    003ab10cstr x14, [sp+136]
    003ab110str x15, [sp+144]
    003ab114ldr x3, [sp+176]
    003ab118ldr x4, [sp+184]
    003ab11cstr x3, [sp+112]
    003ab120str x4, [sp+120]
    003ab124ldr x0, [sp+128]
    003ab128ldr x1, [sp+136]
    003ab12cldr x2, [sp+144]
    003ab130ldur x29, [sp-8]
    003ab134ldr x30, [sp], 240
    003ab138ret x30
    003ab13c
    003ab13cloc_3ab13c:
    003ab13cstp x0, x1, [sp+8]
    003ab140stp x2, x3, [sp+24]
    003ab144stp x4, x5, [sp+40]
    003ab148stp x6, x7, [sp+56]
    003ab14cstp x8, x9, [sp+72]
    003ab150stp x10, x11, [sp+88]
    003ab154str x12, [sp+104]
    003ab158mov x3, x30
    003ab15cbl runtime.morestack_noctxt.abi0
    003ab160ldp x0, x1, [sp+8]
    003ab164ldp x2, x3, [sp+24]
    003ab168ldp x4, x5, [sp+40]
    003ab16cldp x6, x7, [sp+56]
    003ab170ldp x8, x9, [sp+72]
    003ab174ldp x10, x11, [sp+88]
    003ab178ldr x12, [sp+104]
    003ab17cb 0x3ab020
    003ab020
    003ab180
    003ab180filippo.io/age/internal/stream.incNonce: ; void filippo.io/age/internal/stream.incNonce(uint8[12] * nonce)
    003ab180ldr x16, [x28+16]
    003ab184subs xzr, sp, x16
    003ab188b.ls 0x3ab27c
    003ab18cstr x30, [sp-48]!
    003ab190stur x29, [sp-8]
    003ab194sub x29, sp, 8
    003ab198str x0, [sp+56]
    003ab19cmovz x2, 10
    003ab1a0str x2, [sp+32]
    003ab1a4b 0x3ab1a8
    003ab1a8
    003ab1a8loc_3ab1a8:
    003ab1a8ldr x2, [sp+32]
    003ab1actbz x2, 63, 0x3ab1b4
    003ab1b0b 0x3ab23c
    003ab1b4
    003ab1b4loc_3ab1b4:
    003ab1b4ldr x0, [sp+32]
    003ab1b8ldr x2, [sp+56]
    003ab1bcldrsb x27, [x2]
    003ab1c0subs xzr, x0, 12
    003ab1c4b.lo 0x3ab1cc
    003ab1c8b 0x3ab270
    003ab1cc
    003ab1ccloc_3ab1cc:
    003ab1ccldrb w2, [x2+x0]
    003ab1d0ldr x0, [sp+32]
    003ab1d4ldr x3, [sp+56]
    003ab1d8ldrsb x27, [x3]
    003ab1dcadd x2, x2, 1
    003ab1e0subs xzr, x0, 12
    003ab1e4b.lo 0x3ab1ec
    003ab1e8b 0x3ab268
    003ab1ec
    003ab1ecloc_3ab1ec:
    003ab1ecstrb w2, [x3+x0]
    003ab1f0ldr x0, [sp+32]
    003ab1f4ldr x2, [sp+56]
    003ab1f8ldrsb x27, [x2]
    003ab1fcsubs xzr, x0, 12
    003ab200b.lo 0x3ab208
    003ab204b 0x3ab260
    003ab208
    003ab208loc_3ab208:
    003ab208ldrb w2, [x2+x0]
    003ab20ccbnz w2, 0x3ab214
    003ab210b 0x3ab218
    003ab214
    003ab214loc_3ab214:
    003ab214b 0x3ab240
    003ab218
    003ab218loc_3ab218:
    003ab218ldr x2, [sp+32]
    003ab21ccbz x2, 0x3ab24c
    003ab220b 0x3ab224
    003ab224
    003ab224loc_3ab224:
    003ab224b 0x3ab228
    003ab228
    003ab228loc_3ab228:
    003ab228b 0x3ab22c
    003ab22c
    003ab22cloc_3ab22c:
    003ab22cldr x2, [sp+32]
    003ab230sub x2, x2, 1
    003ab234str x2, [sp+32]
    003ab238b 0x3ab1a8
    003ab23c
    003ab23cloc_3ab23c:
    003ab23cb 0x3ab240
    003ab240
    003ab240loc_3ab240:
    003ab240ldur x29, [sp-8]
    003ab244ldr x30, [sp], 48
    003ab248ret x30
    003ab24c
    003ab24cloc_3ab24c:
    003ab24cadrp x0, 0x24a000
    003ab250add x0, x0, 2944
    003ab254adrp x1, 0x367000
    003ab258add x1, x1, 3760
    003ab25cbl runtime.gopanic
    003ab260
    003ab260loc_3ab260:
    003ab260orr x1, xzr, 12
    003ab264bl runtime.panicIndex
    003ab268
    003ab268loc_3ab268:
    003ab268orr x1, xzr, 12
    003ab26cbl runtime.panicIndex
    003ab270
    003ab270loc_3ab270:
    003ab270orr x1, xzr, 12
    003ab274bl runtime.panicIndex
    003ab278hint
    003ab27c
    003ab27cloc_3ab27c:
    003ab27cstr x0, [sp+8]
    003ab280mov x3, x30
    003ab284bl runtime.morestack_noctxt.abi0
    003ab288ldr x0, [sp+8]
    003ab28cb 0x3ab180
    003ab180
    003ab290
    003ab290filippo.io/age/internal/stream.setLastChunkFlag: ; void filippo.io/age/internal/stream.setLastChunkFlag(uint8[12] * nonce)
    003ab290str x0, [sp+8]
    003ab294ldrsb x27, [x0]
    003ab298orr x1, xzr, 1
    003ab29cstrb w1, [x0+11]
    003ab2a0ret x30
    003ab2a4udf 0
    003ab2a8udf 0
    003ab2acudf 0
    003ab290
    003ab2b0
    003ab2b0filippo.io/age/internal/stream.NewWriter: ; void filippo.io/age/internal/stream.NewWriter(struct []uint8 key, io.Writer dst)
    003ab2b0ldr x16, [x28+16]
    003ab2b4sub x17, sp, 80
    003ab2b8subs xzr, x17, x16
    003ab2bcb.ls 0x3ab4f0
    003ab2c0str x30, [sp-208]!
    003ab2c4stur x29, [sp-8]
    003ab2c8sub x29, sp, 8
    003ab2ccstr x0, [sp+216]
    003ab2d0str x1, [sp+224]
    003ab2d4str x2, [sp+232]
    003ab2d8str x3, [sp+240]
    003ab2dcstr x4, [sp+248]
    003ab2e0str xzr, [sp+48]
    003ab2e4stp xzr, xzr, [sp+32]
    003ab2e8stp xzr, xzr, [sp+96]
    003ab2ecstp xzr, xzr, [sp+184]
    003ab2f0ldr x0, [sp+216]
    003ab2f4ldr x1, [sp+224]
    003ab2f8ldr x2, [sp+232]
    003ab2fcbl golang.org/x/crypto/chacha20poly1305.New
    003ab300str x0, [sp+96]
    003ab304str x1, [sp+104]
    003ab308str x2, [sp+184]
    003ab30cstr x3, [sp+192]
    003ab310ldr x3, [sp+104]
    003ab314ldr x4, [sp+96]
    003ab318str x4, [sp+128]
    003ab31cstr x3, [sp+136]
    003ab320ldr x3, [sp+184]
    003ab324ldr x4, [sp+192]
    003ab328str x3, [sp+112]
    003ab32cstr x4, [sp+120]
    003ab330ldr x3, [sp+128]
    003ab334ldr x4, [sp+136]
    003ab338str x3, [sp+80]
    003ab33cstr x4, [sp+88]
    003ab340ldr x3, [sp+120]
    003ab344ldr x4, [sp+112]
    003ab348str x4, [sp+64]
    003ab34cstr x3, [sp+72]
    003ab350cbnz x4, 0x3ab358
    003ab354b 0x3ab37c
    003ab358
    003ab358loc_3ab358:
    003ab358str xzr, [sp+48]
    003ab35cldr x1, [sp+64]
    003ab360ldr x2, [sp+72]
    003ab364str x1, [sp+32]
    003ab368str x2, [sp+40]
    003ab36cldr x0, [sp+48]
    003ab370ldur x29, [sp-8]
    003ab374ldr x30, [sp], 208
    003ab378ret x30
    003ab37c
    003ab37cloc_3ab37c:
    003ab37cadrp x0, 0x2d5000
    003ab380add x0, x0, 32
    003ab384bl runtime.newobject
    003ab388str x0, [sp+152]
    003ab38cadrp x27, 0x6a0000
    003ab390ldr w1, [x27+3056]
    003ab394cbz w1, 0x3ab39c
    003ab398b 0x3ab3a0
    003ab39c
    003ab39cloc_3ab39c:
    003ab39cb 0x3ab3bc
    003ab3a0
    003ab3a0loc_3ab3a0:
    003ab3a0str x0, [sp+144]
    003ab3a4mov x1, x0
    003ab3a8adrp x0, 0x2d5000
    003ab3acadd x0, x0, 32
    003ab3b0bl runtime.wbZero
    003ab3b4ldr x0, [sp+144]
    003ab3b8b 0x3ab3bc
    003ab3bc
    003ab3bcloc_3ab3bc:
    003ab3bcmovz x3, 80
    003ab3c0movk x3, 0x10000
    003ab3c4add x3, x0, x3
    003ab3c8mov x16, x0
    003ab3cc
    003ab3ccloc_3ab3cc:
    003ab3ccstp xzr, xzr, [x16], 16
    003ab3d0subs xzr, x16, x3
    003ab3d4b.le 0x3ab3cc
    003ab3d8add x27, x0, 0x10000
    003ab3dcstr xzr, [x27+96]
    003ab3e0ldr x3, [sp+152]
    003ab3e4ldrsb x27, [x3]
    003ab3e8ldr x4, [sp+88]
    003ab3ecldr x5, [sp+80]
    003ab3f0str x5, [x3]
    003ab3f4adrp x27, 0x6a0000
    003ab3f8ldr w5, [x27+3056]
    003ab3fccbz w5, 0x3ab404
    003ab400b 0x3ab408
    003ab404
    003ab404loc_3ab404:
    003ab404b 0x3ab41c
    003ab408
    003ab408loc_3ab408:
    003ab408bl runtime.gcWriteBarrier2
    003ab40cstr x4, [x25]
    003ab410ldr x5, [x3+8]
    003ab414str x5, [x25+8]
    003ab418b 0x3ab41c
    003ab41c
    003ab41cloc_3ab41c:
    003ab41cstr x4, [x3+8]
    003ab420ldr x3, [sp+152]
    003ab424ldrsb x27, [x3]
    003ab428ldr x4, [sp+248]
    003ab42cldr x5, [sp+240]
    003ab430str x5, [x3+16]
    003ab434adrp x27, 0x6a0000
    003ab438ldr w5, [x27+3056]
    003ab43ccbz w5, 0x3ab444
    003ab440b 0x3ab448
    003ab444
    003ab444loc_3ab444:
    003ab444b 0x3ab45c
    003ab448
    003ab448loc_3ab448:
    003ab448bl runtime.gcWriteBarrier2
    003ab44cstr x4, [x25]
    003ab450ldr x5, [x3+24]
    003ab454str x5, [x25+8]
    003ab458b 0x3ab45c
    003ab45c
    003ab45cloc_3ab45c:
    003ab45cstr x4, [x3+24]
    003ab460ldr x3, [sp+152]
    003ab464str x3, [sp+56]
    003ab468ldrsb x27, [x3]
    003ab46cadd x3, x3, 56
    003ab470ldrsb x27, [x3]
    003ab474b 0x3ab478
    003ab478
    003ab478loc_3ab478:
    003ab478b 0x3ab47c
    003ab47c
    003ab47cloc_3ab47c:
    003ab47cstr x3, [sp+160]
    003ab480str xzr, [sp+168]
    003ab484movz x4, 16
    003ab488movk x4, 0x10000
    003ab48cstr x4, [sp+176]
    003ab490ldr x5, [sp+56]
    003ab494ldrsb x27, [x5]
    003ab498str xzr, [x5+40]
    003ab49cstr x4, [x5+48]
    003ab4a0adrp x27, 0x6a0000
    003ab4a4ldr w4, [x27+3056]
    003ab4a8cbz w4, 0x3ab4b0
    003ab4acb 0x3ab4b4
    003ab4b0
    003ab4b0loc_3ab4b0:
    003ab4b0b 0x3ab4c8
    003ab4b4
    003ab4b4loc_3ab4b4:
    003ab4b4bl runtime.gcWriteBarrier2
    003ab4b8str x3, [x25]
    003ab4bcldr x4, [x5+32]
    003ab4c0str x4, [x25+8]
    003ab4c4b 0x3ab4c8
    003ab4c8
    003ab4c8loc_3ab4c8:
    003ab4c8str x3, [x5+32]
    003ab4ccldr x3, [sp+56]
    003ab4d0str x3, [sp+48]
    003ab4d4stp xzr, xzr, [sp+32]
    003ab4d8ldr x0, [sp+48]
    003ab4dcmov x1, xzr
    003ab4e0mov x2, xzr
    003ab4e4ldur x29, [sp-8]
    003ab4e8ldr x30, [sp], 208
    003ab4ecret x30
    003ab4f0
    003ab4f0loc_3ab4f0:
    003ab4f0stp x0, x1, [sp+8]
    003ab4f4stp x2, x3, [sp+24]
    003ab4f8str x4, [sp+40]
    003ab4fcmov x3, x30
    003ab500bl runtime.morestack_noctxt.abi0
    003ab504ldp x0, x1, [sp+8]
    003ab508ldp x2, x3, [sp+24]
    003ab50cldr x4, [sp+40]
    003ab510b 0x3ab2b0
    003ab514udf 0
    003ab518udf 0
    003ab51cudf 0
    003ab2b0
    003ab520
    003ab520filippo.io/age/internal/stream.(*Writer).Write: ; void filippo.io/age/internal/stream.(*Writer).Write(filippo.io/age/internal/stream.Writer * w, struct []uint8 p)
    003ab520ldr x16, [x28+16]
    003ab524sub x17, sp, 96
    003ab528subs xzr, x17, x16
    003ab52cb.ls 0x3ab860
    003ab530str x30, [sp-224]!
    003ab534stur x29, [sp-8]
    003ab538sub x29, sp, 8
    003ab53cstr x0, [sp+232]
    003ab540str x1, [sp+240]
    003ab544str x2, [sp+248]
    003ab548str x3, [sp+256]
    003ab54cstr xzr, [sp+64]
    003ab550stp xzr, xzr, [sp+152]
    003ab554ldr x3, [sp+232]
    003ab558ldrsb x27, [x3]
    003ab55cadd x27, x3, 0x10000
    003ab560ldr x3, [x27+88]
    003ab564cbnz x3, 0x3ab56c
    003ab568b 0x3ab5a0
    003ab56c
    003ab56cloc_3ab56c:
    003ab56cstr xzr, [sp+64]
    003ab570ldr x3, [sp+232]
    003ab574ldrsb x27, [x3]
    003ab578add x27, x3, 0x10000
    003ab57cldr x1, [x27+88]
    003ab580add x27, x3, 0x10000
    003ab584ldr x2, [x27+96]
    003ab588str x1, [sp+152]
    003ab58cstr x2, [sp+160]
    003ab590ldr x0, [sp+64]
    003ab594ldur x29, [sp-8]
    003ab598ldr x30, [sp], 224
    003ab59cret x30
    003ab5a0
    003ab5a0loc_3ab5a0:
    003ab5a0ldr x3, [sp+248]
    003ab5a4str x3, [sp+80]
    003ab5a8cbz x3, 0x3ab5b0
    003ab5acb 0x3ab5d0
    003ab5b0
    003ab5b0loc_3ab5b0:
    003ab5b0str xzr, [sp+64]
    003ab5b4stp xzr, xzr, [sp+152]
    003ab5b8ldr x0, [sp+64]
    003ab5bcmov x1, xzr
    003ab5c0mov x2, xzr
    003ab5c4ldur x29, [sp-8]
    003ab5c8ldr x30, [sp], 224
    003ab5ccret x30
    003ab5d0
    003ab5d0loc_3ab5d0:
    003ab5d0ldr x3, [sp+248]
    003ab5d4str x3, [sp+48]
    003ab5d8b 0x3ab5dc
    003ab5dc
    003ab5dcloc_3ab5dc:
    003ab5dcldr x3, [sp+248]
    003ab5e0str x3, [sp+80]
    003ab5e4cbnz x3, 0x3ab5ec
    003ab5e8b 0x3ab828
    003ab5ec
    003ab5ecloc_3ab5ec:
    003ab5ecldr x3, [sp+232]
    003ab5f0ldrsb x27, [x3]
    003ab5f4ldr x0, [x3+40]
    003ab5f8str x0, [sp+72]
    003ab5fcldr x3, [sp+232]
    003ab600ldrsb x27, [x3]
    003ab604add x3, x3, 56
    003ab608ldrsb x27, [x3]
    003ab60cb 0x3ab610
    003ab610
    003ab610loc_3ab610:
    003ab610subs xzr, x0, 0x10000
    003ab614b.ls 0x3ab61c
    003ab618b 0x3ab854
    003ab61c
    003ab61cloc_3ab61c:
    003ab61cmovz x4, 16
    003ab620movk x4, 0x10000
    003ab624sub x5, x4, x0
    003ab628orr x1, xzr, 0x10000
    003ab62csub x6, x1, x0
    003ab630sub x7, xzr, x5
    003ab634and x7, x0, x7, asr #63
    003ab638add x3, x3, x7
    003ab63cstr x3, [sp+112]
    003ab640str x6, [sp+120]
    003ab644str x5, [sp+128]
    003ab648str x3, [sp+192]
    003ab64cstr x6, [sp+200]
    003ab650str x5, [sp+208]
    003ab654ldr x3, [sp+248]
    003ab658ldr x5, [sp+240]
    003ab65cldr x6, [sp+256]
    003ab660str x5, [sp+168]
    003ab664str x3, [sp+176]
    003ab668str x6, [sp+184]
    003ab66cldr x5, [sp+200]
    003ab670str x5, [sp+96]
    003ab674subs xzr, x5, x3
    003ab678b.gt 0x3ab680
    003ab67cb 0x3ab688
    003ab680
    003ab680loc_3ab680:
    003ab680str x3, [sp+96]
    003ab684b 0x3ab68c
    003ab688
    003ab688loc_3ab688:
    003ab688b 0x3ab68c
    003ab68c
    003ab68cloc_3ab68c:
    003ab68cldr x3, [sp+168]
    003ab690ldr x5, [sp+192]
    003ab694subs xzr, x3, x5
    003ab698b.ne 0x3ab6a0
    003ab69cb 0x3ab6bc
    003ab6a0
    003ab6a0loc_3ab6a0:
    003ab6a0ldr x3, [sp+96]
    003ab6a4str x3, [sp+88]
    003ab6a8ldr x2, [sp+88]
    003ab6acldr x1, [sp+168]
    003ab6b0ldr x0, [sp+192]
    003ab6b4bl runtime.memmove
    003ab6b8b 0x3ab6c0
    003ab6bc
    003ab6bcloc_3ab6bc:
    003ab6bcb 0x3ab6c0
    003ab6c0
    003ab6c0loc_3ab6c0:
    003ab6c0ldr x0, [sp+96]
    003ab6c4str x0, [sp+56]
    003ab6c8ldr x1, [sp+248]
    003ab6ccldr x3, [sp+240]
    003ab6d0ldr x4, [sp+256]
    003ab6d4b 0x3ab6d8
    003ab6d8
    003ab6d8loc_3ab6d8:
    003ab6d8subs xzr, x1, x0
    003ab6dcb.hs 0x3ab6e4
    003ab6e0b 0x3ab850
    003ab6e4
    003ab6e4loc_3ab6e4:
    003ab6e4sub x4, x4, x0
    003ab6e8sub x5, x1, x0
    003ab6ecsub x6, xzr, x4
    003ab6f0and x6, x0, x6, asr #63
    003ab6f4add x3, x3, x6
    003ab6f8str x3, [sp+240]
    003ab6fcstr x5, [sp+248]
    003ab700str x4, [sp+256]
    003ab704ldr x3, [sp+232]
    003ab708ldrsb x27, [x3]
    003ab70cldr x3, [x3+40]
    003ab710str x3, [sp+72]
    003ab714ldr x4, [sp+56]
    003ab718add x1, x3, x4
    003ab71cstr x1, [sp+104]
    003ab720ldr x3, [sp+232]
    003ab724ldrsb x27, [x3]
    003ab728ldr x2, [x3+48]
    003ab72csubs xzr, x2, x1
    003ab730b.hs 0x3ab738
    003ab734b 0x3ab84c
    003ab738
    003ab738loc_3ab738:
    003ab738b 0x3ab73c
    003ab73c
    003ab73cloc_3ab73c:
    003ab73cldr x3, [sp+232]
    003ab740ldrsb x27, [x3]
    003ab744str x1, [x3+40]
    003ab748ldr x3, [sp+232]
    003ab74cldrsb x27, [x3]
    003ab750ldr x3, [x3+40]
    003ab754str x3, [sp+104]
    003ab758subs xzr, x3, 0x10000
    003ab75ccset x3, eq
    003ab760strb w3, [sp+47]
    003ab764b.eq 0x3ab76c
    003ab768b 0x3ab784
    003ab76c
    003ab76cloc_3ab76c:
    003ab76cldr x3, [sp+248]
    003ab770str x3, [sp+72]
    003ab774subs xzr, x3, 0
    003ab778cset x3, ne
    003ab77cstrb w3, [sp+47]
    003ab780b 0x3ab788
    003ab784
    003ab784loc_3ab784:
    003ab784b 0x3ab788
    003ab788
    003ab788loc_3ab788:
    003ab788ldrb w3, [sp+47]
    003ab78ctbnz w3, 0, 0x3ab794
    003ab790b 0x3ab81c
    003ab794
    003ab794loc_3ab794:
    003ab794ldr x0, [sp+232]
    003ab798mov x1, xzr
    003ab79cbl filippo.io/age/internal/stream.(*Writer).flushChunk
    003ab7a0str x0, [sp+136]
    003ab7a4str x1, [sp+144]
    003ab7a8cbnz x0, 0x3ab7b0
    003ab7acb 0x3ab818
    003ab7b0
    003ab7b0loc_3ab7b0:
    003ab7b0ldr x3, [sp+232]
    003ab7b4ldrsb x27, [x3]
    003ab7b8add x27, x3, 0x10000
    003ab7bcstr x0, [x27+88]
    003ab7c0adrp x27, 0x6a0000
    003ab7c4ldr w4, [x27+3056]
    003ab7c8cbz w4, 0x3ab7d0
    003ab7ccb 0x3ab7d4
    003ab7d0
    003ab7d0loc_3ab7d0:
    003ab7d0b 0x3ab7ec
    003ab7d4
    003ab7d4loc_3ab7d4:
    003ab7d4bl runtime.gcWriteBarrier2
    003ab7d8str x1, [x25]
    003ab7dcadd x27, x3, 0x10000
    003ab7e0ldr x4, [x27+96]
    003ab7e4str x4, [x25+8]
    003ab7e8b 0x3ab7ec
    003ab7ec
    003ab7ecloc_3ab7ec:
    003ab7ecadd x27, x3, 0x10000
    003ab7f0str x1, [x27+96]
    003ab7f4str xzr, [sp+64]
    003ab7f8ldr x1, [sp+136]
    003ab7fcldr x2, [sp+144]
    003ab800str x1, [sp+152]
    003ab804str x2, [sp+160]
    003ab808ldr x0, [sp+64]
    003ab80cldur x29, [sp-8]
    003ab810ldr x30, [sp], 224
    003ab814ret x30
    003ab818
    003ab818loc_3ab818:
    003ab818b 0x3ab820
    003ab81c
    003ab81cloc_3ab81c:
    003ab81cb 0x3ab820
    003ab820
    003ab820loc_3ab820:
    003ab820b 0x3ab824
    003ab824
    003ab824loc_3ab824:
    003ab824b 0x3ab5dc
    003ab828
    003ab828loc_3ab828:
    003ab828ldr x3, [sp+48]
    003ab82cstr x3, [sp+64]
    003ab830stp xzr, xzr, [sp+152]
    003ab834ldr x0, [sp+64]
    003ab838mov x1, xzr
    003ab83cmov x2, xzr
    003ab840ldur x29, [sp-8]
    003ab844ldr x30, [sp], 224
    003ab848ret x30
    003ab84c
    003ab84cloc_3ab84c:
    003ab84cbl runtime.panicSliceAcap
    003ab850
    003ab850loc_3ab850:
    003ab850bl runtime.panicSliceB
    003ab854
    003ab854loc_3ab854:
    003ab854orr x1, xzr, 0x10000
    003ab858bl runtime.panicSliceB
    003ab85chint
    003ab860
    003ab860loc_3ab860:
    003ab860stp x0, x1, [sp+8]
    003ab864stp x2, x3, [sp+24]
    003ab868mov x3, x30
    003ab86cbl runtime.morestack_noctxt.abi0
    003ab870ldp x0, x1, [sp+8]
    003ab874ldp x2, x3, [sp+24]
    003ab878b 0x3ab520
    003ab87cudf 0
    003ab520
    003ab880
    003ab880filippo.io/age/internal/stream.(*Writer).Close: ; void filippo.io/age/internal/stream.(*Writer).Close(filippo.io/age/internal/stream.Writer * w)
    003ab880ldr x16, [x28+16]
    003ab884subs xzr, sp, x16
    003ab888b.ls 0x3ab9f4
    003ab88cstr x30, [sp-64]!
    003ab890stur x29, [sp-8]
    003ab894sub x29, sp, 8
    003ab898str x0, [sp+72]
    003ab89cstp xzr, xzr, [sp+24]
    003ab8a0ldr x2, [sp+72]
    003ab8a4ldrsb x27, [x2]
    003ab8a8add x27, x2, 0x10000
    003ab8acldr x2, [x27+88]
    003ab8b0cbnz x2, 0x3ab8b8
    003ab8b4b 0x3ab8e4
    003ab8b8
    003ab8b8loc_3ab8b8:
    003ab8b8ldr x2, [sp+72]
    003ab8bcldrsb x27, [x2]
    003ab8c0add x27, x2, 0x10000
    003ab8c4ldr x0, [x27+88]
    003ab8c8add x27, x2, 0x10000
    003ab8ccldr x1, [x27+96]
    003ab8d0str x0, [sp+24]
    003ab8d4str x1, [sp+32]
    003ab8d8ldur x29, [sp-8]
    003ab8dcldr x30, [sp], 64
    003ab8e0ret x30
    003ab8e4
    003ab8e4loc_3ab8e4:
    003ab8e4ldr x0, [sp+72]
    003ab8e8orr x1, xzr, 1
    003ab8ecbl filippo.io/age/internal/stream.(*Writer).flushChunk
    003ab8f0str x0, [sp+40]
    003ab8f4str x1, [sp+48]
    003ab8f8ldr x2, [sp+72]
    003ab8fcldrsb x27, [x2]
    003ab900add x27, x2, 0x10000
    003ab904str x0, [x27+88]
    003ab908adrp x27, 0x6a0000
    003ab90cldr w3, [x27+3056]
    003ab910cbz w3, 0x3ab918
    003ab914b 0x3ab91c
    003ab918
    003ab918loc_3ab918:
    003ab918b 0x3ab934
    003ab91c
    003ab91cloc_3ab91c:
    003ab91cbl runtime.gcWriteBarrier2
    003ab920str x1, [x25]
    003ab924add x27, x2, 0x10000
    003ab928ldr x3, [x27+96]
    003ab92cstr x3, [x25+8]
    003ab930b 0x3ab934
    003ab934
    003ab934loc_3ab934:
    003ab934add x27, x2, 0x10000
    003ab938str x1, [x27+96]
    003ab93cldr x2, [sp+72]
    003ab940ldrsb x27, [x2]
    003ab944add x27, x2, 0x10000
    003ab948ldr x2, [x27+88]
    003ab94ccbnz x2, 0x3ab954
    003ab950b 0x3ab980
    003ab954
    003ab954loc_3ab954:
    003ab954ldr x2, [sp+72]
    003ab958ldrsb x27, [x2]
    003ab95cadd x27, x2, 0x10000
    003ab960ldr x0, [x27+88]
    003ab964add x27, x2, 0x10000
    003ab968ldr x1, [x27+96]
    003ab96cstr x0, [sp+24]
    003ab970str x1, [sp+32]
    003ab974ldur x29, [sp-8]
    003ab978ldr x30, [sp], 64
    003ab97cret x30
    003ab980
    003ab980loc_3ab980:
    003ab980adrp x0, 0x313000
    003ab984add x0, x0, 661
    003ab988orr x1, xzr, 31
    003ab98cbl errors.New
    003ab990str x0, [sp+40]
    003ab994str x1, [sp+48]
    003ab998ldr x2, [sp+72]
    003ab99cldrsb x27, [x2]
    003ab9a0add x27, x2, 0x10000
    003ab9a4str x0, [x27+88]
    003ab9a8adrp x27, 0x6a0000
    003ab9acldr w3, [x27+3056]
    003ab9b0cbz w3, 0x3ab9b8
    003ab9b4b 0x3ab9bc
    003ab9b8
    003ab9b8loc_3ab9b8:
    003ab9b8b 0x3ab9d4
    003ab9bc
    003ab9bcloc_3ab9bc:
    003ab9bcbl runtime.gcWriteBarrier2
    003ab9c0str x1, [x25]
    003ab9c4add x27, x2, 0x10000
    003ab9c8ldr x3, [x27+96]
    003ab9ccstr x3, [x25+8]
    003ab9d0b 0x3ab9d4
    003ab9d4
    003ab9d4loc_3ab9d4:
    003ab9d4add x27, x2, 0x10000
    003ab9d8str x1, [x27+96]
    003ab9dcstp xzr, xzr, [sp+24]
    003ab9e0mov x0, xzr
    003ab9e4mov x1, xzr
    003ab9e8ldur x29, [sp-8]
    003ab9ecldr x30, [sp], 64
    003ab9f0ret x30
    003ab9f4
    003ab9f4loc_3ab9f4:
    003ab9f4str x0, [sp+8]
    003ab9f8mov x3, x30
    003ab9fcbl runtime.morestack_noctxt.abi0
    003aba00ldr x0, [sp+8]
    003aba04b 0x3ab880
    003aba08udf 0
    003aba0cudf 0
    003ab880
    003aba10
    003aba10filippo.io/age/internal/stream.(*Writer).flushChunk: ; void filippo.io/age/internal/stream.(*Writer).flushChunk(filippo.io/age/internal/stream.Writer * w, bool last)
    003aba10ldr x16, [x28+16]
    003aba14sub x17, sp, 192
    003aba18subs xzr, x17, x16
    003aba1cb.ls 0x3abc7c
    003aba20sub x20, sp, 320
    003aba24stp x29, x30, [x20-8]
    003aba28add sp, x20, 0
    003aba2csub x29, sp, 8
    003aba30str x0, [sp+328]
    003aba34strb w1, [sp+336]
    003aba38stp xzr, xzr, [sp+136]
    003aba3cldrb w13, [sp+336]
    003aba40eor x14, x13, 1
    003aba44strb w14, [sp+119]
    003aba48tbnz w13, 0, 0x3aba50
    003aba4cb 0x3aba54
    003aba50
    003aba50loc_3aba50:
    003aba50b 0x3aba74
    003aba54
    003aba54loc_3aba54:
    003aba54ldr x13, [sp+328]
    003aba58ldrsb x27, [x13]
    003aba5cldr x13, [x13+40]
    003aba60str x13, [sp+120]
    003aba64subs xzr, x13, 0x10000
    003aba68cset x13, ne
    003aba6cstrb w13, [sp+119]
    003aba70b 0x3aba74
    003aba74
    003aba74loc_3aba74:
    003aba74ldrb w13, [sp+119]
    003aba78tbnz w13, 0, 0x3abc64
    003aba7cb 0x3aba80
    003aba80
    003aba80loc_3aba80:
    003aba80ldrb w13, [sp+336]
    003aba84tbnz w13, 0, 0x3aba8c
    003aba88b 0x3abaac
    003aba8c
    003aba8cloc_3aba8c:
    003aba8cldr x1, [sp+328]
    003aba90ldrsb x27, [x1]
    003aba94movz x2, 72
    003aba98movk x2, 0x10000
    003aba9cadd x0, x1, x2
    003abaa0str x0, [sp+264]
    003abaa4bl filippo.io/age/internal/stream.setLastChunkFlag
    003abaa8b 0x3abab0
    003abaac
    003abaacloc_3abaac:
    003abaacb 0x3abab0
    003abab0
    003abab0loc_3abab0:
    003abab0ldr x13, [sp+328]
    003abab4ldrsb x27, [x13]
    003abab8add x13, x13, 56
    003ababcldrsb x27, [x13]
    003abac0b 0x3abac4
    003abac4
    003abac4loc_3abac4:
    003abac4b 0x3abac8
    003abac8
    003abac8loc_3abac8:
    003abac8str x13, [sp+192]
    003abaccstr xzr, [sp+200]
    003abad0movz x13, 16
    003abad4movk x13, 0x10000
    003abad8str x13, [sp+208]
    003abadcldr x14, [sp+328]
    003abae0ldrsb x27, [x14]
    003abae4movz x15, 72
    003abae8movk x15, 0x10000
    003abaecadd x14, x14, x15
    003abaf0ldrsb x27, [x14]
    003abaf4b 0x3abaf8
    003abaf8
    003abaf8loc_3abaf8:
    003abaf8str x14, [sp+288]
    003abafcorr x13, xzr, 12
    003abb00str x13, [sp+296]
    003abb04str x13, [sp+304]
    003abb08ldr x13, [sp+328]
    003abb0cldrsb x27, [x13]
    003abb10ldr x7, [x13+32]
    003abb14ldr x8, [x13+40]
    003abb18ldr x9, [x13+48]
    003abb1cstr x7, [sp+240]
    003abb20str x8, [sp+248]
    003abb24str x9, [sp+256]
    003abb28ldr x13, [sp+328]
    003abb2cldrsb x27, [x13]
    003abb30ldr x14, [x13]
    003abb34ldrsb x27, [x14]
    003abb38ldr x0, [x13+8]
    003abb3cldr x13, [x14+48]
    003abb40ldr x4, [sp+288]
    003abb44ldr x5, [sp+296]
    003abb48ldr x6, [sp+304]
    003abb4cldr x1, [sp+192]
    003abb50ldr x2, [sp+200]
    003abb54ldr x3, [sp+208]
    003abb58mov x10, xzr
    003abb5cmov x11, xzr
    003abb60mov x12, x11
    003abb64blr x13
    003abb68str x0, [sp+168]
    003abb6cstr x1, [sp+176]
    003abb70str x2, [sp+184]
    003abb74stp xzr, xzr, [sp+272]
    003abb78ldr x13, [sp+328]
    003abb7cldrsb x27, [x13]
    003abb80ldr x14, [x13+16]
    003abb84ldrsb x27, [x14]
    003abb88ldr x0, [x13+24]
    003abb8cldr x1, [sp+168]
    003abb90ldr x2, [sp+176]
    003abb94ldr x3, [sp+184]
    003abb98ldr x13, [x14+24]
    003abb9cblr x13
    003abba0str x0, [sp+120]
    003abba4str x1, [sp+272]
    003abba8str x2, [sp+280]
    003abbacldr x13, [sp+120]
    003abbb0str x13, [sp+128]
    003abbb4str x1, [sp+216]
    003abbb8str x2, [sp+224]
    003abbbcstr x1, [sp+152]
    003abbc0str x2, [sp+160]
    003abbc4ldr x13, [sp+328]
    003abbc8ldrsb x27, [x13]
    003abbccadd x13, x13, 56
    003abbd0ldrsb x27, [x13]
    003abbd4b 0x3abbd8
    003abbd8
    003abbd8loc_3abbd8:
    003abbd8b 0x3abbdc
    003abbdc
    003abbdcloc_3abbdc:
    003abbdcstr x13, [sp+288]
    003abbe0str xzr, [sp+296]
    003abbe4movz x1, 16
    003abbe8movk x1, 0x10000
    003abbecstr x1, [sp+304]
    003abbf0ldr x2, [sp+328]
    003abbf4ldrsb x27, [x2]
    003abbf8str xzr, [x2+40]
    003abbfcstr x1, [x2+48]
    003abc00adrp x27, 0x6a0000
    003abc04ldr w1, [x27+3056]
    003abc08cbz w1, 0x3abc10
    003abc0cb 0x3abc14
    003abc10
    003abc10loc_3abc10:
    003abc10b 0x3abc28
    003abc14
    003abc14loc_3abc14:
    003abc14bl runtime.gcWriteBarrier2
    003abc18str x13, [x25]
    003abc1cldr x1, [x2+32]
    003abc20str x1, [x25+8]
    003abc24b 0x3abc28
    003abc28
    003abc28loc_3abc28:
    003abc28str x13, [x2+32]
    003abc2cldr x1, [sp+328]
    003abc30ldrsb x27, [x1]
    003abc34movz x2, 72
    003abc38movk x2, 0x10000
    003abc3cadd x0, x1, x2
    003abc40str x0, [sp+232]
    003abc44bl filippo.io/age/internal/stream.incNonce
    003abc48ldr x0, [sp+152]
    003abc4cldr x1, [sp+160]
    003abc50str x0, [sp+136]
    003abc54str x1, [sp+144]
    003abc58ldp x29, x30, [sp-8]
    003abc5cadd sp, sp, 320
    003abc60ret x30
    003abc64
    003abc64loc_3abc64:
    003abc64adrp x0, 0x24a000
    003abc68add x0, x0, 2944
    003abc6cadrp x1, 0x367000
    003abc70add x1, x1, 3776
    003abc74bl runtime.gopanic
    003abc78hint
    003abc7c
    003abc7cloc_3abc7c:
    003abc7cstr x0, [sp+8]
    003abc80strb w1, [sp+16]
    003abc84mov x3, x30
    003abc88bl runtime.morestack_noctxt.abi0
    003abc8cldr x0, [sp+8]
    003abc90ldrb w1, [sp+16]
    003abc94b 0x3aba10
    003abc98udf 0
    003abc9cudf 0
    003aba10
    003abca0
    003abca0golang.org/x/crypto/hkdf.Extract: ; void golang.org/x/crypto/hkdf.Extract(func() hash.Hash hash, struct []uint8 secret, struct []uint8 salt)
    003abca0ldr x16, [x28+16]
    003abca4sub x17, sp, 16
    003abca8subs xzr, x17, x16
    003abcacb.ls 0x3abdc8
    003abcb0str x30, [sp-144]!
    003abcb4stur x29, [sp-8]
    003abcb8sub x29, sp, 8
    003abcbcstr x0, [sp+152]
    003abcc0str x1, [sp+160]
    003abcc4str x2, [sp+168]
    003abcc8str x3, [sp+176]
    003abcccstr x4, [sp+184]
    003abcd0str x5, [sp+192]
    003abcd4str x6, [sp+200]
    003abcd8str xzr, [sp+56]
    003abcdcstp xzr, xzr, [sp+64]
    003abce0ldr x4, [sp+184]
    003abce4cbnz x4, 0x3abcec
    003abce8b 0x3abcf0
    003abcec
    003abcecloc_3abcec:
    003abcecb 0x3abd48
    003abcf0
    003abcf0loc_3abcf0:
    003abcf0ldr x26, [sp+152]
    003abcf4ldr x0, [x26]
    003abcf8blr x0
    003abcfcstr x0, [sp+120]
    003abd00str x1, [sp+128]
    003abd04ldrsb x27, [x0]
    003abd08ldr x0, [x0+40]
    003abd0cmov x2, x0
    003abd10mov x0, x1
    003abd14blr x2
    003abd18str x0, [sp+48]
    003abd1cmov x1, x0
    003abd20mov x2, x1
    003abd24adrp x0, 0x24a000
    003abd28add x0, x0, 3072
    003abd2cbl runtime.makeslice
    003abd30ldr x1, [sp+48]
    003abd34ldr x2, [sp+48]
    003abd38str x0, [sp+184]
    003abd3cstr x1, [sp+192]
    003abd40str x2, [sp+200]
    003abd44b 0x3abd48
    003abd48
    003abd48loc_3abd48:
    003abd48ldr x1, [sp+184]
    003abd4cldr x2, [sp+192]
    003abd50ldr x3, [sp+200]
    003abd54ldr x0, [sp+152]
    003abd58bl crypto/hmac.New
    003abd5cstr x0, [sp+80]
    003abd60str x1, [sp+88]
    003abd64ldrsb x27, [x0]
    003abd68ldr x4, [sp+160]
    003abd6cldr x2, [sp+168]
    003abd70ldr x3, [sp+176]
    003abd74ldr x5, [x0+56]
    003abd78mov x0, x1
    003abd7cmov x1, x4
    003abd80blr x5
    003abd84ldr x4, [sp+80]
    003abd88ldrsb x27, [x4]
    003abd8cldr x4, [x4+48]
    003abd90ldr x0, [sp+88]
    003abd94mov x1, xzr
    003abd98mov x2, xzr
    003abd9cmov x3, x2
    003abda0blr x4
    003abda4str x0, [sp+96]
    003abda8str x1, [sp+104]
    003abdacstr x2, [sp+112]
    003abdb0str x0, [sp+56]
    003abdb4str x1, [sp+64]
    003abdb8str x2, [sp+72]
    003abdbcldur x29, [sp-8]
    003abdc0ldr x30, [sp], 144
    003abdc4ret x30
    003abdc8
    003abdc8loc_3abdc8:
    003abdc8stp x0, x1, [sp+8]
    003abdccstp x2, x3, [sp+24]
    003abdd0stp x4, x5, [sp+40]
    003abdd4str x6, [sp+56]
    003abdd8mov x3, x30
    003abddcbl runtime.morestack_noctxt.abi0
    003abde0ldp x0, x1, [sp+8]
    003abde4ldp x2, x3, [sp+24]
    003abde8ldp x4, x5, [sp+40]
    003abdecldr x6, [sp+56]
    003abdf0b 0x3abca0
    003abdf4udf 0
    003abdf8udf 0
    003abdfcudf 0
    003abca0
    003abe00
    003abe00golang.org/x/crypto/hkdf.(*hkdf).Read: ; void golang.org/x/crypto/hkdf.(*hkdf).Read(golang.org/x/crypto/hkdf.hkdf * f, struct []uint8 p)
    003abe00ldr x16, [x28+16]
    003abe04sub x17, sp, 256
    003abe08subs xzr, x17, x16
    003abe0cb.ls 0x3ac340
    003abe10sub x20, sp, 384
    003abe14stp x29, x30, [x20-8]
    003abe18add sp, x20, 0
    003abe1csub x29, sp, 8
    003abe20str x0, [sp+392]
    003abe24str x1, [sp+400]
    003abe28str x2, [sp+408]
    003abe2cstr x3, [sp+416]
    003abe30str xzr, [sp+48]
    003abe34stp xzr, xzr, [sp+120]
    003abe38ldr x3, [sp+408]
    003abe3cstr x3, [sp+64]
    003abe40ldr x4, [sp+392]
    003abe44ldrsb x27, [x4]
    003abe48ldr x4, [x4+88]
    003abe4cstr x4, [sp+80]
    003abe50ldr x5, [sp+392]
    003abe54ldrsb x27, [x5]
    003abe58ldrb w5, [x5+48]
    003abe5cmov x6, xzr
    003abe60sub x5, x6, x5
    003abe64ubfm x5, x5, 0, 7
    003abe68ldr x6, [sp+392]
    003abe6cldrsb x27, [x6]
    003abe70ldr x6, [x6+16]
    003abe74madd x4, x6, x5, x4
    003abe78str x4, [sp+56]
    003abe7csubs xzr, x3, x4
    003abe80b.gt 0x3abe88
    003abe84b 0x3abed0
    003abe88
    003abe88loc_3abe88:
    003abe88adrp x0, 0x310000
    003abe8cadd x0, x0, 1291
    003abe90movz x1, 27
    003abe94bl errors.New
    003abe98str x0, [sp+160]
    003abe9cstr x1, [sp+168]
    003abea0str xzr, [sp+48]
    003abea4str x0, [sp+120]
    003abea8str x1, [sp+128]
    003abeacldr x2, [sp+48]
    003abeb0mov x3, x0
    003abeb4mov x0, x2
    003abeb8mov x4, x1
    003abebcmov x1, x3
    003abec0mov x2, x4
    003abec4ldp x29, x30, [sp-8]
    003abec8add sp, sp, 384
    003abeccret x30
    003abed0
    003abed0loc_3abed0:
    003abed0ldr x3, [sp+400]
    003abed4ldr x4, [sp+408]
    003abed8ldr x5, [sp+416]
    003abedcstr x3, [sp+328]
    003abee0str x4, [sp+336]
    003abee4str x5, [sp+344]
    003abee8ldr x3, [sp+392]
    003abeecldrsb x27, [x3]
    003abef0ldr x4, [x3+88]
    003abef4ldr x5, [x3+96]
    003abef8ldr x3, [x3+80]
    003abefcstr x3, [sp+304]
    003abf00str x4, [sp+312]
    003abf04str x5, [sp+320]
    003abf08ldr x3, [sp+336]
    003abf0cstr x3, [sp+112]
    003abf10subs xzr, x4, x3
    003abf14b.lt 0x3abf1c
    003abf18b 0x3abf24
    003abf1c
    003abf1cloc_3abf1c:
    003abf1cstr x4, [sp+112]
    003abf20b 0x3abf28
    003abf24
    003abf24loc_3abf24:
    003abf24b 0x3abf28
    003abf28
    003abf28loc_3abf28:
    003abf28ldr x3, [sp+304]
    003abf2cldr x4, [sp+328]
    003abf30subs xzr, x3, x4
    003abf34b.ne 0x3abf3c
    003abf38b 0x3abf58
    003abf3c
    003abf3cloc_3abf3c:
    003abf3cldr x3, [sp+112]
    003abf40str x3, [sp+104]
    003abf44ldr x2, [sp+104]
    003abf48ldr x1, [sp+304]
    003abf4cldr x0, [sp+328]
    003abf50bl runtime.memmove
    003abf54b 0x3abf5c
    003abf58
    003abf58loc_3abf58:
    003abf58b 0x3abf5c
    003abf5c
    003abf5cloc_3abf5c:
    003abf5cldr x0, [sp+112]
    003abf60str x0, [sp+72]
    003abf64ldr x1, [sp+408]
    003abf68ldr x3, [sp+400]
    003abf6cldr x4, [sp+416]
    003abf70b 0x3abf74
    003abf74
    003abf74loc_3abf74:
    003abf74subs xzr, x1, x0
    003abf78b.hs 0x3abf80
    003abf7cb 0x3ac338
    003abf80
    003abf80loc_3abf80:
    003abf80sub x4, x4, x0
    003abf84sub x5, x1, x0
    003abf88sub x6, xzr, x4
    003abf8cand x6, x0, x6, asr #63
    003abf90add x3, x3, x6
    003abf94str x3, [sp+400]
    003abf98str x5, [sp+408]
    003abf9cstr x4, [sp+416]
    003abfa0b 0x3abfa4
    003abfa4
    003abfa4loc_3abfa4:
    003abfa4ldr x3, [sp+408]
    003abfa8str x3, [sp+80]
    003abfaccbnz x3, 0x3abfb4
    003abfb0b 0x3ac294
    003abfb4
    003abfb4loc_3abfb4:
    003abfb4ldr x1, [sp+392]
    003abfb8ldrsb x27, [x1]
    003abfbcldr x2, [x1]
    003abfc0ldrsb x27, [x2]
    003abfc4ldr x0, [x1+8]
    003abfc8ldr x1, [x2+32]
    003abfccblr x1
    003abfd0ldr x1, [sp+392]
    003abfd4ldrsb x27, [x1]
    003abfd8ldr x2, [x1+56]
    003abfdcldr x3, [x1+64]
    003abfe0ldr x1, [x1+72]
    003abfe4str x2, [sp+280]
    003abfe8str x3, [sp+288]
    003abfecstr x1, [sp+296]
    003abff0ldr x4, [sp+392]
    003abff4ldrsb x27, [x4]
    003abff8ldr x5, [x4]
    003abffcldrsb x27, [x5]
    003ac000ldr x0, [x4+8]
    003ac004ldr x4, [x5+56]
    003ac008mov x5, x1
    003ac00cmov x1, x2
    003ac010mov x2, x3
    003ac014mov x3, x5
    003ac018blr x4
    003ac01cldr x1, [sp+392]
    003ac020ldrsb x27, [x1]
    003ac024ldr x2, [x1+24]
    003ac028ldr x3, [x1+32]
    003ac02cldr x1, [x1+40]
    003ac030str x2, [sp+256]
    003ac034str x3, [sp+264]
    003ac038str x1, [sp+272]
    003ac03cldr x4, [sp+392]
    003ac040ldrsb x27, [x4]
    003ac044ldr x5, [x4]
    003ac048ldrsb x27, [x5]
    003ac04cldr x0, [x4+8]
    003ac050ldr x4, [x5+56]
    003ac054mov x5, x1
    003ac058mov x1, x2
    003ac05cmov x2, x3
    003ac060mov x3, x5
    003ac064blr x4
    003ac068adrp x0, 0x251000
    003ac06cadd x0, x0, 2432
    003ac070bl runtime.newobject
    003ac074str x0, [sp+224]
    003ac078ldr x1, [sp+392]
    003ac07cldrsb x27, [x1]
    003ac080ldrb w1, [x1+48]
    003ac084strb w1, [x0]
    003ac088ldr x1, [sp+224]
    003ac08cldrsb x27, [x1]
    003ac090b 0x3ac094
    003ac094
    003ac094loc_3ac094:
    003ac094str x1, [sp+232]
    003ac098orr x3, xzr, 1
    003ac09cstr x3, [sp+240]
    003ac0a0str x3, [sp+248]
    003ac0a4ldr x4, [sp+392]
    003ac0a8ldrsb x27, [x4]
    003ac0acldr x5, [x4]
    003ac0b0ldrsb x27, [x5]
    003ac0b4ldr x0, [x4+8]
    003ac0b8ldr x4, [x5+56]
    003ac0bcmov x2, x3
    003ac0c0blr x4
    003ac0c4ldr x4, [sp+392]
    003ac0c8ldrsb x27, [x4]
    003ac0ccldr x1, [x4+56]
    003ac0d0ldr x3, [x4+72]
    003ac0d4b 0x3ac0d8
    003ac0d8
    003ac0d8loc_3ac0d8:
    003ac0d8b 0x3ac0dc
    003ac0dc
    003ac0dcloc_3ac0dc:
    003ac0dcstr x1, [sp+136]
    003ac0e0str xzr, [sp+144]
    003ac0e4str x3, [sp+152]
    003ac0e8ldr x4, [sp+392]
    003ac0ecldrsb x27, [x4]
    003ac0f0ldr x5, [x4]
    003ac0f4ldrsb x27, [x5]
    003ac0f8ldr x0, [x4+8]
    003ac0fcldr x4, [x5+48]
    003ac100mov x2, xzr
    003ac104blr x4
    003ac108str x0, [sp+352]
    003ac10cstr x1, [sp+360]
    003ac110str x2, [sp+368]
    003ac114ldr x4, [sp+392]
    003ac118ldrsb x27, [x4]
    003ac11cstr x1, [x4+64]
    003ac120str x2, [x4+72]
    003ac124adrp x27, 0x69f000
    003ac128ldr w5, [x27+3056]
    003ac12ccbz w5, 0x3ac134
    003ac130b 0x3ac138
    003ac134
    003ac134loc_3ac134:
    003ac134b 0x3ac14c
    003ac138
    003ac138loc_3ac138:
    003ac138bl runtime.gcWriteBarrier2
    003ac13cstr x0, [x25]
    003ac140ldr x3, [x4+56]
    003ac144str x3, [x25+8]
    003ac148b 0x3ac14c
    003ac14c
    003ac14cloc_3ac14c:
    003ac14cstr x0, [x4+56]
    003ac150ldr x3, [sp+392]
    003ac154ldrsb x27, [x3]
    003ac158ldr x4, [sp+392]
    003ac15cldrsb x27, [x4]
    003ac160ldrb w4, [x4+48]
    003ac164add x4, x4, 1
    003ac168strb w4, [x3+48]
    003ac16cldr x3, [sp+392]
    003ac170ldrsb x27, [x3]
    003ac174ldr x4, [sp+392]
    003ac178ldrsb x27, [x4]
    003ac17cldr x5, [x4+56]
    003ac180ldr x6, [x4+64]
    003ac184ldr x4, [x4+72]
    003ac188str x6, [x3+88]
    003ac18cstr x4, [x3+96]
    003ac190adrp x27, 0x69f000
    003ac194ldr w4, [x27+3056]
    003ac198cbz w4, 0x3ac1a0
    003ac19cb 0x3ac1a4
    003ac1a0
    003ac1a0loc_3ac1a0:
    003ac1a0b 0x3ac1b8
    003ac1a4
    003ac1a4loc_3ac1a4:
    003ac1a4bl runtime.gcWriteBarrier2
    003ac1a8str x5, [x25]
    003ac1acldr x4, [x3+80]
    003ac1b0str x4, [x25+8]
    003ac1b4b 0x3ac1b8
    003ac1b8
    003ac1b8loc_3ac1b8:
    003ac1b8str x5, [x3+80]
    003ac1bcldr x3, [sp+400]
    003ac1c0ldr x4, [sp+408]
    003ac1c4ldr x5, [sp+416]
    003ac1c8str x3, [sp+200]
    003ac1ccstr x4, [sp+208]
    003ac1d0str x5, [sp+216]
    003ac1d4ldr x3, [sp+392]
    003ac1d8ldrsb x27, [x3]
    003ac1dcldr x4, [x3+88]
    003ac1e0ldr x5, [x3+80]
    003ac1e4ldr x3, [x3+96]
    003ac1e8str x5, [sp+176]
    003ac1ecstr x4, [sp+184]
    003ac1f0str x3, [sp+192]
    003ac1f4ldr x3, [sp+208]
    003ac1f8str x3, [sp+96]
    003ac1fcsubs xzr, x3, x4
    003ac200b.gt 0x3ac208
    003ac204b 0x3ac210
    003ac208
    003ac208loc_3ac208:
    003ac208str x4, [sp+96]
    003ac20cb 0x3ac214
    003ac210
    003ac210loc_3ac210:
    003ac210b 0x3ac214
    003ac214
    003ac214loc_3ac214:
    003ac214ldr x3, [sp+200]
    003ac218ldr x4, [sp+176]
    003ac21csubs xzr, x4, x3
    003ac220b.ne 0x3ac228
    003ac224b 0x3ac244
    003ac228
    003ac228loc_3ac228:
    003ac228ldr x3, [sp+96]
    003ac22cstr x3, [sp+88]
    003ac230ldr x2, [sp+88]
    003ac234ldr x1, [sp+176]
    003ac238ldr x0, [sp+200]
    003ac23cbl runtime.memmove
    003ac240b 0x3ac248
    003ac244
    003ac244loc_3ac244:
    003ac244b 0x3ac248
    003ac248
    003ac248loc_3ac248:
    003ac248ldr x0, [sp+96]
    003ac24cstr x0, [sp+72]
    003ac250ldr x1, [sp+408]
    003ac254ldr x3, [sp+400]
    003ac258ldr x4, [sp+416]
    003ac25cb 0x3ac260
    003ac260
    003ac260loc_3ac260:
    003ac260subs xzr, x1, x0
    003ac264b.hs 0x3ac26c
    003ac268b 0x3ac334
    003ac26c
    003ac26cloc_3ac26c:
    003ac26csub x4, x4, x0
    003ac270sub x5, x1, x0
    003ac274sub x6, xzr, x4
    003ac278and x6, x0, x6, asr #63
    003ac27cadd x3, x3, x6
    003ac280str x3, [sp+400]
    003ac284str x5, [sp+408]
    003ac288str x4, [sp+416]
    003ac28cb 0x3ac290
    003ac290
    003ac290loc_3ac290:
    003ac290b 0x3abfa4
    003ac294
    003ac294loc_3ac294:
    003ac294ldr x3, [sp+392]
    003ac298ldrsb x27, [x3]
    003ac29cldr x1, [x3+88]
    003ac2a0ldr x4, [x3+80]
    003ac2a4ldr x3, [x3+96]
    003ac2a8ldr x0, [sp+72]
    003ac2acb 0x3ac2b0
    003ac2b0
    003ac2b0loc_3ac2b0:
    003ac2b0subs xzr, x1, x0
    003ac2b4b.hs 0x3ac2bc
    003ac2b8b 0x3ac330
    003ac2bc
    003ac2bcloc_3ac2bc:
    003ac2bcldr x5, [sp+392]
    003ac2c0ldrsb x27, [x5]
    003ac2c4sub x3, x3, x0
    003ac2c8sub x6, x1, x0
    003ac2ccstr x6, [x5+88]
    003ac2d0str x3, [x5+96]
    003ac2d4sub x3, xzr, x3
    003ac2d8and x3, x0, x3, asr #63
    003ac2dcadd x3, x4, x3
    003ac2e0adrp x27, 0x69f000
    003ac2e4ldr w4, [x27+3056]
    003ac2e8cbz w4, 0x3ac2f0
    003ac2ecb 0x3ac2f4
    003ac2f0
    003ac2f0loc_3ac2f0:
    003ac2f0b 0x3ac308
    003ac2f4
    003ac2f4loc_3ac2f4:
    003ac2f4bl runtime.gcWriteBarrier2
    003ac2f8str x3, [x25]
    003ac2fcldr x4, [x5+80]
    003ac300str x4, [x25+8]
    003ac304b 0x3ac308
    003ac308
    003ac308loc_3ac308:
    003ac308str x3, [x5+80]
    003ac30cldr x3, [sp+64]
    003ac310str x3, [sp+48]
    003ac314stp xzr, xzr, [sp+120]
    003ac318ldr x0, [sp+48]
    003ac31cmov x1, xzr
    003ac320mov x2, xzr
    003ac324ldp x29, x30, [sp-8]
    003ac328add sp, sp, 384
    003ac32cret x30
    003ac330
    003ac330loc_3ac330:
    003ac330bl runtime.panicSliceB
    003ac334
    003ac334loc_3ac334:
    003ac334bl runtime.panicSliceB
    003ac338
    003ac338loc_3ac338:
    003ac338bl runtime.panicSliceB
    003ac33chint
    003ac340
    003ac340loc_3ac340:
    003ac340stp x0, x1, [sp+8]
    003ac344stp x2, x3, [sp+24]
    003ac348mov x3, x30
    003ac34cbl runtime.morestack_noctxt.abi0
    003ac350ldp x0, x1, [sp+8]
    003ac354ldp x2, x3, [sp+24]
    003ac358b 0x3abe00
    003ac35cudf 0
    003abe00
    003ac360
    003ac360golang.org/x/crypto/hkdf.Expand: ; void golang.org/x/crypto/hkdf.Expand(func() hash.Hash hash, struct []uint8 pseudorandomKey, struct []uint8 info)
    003ac360ldr x16, [x28+16]
    003ac364subs xzr, sp, x16
    003ac368b.ls 0x3ac50c
    003ac36cstr x30, [sp-112]!
    003ac370stur x29, [sp-8]
    003ac374sub x29, sp, 8
    003ac378str x0, [sp+120]
    003ac37cstr x1, [sp+128]
    003ac380str x2, [sp+136]
    003ac384str x3, [sp+144]
    003ac388str x4, [sp+152]
    003ac38cstr x5, [sp+160]
    003ac390str x6, [sp+168]
    003ac394stp xzr, xzr, [sp+56]
    003ac398ldr x1, [sp+128]
    003ac39cldr x2, [sp+136]
    003ac3a0ldr x3, [sp+144]
    003ac3a4ldr x0, [sp+120]
    003ac3a8bl crypto/hmac.New
    003ac3acstr x0, [sp+72]
    003ac3b0str x1, [sp+80]
    003ac3b4ldrsb x27, [x0]
    003ac3b8ldr x4, [x0+40]
    003ac3bcmov x0, x1
    003ac3c0blr x4
    003ac3c4str x0, [sp+48]
    003ac3c8adrp x0, 0x2d4000
    003ac3ccadd x0, x0, 288
    003ac3d0bl runtime.newobject
    003ac3d4str x0, [sp+88]
    003ac3d8ldr x4, [sp+80]
    003ac3dcldr x5, [sp+72]
    003ac3e0str x5, [x0]
    003ac3e4adrp x27, 0x69f000
    003ac3e8ldr w5, [x27+3056]
    003ac3eccbz w5, 0x3ac3f4
    003ac3f0b 0x3ac3f8
    003ac3f4
    003ac3f4loc_3ac3f4:
    003ac3f4b 0x3ac40c
    003ac3f8
    003ac3f8loc_3ac3f8:
    003ac3f8bl runtime.gcWriteBarrier2
    003ac3fcstr x4, [x25]
    003ac400ldr x2, [x0+8]
    003ac404str x2, [x25+8]
    003ac408b 0x3ac40c
    003ac40c
    003ac40cloc_3ac40c:
    003ac40cstr x4, [x0+8]
    003ac410ldr x2, [sp+88]
    003ac414ldrsb x27, [x2]
    003ac418ldr x3, [sp+48]
    003ac41cstr x3, [x2+16]
    003ac420ldr x2, [sp+88]
    003ac424ldrsb x27, [x2]
    003ac428ldr x3, [sp+152]
    003ac42cldr x4, [sp+160]
    003ac430ldr x5, [sp+168]
    003ac434str x4, [x2+32]
    003ac438str x5, [x2+40]
    003ac43cadrp x27, 0x69f000
    003ac440ldr w4, [x27+3056]
    003ac444cbz w4, 0x3ac44c
    003ac448b 0x3ac450
    003ac44c
    003ac44cloc_3ac44c:
    003ac44cb 0x3ac464
    003ac450
    003ac450loc_3ac450:
    003ac450bl runtime.gcWriteBarrier2
    003ac454str x3, [x25]
    003ac458ldr x4, [x2+24]
    003ac45cstr x4, [x25+8]
    003ac460b 0x3ac464
    003ac464
    003ac464loc_3ac464:
    003ac464str x3, [x2+24]
    003ac468ldr x2, [sp+88]
    003ac46cldrsb x27, [x2]
    003ac470orr x3, xzr, 1
    003ac474strb w3, [x2+48]
    003ac478ldr x2, [sp+88]
    003ac47cldrsb x27, [x2]
    003ac480stp xzr, xzr, [x2+64]
    003ac484adrp x27, 0x69f000
    003ac488ldr w3, [x27+3056]
    003ac48ccbz w3, 0x3ac494
    003ac490b 0x3ac498
    003ac494
    003ac494loc_3ac494:
    003ac494b 0x3ac4a8
    003ac498
    003ac498loc_3ac498:
    003ac498ldr x3, [x2+56]
    003ac49cbl runtime.gcWriteBarrier1
    003ac4a0str x3, [x25]
    003ac4a4b 0x3ac4a8
    003ac4a8
    003ac4a8loc_3ac4a8:
    003ac4a8str xzr, [x2+56]
    003ac4acldr x2, [sp+88]
    003ac4b0ldrsb x27, [x2]
    003ac4b4stp xzr, xzr, [x2+88]
    003ac4b8adrp x27, 0x69f000
    003ac4bcldr w3, [x27+3056]
    003ac4c0cbz w3, 0x3ac4c8
    003ac4c4b 0x3ac4cc
    003ac4c8
    003ac4c8loc_3ac4c8:
    003ac4c8b 0x3ac4dc
    003ac4cc
    003ac4ccloc_3ac4cc:
    003ac4ccldr x3, [x2+80]
    003ac4d0bl runtime.gcWriteBarrier1
    003ac4d4str x3, [x25]
    003ac4d8b 0x3ac4dc
    003ac4dc
    003ac4dcloc_3ac4dc:
    003ac4dcstr xzr, [x2+80]
    003ac4e0ldr x2, [sp+88]
    003ac4e4str x2, [sp+96]
    003ac4e8adrp x3, 0x36a000
    003ac4ecadd x3, x3, 2272
    003ac4f0str x3, [sp+56]
    003ac4f4str x2, [sp+64]
    003ac4f8ldr x0, [sp+56]
    003ac4fcldr x1, [sp+64]
    003ac500ldur x29, [sp-8]
    003ac504ldr x30, [sp], 112
    003ac508ret x30
    003ac50c
    003ac50cloc_3ac50c:
    003ac50cstp x0, x1, [sp+8]
    003ac510stp x2, x3, [sp+24]
    003ac514stp x4, x5, [sp+40]
    003ac518str x6, [sp+56]
    003ac51cmov x3, x30
    003ac520bl runtime.morestack_noctxt.abi0
    003ac524ldp x0, x1, [sp+8]
    003ac528ldp x2, x3, [sp+24]
    003ac52cldp x4, x5, [sp+40]
    003ac530ldr x6, [sp+56]
    003ac534b 0x3ac360
    003ac538udf 0
    003ac53cudf 0
    003ac360