File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    001ca460
    001ca460reflect.TypeFor[go.shape.interface { MarshalJSON() ([]uint8, error) }]: ; void reflect.TypeFor[go.shape.interface { MarshalJSON() ([]uint8, error) }](uintptr[5] * dict)
    001ca460ldr x16, [x28+16]
    001ca464sub x17, sp, 32
    001ca468subs xzr, x17, x16
    001ca46cb.ls 0x1ca538
    001ca470str x30, [sp-160]!
    001ca474stur x29, [sp-8]
    001ca478sub x29, sp, 8
    001ca47cstr x0, [sp+168]
    001ca480stp xzr, xzr, [sp+24]
    001ca484stp xzr, xzr, [sp+40]
    001ca488stp xzr, xzr, [sp+96]
    001ca48cstr xzr, [sp+88]
    001ca490ldr x2, [sp+88]
    001ca494cbnz x2, 0x1ca49c
    001ca498b 0x1ca4ac
    001ca49c
    001ca49cloc_1ca49c:
    001ca49cldr x2, [sp+88]
    001ca4a0ldr x2, [x2+8]
    001ca4a4str x2, [sp+88]
    001ca4a8b 0x1ca4b0
    001ca4ac
    001ca4acloc_1ca4ac:
    001ca4acb 0x1ca4b0
    001ca4b0
    001ca4b0loc_1ca4b0:
    001ca4b0ldr x1, [sp+104]
    001ca4b4ldr x0, [sp+88]
    001ca4b8bl reflect.TypeOf
    001ca4bcstr x0, [sp+56]
    001ca4c0str x1, [sp+64]
    001ca4c4cbnz x0, 0x1ca4cc
    001ca4c8b 0x1ca4e0
    001ca4cc
    001ca4ccloc_1ca4cc:
    001ca4ccstr x0, [sp+24]
    001ca4d0str x1, [sp+32]
    001ca4d4ldur x29, [sp-8]
    001ca4d8ldr x30, [sp], 160
    001ca4dcret x30
    001ca4e0
    001ca4e0loc_1ca4e0:
    001ca4e0str xzr, [sp+128]
    001ca4e4ldr x2, [sp+168]
    001ca4e8ldrsb x27, [x2]
    001ca4ecb 0x1ca4f0
    001ca4f0
    001ca4f0loc_1ca4f0:
    001ca4f0ldr x0, [x2+8]
    001ca4f4str x0, [sp+72]
    001ca4f8str xzr, [sp+80]
    001ca4fcmov x1, xzr
    001ca500bl reflect.TypeOf
    001ca504str x0, [sp+136]
    001ca508str x1, [sp+144]
    001ca50cldrsb x27, [x0]
    001ca510ldr x2, [x0+88]
    001ca514mov x0, x1
    001ca518blr x2
    001ca51cstr x0, [sp+112]
    001ca520str x1, [sp+120]
    001ca524str x0, [sp+24]
    001ca528str x1, [sp+32]
    001ca52cldur x29, [sp-8]
    001ca530ldr x30, [sp], 160
    001ca534ret x30
    001ca538
    001ca538loc_1ca538:
    001ca538str x0, [sp+8]
    001ca53cmov x3, x30
    001ca540bl runtime.morestack_noctxt.abi0
    001ca544ldr x0, [sp+8]
    001ca548b 0x1ca460
    001ca54cudf 0
    001ca460
    001ca550
    001ca550reflect.TypeFor[go.shape.string]: ; void reflect.TypeFor[go.shape.string](uintptr[5] * dict)
    001ca550ldr x16, [x28+16]
    001ca554sub x17, sp, 48
    001ca558subs xzr, x17, x16
    001ca55cb.ls 0x1ca618
    001ca560str x30, [sp-176]!
    001ca564stur x29, [sp-8]
    001ca568sub x29, sp, 8
    001ca56cstr x0, [sp+184]
    001ca570stp xzr, xzr, [sp+32]
    001ca574stp xzr, xzr, [sp+48]
    001ca578stp xzr, xzr, [sp+112]
    001ca57cldr x2, [sp+184]
    001ca580ldrsb x27, [x2]
    001ca584b 0x1ca588
    001ca588
    001ca588loc_1ca588:
    001ca588ldr x0, [x2]
    001ca58cstr x0, [sp+96]
    001ca590add x1, sp, 112
    001ca594str x1, [sp+104]
    001ca598bl reflect.TypeOf
    001ca59cstr x0, [sp+64]
    001ca5a0str x1, [sp+72]
    001ca5a4cbnz x0, 0x1ca5ac
    001ca5a8b 0x1ca5c0
    001ca5ac
    001ca5acloc_1ca5ac:
    001ca5acstr x0, [sp+32]
    001ca5b0str x1, [sp+40]
    001ca5b4ldur x29, [sp-8]
    001ca5b8ldr x30, [sp], 176
    001ca5bcret x30
    001ca5c0
    001ca5c0loc_1ca5c0:
    001ca5c0str xzr, [sp+144]
    001ca5c4ldr x2, [sp+184]
    001ca5c8ldrsb x27, [x2]
    001ca5ccb 0x1ca5d0
    001ca5d0
    001ca5d0loc_1ca5d0:
    001ca5d0ldr x0, [x2+8]
    001ca5d4str x0, [sp+80]
    001ca5d8str xzr, [sp+88]
    001ca5dcmov x1, xzr
    001ca5e0bl reflect.TypeOf
    001ca5e4str x0, [sp+152]
    001ca5e8str x1, [sp+160]
    001ca5ecldrsb x27, [x0]
    001ca5f0ldr x2, [x0+88]
    001ca5f4mov x0, x1
    001ca5f8blr x2
    001ca5fcstr x0, [sp+128]
    001ca600str x1, [sp+136]
    001ca604str x0, [sp+32]
    001ca608str x1, [sp+40]
    001ca60cldur x29, [sp-8]
    001ca610ldr x30, [sp], 176
    001ca614ret x30
    001ca618
    001ca618loc_1ca618:
    001ca618str x0, [sp+8]
    001ca61cmov x3, x30
    001ca620bl runtime.morestack_noctxt.abi0
    001ca624ldr x0, [sp+8]
    001ca628b 0x1ca550
    001ca62cudf 0
    001ca550
    001ca630
    001ca630reflect.TypeFor[go.shape.interface { UnmarshalText([]uint8) error }]: ; void reflect.TypeFor[go.shape.interface { UnmarshalText([]uint8) error }](uintptr[5] * dict)
    001ca630ldr x16, [x28+16]
    001ca634sub x17, sp, 32
    001ca638subs xzr, x17, x16
    001ca63cb.ls 0x1ca708
    001ca640str x30, [sp-160]!
    001ca644stur x29, [sp-8]
    001ca648sub x29, sp, 8
    001ca64cstr x0, [sp+168]
    001ca650stp xzr, xzr, [sp+24]
    001ca654stp xzr, xzr, [sp+40]
    001ca658stp xzr, xzr, [sp+96]
    001ca65cstr xzr, [sp+88]
    001ca660ldr x2, [sp+88]
    001ca664cbnz x2, 0x1ca66c
    001ca668b 0x1ca67c
    001ca66c
    001ca66cloc_1ca66c:
    001ca66cldr x2, [sp+88]
    001ca670ldr x2, [x2+8]
    001ca674str x2, [sp+88]
    001ca678b 0x1ca680
    001ca67c
    001ca67cloc_1ca67c:
    001ca67cb 0x1ca680
    001ca680
    001ca680loc_1ca680:
    001ca680ldr x1, [sp+104]
    001ca684ldr x0, [sp+88]
    001ca688bl reflect.TypeOf
    001ca68cstr x0, [sp+56]
    001ca690str x1, [sp+64]
    001ca694cbnz x0, 0x1ca69c
    001ca698b 0x1ca6b0
    001ca69c
    001ca69cloc_1ca69c:
    001ca69cstr x0, [sp+24]
    001ca6a0str x1, [sp+32]
    001ca6a4ldur x29, [sp-8]
    001ca6a8ldr x30, [sp], 160
    001ca6acret x30
    001ca6b0
    001ca6b0loc_1ca6b0:
    001ca6b0str xzr, [sp+128]
    001ca6b4ldr x2, [sp+168]
    001ca6b8ldrsb x27, [x2]
    001ca6bcb 0x1ca6c0
    001ca6c0
    001ca6c0loc_1ca6c0:
    001ca6c0ldr x0, [x2+8]
    001ca6c4str x0, [sp+72]
    001ca6c8str xzr, [sp+80]
    001ca6ccmov x1, xzr
    001ca6d0bl reflect.TypeOf
    001ca6d4str x0, [sp+136]
    001ca6d8str x1, [sp+144]
    001ca6dcldrsb x27, [x0]
    001ca6e0ldr x2, [x0+88]
    001ca6e4mov x0, x1
    001ca6e8blr x2
    001ca6ecstr x0, [sp+112]
    001ca6f0str x1, [sp+120]
    001ca6f4str x0, [sp+24]
    001ca6f8str x1, [sp+32]
    001ca6fcldur x29, [sp-8]
    001ca700ldr x30, [sp], 160
    001ca704ret x30
    001ca708
    001ca708loc_1ca708:
    001ca708str x0, [sp+8]
    001ca70cmov x3, x30
    001ca710bl runtime.morestack_noctxt.abi0
    001ca714ldr x0, [sp+8]
    001ca718b 0x1ca630
    001ca71cudf 0
    001ca630
    001ca720
    001ca720encoding/json.(*Number).String: ; void encoding/json.(*Number).String(struct encoding/json.Number * n)
    001ca720ldr x16, [x28+16]
    001ca724subs xzr, sp, x16
    001ca728b.ls 0x1ca794
    001ca72cstr x30, [sp-80]!
    001ca730stur x29, [sp-8]
    001ca734sub x29, sp, 8
    001ca738ldr x16, [x28+32]
    001ca73ccbnz x16, 0x1ca7a8
    001ca740
    001ca740loc_1ca740:
    001ca740str x0, [sp+88]
    001ca744stp xzr, xzr, [sp+24]
    001ca748ldr x2, [sp+88]
    001ca74ccbnz x2, 0x1ca754
    001ca750b 0x1ca78c
    001ca754
    001ca754loc_1ca754:
    001ca754ldr x2, [sp+88]
    001ca758ldrsb x27, [x2]
    001ca75cldr x0, [x2]
    001ca760ldr x1, [x2+8]
    001ca764str x0, [sp+40]
    001ca768str x1, [sp+48]
    001ca76cbl encoding/json.Number.String
    001ca770str x0, [sp+56]
    001ca774str x1, [sp+64]
    001ca778str x0, [sp+24]
    001ca77cstr x1, [sp+32]
    001ca780ldur x29, [sp-8]
    001ca784ldr x30, [sp], 80
    001ca788ret x30
    001ca78c
    001ca78cloc_1ca78c:
    001ca78cbl runtime.panicwrap
    001ca790hint
    001ca794
    001ca794loc_1ca794:
    001ca794str x0, [sp+8]
    001ca798mov x3, x30
    001ca79cbl runtime.morestack_noctxt.abi0
    001ca7a0ldr x0, [sp+8]
    001ca7a4b 0x1ca720
    001ca7a8
    001ca7a8loc_1ca7a8:
    001ca7a8ldr x17, [x16]
    001ca7acadd x20, sp, 88
    001ca7b0subs xzr, x20, x17
    001ca7b4b.ne 0x1ca740
    001ca7b8add x20, sp, 8
    001ca7bcstr x20, [x16]
    001ca7c0b 0x1ca740
    001ca7c4udf 0
    001ca7c8udf 0
    001ca7ccudf 0
    001ca720
    001ca7d0
    001ca7d0encoding/json.jsonError.Error: ; void encoding/json.jsonError.Error(encoding/json.jsonError p0)
    001ca7d0ldr x16, [x28+16]
    001ca7d4subs xzr, sp, x16
    001ca7d8b.ls 0x1ca82c
    001ca7dcstr x30, [sp-64]!
    001ca7e0stur x29, [sp-8]
    001ca7e4sub x29, sp, 8
    001ca7e8ldr x16, [x28+32]
    001ca7eccbnz x16, 0x1ca840
    001ca7f0
    001ca7f0loc_1ca7f0:
    001ca7f0str x0, [sp+72]
    001ca7f4str x1, [sp+80]
    001ca7f8stp xzr, xzr, [sp+24]
    001ca7fcldr x1, [sp+72]
    001ca800ldrsb x27, [x1]
    001ca804ldr x0, [sp+80]
    001ca808ldr x1, [x1+24]
    001ca80cblr x1
    001ca810str x0, [sp+40]
    001ca814str x1, [sp+48]
    001ca818str x0, [sp+24]
    001ca81cstr x1, [sp+32]
    001ca820ldur x29, [sp-8]
    001ca824ldr x30, [sp], 64
    001ca828ret x30
    001ca82c
    001ca82cloc_1ca82c:
    001ca82cstp x0, x1, [sp+8]
    001ca830mov x3, x30
    001ca834bl runtime.morestack_noctxt.abi0
    001ca838ldp x0, x1, [sp+8]
    001ca83cb 0x1ca7d0
    001ca840
    001ca840loc_1ca840:
    001ca840ldr x17, [x16]
    001ca844add x20, sp, 72
    001ca848subs xzr, x20, x17
    001ca84cb.ne 0x1ca7f0
    001ca850add x20, sp, 8
    001ca854str x20, [x16]
    001ca858b 0x1ca7f0
    001ca85cudf 0
    001ca7d0
    001ca860
    001ca860encoding/json.(*jsonError).Error: ; void encoding/json.(*jsonError).Error(encoding/json.jsonError * p0)
    001ca860ldr x16, [x28+16]
    001ca864subs xzr, sp, x16
    001ca868b.ls 0x1ca8c0
    001ca86cstr x30, [sp-64]!
    001ca870stur x29, [sp-8]
    001ca874sub x29, sp, 8
    001ca878ldr x16, [x28+32]
    001ca87ccbnz x16, 0x1ca8d4
    001ca880
    001ca880loc_1ca880:
    001ca880str x0, [sp+72]
    001ca884stp xzr, xzr, [sp+24]
    001ca888ldr x1, [sp+72]
    001ca88cldrsb x27, [x1]
    001ca890ldr x2, [x1]
    001ca894ldrsb x27, [x2]
    001ca898ldr x0, [x1+8]
    001ca89cldr x1, [x2+24]
    001ca8a0blr x1
    001ca8a4str x0, [sp+40]
    001ca8a8str x1, [sp+48]
    001ca8acstr x0, [sp+24]
    001ca8b0str x1, [sp+32]
    001ca8b4ldur x29, [sp-8]
    001ca8b8ldr x30, [sp], 64
    001ca8bcret x30
    001ca8c0
    001ca8c0loc_1ca8c0:
    001ca8c0str x0, [sp+8]
    001ca8c4mov x3, x30
    001ca8c8bl runtime.morestack_noctxt.abi0
    001ca8ccldr x0, [sp+8]
    001ca8d0b 0x1ca860
    001ca8d4
    001ca8d4loc_1ca8d4:
    001ca8d4ldr x17, [x16]
    001ca8d8add x20, sp, 72
    001ca8dcsubs xzr, x20, x17
    001ca8e0b.ne 0x1ca880
    001ca8e4add x20, sp, 8
    001ca8e8str x20, [x16]
    001ca8ecb 0x1ca880
    001ca860
    001ca8f0
    001ca8f0encoding/json.floatEncoder.encode-fm: ; void encoding/json.floatEncoder.encode-fm(encoding/json.encodeState * e, reflect.Value v, encoding/json.encOpts opts)
    001ca8f0ldr x16, [x28+16]
    001ca8f4subs xzr, sp, x16
    001ca8f8b.ls 0x1ca960
    001ca8fcstr x30, [sp-80]!
    001ca900stur x29, [sp-8]
    001ca904sub x29, sp, 8
    001ca908ldr x16, [x28+32]
    001ca90ccbnz x16, 0x1ca98c
    001ca910
    001ca910loc_1ca910:
    001ca910str x0, [sp+88]
    001ca914str x1, [sp+96]
    001ca918str x2, [sp+104]
    001ca91cstr x3, [sp+112]
    001ca920strb w4, [sp+120]
    001ca924strb w5, [sp+121]
    001ca928ldr x7, [x26+8]
    001ca92cstr x7, [sp+64]
    001ca930ldrb w5, [sp+120]
    001ca934ldr x2, [sp+96]
    001ca938ldrb w6, [sp+121]
    001ca93cldr x8, [sp+104]
    001ca940mov x1, x0
    001ca944mov x4, x3
    001ca948mov x0, x7
    001ca94cmov x3, x8
    001ca950bl encoding/json.floatEncoder.encode
    001ca954ldur x29, [sp-8]
    001ca958ldr x30, [sp], 80
    001ca95cret x30
    001ca960
    001ca960loc_1ca960:
    001ca960stp x0, x1, [sp+8]
    001ca964stp x2, x3, [sp+24]
    001ca968strb w4, [sp+40]
    001ca96cstrb w5, [sp+41]
    001ca970mov x3, x30
    001ca974bl runtime.morestack.abi0
    001ca978ldp x0, x1, [sp+8]
    001ca97cldp x2, x3, [sp+24]
    001ca980ldrb w4, [sp+40]
    001ca984ldrb w5, [sp+41]
    001ca988b 0x1ca8f0
    001ca98c
    001ca98cloc_1ca98c:
    001ca98cldr x17, [x16]
    001ca990add x20, sp, 88
    001ca994subs xzr, x20, x17
    001ca998b.ne 0x1ca910
    001ca99cadd x20, sp, 8
    001ca9a0str x20, [x16]
    001ca9a4b 0x1ca910
    001ca9a8udf 0
    001ca9acudf 0
    001ca8f0
    001ca9b0
    001ca9b0hash/crc32.init: ; void hash/crc32.init(void)
    001ca9b0ldr x16, [x28+16]
    001ca9b4subs xzr, sp, x16
    001ca9b8b.ls 0x1caa94
    001ca9bcstr x30, [sp-32]!
    001ca9c0stur x29, [sp-8]
    001ca9c4sub x29, sp, 8
    001ca9c8adrp x0, 0x50f000
    001ca9ccadd x0, x0, 536
    001ca9d0bl sync.OnceFunc
    001ca9d4adrp x27, 0x881000
    001ca9d8ldr w1, [x27+3056]
    001ca9dccbz w1, 0x1ca9e4
    001ca9e0b 0x1ca9e8
    001ca9e4
    001ca9e4loc_1ca9e4:
    001ca9e4b 0x1caa00
    001ca9e8
    001ca9e8loc_1ca9e8:
    001ca9e8bl runtime.gcWriteBarrier2
    001ca9ecstr x0, [x25]
    001ca9f0adrp x27, 0x856000
    001ca9f4ldr x1, [x27+3872]
    001ca9f8str x1, [x25+8]
    001ca9fcb 0x1caa00
    001caa00
    001caa00loc_1caa00:
    001caa00adrp x27, 0x856000
    001caa04str x0, [x27+3872]
    001caa08movn x0, 31967
    001caa0cmovk x0, 0xedb80000
    001caa10bl hash/crc32.simpleMakeTable
    001caa14adrp x27, 0x881000
    001caa18ldr w1, [x27+3056]
    001caa1ccbz w1, 0x1caa24
    001caa20b 0x1caa28
    001caa24
    001caa24loc_1caa24:
    001caa24b 0x1caa40
    001caa28
    001caa28loc_1caa28:
    001caa28bl runtime.gcWriteBarrier2
    001caa2cstr x0, [x25]
    001caa30adrp x27, 0x856000
    001caa34ldr x1, [x27+3880]
    001caa38str x1, [x25+8]
    001caa3cb 0x1caa40
    001caa40
    001caa40loc_1caa40:
    001caa40adrp x27, 0x856000
    001caa44str x0, [x27+3880]
    001caa48adrp x0, 0x50f000
    001caa4cadd x0, x0, 552
    001caa50bl sync.OnceFunc
    001caa54adrp x27, 0x881000
    001caa58ldr w1, [x27+3056]
    001caa5ccbz w1, 0x1caa64
    001caa60b 0x1caa68
    001caa64
    001caa64loc_1caa64:
    001caa64b 0x1caa80
    001caa68
    001caa68loc_1caa68:
    001caa68bl runtime.gcWriteBarrier2
    001caa6cstr x0, [x25]
    001caa70adrp x27, 0x856000
    001caa74ldr x1, [x27+3904]
    001caa78str x1, [x25+8]
    001caa7cb 0x1caa80
    001caa80
    001caa80loc_1caa80:
    001caa80adrp x27, 0x856000
    001caa84str x0, [x27+3904]
    001caa88ldur x29, [sp-8]
    001caa8cldr x30, [sp], 32
    001caa90ret x30
    001caa94
    001caa94loc_1caa94:
    001caa94mov x3, x30
    001caa98bl runtime.morestack_noctxt.abi0
    001caa9cb 0x1ca9b0
    001ca9b0
    001caaa0
    001caaa0hash/crc32.init.func1: ; void hash/crc32.init.func1(void)
    001caaa0ldr x16, [x28+16]
    001caaa4subs xzr, sp, x16
    001caaa8b.ls 0x1cabc4
    001caaacstr x30, [sp-48]!
    001caab0stur x29, [sp-8]
    001caab4sub x29, sp, 8
    001caab8movn x0, 50311
    001caabcmovk x0, 0x82f60000
    001caac0bl hash/crc32.simpleMakeTable
    001caac4adrp x27, 0x881000
    001caac8ldr w1, [x27+3056]
    001caacccbz w1, 0x1caad4
    001caad0b 0x1caad8
    001caad4
    001caad4loc_1caad4:
    001caad4b 0x1caaf0
    001caad8
    001caad8loc_1caad8:
    001caad8bl runtime.gcWriteBarrier2
    001caadcstr x0, [x25]
    001caae0adrp x27, 0x856000
    001caae4ldr x1, [x27+3848]
    001caae8str x1, [x25+8]
    001caaecb 0x1caaf0
    001caaf0
    001caaf0loc_1caaf0:
    001caaf0adrp x27, 0x856000
    001caaf4str x0, [x27+3848]
    001caaf8bl hash/crc32.archAvailableCastagnoli
    001caafcstrb w0, [sp+39]
    001cab00tbnz w0, 0, 0x1cab08
    001cab04b 0x1cab48
    001cab08
    001cab08loc_1cab08:
    001cab08bl hash/crc32.archInitCastagnoli
    001cab0cadrp x27, 0x881000
    001cab10ldr w0, [x27+3056]
    001cab14cbz w0, 0x1cab1c
    001cab18b 0x1cab20
    001cab1c
    001cab1cloc_1cab1c:
    001cab1cb 0x1cab34
    001cab20
    001cab20loc_1cab20:
    001cab20adrp x27, 0x856000
    001cab24ldr x2, [x27+3864]
    001cab28bl runtime.gcWriteBarrier1
    001cab2cstr x2, [x25]
    001cab30b 0x1cab34
    001cab34
    001cab34loc_1cab34:
    001cab34adrp x2, 0x50f000
    001cab38add x2, x2, 520
    001cab3cadrp x27, 0x856000
    001cab40str x2, [x27+3864]
    001cab44b 0x1caba8
    001cab48
    001cab48loc_1cab48:
    001cab48movn x0, 50311
    001cab4cmovk x0, 0x82f60000
    001cab50bl hash/crc32.slicingMakeTable
    001cab54adrp x27, 0x881000
    001cab58ldr w1, [x27+3056]
    001cab5ccbz w1, 0x1cab64
    001cab60b 0x1cab68
    001cab64
    001cab64loc_1cab64:
    001cab64b 0x1cab8c
    001cab68
    001cab68loc_1cab68:
    001cab68bl runtime.gcWriteBarrier3
    001cab6cstr x0, [x25]
    001cab70adrp x27, 0x856000
    001cab74ldr x2, [x27+3856]
    001cab78str x2, [x25+8]
    001cab7cadrp x27, 0x856000
    001cab80ldr x2, [x27+3864]
    001cab84str x2, [x25+16]
    001cab88b 0x1cab8c
    001cab8c
    001cab8cloc_1cab8c:
    001cab8cadrp x27, 0x856000
    001cab90str x0, [x27+3856]
    001cab94adrp x2, 0x50f000
    001cab98add x2, x2, 544
    001cab9cadrp x27, 0x856000
    001caba0str x2, [x27+3864]
    001caba4b 0x1caba8
    001caba8
    001caba8loc_1caba8:
    001caba8adrp x0, 0x881000
    001cabacadd x0, x0, 1708
    001cabb0orr x1, xzr, 1
    001cabb4bl sync/atomic.(*Bool).Store
    001cabb8ldur x29, [sp-8]
    001cabbcldr x30, [sp], 48
    001cabc0ret x30
    001cabc4
    001cabc4loc_1cabc4:
    001cabc4mov x3, x30
    001cabc8bl runtime.morestack_noctxt.abi0
    001cabccb 0x1caaa0
    001caaa0
    001cabd0
    001cabd0hash/crc32.init.func1.1: ; void hash/crc32.init.func1.1(uint32 crc, struct []uint8 p)
    001cabd0ldr x16, [x28+16]
    001cabd4subs xzr, sp, x16
    001cabd8b.ls 0x1cac28
    001cabdcstr x30, [sp-64]!
    001cabe0stur x29, [sp-8]
    001cabe4sub x29, sp, 8
    001cabe8str w0, [sp+72]
    001cabecstr x1, [sp+80]
    001cabf0str x2, [sp+88]
    001cabf4str x3, [sp+96]
    001cabf8str wzr, [sp+48]
    001cabfcadrp x27, 0x856000
    001cac00ldr x1, [x27+3856]
    001cac04ldr x3, [sp+88]
    001cac08ldr x4, [sp+96]
    001cac0cldr x2, [sp+80]
    001cac10bl hash/crc32.slicingUpdate
    001cac14str w0, [sp+52]
    001cac18str w0, [sp+48]
    001cac1cldur x29, [sp-8]
    001cac20ldr x30, [sp], 64
    001cac24ret x30
    001cac28
    001cac28loc_1cac28:
    001cac28str w0, [sp+8]
    001cac2cstp x1, x2, [sp+16]
    001cac30str x3, [sp+32]
    001cac34mov x3, x30
    001cac38bl runtime.morestack_noctxt.abi0
    001cac3cldr w0, [sp+8]
    001cac40ldp x1, x2, [sp+16]
    001cac44ldr x3, [sp+32]
    001cac48b 0x1cabd0
    001cac4cudf 0
    001cabd0
    001cac50
    001cac50hash/crc32.init.func2: ; void hash/crc32.init.func2(void)
    001cac50ldr x16, [x28+16]
    001cac54subs xzr, sp, x16
    001cac58b.ls 0x1cad24
    001cac5cstr x30, [sp-32]!
    001cac60stur x29, [sp-8]
    001cac64sub x29, sp, 8
    001cac68bl hash/crc32.archAvailableIEEE
    001cac6cstrb w0, [sp+23]
    001cac70tbnz w0, 0, 0x1cac78
    001cac74b 0x1cacb8
    001cac78
    001cac78loc_1cac78:
    001cac78bl hash/crc32.archInitIEEE
    001cac7cadrp x27, 0x881000
    001cac80ldr w0, [x27+3056]
    001cac84cbz w0, 0x1cac8c
    001cac88b 0x1cac90
    001cac8c
    001cac8cloc_1cac8c:
    001cac8cb 0x1caca4
    001cac90
    001cac90loc_1cac90:
    001cac90adrp x27, 0x856000
    001cac94ldr x0, [x27+3896]
    001cac98bl runtime.gcWriteBarrier1
    001cac9cstr x0, [x25]
    001caca0b 0x1caca4
    001caca4
    001caca4loc_1caca4:
    001caca4adrp x0, 0x50f000
    001caca8add x0, x0, 528
    001cacacadrp x27, 0x856000
    001cacb0str x0, [x27+3896]
    001cacb4b 0x1cad18
    001cacb8
    001cacb8loc_1cacb8:
    001cacb8movn x0, 31967
    001cacbcmovk x0, 0xedb80000
    001cacc0bl hash/crc32.slicingMakeTable
    001cacc4adrp x27, 0x881000
    001cacc8ldr w1, [x27+3056]
    001caccccbz w1, 0x1cacd4
    001cacd0b 0x1cacd8
    001cacd4
    001cacd4loc_1cacd4:
    001cacd4b 0x1cacfc
    001cacd8
    001cacd8loc_1cacd8:
    001cacd8bl runtime.gcWriteBarrier3
    001cacdcstr x0, [x25]
    001cace0adrp x27, 0x856000
    001cace4ldr x1, [x27+3888]
    001cace8str x1, [x25+8]
    001cacecadrp x27, 0x856000
    001cacf0ldr x1, [x27+3896]
    001cacf4str x1, [x25+16]
    001cacf8b 0x1cacfc
    001cacfc
    001cacfcloc_1cacfc:
    001cacfcadrp x27, 0x856000
    001cad00str x0, [x27+3888]
    001cad04adrp x0, 0x50f000
    001cad08add x0, x0, 560
    001cad0cadrp x27, 0x856000
    001cad10str x0, [x27+3896]
    001cad14b 0x1cad18
    001cad18
    001cad18loc_1cad18:
    001cad18ldur x29, [sp-8]
    001cad1cldr x30, [sp], 32
    001cad20ret x30
    001cad24
    001cad24loc_1cad24:
    001cad24mov x3, x30
    001cad28bl runtime.morestack_noctxt.abi0
    001cad2cb 0x1cac50
    001cac50
    001cad30
    001cad30hash/crc32.init.func2.1: ; void hash/crc32.init.func2.1(uint32 crc, struct []uint8 p)
    001cad30ldr x16, [x28+16]
    001cad34subs xzr, sp, x16
    001cad38b.ls 0x1cad88
    001cad3cstr x30, [sp-64]!
    001cad40stur x29, [sp-8]
    001cad44sub x29, sp, 8
    001cad48str w0, [sp+72]
    001cad4cstr x1, [sp+80]
    001cad50str x2, [sp+88]
    001cad54str x3, [sp+96]
    001cad58str wzr, [sp+48]
    001cad5cadrp x27, 0x856000
    001cad60ldr x1, [x27+3888]
    001cad64ldr x3, [sp+88]
    001cad68ldr x4, [sp+96]
    001cad6cldr x2, [sp+80]
    001cad70bl hash/crc32.slicingUpdate
    001cad74str w0, [sp+52]
    001cad78str w0, [sp+48]
    001cad7cldur x29, [sp-8]
    001cad80ldr x30, [sp], 64
    001cad84ret x30
    001cad88
    001cad88loc_1cad88:
    001cad88str w0, [sp+8]
    001cad8cstp x1, x2, [sp+16]
    001cad90str x3, [sp+32]
    001cad94mov x3, x30
    001cad98bl runtime.morestack_noctxt.abi0
    001cad9cldr w0, [sp+8]
    001cada0ldp x1, x2, [sp+16]
    001cada4ldr x3, [sp+32]
    001cada8b 0x1cad30
    001cadacudf 0
    001cad30
    001cadb0
    001cadb0hash/crc32.New: ; void hash/crc32.New(hash/crc32.Table * tab)
    001cadb0ldr x16, [x28+16]
    001cadb4subs xzr, sp, x16
    001cadb8b.ls 0x1cae78
    001cadbcstr x30, [sp-80]!
    001cadc0stur x29, [sp-8]
    001cadc4sub x29, sp, 8
    001cadc8str x0, [sp+88]
    001cadccstp xzr, xzr, [sp+40]
    001cadd0adrp x27, 0x856000
    001cadd4ldr x1, [x27+3880]
    001cadd8ldr x2, [sp+88]
    001caddcsubs xzr, x1, x2
    001cade0b.eq 0x1cade8
    001cade4b 0x1cadfc
    001cade8
    001cade8loc_1cade8:
    001cade8adrp x27, 0x856000
    001cadecldr x26, [x27+3904]
    001cadf0ldr x0, [x26]
    001cadf4blr x0
    001cadf8b 0x1cae00
    001cadfc
    001cadfcloc_1cadfc:
    001cadfcb 0x1cae00
    001cae00
    001cae00loc_1cae00:
    001cae00adrp x0, 0x479000
    001cae04add x0, x0, 3456
    001cae08bl runtime.newobject
    001cae0cstr x0, [sp+56]
    001cae10str wzr, [x0]
    001cae14ldr x1, [sp+56]
    001cae18ldrsb x27, [x1]
    001cae1cldr x2, [sp+88]
    001cae20adrp x27, 0x881000
    001cae24ldr w3, [x27+3056]
    001cae28cbz w3, 0x1cae30
    001cae2cb 0x1cae34
    001cae30
    001cae30loc_1cae30:
    001cae30b 0x1cae48
    001cae34
    001cae34loc_1cae34:
    001cae34bl runtime.gcWriteBarrier2
    001cae38str x2, [x25]
    001cae3cldr x3, [x1+8]
    001cae40str x3, [x25+8]
    001cae44b 0x1cae48
    001cae48
    001cae48loc_1cae48:
    001cae48str x2, [x1+8]
    001cae4cldr x2, [sp+56]
    001cae50str x2, [sp+64]
    001cae54adrp x3, 0x54f000
    001cae58add x3, x3, 3936
    001cae5cstr x3, [sp+40]
    001cae60str x2, [sp+48]
    001cae64ldr x0, [sp+40]
    001cae68ldr x1, [sp+48]
    001cae6cldur x29, [sp-8]
    001cae70ldr x30, [sp], 80
    001cae74ret x30
    001cae78
    001cae78loc_1cae78:
    001cae78str x0, [sp+8]
    001cae7cmov x3, x30
    001cae80bl runtime.morestack_noctxt.abi0
    001cae84ldr x0, [sp+8]
    001cae88b 0x1cadb0
    001cae8cudf 0
    001cadb0
    001cae90
    001cae90hash/crc32.NewIEEE: ; void hash/crc32.NewIEEE(void)
    001cae90ldr x16, [x28+16]
    001cae94subs xzr, sp, x16
    001cae98b.ls 0x1caed4
    001cae9cstr x30, [sp-64]!
    001caea0stur x29, [sp-8]
    001caea4sub x29, sp, 8
    001caea8stp xzr, xzr, [sp+24]
    001caeacadrp x27, 0x856000
    001caeb0ldr x0, [x27+3880]
    001caeb4bl hash/crc32.New
    001caeb8str x0, [sp+40]
    001caebcstr x1, [sp+48]
    001caec0str x0, [sp+24]
    001caec4str x1, [sp+32]
    001caec8ldur x29, [sp-8]
    001caeccldr x30, [sp], 64
    001caed0ret x30
    001caed4
    001caed4loc_1caed4:
    001caed4mov x3, x30
    001caed8bl runtime.morestack_noctxt.abi0
    001caedcb 0x1cae90
    001cae90
    001caee0
    001caee0hash/crc32.(*digest).Size: ; void hash/crc32.(*digest).Size(hash/crc32.digest * d)
    001caee0str x30, [sp-32]!
    001caee4stur x29, [sp-8]
    001caee8sub x29, sp, 8
    001caeecstr x0, [sp+40]
    001caef0str xzr, [sp+16]
    001caef4orr x0, xzr, 4
    001caef8str x0, [sp+16]
    001caefcadd x29, sp, 24
    001caf00add sp, sp, 32
    001caf04ret x30
    001caf08udf 0
    001caf0cudf 0
    001caee0
    001caf10
    001caf10hash/crc32.(*digest).BlockSize: ; void hash/crc32.(*digest).BlockSize(hash/crc32.digest * d)
    001caf10str x30, [sp-32]!
    001caf14stur x29, [sp-8]
    001caf18sub x29, sp, 8
    001caf1cstr x0, [sp+40]
    001caf20str xzr, [sp+16]
    001caf24orr x0, xzr, 1
    001caf28str x0, [sp+16]
    001caf2cadd x29, sp, 24
    001caf30add sp, sp, 32
    001caf34ret x30
    001caf38udf 0
    001caf3cudf 0
    001caf10
    001caf40
    001caf40hash/crc32.(*digest).Reset: ; void hash/crc32.(*digest).Reset(hash/crc32.digest * d)
    001caf40str x0, [sp+8]
    001caf44ldrsb x27, [x0]
    001caf48str wzr, [x0]
    001caf4cret x30
    001caf40
    001caf50
    001caf50hash/crc32.(*digest).AppendBinary: ; void hash/crc32.(*digest).AppendBinary(hash/crc32.digest * d, struct []uint8 b)
    001caf50ldr x16, [x28+16]
    001caf54sub x17, sp, 32
    001caf58subs xzr, x17, x16
    001caf5cb.ls 0x1cb0bc
    001caf60str x30, [sp-160]!
    001caf64stur x29, [sp-8]
    001caf68sub x29, sp, 8
    001caf6cstr x0, [sp+168]
    001caf70str x1, [sp+176]
    001caf74str x2, [sp+184]
    001caf78str x3, [sp+192]
    001caf7cstr xzr, [sp+88]
    001caf80stp xzr, xzr, [sp+96]
    001caf84stp xzr, xzr, [sp+72]
    001caf88ldr x2, [sp+192]
    001caf8cldr x0, [sp+176]
    001caf90ldr x5, [sp+184]
    001caf94add x1, x5, 4
    001caf98str x0, [sp+128]
    001caf9cstr x5, [sp+136]
    001cafa0str x2, [sp+144]
    001cafa4str x1, [sp+64]
    001cafa8subs xzr, x2, x1
    001cafacb.hs 0x1cafb4
    001cafb0b 0x1cafbc
    001cafb4
    001cafb4loc_1cafb4:
    001cafb4str x1, [sp+136]
    001cafb8b 0x1cafdc
    001cafbc
    001cafbcloc_1cafbc:
    001cafbcorr x3, xzr, 4
    001cafc0adrp x4, 0x42b000
    001cafc4add x4, x4, 3072
    001cafc8bl runtime.growslice
    001cafccstr x0, [sp+128]
    001cafd0str x1, [sp+136]
    001cafd4str x2, [sp+144]
    001cafd8b 0x1cafdc
    001cafdc
    001cafdcloc_1cafdc:
    001cafdcorr x3, xzr, 4
    001cafe0str x3, [sp+56]
    001cafe4ldr x3, [sp+64]
    001cafe8sub x3, x3, 4
    001cafecldr x4, [sp+128]
    001caff0add x0, x4, x3
    001caff4str x0, [sp+120]
    001caff8ldr x2, [sp+56]
    001caffcadrp x1, 0x4e6000
    001cb000add x1, x1, 1214
    001cb004bl runtime.memmove
    001cb008ldr x3, [sp+128]
    001cb00cldr x4, [sp+136]
    001cb010ldr x5, [sp+144]
    001cb014str x3, [sp+176]
    001cb018str x4, [sp+184]
    001cb01cstr x5, [sp+192]
    001cb020ldr x3, [sp+168]
    001cb024ldrsb x27, [x3]
    001cb028ldr x0, [x3+8]
    001cb02cstr x0, [sp+112]
    001cb030bl hash/crc32.tableSum
    001cb034str w0, [sp+48]
    001cb038ldr x3, [sp+176]
    001cb03cldr x1, [sp+184]
    001cb040ldr x2, [sp+192]
    001cb044mov x4, x0
    001cb048mov x0, x3
    001cb04cmov x3, x4
    001cb050bl internal/byteorder.BEAppendUint32
    001cb054str x0, [sp+176]
    001cb058str x1, [sp+184]
    001cb05cstr x2, [sp+192]
    001cb060ldr x3, [sp+168]
    001cb064ldrsb x27, [x3]
    001cb068ldr w3, [x3]
    001cb06cstr w3, [sp+52]
    001cb070ldr x0, [sp+176]
    001cb074ldr x1, [sp+184]
    001cb078ldr x2, [sp+192]
    001cb07cbl internal/byteorder.BEAppendUint32
    001cb080str x0, [sp+176]
    001cb084str x1, [sp+184]
    001cb088str x2, [sp+192]
    001cb08cstr x0, [sp+88]
    001cb090str x1, [sp+96]
    001cb094str x2, [sp+104]
    001cb098stp xzr, xzr, [sp+72]
    001cb09cldr x0, [sp+88]
    001cb0a0ldr x1, [sp+96]
    001cb0a4ldr x2, [sp+104]
    001cb0a8mov x3, xzr
    001cb0acmov x4, xzr
    001cb0b0ldur x29, [sp-8]
    001cb0b4ldr x30, [sp], 160
    001cb0b8ret x30
    001cb0bc
    001cb0bcloc_1cb0bc:
    001cb0bcstp x0, x1, [sp+8]
    001cb0c0stp x2, x3, [sp+24]
    001cb0c4mov x3, x30
    001cb0c8bl runtime.morestack_noctxt.abi0
    001cb0ccldp x0, x1, [sp+8]
    001cb0d0ldp x2, x3, [sp+24]
    001cb0d4b 0x1caf50
    001cb0d8udf 0
    001cb0dcudf 0
    001caf50
    001cb0e0
    001cb0e0hash/crc32.(*digest).MarshalBinary: ; void hash/crc32.(*digest).MarshalBinary(hash/crc32.digest * d)
    001cb0e0ldr x16, [x28+16]
    001cb0e4sub x17, sp, 64
    001cb0e8subs xzr, x17, x16
    001cb0ecb.ls 0x1cb1cc
    001cb0f0str x30, [sp-192]!
    001cb0f4stur x29, [sp-8]
    001cb0f8sub x29, sp, 8
    001cb0fcstr x0, [sp+200]
    001cb100str xzr, [sp+56]
    001cb104stp xzr, xzr, [sp+64]
    001cb108stp xzr, xzr, [sp+40]
    001cb10cadrp x0, 0x42a000
    001cb110add x0, x0, 3072
    001cb114mov x1, xzr
    001cb118orr x2, xzr, 12
    001cb11cbl runtime.makeslice
    001cb120str x0, [sp+120]
    001cb124str xzr, [sp+128]
    001cb128orr x3, xzr, 12
    001cb12cstr x3, [sp+136]
    001cb130str xzr, [sp+96]
    001cb134stp xzr, xzr, [sp+104]
    001cb138stp xzr, xzr, [sp+80]
    001cb13cldr x0, [sp+200]
    001cb140ldr x1, [sp+120]
    001cb144ldr x2, [sp+128]
    001cb148ldr x3, [sp+136]
    001cb14cbl hash/crc32.(*digest).AppendBinary
    001cb150str x0, [sp+96]
    001cb154str x1, [sp+104]
    001cb158str x2, [sp+112]
    001cb15cstr x3, [sp+80]
    001cb160str x4, [sp+88]
    001cb164ldr x3, [sp+96]
    001cb168ldr x4, [sp+104]
    001cb16cldr x5, [sp+112]
    001cb170str x3, [sp+160]
    001cb174str x4, [sp+168]
    001cb178str x5, [sp+176]
    001cb17cldr x3, [sp+80]
    001cb180ldr x4, [sp+88]
    001cb184str x3, [sp+144]
    001cb188str x4, [sp+152]
    001cb18cldr x3, [sp+160]
    001cb190ldr x4, [sp+168]
    001cb194ldr x5, [sp+176]
    001cb198str x3, [sp+56]
    001cb19cstr x4, [sp+64]
    001cb1a0str x5, [sp+72]
    001cb1a4ldr x3, [sp+144]
    001cb1a8ldr x4, [sp+152]
    001cb1acstr x3, [sp+40]
    001cb1b0str x4, [sp+48]
    001cb1b4ldr x0, [sp+56]
    001cb1b8ldr x1, [sp+64]
    001cb1bcldr x2, [sp+72]
    001cb1c0ldur x29, [sp-8]
    001cb1c4ldr x30, [sp], 192
    001cb1c8ret x30
    001cb1cc
    001cb1ccloc_1cb1cc:
    001cb1ccstr x0, [sp+8]
    001cb1d0mov x3, x30
    001cb1d4bl runtime.morestack_noctxt.abi0
    001cb1d8ldr x0, [sp+8]
    001cb1dcb 0x1cb0e0
    001cb0e0
    001cb1e0
    001cb1e0hash/crc32.(*digest).UnmarshalBinary: ; void hash/crc32.(*digest).UnmarshalBinary(hash/crc32.digest * d, struct []uint8 b)
    001cb1e0ldr x16, [x28+16]
    001cb1e4sub x17, sp, 16
    001cb1e8subs xzr, x17, x16
    001cb1ecb.ls 0x1cb45c
    001cb1f0str x30, [sp-144]!
    001cb1f4stur x29, [sp-8]
    001cb1f8sub x29, sp, 8
    001cb1fcstr x0, [sp+152]
    001cb200str x1, [sp+160]
    001cb204str x2, [sp+168]
    001cb208str x3, [sp+176]
    001cb20cstp xzr, xzr, [sp+56]
    001cb210ldr x3, [sp+168]
    001cb214str x3, [sp+48]
    001cb218subs xzr, x3, 4
    001cb21ccset x3, lt
    001cb220strb w3, [sp+39]
    001cb224b.lt 0x1cb22c
    001cb228b 0x1cb234
    001cb22c
    001cb22cloc_1cb22c:
    001cb22corr x4, xzr, 4
    001cb230b 0x1cb2bc
    001cb234
    001cb234loc_1cb234:
    001cb234ldr x3, [sp+160]
    001cb238ldr x2, [sp+176]
    001cb23csubs xzr, x2, 4
    001cb240b.hs 0x1cb248
    001cb244b 0x1cb450
    001cb248
    001cb248loc_1cb248:
    001cb248b 0x1cb24c
    001cb24c
    001cb24cloc_1cb24c:
    001cb24cstr x3, [sp+104]
    001cb250orr x4, xzr, 4
    001cb254str x4, [sp+112]
    001cb258str x2, [sp+120]
    001cb25cstr x3, [sp+72]
    001cb260str x4, [sp+80]
    001cb264b 0x1cb268
    001cb268
    001cb268loc_1cb268:
    001cb268b 0x1cb26c
    001cb26c
    001cb26cloc_1cb26c:
    001cb26cldrb w2, [x3]
    001cb270b 0x1cb274
    001cb274
    001cb274loc_1cb274:
    001cb274ldrb w5, [x3+1]
    001cb278ubfm x5, x5, 56, 7
    001cb27corr x2, x2, x5
    001cb280b 0x1cb284
    001cb284
    001cb284loc_1cb284:
    001cb284ldrb w5, [x3+2]
    001cb288ubfm x5, x5, 48, 7
    001cb28corr x2, x2, x5
    001cb290b 0x1cb294
    001cb294
    001cb294loc_1cb294:
    001cb294ldrb w3, [x3+3]
    001cb298ubfm x3, x3, 40, 7
    001cb29corr x2, x2, x3
    001cb2a0movz x3, 29283
    001cb2a4movk x3, 0x1630000
    001cb2a8subs wzr, w2, w3
    001cb2accset x2, ne
    001cb2b0b 0x1cb2b4
    001cb2b4
    001cb2b4loc_1cb2b4:
    001cb2b4strb w2, [sp+39]
    001cb2b8b 0x1cb2bc
    001cb2bc
    001cb2bcloc_1cb2bc:
    001cb2bcldrb w2, [sp+39]
    001cb2c0tbnz w2, 0, 0x1cb2c8
    001cb2c4b 0x1cb2f4
    001cb2c8
    001cb2c8loc_1cb2c8:
    001cb2c8adrp x0, 0x4fa000
    001cb2ccadd x0, x0, 80
    001cb2d0movz x1, 41
    001cb2d4bl errors.New
    001cb2d8str x0, [sp+88]
    001cb2dcstr x1, [sp+96]
    001cb2e0str x0, [sp+56]
    001cb2e4str x1, [sp+64]
    001cb2e8ldur x29, [sp-8]
    001cb2ecldr x30, [sp], 144
    001cb2f0ret x30
    001cb2f4
    001cb2f4loc_1cb2f4:
    001cb2f4ldr x2, [sp+168]
    001cb2f8str x2, [sp+48]
    001cb2fcsubs xzr, x2, 12
    001cb300b.ne 0x1cb308
    001cb304b 0x1cb334
    001cb308
    001cb308loc_1cb308:
    001cb308adrp x0, 0x4f5000
    001cb30cadd x0, x0, 3471
    001cb310movz x1, 35
    001cb314bl errors.New
    001cb318str x0, [sp+88]
    001cb31cstr x1, [sp+96]
    001cb320str x0, [sp+56]
    001cb324str x1, [sp+64]
    001cb328ldur x29, [sp-8]
    001cb32cldr x30, [sp], 144
    001cb330ret x30
    001cb334
    001cb334loc_1cb334:
    001cb334ldr x1, [sp+152]
    001cb338ldrsb x27, [x1]
    001cb33cldr x0, [x1+8]
    001cb340str x0, [sp+128]
    001cb344bl hash/crc32.tableSum
    001cb348str w0, [sp+44]
    001cb34cldr x1, [sp+168]
    001cb350ldr x2, [sp+160]
    001cb354ldr x3, [sp+176]
    001cb358b 0x1cb35c
    001cb35c
    001cb35cloc_1cb35c:
    001cb35csubs xzr, x1, 4
    001cb360b.hs 0x1cb368
    001cb364b 0x1cb448
    001cb368
    001cb368loc_1cb368:
    001cb368sub x3, x3, 4
    001cb36csub x1, x1, 4
    001cb370sub x4, xzr, x3
    001cb374sbfm x4, x4, 63, 63
    001cb378and x4, x4, 4
    001cb37cadd x0, x2, x4
    001cb380str x0, [sp+104]
    001cb384str x1, [sp+112]
    001cb388str x3, [sp+120]
    001cb38cmov x2, x3
    001cb390bl internal/byteorder.BEUint32
    001cb394str w0, [sp+40]
    001cb398ldr w3, [sp+44]
    001cb39csubs wzr, w0, w3
    001cb3a0b.ne 0x1cb3a8
    001cb3a4b 0x1cb3d4
    001cb3a8
    001cb3a8loc_1cb3a8:
    001cb3a8adrp x0, 0x4f2000
    001cb3acadd x0, x0, 3920
    001cb3b0orr x1, xzr, 31
    001cb3b4bl errors.New
    001cb3b8str x0, [sp+88]
    001cb3bcstr x1, [sp+96]
    001cb3c0str x0, [sp+56]
    001cb3c4str x1, [sp+64]
    001cb3c8ldur x29, [sp-8]
    001cb3ccldr x30, [sp], 144
    001cb3d0ret x30
    001cb3d4
    001cb3d4loc_1cb3d4:
    001cb3d4ldr x1, [sp+168]
    001cb3d8ldr x3, [sp+160]
    001cb3dcldr x4, [sp+176]
    001cb3e0b 0x1cb3e4
    001cb3e4
    001cb3e4loc_1cb3e4:
    001cb3e4subs xzr, x1, 8
    001cb3e8b.hs 0x1cb3f0
    001cb3ecb 0x1cb440
    001cb3f0
    001cb3f0loc_1cb3f0:
    001cb3f0sub x2, x4, 8
    001cb3f4sub x1, x1, 8
    001cb3f8sub x4, xzr, x2
    001cb3fcsbfm x4, x4, 63, 63
    001cb400and x4, x4, 8
    001cb404add x0, x3, x4
    001cb408str x0, [sp+104]
    001cb40cstr x1, [sp+112]
    001cb410str x2, [sp+120]
    001cb414bl internal/byteorder.BEUint32
    001cb418str w0, [sp+40]
    001cb41cldr x3, [sp+152]
    001cb420ldrsb x27, [x3]
    001cb424str w0, [x3]
    001cb428stp xzr, xzr, [sp+56]
    001cb42cmov x0, xzr
    001cb430mov x1, xzr
    001cb434ldur x29, [sp-8]
    001cb438ldr x30, [sp], 144
    001cb43cret x30
    001cb440
    001cb440loc_1cb440:
    001cb440orr x0, xzr, 8
    001cb444bl runtime.panicSliceB
    001cb448
    001cb448loc_1cb448:
    001cb448orr x0, xzr, 4
    001cb44cbl runtime.panicSliceB
    001cb450
    001cb450loc_1cb450:
    001cb450orr x1, xzr, 4
    001cb454bl runtime.panicSliceAcap
    001cb458hint
    001cb45c
    001cb45cloc_1cb45c:
    001cb45cstp x0, x1, [sp+8]
    001cb460stp x2, x3, [sp+24]
    001cb464mov x3, x30
    001cb468bl runtime.morestack_noctxt.abi0
    001cb46cldp x0, x1, [sp+8]
    001cb470ldp x2, x3, [sp+24]
    001cb474b 0x1cb1e0
    001cb478udf 0
    001cb47cudf 0
    001cb1e0
    001cb480
    001cb480hash/crc32.update: ; void hash/crc32.update(uint32 crc, hash/crc32.Table * tab, struct []uint8 p, bool checkInitIEEE)
    001cb480ldr x16, [x28+16]
    001cb484subs xzr, sp, x16
    001cb488b.ls 0x1cb5d8
    001cb48cstr x30, [sp-80]!
    001cb490stur x29, [sp-8]
    001cb494sub x29, sp, 8
    001cb498str w0, [sp+88]
    001cb49cstr x1, [sp+96]
    001cb4a0str x2, [sp+104]
    001cb4a4str x3, [sp+112]
    001cb4a8str x4, [sp+120]
    001cb4acstrb w5, [sp+128]
    001cb4b0str wzr, [sp+64]
    001cb4b4adrp x0, 0x880000
    001cb4b8add x0, x0, 1708
    001cb4bcbl sync/atomic.(*Bool).Load
    001cb4c0strb w0, [sp+62]
    001cb4c4strb w0, [sp+63]
    001cb4c8tbnz w0, 0, 0x1cb4d0
    001cb4ccb 0x1cb4ec
    001cb4d0
    001cb4d0loc_1cb4d0:
    001cb4d0ldr x5, [sp+96]
    001cb4d4adrp x27, 0x855000
    001cb4d8ldr x6, [x27+3848]
    001cb4dcsubs xzr, x6, x5
    001cb4e0cset x5, eq
    001cb4e4strb w5, [sp+63]
    001cb4e8b 0x1cb4f0
    001cb4ec
    001cb4ecloc_1cb4ec:
    001cb4ecb 0x1cb4f0
    001cb4f0
    001cb4f0loc_1cb4f0:
    001cb4f0ldrb w5, [sp+63]
    001cb4f4tbnz w5, 0, 0x1cb4fc
    001cb4f8b 0x1cb534
    001cb4fc
    001cb4fcloc_1cb4fc:
    001cb4fcb 0x1cb500
    001cb500
    001cb500loc_1cb500:
    001cb500ldr w0, [sp+88]
    001cb504ldr x1, [sp+104]
    001cb508ldr x2, [sp+112]
    001cb50cldr x3, [sp+120]
    001cb510adrp x27, 0x855000
    001cb514ldr x26, [x27+3864]
    001cb518ldr x4, [x26]
    001cb51cblr x4
    001cb520str w0, [sp+68]
    001cb524str w0, [sp+64]
    001cb528ldur x29, [sp-8]
    001cb52cldr x30, [sp], 80
    001cb530ret x30
    001cb534
    001cb534loc_1cb534:
    001cb534adrp x27, 0x855000
    001cb538ldr x5, [x27+3880]
    001cb53cldr x6, [sp+96]
    001cb540subs xzr, x5, x6
    001cb544b.eq 0x1cb54c
    001cb548b 0x1cb5a8
    001cb54c
    001cb54cloc_1cb54c:
    001cb54cb 0x1cb550
    001cb550
    001cb550loc_1cb550:
    001cb550ldrb w4, [sp+128]
    001cb554tbnz w4, 0, 0x1cb55c
    001cb558b 0x1cb570
    001cb55c
    001cb55cloc_1cb55c:
    001cb55cadrp x27, 0x855000
    001cb560ldr x26, [x27+3904]
    001cb564ldr x0, [x26]
    001cb568blr x0
    001cb56cb 0x1cb574
    001cb570
    001cb570loc_1cb570:
    001cb570b 0x1cb574
    001cb574
    001cb574loc_1cb574:
    001cb574ldr w0, [sp+88]
    001cb578ldr x1, [sp+104]
    001cb57cldr x2, [sp+112]
    001cb580ldr x3, [sp+120]
    001cb584adrp x27, 0x855000
    001cb588ldr x26, [x27+3896]
    001cb58cldr x4, [x26]
    001cb590blr x4
    001cb594str w0, [sp+68]
    001cb598str w0, [sp+64]
    001cb59cldur x29, [sp-8]
    001cb5a0ldr x30, [sp], 80
    001cb5a4ret x30
    001cb5a8
    001cb5a8loc_1cb5a8:
    001cb5a8b 0x1cb5ac
    001cb5ac
    001cb5acloc_1cb5ac:
    001cb5acldr x2, [sp+104]
    001cb5b0ldr x1, [sp+96]
    001cb5b4ldr x3, [sp+112]
    001cb5b8ldr x4, [sp+120]
    001cb5bcldr w0, [sp+88]
    001cb5c0bl hash/crc32.simpleUpdate
    001cb5c4str w0, [sp+68]
    001cb5c8str w0, [sp+64]
    001cb5ccldur x29, [sp-8]
    001cb5d0ldr x30, [sp], 80
    001cb5d4ret x30
    001cb5d8
    001cb5d8loc_1cb5d8:
    001cb5d8str w0, [sp+8]
    001cb5dcstp x1, x2, [sp+16]
    001cb5e0stp x3, x4, [sp+32]
    001cb5e4strb w5, [sp+48]
    001cb5e8mov x3, x30
    001cb5ecbl runtime.morestack_noctxt.abi0
    001cb5f0ldr w0, [sp+8]
    001cb5f4ldp x1, x2, [sp+16]
    001cb5f8ldp x3, x4, [sp+32]
    001cb5fcldrb w5, [sp+48]
    001cb600b 0x1cb480
    001cb604udf 0
    001cb608udf 0
    001cb60cudf 0
    001cb480
    001cb610
    001cb610hash/crc32.Update: ; void hash/crc32.Update(uint32 crc, hash/crc32.Table * tab, struct []uint8 p)
    001cb610ldr x16, [x28+16]
    001cb614subs xzr, sp, x16
    001cb618b.ls 0x1cb66c
    001cb61cstr x30, [sp-80]!
    001cb620stur x29, [sp-8]
    001cb624sub x29, sp, 8
    001cb628str w0, [sp+88]
    001cb62cstr x1, [sp+96]
    001cb630str x2, [sp+104]
    001cb634str x3, [sp+112]
    001cb638str x4, [sp+120]
    001cb63cstr wzr, [sp+64]
    001cb640ldr x1, [sp+96]
    001cb644ldr x3, [sp+112]
    001cb648ldr x4, [sp+120]
    001cb64cldr x2, [sp+104]
    001cb650orr x5, xzr, 1
    001cb654bl hash/crc32.update
    001cb658str w0, [sp+68]
    001cb65cstr w0, [sp+64]
    001cb660ldur x29, [sp-8]
    001cb664ldr x30, [sp], 80
    001cb668ret x30
    001cb66c
    001cb66cloc_1cb66c:
    001cb66cstr w0, [sp+8]
    001cb670stp x1, x2, [sp+16]
    001cb674stp x3, x4, [sp+32]
    001cb678mov x3, x30
    001cb67cbl runtime.morestack_noctxt.abi0
    001cb680ldr w0, [sp+8]
    001cb684ldp x1, x2, [sp+16]
    001cb688ldp x3, x4, [sp+32]
    001cb68cb 0x1cb610
    001cb610
    001cb690
    001cb690hash/crc32.(*digest).Write: ; void hash/crc32.(*digest).Write(hash/crc32.digest * d, struct []uint8 p)
    001cb690ldr x16, [x28+16]
    001cb694subs xzr, sp, x16
    001cb698b.ls 0x1cb730
    001cb69cstr x30, [sp-112]!
    001cb6a0stur x29, [sp-8]
    001cb6a4sub x29, sp, 8
    001cb6a8str x0, [sp+120]
    001cb6acstr x1, [sp+128]
    001cb6b0str x2, [sp+136]
    001cb6b4str x3, [sp+144]
    001cb6b8str xzr, [sp+64]
    001cb6bcstp xzr, xzr, [sp+80]
    001cb6c0ldr x6, [sp+120]
    001cb6c4ldrsb x27, [x6]
    001cb6c8ldr w6, [x6]
    001cb6ccstr w6, [sp+56]
    001cb6d0ldr x6, [sp+120]
    001cb6d4ldrsb x27, [x6]
    001cb6d8ldr x1, [x6+8]
    001cb6dcstr x1, [sp+96]
    001cb6e0ldr w0, [sp+56]
    001cb6e4ldr x2, [sp+128]
    001cb6e8ldr x3, [sp+136]
    001cb6ecldr x4, [sp+144]
    001cb6f0mov x5, xzr
    001cb6f4bl hash/crc32.update
    001cb6f8str w0, [sp+60]
    001cb6fcldr x6, [sp+120]
    001cb700ldrsb x27, [x6]
    001cb704str w0, [x6]
    001cb708ldr x6, [sp+136]
    001cb70cstr x6, [sp+72]
    001cb710str x6, [sp+64]
    001cb714stp xzr, xzr, [sp+80]
    001cb718ldr x0, [sp+64]
    001cb71cmov x1, xzr
    001cb720mov x2, xzr
    001cb724ldur x29, [sp-8]
    001cb728ldr x30, [sp], 112
    001cb72cret x30
    001cb730
    001cb730loc_1cb730:
    001cb730stp x0, x1, [sp+8]
    001cb734stp x2, x3, [sp+24]
    001cb738mov x3, x30
    001cb73cbl runtime.morestack_noctxt.abi0
    001cb740ldp x0, x1, [sp+8]
    001cb744ldp x2, x3, [sp+24]
    001cb748b 0x1cb690
    001cb74cudf 0
    001cb690
    001cb750
    001cb750hash/crc32.(*digest).Sum32: ; void hash/crc32.(*digest).Sum32(hash/crc32.digest * d)
    001cb750str x30, [sp-32]!
    001cb754stur x29, [sp-8]
    001cb758sub x29, sp, 8
    001cb75cstr x0, [sp+40]
    001cb760str wzr, [sp+20]
    001cb764ldr x1, [sp+40]
    001cb768ldrsb x27, [x1]
    001cb76cldr w0, [x1]
    001cb770str w0, [sp+20]
    001cb774add x29, sp, 24
    001cb778add sp, sp, 32
    001cb77cret x30
    001cb750
    001cb780
    001cb780hash/crc32.(*digest).Sum: ; void hash/crc32.(*digest).Sum(hash/crc32.digest * d, struct []uint8 in)
    001cb780ldr x16, [x28+16]
    001cb784sub x17, sp, 16
    001cb788subs xzr, x17, x16
    001cb78cb.ls 0x1cb868
    001cb790str x30, [sp-144]!
    001cb794stur x29, [sp-8]
    001cb798sub x29, sp, 8
    001cb79cstr x0, [sp+152]
    001cb7a0str x1, [sp+160]
    001cb7a4str x2, [sp+168]
    001cb7a8str x3, [sp+176]
    001cb7acstr xzr, [sp+88]
    001cb7b0stp xzr, xzr, [sp+96]
    001cb7b4ldr x0, [sp+152]
    001cb7b8bl hash/crc32.(*digest).Sum32
    001cb7bcstr w0, [sp+84]
    001cb7c0ubfm x1, x0, 24, 31
    001cb7c4strb w1, [sp+83]
    001cb7c8ldr w1, [sp+84]
    001cb7ccubfm x1, x1, 16, 31
    001cb7d0strb w1, [sp+82]
    001cb7d4ldr w1, [sp+84]
    001cb7d8ubfm x1, x1, 8, 31
    001cb7dcstrb w1, [sp+81]
    001cb7e0ldr w1, [sp+84]
    001cb7e4strb w1, [sp+80]
    001cb7e8ldr x2, [sp+176]
    001cb7ecldr x0, [sp+160]
    001cb7f0ldr x1, [sp+168]
    001cb7f4add x1, x1, 4
    001cb7f8subs xzr, x2, x1
    001cb7fcb.hs 0x1cb804
    001cb800b 0x1cb808
    001cb804
    001cb804loc_1cb804:
    001cb804b 0x1cb81c
    001cb808
    001cb808loc_1cb808:
    001cb808orr x3, xzr, 4
    001cb80cadrp x4, 0x42a000
    001cb810add x4, x4, 3072
    001cb814bl runtime.growslice
    001cb818b 0x1cb81c
    001cb81c
    001cb81cloc_1cb81c:
    001cb81cldrb w3, [sp+83]
    001cb820ldrb w4, [sp+82]
    001cb824ldrb w5, [sp+81]
    001cb828ldrb w6, [sp+80]
    001cb82csub x7, x1, 4
    001cb830strb w3, [x0+x7]
    001cb834add x3, x0, x7
    001cb838strb w4, [x3+1]
    001cb83cstrb w5, [x3+2]
    001cb840strb w6, [x3+3]
    001cb844str x0, [sp+112]
    001cb848str x1, [sp+120]
    001cb84cstr x2, [sp+128]
    001cb850str x0, [sp+88]
    001cb854str x1, [sp+96]
    001cb858str x2, [sp+104]
    001cb85cldur x29, [sp-8]
    001cb860ldr x30, [sp], 144
    001cb864ret x30
    001cb868
    001cb868loc_1cb868:
    001cb868stp x0, x1, [sp+8]
    001cb86cstp x2, x3, [sp+24]
    001cb870mov x3, x30
    001cb874bl runtime.morestack_noctxt.abi0
    001cb878ldp x0, x1, [sp+8]
    001cb87cldp x2, x3, [sp+24]
    001cb880b 0x1cb780
    001cb884udf 0
    001cb888udf 0
    001cb88cudf 0
    001cb780
    001cb890
    001cb890hash/crc32.ChecksumIEEE: ; void hash/crc32.ChecksumIEEE(struct []uint8 data)
    001cb890ldr x16, [x28+16]
    001cb894subs xzr, sp, x16
    001cb898b.ls 0x1cb900
    001cb89cstr x30, [sp-64]!
    001cb8a0stur x29, [sp-8]
    001cb8a4sub x29, sp, 8
    001cb8a8str x0, [sp+72]
    001cb8acstr x1, [sp+80]
    001cb8b0str x2, [sp+88]
    001cb8b4str wzr, [sp+48]
    001cb8b8adrp x27, 0x855000
    001cb8bcldr x26, [x27+3904]
    001cb8c0ldr x0, [x26]
    001cb8c4blr x0
    001cb8c8ldr x1, [sp+72]
    001cb8ccldr x2, [sp+80]
    001cb8d0ldr x3, [sp+88]
    001cb8d4adrp x27, 0x855000
    001cb8d8ldr x26, [x27+3896]
    001cb8dcldr x0, [x26]
    001cb8e0mov x4, x0
    001cb8e4mov x0, xzr
    001cb8e8blr x4
    001cb8ecstr w0, [sp+52]
    001cb8f0str w0, [sp+48]
    001cb8f4ldur x29, [sp-8]
    001cb8f8ldr x30, [sp], 64
    001cb8fcret x30
    001cb900
    001cb900loc_1cb900:
    001cb900stp x0, x1, [sp+8]
    001cb904str x2, [sp+24]
    001cb908mov x3, x30
    001cb90cbl runtime.morestack_noctxt.abi0
    001cb910ldp x0, x1, [sp+8]
    001cb914ldr x2, [sp+24]
    001cb918b 0x1cb890
    001cb91cudf 0
    001cb890
    001cb920
    001cb920hash/crc32.tableSum: ; void hash/crc32.tableSum(hash/crc32.Table * t)
    001cb920ldr x16, [x28+16]
    001cb924subs xzr, sp, x16
    001cb928b.ls 0x1cba30
    001cb92cstr x30, [sp-128]!
    001cb930stur x29, [sp-8]
    001cb934sub x29, sp, 8
    001cb938str x0, [sp+136]
    001cb93cstr wzr, [sp+52]
    001cb940adrp x0, 0x433000
    001cb944add x0, x0, 928
    001cb948bl runtime.newobject
    001cb94cstr x0, [sp+112]
    001cb950mov x20, x0
    001cb954adr x27, 16
    001cb958stp x29, x27, [sp-24]
    001cb95csub x29, sp, 24
    001cb960bl runtime.duffzero
    001cb964sub x29, sp, 8
    001cb968ldr x1, [sp+112]
    001cb96cldrsb x27, [x1]
    001cb970b 0x1cb974
    001cb974
    001cb974loc_1cb974:
    001cb974b 0x1cb978
    001cb978
    001cb978loc_1cb978:
    001cb978str x1, [sp+80]
    001cb97cstr xzr, [sp+88]
    001cb980orr x4, xzr, 1024
    001cb984str x4, [sp+96]
    001cb988ldr x4, [sp+136]
    001cb98ccbnz x4, 0x1cb994
    001cb990b 0x1cb9ac
    001cb994
    001cb994loc_1cb994:
    001cb994ldr x4, [sp+136]
    001cb998str x4, [sp+104]
    001cb99cstr xzr, [sp+72]
    001cb9a0orr x4, xzr, 256
    001cb9a4str x4, [sp+64]
    001cb9a8b 0x1cb9d4
    001cb9ac
    001cb9acloc_1cb9ac:
    001cb9acb 0x1cb9b0
    001cb9b0
    001cb9b0loc_1cb9b0:
    001cb9b0ldr x0, [sp+80]
    001cb9b4ldr x1, [sp+88]
    001cb9b8ldr x2, [sp+96]
    001cb9bcbl hash/crc32.ChecksumIEEE
    001cb9c0str w0, [sp+60]
    001cb9c4str w0, [sp+52]
    001cb9c8ldur x29, [sp-8]
    001cb9ccldr x30, [sp], 128
    001cb9d0ret x30
    001cb9d4
    001cb9d4loc_1cb9d4:
    001cb9d4ldr x4, [sp+64]
    001cb9d8ldr x5, [sp+72]
    001cb9dcsubs xzr, x4, x5
    001cb9e0b.gt 0x1cb9e8
    001cb9e4b 0x1cba2c
    001cb9e8
    001cb9e8loc_1cb9e8:
    001cb9e8ldr x4, [sp+72]
    001cb9ecldr x5, [sp+104]
    001cb9f0ldrsb x27, [x5]
    001cb9f4ldr w3, [x5+2*x4]
    001cb9f8str w3, [sp+56]
    001cb9fcldr x0, [sp+80]
    001cba00ldr x1, [sp+88]
    001cba04ldr x2, [sp+96]
    001cba08bl internal/byteorder.BEAppendUint32
    001cba0cstr x0, [sp+80]
    001cba10str x1, [sp+88]
    001cba14str x2, [sp+96]
    001cba18b 0x1cba1c
    001cba1c
    001cba1cloc_1cba1c:
    001cba1cldr x4, [sp+72]
    001cba20add x4, x4, 1
    001cba24str x4, [sp+72]
    001cba28b 0x1cb9d4
    001cba2c
    001cba2cloc_1cba2c:
    001cba2cb 0x1cb9b0
    001cba30
    001cba30loc_1cba30:
    001cba30str x0, [sp+8]
    001cba34mov x3, x30
    001cba38bl runtime.morestack_noctxt.abi0
    001cba3cldr x0, [sp+8]
    001cba40b 0x1cb920
    001cba44udf 0
    001cba48udf 0
    001cba4cudf 0
    001cb920
    001cba50
    001cba50hash/crc32.archAvailableCastagnoli: ; void hash/crc32.archAvailableCastagnoli(void)
    001cba50str x30, [sp-32]!
    001cba54stur x29, [sp-8]
    001cba58sub x29, sp, 8
    001cba5cstrb wzr, [sp+23]
    001cba60adrp x27, 0x881000
    001cba64ldrb w0, [x27+1413]
    001cba68strb w0, [sp+23]
    001cba6cadd x29, sp, 24
    001cba70add sp, sp, 32
    001cba74ret x30
    001cba78udf 0
    001cba7cudf 0
    001cba50
    001cba80
    001cba80hash/crc32.archInitCastagnoli: ; void hash/crc32.archInitCastagnoli(void)
    001cba80ldr x16, [x28+16]
    001cba84subs xzr, sp, x16
    001cba88b.ls 0x1cbacc
    001cba8cstr x30, [sp-32]!
    001cba90stur x29, [sp-8]
    001cba94sub x29, sp, 8
    001cba98adrp x27, 0x881000
    001cba9cldrb w2, [x27+1413]
    001cbaa0tbnz w2, 0, 0x1cbaa8
    001cbaa4b 0x1cbab4
    001cbaa8
    001cbaa8loc_1cbaa8:
    001cbaa8ldur x29, [sp-8]
    001cbaacldr x30, [sp], 32
    001cbab0ret x30
    001cbab4
    001cbab4loc_1cbab4:
    001cbab4adrp x0, 0x42a000
    001cbab8add x0, x0, 2944
    001cbabcadrp x1, 0x547000
    001cbac0add x1, x1, 848
    001cbac4bl runtime.gopanic
    001cbac8hint
    001cbacc
    001cbaccloc_1cbacc:
    001cbaccmov x3, x30
    001cbad0bl runtime.morestack_noctxt.abi0
    001cbad4b 0x1cba80
    001cbad8udf 0
    001cbadcudf 0
    001cba80
    001cbae0
    001cbae0hash/crc32.archUpdateCastagnoli: ; void hash/crc32.archUpdateCastagnoli(uint32 crc, struct []uint8 p)
    001cbae0ldr x16, [x28+16]
    001cbae4subs xzr, sp, x16
    001cbae8b.ls 0x1cbb74
    001cbaecstr x30, [sp-64]!
    001cbaf0stur x29, [sp-8]
    001cbaf4sub x29, sp, 8
    001cbaf8str w0, [sp+72]
    001cbafcstr x1, [sp+80]
    001cbb00str x2, [sp+88]
    001cbb04str x3, [sp+96]
    001cbb08str wzr, [sp+48]
    001cbb0cadrp x27, 0x881000
    001cbb10ldrb w2, [x27+1413]
    001cbb14tbnz w2, 0, 0x1cbb1c
    001cbb18b 0x1cbb5c
    001cbb1c
    001cbb1cloc_1cbb1c:
    001cbb1cldr x1, [sp+80]
    001cbb20ldr x2, [sp+88]
    001cbb24ldr x3, [sp+96]
    001cbb28orn x0, xzr, x0
    001cbb2cstr w0, [sp+8]
    001cbb30str x1, [sp+16]
    001cbb34str x2, [sp+24]
    001cbb38str x3, [sp+32]
    001cbb3cbl hash/crc32.castagnoliUpdate.abi0
    001cbb40ldr w0, [sp+40]
    001cbb44str w0, [sp+52]
    001cbb48orn x0, xzr, x0
    001cbb4cstr w0, [sp+48]
    001cbb50ldur x29, [sp-8]
    001cbb54ldr x30, [sp], 64
    001cbb58ret x30
    001cbb5c
    001cbb5cloc_1cbb5c:
    001cbb5cadrp x0, 0x42a000
    001cbb60add x0, x0, 2944
    001cbb64adrp x1, 0x547000
    001cbb68add x1, x1, 848
    001cbb6cbl runtime.gopanic
    001cbb70hint
    001cbb74
    001cbb74loc_1cbb74:
    001cbb74str w0, [sp+8]
    001cbb78stp x1, x2, [sp+16]
    001cbb7cstr x3, [sp+32]
    001cbb80mov x3, x30
    001cbb84bl runtime.morestack_noctxt.abi0
    001cbb88ldr w0, [sp+8]
    001cbb8cldp x1, x2, [sp+16]
    001cbb90ldr x3, [sp+32]
    001cbb94b 0x1cbae0
    001cbb98udf 0
    001cbb9cudf 0
    001cbae0
    001cbba0
    001cbba0hash/crc32.archAvailableIEEE: ; void hash/crc32.archAvailableIEEE(void)
    001cbba0str x30, [sp-32]!
    001cbba4stur x29, [sp-8]
    001cbba8sub x29, sp, 8
    001cbbacstrb wzr, [sp+23]
    001cbbb0adrp x27, 0x881000
    001cbbb4ldrb w0, [x27+1413]
    001cbbb8strb w0, [sp+23]
    001cbbbcadd x29, sp, 24
    001cbbc0add sp, sp, 32
    001cbbc4ret x30
    001cbbc8udf 0
    001cbbccudf 0
    001cbba0
    001cbbd0
    001cbbd0hash/crc32.archInitIEEE: ; void hash/crc32.archInitIEEE(void)
    001cbbd0ldr x16, [x28+16]
    001cbbd4subs xzr, sp, x16
    001cbbd8b.ls 0x1cbc1c
    001cbbdcstr x30, [sp-32]!
    001cbbe0stur x29, [sp-8]
    001cbbe4sub x29, sp, 8
    001cbbe8adrp x27, 0x881000
    001cbbecldrb w2, [x27+1413]
    001cbbf0tbnz w2, 0, 0x1cbbf8
    001cbbf4b 0x1cbc04
    001cbbf8
    001cbbf8loc_1cbbf8:
    001cbbf8ldur x29, [sp-8]
    001cbbfcldr x30, [sp], 32
    001cbc00ret x30
    001cbc04
    001cbc04loc_1cbc04:
    001cbc04adrp x0, 0x42a000
    001cbc08add x0, x0, 2944
    001cbc0cadrp x1, 0x547000
    001cbc10add x1, x1, 864
    001cbc14bl runtime.gopanic
    001cbc18hint
    001cbc1c
    001cbc1cloc_1cbc1c:
    001cbc1cmov x3, x30
    001cbc20bl runtime.morestack_noctxt.abi0
    001cbc24b 0x1cbbd0
    001cbc28udf 0
    001cbc2cudf 0
    001cbbd0
    001cbc30
    001cbc30hash/crc32.archUpdateIEEE: ; void hash/crc32.archUpdateIEEE(uint32 crc, struct []uint8 p)
    001cbc30ldr x16, [x28+16]
    001cbc34subs xzr, sp, x16
    001cbc38b.ls 0x1cbcc4
    001cbc3cstr x30, [sp-64]!
    001cbc40stur x29, [sp-8]
    001cbc44sub x29, sp, 8
    001cbc48str w0, [sp+72]
    001cbc4cstr x1, [sp+80]
    001cbc50str x2, [sp+88]
    001cbc54str x3, [sp+96]
    001cbc58str wzr, [sp+48]
    001cbc5cadrp x27, 0x881000
    001cbc60ldrb w2, [x27+1413]
    001cbc64tbnz w2, 0, 0x1cbc6c
    001cbc68b 0x1cbcac
    001cbc6c
    001cbc6cloc_1cbc6c:
    001cbc6cldr x1, [sp+80]
    001cbc70ldr x2, [sp+88]
    001cbc74ldr x3, [sp+96]
    001cbc78orn x0, xzr, x0
    001cbc7cstr w0, [sp+8]
    001cbc80str x1, [sp+16]
    001cbc84str x2, [sp+24]
    001cbc88str x3, [sp+32]
    001cbc8cbl hash/crc32.ieeeUpdate.abi0
    001cbc90ldr w0, [sp+40]
    001cbc94str w0, [sp+52]
    001cbc98orn x0, xzr, x0
    001cbc9cstr w0, [sp+48]
    001cbca0ldur x29, [sp-8]
    001cbca4ldr x30, [sp], 64
    001cbca8ret x30
    001cbcac
    001cbcacloc_1cbcac:
    001cbcacadrp x0, 0x42a000
    001cbcb0add x0, x0, 2944
    001cbcb4adrp x1, 0x547000
    001cbcb8add x1, x1, 864
    001cbcbcbl runtime.gopanic
    001cbcc0hint
    001cbcc4
    001cbcc4loc_1cbcc4:
    001cbcc4str w0, [sp+8]
    001cbcc8stp x1, x2, [sp+16]
    001cbcccstr x3, [sp+32]
    001cbcd0mov x3, x30
    001cbcd4bl runtime.morestack_noctxt.abi0
    001cbcd8ldr w0, [sp+8]
    001cbcdcldp x1, x2, [sp+16]
    001cbce0ldr x3, [sp+32]
    001cbce4b 0x1cbc30
    001cbce8udf 0
    001cbcecudf 0
    001cbc30
    001cbcf0
    001cbcf0hash/crc32.simpleMakeTable: ; void hash/crc32.simpleMakeTable(uint32 poly)
    001cbcf0ldr x16, [x28+16]
    001cbcf4subs xzr, sp, x16
    001cbcf8b.ls 0x1cbd48
    001cbcfcstr x30, [sp-64]!
    001cbd00stur x29, [sp-8]
    001cbd04sub x29, sp, 8
    001cbd08str w0, [sp+72]
    001cbd0cstr xzr, [sp+40]
    001cbd10adrp x0, 0x446000
    001cbd14add x0, x0, 3296
    001cbd18bl runtime.newobject
    001cbd1cstr x0, [sp+48]
    001cbd20ldr w1, [sp+72]
    001cbd24mov x2, x0
    001cbd28mov x0, x1
    001cbd2cmov x1, x2
    001cbd30bl hash/crc32.simplePopulateTable
    001cbd34ldr x0, [sp+48]
    001cbd38str x0, [sp+40]
    001cbd3cldur x29, [sp-8]
    001cbd40ldr x30, [sp], 64
    001cbd44ret x30
    001cbd48
    001cbd48loc_1cbd48:
    001cbd48str w0, [sp+8]
    001cbd4cmov x3, x30
    001cbd50bl runtime.morestack_noctxt.abi0
    001cbd54ldr w0, [sp+8]
    001cbd58b 0x1cbcf0
    001cbd5cudf 0
    001cbcf0
    001cbd60
    001cbd60hash/crc32.simplePopulateTable: ; void hash/crc32.simplePopulateTable(uint32 poly, hash/crc32.Table * t)
    001cbd60ldr x16, [x28+16]
    001cbd64subs xzr, sp, x16
    001cbd68b.ls 0x1cbe4c
    001cbd6cstr x30, [sp-64]!
    001cbd70stur x29, [sp-8]
    001cbd74sub x29, sp, 8
    001cbd78str w0, [sp+72]
    001cbd7cstr x1, [sp+80]
    001cbd80str xzr, [sp+48]
    001cbd84b 0x1cbd88
    001cbd88
    001cbd88loc_1cbd88:
    001cbd88ldr x2, [sp+48]
    001cbd8csubs xzr, x2, 256
    001cbd90b.lt 0x1cbd98
    001cbd94b 0x1cbda8
    001cbd98
    001cbd98loc_1cbd98:
    001cbd98ldr x2, [sp+48]
    001cbd9cstr w2, [sp+36]
    001cbda0str xzr, [sp+40]
    001cbda4b 0x1cbdb4
    001cbda8
    001cbda8loc_1cbda8:
    001cbda8ldur x29, [sp-8]
    001cbdacldr x30, [sp], 64
    001cbdb0ret x30
    001cbdb4
    001cbdb4loc_1cbdb4:
    001cbdb4ldr x2, [sp+40]
    001cbdb8subs xzr, x2, 8
    001cbdbcb.lt 0x1cbdc4
    001cbdc0b 0x1cbe0c
    001cbdc4
    001cbdc4loc_1cbdc4:
    001cbdc4ldr w2, [sp+36]
    001cbdc8tbnz w2, 0, 0x1cbdd0
    001cbdccb 0x1cbde8
    001cbdd0
    001cbdd0loc_1cbdd0:
    001cbdd0ldr w2, [sp+36]
    001cbdd4ubfm x2, x2, 1, 31
    001cbdd8ldr w3, [sp+72]
    001cbddceor x2, x2, x3
    001cbde0str w2, [sp+36]
    001cbde4b 0x1cbdf8
    001cbde8
    001cbde8loc_1cbde8:
    001cbde8ldr w2, [sp+36]
    001cbdecubfm x2, x2, 1, 31
    001cbdf0str w2, [sp+36]
    001cbdf4b 0x1cbdf8
    001cbdf8
    001cbdf8loc_1cbdf8:
    001cbdf8b 0x1cbdfc
    001cbdfc
    001cbdfcloc_1cbdfc:
    001cbdfcldr x2, [sp+40]
    001cbe00add x2, x2, 1
    001cbe04str x2, [sp+40]
    001cbe08b 0x1cbdb4
    001cbe0c
    001cbe0cloc_1cbe0c:
    001cbe0cldr x0, [sp+48]
    001cbe10ldr x2, [sp+80]
    001cbe14ldrsb x27, [x2]
    001cbe18ldr w3, [sp+36]
    001cbe1csubs xzr, x0, 256
    001cbe20b.lo 0x1cbe28
    001cbe24b 0x1cbe40
    001cbe28
    001cbe28loc_1cbe28:
    001cbe28str w3, [x2+2*x0]
    001cbe2cb 0x1cbe30
    001cbe30
    001cbe30loc_1cbe30:
    001cbe30ldr x2, [sp+48]
    001cbe34add x2, x2, 1
    001cbe38str x2, [sp+48]
    001cbe3cb 0x1cbd88
    001cbe40
    001cbe40loc_1cbe40:
    001cbe40orr x1, xzr, 256
    001cbe44bl runtime.panicIndex
    001cbe48hint
    001cbe4c
    001cbe4cloc_1cbe4c:
    001cbe4cstr w0, [sp+8]
    001cbe50str x1, [sp+16]
    001cbe54mov x3, x30
    001cbe58bl runtime.morestack_noctxt.abi0
    001cbe5cldr w0, [sp+8]
    001cbe60ldr x1, [sp+16]
    001cbe64b 0x1cbd60
    001cbe68udf 0
    001cbe6cudf 0
    001cbd60
    001cbe70
    001cbe70hash/crc32.simpleUpdate: ; void hash/crc32.simpleUpdate(uint32 crc, hash/crc32.Table * tab, struct []uint8 p)
    001cbe70str x30, [sp-64]!
    001cbe74stur x29, [sp-8]
    001cbe78sub x29, sp, 8
    001cbe7cstr w0, [sp+72]
    001cbe80str x1, [sp+80]
    001cbe84str x2, [sp+88]
    001cbe88str x3, [sp+96]
    001cbe8cstr x4, [sp+104]
    001cbe90str wzr, [sp+12]
    001cbe94orn x1, xzr, x0
    001cbe98str w1, [sp+72]
    001cbe9cldr x1, [sp+96]
    001cbea0ldr x2, [sp+88]
    001cbea4ldr x3, [sp+104]
    001cbea8str x2, [sp+32]
    001cbeacstr x1, [sp+40]
    001cbeb0str x3, [sp+48]
    001cbeb4str xzr, [sp+24]
    001cbeb8str x1, [sp+16]
    001cbebcb 0x1cbec0
    001cbec0
    001cbec0loc_1cbec0:
    001cbec0ldr x1, [sp+16]
    001cbec4ldr x2, [sp+24]
    001cbec8subs xzr, x1, x2
    001cbeccb.gt 0x1cbed4
    001cbed0b 0x1cbf20
    001cbed4
    001cbed4loc_1cbed4:
    001cbed4ldr x1, [sp+24]
    001cbed8ldr x2, [sp+32]
    001cbedcldrb w1, [x2+x1]
    001cbee0strb w1, [sp+11]
    001cbee4ldr x2, [sp+80]
    001cbee8ldrsb x27, [x2]
    001cbeecldr w3, [sp+72]
    001cbef0eor x1, x3, x1
    001cbef4ubfm x1, x1, 62, 7
    001cbef8ldr w1, [x2+x1]
    001cbefcldr w2, [sp+72]
    001cbf00ubfm x2, x2, 8, 31
    001cbf04eor x1, x1, x2
    001cbf08str w1, [sp+72]
    001cbf0cb 0x1cbf10
    001cbf10
    001cbf10loc_1cbf10:
    001cbf10ldr x1, [sp+24]
    001cbf14add x1, x1, 1
    001cbf18str x1, [sp+24]
    001cbf1cb 0x1cbec0
    001cbf20
    001cbf20loc_1cbf20:
    001cbf20ldr w1, [sp+72]
    001cbf24orn x0, xzr, x1
    001cbf28str w0, [sp+12]
    001cbf2cadd x29, sp, 56
    001cbf30add sp, sp, 64
    001cbf34ret x30
    001cbf38udf 0
    001cbf3cudf 0
    001cbe70
    001cbf40
    001cbf40hash/crc32.slicingMakeTable: ; void hash/crc32.slicingMakeTable(uint32 poly)
    001cbf40ldr x16, [x28+16]
    001cbf44subs xzr, sp, x16
    001cbf48b.ls 0x1cc088
    001cbf4cstr x30, [sp-96]!
    001cbf50stur x29, [sp-8]
    001cbf54sub x29, sp, 8
    001cbf58str w0, [sp+104]
    001cbf5cstr xzr, [sp+64]
    001cbf60adrp x0, 0x446000
    001cbf64add x0, x0, 3392
    001cbf68bl runtime.newobject
    001cbf6cstr x0, [sp+72]
    001cbf70str x0, [sp+80]
    001cbf74ldr w1, [sp+104]
    001cbf78mov x2, x0
    001cbf7cmov x0, x1
    001cbf80mov x1, x2
    001cbf84bl hash/crc32.simplePopulateTable
    001cbf88str xzr, [sp+56]
    001cbf8cb 0x1cbf90
    001cbf90
    001cbf90loc_1cbf90:
    001cbf90ldr x2, [sp+56]
    001cbf94subs xzr, x2, 256
    001cbf98b.lt 0x1cbfa0
    001cbf9cb 0x1cbfcc
    001cbfa0
    001cbfa0loc_1cbfa0:
    001cbfa0ldr x2, [sp+72]
    001cbfa4ldrsb x27, [x2]
    001cbfa8ldr x0, [sp+56]
    001cbfacsubs xzr, x0, 256
    001cbfb0b.lo 0x1cbfb8
    001cbfb4b 0x1cc07c
    001cbfb8
    001cbfb8loc_1cbfb8:
    001cbfb8ldr w2, [x2+2*x0]
    001cbfbcstr w2, [sp+44]
    001cbfc0orr x2, xzr, 1
    001cbfc4str x2, [sp+48]
    001cbfc8b 0x1cbfe0
    001cbfcc
    001cbfccloc_1cbfcc:
    001cbfccldr x0, [sp+72]
    001cbfd0str x0, [sp+64]
    001cbfd4ldur x29, [sp-8]
    001cbfd8ldr x30, [sp], 96
    001cbfdcret x30
    001cbfe0
    001cbfe0loc_1cbfe0:
    001cbfe0ldr x3, [sp+48]
    001cbfe4subs xzr, x3, 8
    001cbfe8b.lt 0x1cbff0
    001cbfecb 0x1cc058
    001cbff0
    001cbff0loc_1cbff0:
    001cbff0ldr x3, [sp+72]
    001cbff4ldrsb x27, [x3]
    001cbff8ldr w4, [sp+44]
    001cbffcubfm x4, x4, 62, 7
    001cc000ldr w3, [x3+x4]
    001cc004ldr w4, [sp+44]
    001cc008ubfm x4, x4, 8, 31
    001cc00ceor x3, x3, x4
    001cc010str w3, [sp+44]
    001cc014ldr x0, [sp+48]
    001cc018ldr x4, [sp+72]
    001cc01cldrsb x27, [x4]
    001cc020subs xzr, x0, 8
    001cc024b.lo 0x1cc02c
    001cc028b 0x1cc074
    001cc02c
    001cc02cloc_1cc02c:
    001cc02cadd x4, x4, x0, lsl #10
    001cc030ldr x0, [sp+56]
    001cc034subs xzr, x0, 256
    001cc038b.lo 0x1cc040
    001cc03cb 0x1cc06c
    001cc040
    001cc040loc_1cc040:
    001cc040str w3, [x4+2*x0]
    001cc044b 0x1cc048
    001cc048
    001cc048loc_1cc048:
    001cc048ldr x3, [sp+48]
    001cc04cadd x3, x3, 1
    001cc050str x3, [sp+48]
    001cc054b 0x1cbfe0
    001cc058
    001cc058loc_1cc058:
    001cc058b 0x1cc05c
    001cc05c
    001cc05cloc_1cc05c:
    001cc05cldr x3, [sp+56]
    001cc060add x3, x3, 1
    001cc064str x3, [sp+56]
    001cc068b 0x1cbf90
    001cc06c
    001cc06cloc_1cc06c:
    001cc06corr x1, xzr, 256
    001cc070bl runtime.panicIndex
    001cc074
    001cc074loc_1cc074:
    001cc074orr x1, xzr, 8
    001cc078bl runtime.panicIndex
    001cc07c
    001cc07cloc_1cc07c:
    001cc07corr x1, xzr, 256
    001cc080bl runtime.panicIndex
    001cc084hint
    001cc088
    001cc088loc_1cc088:
    001cc088str w0, [sp+8]
    001cc08cmov x3, x30
    001cc090bl runtime.morestack_noctxt.abi0
    001cc094ldr w0, [sp+8]
    001cc098b 0x1cbf40
    001cc09cudf 0
    001cbf40
    001cc0a0
    001cc0a0hash/crc32.slicingUpdate: ; void hash/crc32.slicingUpdate(uint32 crc, hash/crc32.slicing8Table * tab, struct []uint8 p)
    001cc0a0ldr x16, [x28+16]
    001cc0a4subs xzr, sp, x16
    001cc0a8b.ls 0x1cc33c
    001cc0acstr x30, [sp-80]!
    001cc0b0stur x29, [sp-8]
    001cc0b4sub x29, sp, 8
    001cc0b8str w0, [sp+88]
    001cc0bcstr x1, [sp+96]
    001cc0c0str x2, [sp+104]
    001cc0c4str x3, [sp+112]
    001cc0c8str x4, [sp+120]
    001cc0ccstr wzr, [sp+48]
    001cc0d0ldr x5, [sp+112]
    001cc0d4str x5, [sp+56]
    001cc0d8subs xzr, x5, 16
    001cc0dcb.ge 0x1cc0e4
    001cc0e0b 0x1cc0f4
    001cc0e4
    001cc0e4loc_1cc0e4:
    001cc0e4ldr w5, [sp+88]
    001cc0e8orn x5, xzr, x5
    001cc0ecstr w5, [sp+88]
    001cc0f0b 0x1cc150
    001cc0f4
    001cc0f4loc_1cc0f4:
    001cc0f4b 0x1cc0f8
    001cc0f8
    001cc0f8loc_1cc0f8:
    001cc0f8ldr x5, [sp+112]
    001cc0fcstr x5, [sp+56]
    001cc100cbz x5, 0x1cc108
    001cc104b 0x1cc11c
    001cc108
    001cc108loc_1cc108:
    001cc108ldr w0, [sp+88]
    001cc10cstr w0, [sp+48]
    001cc110ldur x29, [sp-8]
    001cc114ldr x30, [sp], 80
    001cc118ret x30
    001cc11c
    001cc11cloc_1cc11c:
    001cc11cldr x1, [sp+96]
    001cc120ldrsb x27, [x1]
    001cc124str x1, [sp+64]
    001cc128ldr w0, [sp+88]
    001cc12cldr x2, [sp+104]
    001cc130ldr x3, [sp+112]
    001cc134ldr x4, [sp+120]
    001cc138bl hash/crc32.simpleUpdate
    001cc13cstr w0, [sp+52]
    001cc140str w0, [sp+48]
    001cc144ldur x29, [sp-8]
    001cc148ldr x30, [sp], 80
    001cc14cret x30
    001cc150
    001cc150loc_1cc150:
    001cc150ldr x5, [sp+112]
    001cc154str x5, [sp+56]
    001cc158subs xzr, x5, 8
    001cc15cb.gt 0x1cc164
    001cc160b 0x1cc300
    001cc164
    001cc164loc_1cc164:
    001cc164ldr x0, [sp+104]
    001cc168ldr x1, [sp+112]
    001cc16cldr x2, [sp+120]
    001cc170bl internal/byteorder.LEUint32
    001cc174str w0, [sp+52]
    001cc178ldr w3, [sp+88]
    001cc17ceor x3, x3, x0
    001cc180str w3, [sp+88]
    001cc184ldr x4, [sp+96]
    001cc188ldrsb x27, [x4]
    001cc18cldr x1, [sp+112]
    001cc190ldr x5, [sp+104]
    001cc194subs xzr, x1, 7
    001cc198b.hi 0x1cc1a0
    001cc19cb 0x1cc330
    001cc1a0
    001cc1a0loc_1cc1a0:
    001cc1a0ldrb w5, [x5+7]
    001cc1a4ubfm x5, x5, 62, 7
    001cc1a8ldr w5, [x4+x5]
    001cc1acldr x6, [sp+96]
    001cc1b0ldrsb x27, [x6]
    001cc1b4add x6, x6, 1024
    001cc1b8ldr x1, [sp+112]
    001cc1bcldr x7, [sp+104]
    001cc1c0subs xzr, x1, 6
    001cc1c4b.hi 0x1cc1cc
    001cc1c8b 0x1cc328
    001cc1cc
    001cc1ccloc_1cc1cc:
    001cc1ccldrb w7, [x7+6]
    001cc1d0ubfm x7, x7, 62, 7
    001cc1d4ldr w6, [x6+x7]
    001cc1d8eor x5, x5, x6
    001cc1dcldr x6, [sp+96]
    001cc1e0ldrsb x27, [x6]
    001cc1e4add x6, x6, 2048
    001cc1e8ldr x1, [sp+112]
    001cc1ecldr x7, [sp+104]
    001cc1f0subs xzr, x1, 5
    001cc1f4b.hi 0x1cc1fc
    001cc1f8b 0x1cc320
    001cc1fc
    001cc1fcloc_1cc1fc:
    001cc1fcldrb w7, [x7+5]
    001cc200ubfm x7, x7, 62, 7
    001cc204ldr w6, [x6+x7]
    001cc208eor x5, x5, x6
    001cc20cldr x6, [sp+96]
    001cc210ldrsb x27, [x6]
    001cc214add x6, x6, 3072
    001cc218ldr x1, [sp+112]
    001cc21cldr x7, [sp+104]
    001cc220subs xzr, x1, 4
    001cc224b.hi 0x1cc22c
    001cc228b 0x1cc318
    001cc22c
    001cc22cloc_1cc22c:
    001cc22cldrb w7, [x7+4]
    001cc230ubfm x7, x7, 62, 7
    001cc234ldr w6, [x6+x7]
    001cc238eor x5, x5, x6
    001cc23cldr x6, [sp+96]
    001cc240ldrsb x27, [x6]
    001cc244add x6, x6, 4096
    001cc248ubfm x7, x3, 24, 31
    001cc24cubfm x7, x7, 62, 31
    001cc250ldr w6, [x6+x7]
    001cc254eor x5, x5, x6
    001cc258ldr x6, [sp+96]
    001cc25cldrsb x27, [x6]
    001cc260movz x7, 5120
    001cc264add x6, x6, x7
    001cc268ubfm x7, x3, 16, 31
    001cc26cubfm x7, x7, 62, 7
    001cc270ldr w6, [x6+x7]
    001cc274eor x5, x5, x6
    001cc278ldr x6, [sp+96]
    001cc27cldrsb x27, [x6]
    001cc280movz x7, 6144
    001cc284add x6, x6, x7
    001cc288ubfm x7, x3, 8, 31
    001cc28cubfm x7, x7, 62, 7
    001cc290ldr w6, [x6+x7]
    001cc294eor x5, x5, x6
    001cc298ldr x6, [sp+96]
    001cc29cldrsb x27, [x6]
    001cc2a0movz x7, 7168
    001cc2a4add x6, x6, x7
    001cc2a8ubfm x7, x3, 62, 7
    001cc2acldr w6, [x6+x7]
    001cc2b0eor x5, x5, x6
    001cc2b4str w5, [sp+88]
    001cc2b8ldr x1, [sp+112]
    001cc2bcldr x5, [sp+104]
    001cc2c0ldr x6, [sp+120]
    001cc2c4b 0x1cc2c8
    001cc2c8
    001cc2c8loc_1cc2c8:
    001cc2c8subs xzr, x1, 8
    001cc2ccb.hs 0x1cc2d4
    001cc2d0b 0x1cc310
    001cc2d4
    001cc2d4loc_1cc2d4:
    001cc2d4sub x6, x6, 8
    001cc2d8sub x7, xzr, x6
    001cc2dcsub x8, x1, 8
    001cc2e0sbfm x7, x7, 63, 63
    001cc2e4and x7, x7, 8
    001cc2e8add x5, x5, x7
    001cc2ecstr x5, [sp+104]
    001cc2f0str x8, [sp+112]
    001cc2f4str x6, [sp+120]
    001cc2f8b 0x1cc2fc
    001cc2fc
    001cc2fcloc_1cc2fc:
    001cc2fcb 0x1cc150
    001cc300
    001cc300loc_1cc300:
    001cc300ldr w5, [sp+88]
    001cc304orn x5, xzr, x5
    001cc308str w5, [sp+88]
    001cc30cb 0x1cc0f8
    001cc310
    001cc310loc_1cc310:
    001cc310orr x0, xzr, 8
    001cc314bl runtime.panicSliceB
    001cc318
    001cc318loc_1cc318:
    001cc318orr x0, xzr, 4
    001cc31cbl runtime.panicIndex
    001cc320
    001cc320loc_1cc320:
    001cc320movz x0, 5
    001cc324bl runtime.panicIndex
    001cc328
    001cc328loc_1cc328:
    001cc328orr x0, xzr, 6
    001cc32cbl runtime.panicIndex
    001cc330
    001cc330loc_1cc330:
    001cc330orr x0, xzr, 7
    001cc334bl runtime.panicIndex
    001cc338hint
    001cc33c
    001cc33cloc_1cc33c:
    001cc33cstr w0, [sp+8]
    001cc340stp x1, x2, [sp+16]
    001cc344stp x3, x4, [sp+32]
    001cc348mov x3, x30
    001cc34cbl runtime.morestack_noctxt.abi0
    001cc350ldr w0, [sp+8]
    001cc354ldp x1, x2, [sp+16]
    001cc358ldp x3, x4, [sp+32]
    001cc35cb 0x1cc0a0
    001cc0a0
    001cc360
    001cc360hash/crc32.castagnoliUpdate.abi0: ; void hash/crc32.castagnoliUpdate(void)
    001cc360ldr w9, [sp+8]
    001cc364ldr x13, [sp+16]
    001cc368ldr x11, [sp+24]
    001cc36c
    001cc36cloc_1cc36c:
    001cc36csubs xzr, x11, 16
    001cc370b.lt 0x1cc388
    001cc374ldp x8, x10, [x13], 16
    001cc378crc32cx w9, w9, x8
    001cc37ccrc32cx w9, w9, x10
    001cc380sub x11, x11, 16
    001cc384b 0x1cc36c
    001cc388
    001cc388loc_1cc388:
    001cc388tbz w11, 3, 0x1cc394
    001cc38cldr x10, [x13], 8
    001cc390crc32cx w9, w9, x10
    001cc394
    001cc394loc_1cc394:
    001cc394tbz w11, 2, 0x1cc3a0
    001cc398ldr w10, [x13], 4
    001cc39ccrc32cw w9, w9, w10
    001cc3a0
    001cc3a0loc_1cc3a0:
    001cc3a0tbz w11, 1, 0x1cc3ac
    001cc3a4ldrh w10, [x13], 2
    001cc3a8crc32ch w9, w9, w10
    001cc3ac
    001cc3acloc_1cc3ac:
    001cc3actbz w11, 0, 0x1cc3b8
    001cc3b0ldrb w10, [x13]
    001cc3b4crc32cb w9, w9, w10
    001cc3b8
    001cc3b8loc_1cc3b8:
    001cc3b8str w9, [sp+40]
    001cc3bcret x30
    001cc360
    001cc3c0
    001cc3c0hash/crc32.ieeeUpdate.abi0: ; void hash/crc32.ieeeUpdate(void)
    001cc3c0ldr w9, [sp+8]
    001cc3c4ldr x13, [sp+16]
    001cc3c8ldr x11, [sp+24]
    001cc3cc
    001cc3ccloc_1cc3cc:
    001cc3ccsubs xzr, x11, 16
    001cc3d0b.lt 0x1cc3e8
    001cc3d4ldp x8, x10, [x13], 16
    001cc3d8crc32x w9, w9, x8
    001cc3dccrc32x w9, w9, x10
    001cc3e0sub x11, x11, 16
    001cc3e4b 0x1cc3cc
    001cc3e8
    001cc3e8loc_1cc3e8:
    001cc3e8tbz w11, 3, 0x1cc3f4
    001cc3ecldr x10, [x13], 8
    001cc3f0crc32x w9, w9, x10
    001cc3f4
    001cc3f4loc_1cc3f4:
    001cc3f4tbz w11, 2, 0x1cc400
    001cc3f8ldr w10, [x13], 4
    001cc3fccrc32w w9, w9, w10
    001cc400
    001cc400loc_1cc400:
    001cc400tbz w11, 1, 0x1cc40c
    001cc404ldrh w10, [x13], 2
    001cc408crc32h w9, w9, w10
    001cc40c
    001cc40cloc_1cc40c:
    001cc40ctbz w11, 0, 0x1cc418
    001cc410ldrb w10, [x13]
    001cc414crc32b w9, w9, w10
    001cc418
    001cc418loc_1cc418:
    001cc418str w9, [sp+40]
    001cc41cret x30
    001cc3c0
    001cc420
    001cc420type:.eq.hash/crc32.digest: ; void type:.eq.hash/crc32.digest(hash/crc32.digest * p, hash/crc32.digest * q)
    001cc420str x30, [sp-32]!
    001cc424stur x29, [sp-8]
    001cc428sub x29, sp, 8
    001cc42cstr x0, [sp+40]
    001cc430str x1, [sp+48]
    001cc434strb wzr, [sp+23]
    001cc438ldr x1, [sp+40]
    001cc43cldr w1, [x1]
    001cc440ldr x2, [sp+48]
    001cc444ldr w2, [x2]
    001cc448subs wzr, w2, w1
    001cc44cb.eq 0x1cc454
    001cc450b 0x1cc480
    001cc454
    001cc454loc_1cc454:
    001cc454ldr x1, [sp+40]
    001cc458ldr x2, [sp+48]
    001cc45cldr x1, [x1+8]
    001cc460ldr x2, [x2+8]
    001cc464subs xzr, x2, x1
    001cc468cset x0, eq
    001cc46cstrb w0, [sp+23]
    001cc470b 0x1cc474
    001cc474
    001cc474loc_1cc474:
    001cc474add x29, sp, 24
    001cc478add sp, sp, 32
    001cc47cret x30
    001cc480
    001cc480loc_1cc480:
    001cc480b 0x1cc484
    001cc484
    001cc484loc_1cc484:
    001cc484strb wzr, [sp+23]
    001cc488mov x0, xzr
    001cc48cadd x29, sp, 24
    001cc490add sp, sp, 32
    001cc494ret x30
    001cc498udf 0
    001cc49cudf 0
    001cc420
    001cc4a0
    001cc4a0google.golang.org/protobuf/internal/encoding/tag.init: ; void google.golang.org/protobuf/internal/encoding/tag.init(void)
    001cc4a0ldr x16, [x28+16]
    001cc4a4subs xzr, sp, x16
    001cc4a8b.ls 0x1cc51c
    001cc4acstr x30, [sp-48]!
    001cc4b0stur x29, [sp-8]
    001cc4b4sub x29, sp, 8
    001cc4b8adrp x0, 0x429000
    001cc4bcadd x0, x0, 3072
    001cc4c0str x0, [sp+24]
    001cc4c4adrp x1, 0x556000
    001cc4c8add x1, x1, 640
    001cc4ccstr x1, [sp+32]
    001cc4d0bl reflect.TypeOf
    001cc4d4adrp x27, 0x856000
    001cc4d8str x0, [x27+960]
    001cc4dcadrp x27, 0x87f000
    001cc4e0ldr w2, [x27+3056]
    001cc4e4cbz w2, 0x1cc4ec
    001cc4e8b 0x1cc4f0
    001cc4ec
    001cc4ecloc_1cc4ec:
    001cc4ecb 0x1cc508
    001cc4f0
    001cc4f0loc_1cc4f0:
    001cc4f0bl runtime.gcWriteBarrier2
    001cc4f4str x1, [x25]
    001cc4f8adrp x27, 0x856000
    001cc4fcldr x0, [x27+968]
    001cc500str x0, [x25+8]
    001cc504b 0x1cc508
    001cc508
    001cc508loc_1cc508:
    001cc508adrp x27, 0x856000
    001cc50cstr x1, [x27+968]
    001cc510ldur x29, [sp-8]
    001cc514ldr x30, [sp], 48
    001cc518ret x30
    001cc51c
    001cc51cloc_1cc51c:
    001cc51cmov x3, x30
    001cc520bl runtime.morestack_noctxt.abi0
    001cc524b 0x1cc4a0
    001cc528udf 0
    001cc52cudf 0
    001cc4a0