File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00584fb0
    00584fb0crypto/internal/fips140/ecdsa.(*hmacDRBG).Generate: ; void crypto/internal/fips140/ecdsa.(*hmacDRBG).Generate(crypto/internal/fips140/ecdsa.hmacDRBG * d, struct []uint8 out)
    00584fb0ldr x16, [x28+16]
    00584fb4sub x17, sp, 304
    00584fb8subs xzr, x17, x16
    00584fbcb.ls 0x585468
    00584fc0sub x20, sp, 432
    00584fc4stp x29, x30, [x20-8]
    00584fc8add sp, x20, 0
    00584fccsub x29, sp, 8
    00584fd0str x0, [sp+440]
    00584fd4str x1, [sp+448]
    00584fd8str x2, [sp+456]
    00584fdcstr x3, [sp+464]
    00584fe0bl crypto/internal/fips140.RecordApproved
    00584fe4ldr x0, [sp+456]
    00584fe8str x0, [sp+64]
    00584fecsubs xzr, x0, 0x10000
    00584ff0b.gt 0x585438
    00584ff4b 0x584ff8
    00584ff8
    00584ff8loc_584ff8:
    00584ff8ldr x2, [sp+440]
    00584ffcldrsb x27, [x2]
    00585000ldr x2, [x2+40]
    00585004movz x3, 0x1000000000000
    00585008subs xzr, x2, x3
    0058500cb.hi 0x58540c
    00585010b 0x585014
    00585014
    00585014loc_585014:
    00585014str xzr, [sp+48]
    00585018b 0x58501c
    0058501c
    0058501cloc_58501c:
    0058501cldr x1, [sp+456]
    00585020str x1, [sp+64]
    00585024ldr x2, [sp+48]
    00585028subs xzr, x1, x2
    0058502cb.gt 0x585034
    00585030b 0x5851f8
    00585034
    00585034loc_585034:
    00585034ldr x1, [sp+440]
    00585038ldrsb x27, [x1]
    0058503cldr x0, [x1+8]
    00585040str x0, [sp+400]
    00585044bl crypto/internal/fips140/hmac.(*HMAC).Reset
    00585048ldr x1, [sp+440]
    0058504cldrsb x27, [x1]
    00585050ldr x1, [x1+8]
    00585054str x1, [sp+392]
    00585058ldr x1, [sp+440]
    0058505cldrsb x27, [x1]
    00585060ldr x2, [x1+16]
    00585064ldr x3, [x1+24]
    00585068ldr x1, [x1+32]
    0058506cstr x2, [sp+368]
    00585070str x3, [sp+376]
    00585074str x1, [sp+384]
    00585078ldr x0, [sp+392]
    0058507cmov x4, x1
    00585080mov x1, x2
    00585084mov x2, x3
    00585088mov x3, x4
    0058508cbl crypto/internal/fips140/hmac.(*HMAC).Write
    00585090ldr x1, [sp+440]
    00585094ldrsb x27, [x1]
    00585098ldr x2, [x1+16]
    0058509cldr x1, [x1+32]
    005850a0b 0x5850a4
    005850a4
    005850a4loc_5850a4:
    005850a4b 0x5850a8
    005850a8
    005850a8loc_5850a8:
    005850a8str x2, [sp+144]
    005850acstr xzr, [sp+152]
    005850b0str x1, [sp+160]
    005850b4ldr x4, [sp+440]
    005850b8ldrsb x27, [x4]
    005850bcldr x0, [x4+8]
    005850c0str x0, [sp+360]
    005850c4ldr x1, [sp+144]
    005850c8ldr x2, [sp+152]
    005850ccldr x3, [sp+160]
    005850d0bl crypto/internal/fips140/hmac.(*HMAC).Sum
    005850d4str x0, [sp+120]
    005850d8str x1, [sp+128]
    005850dcstr x2, [sp+136]
    005850e0ldr x4, [sp+440]
    005850e4ldrsb x27, [x4]
    005850e8str x1, [x4+24]
    005850ecstr x2, [x4+32]
    005850f0adrp x27, 0x4c6000
    005850f4ldr w5, [x27+3056]
    005850f8cbz w5, 0x585100
    005850fcb 0x585104
    00585100
    00585100loc_585100:
    00585100b 0x585118
    00585104
    00585104loc_585104:
    00585104bl runtime.gcWriteBarrier2
    00585108str x0, [x25]
    0058510cldr x3, [x4+16]
    00585110str x3, [x25+8]
    00585114b 0x585118
    00585118
    00585118loc_585118:
    00585118str x0, [x4+16]
    0058511cldr x0, [sp+48]
    00585120ldr x1, [sp+456]
    00585124ldr x3, [sp+448]
    00585128ldr x4, [sp+464]
    0058512cb 0x585130
    00585130
    00585130loc_585130:
    00585130subs xzr, x0, x1
    00585134b.ls 0x58513c
    00585138b 0x585408
    0058513c
    0058513cloc_58513c:
    0058513csub x4, x4, x0
    00585140sub x5, x1, x0
    00585144sub x6, xzr, x4
    00585148and x6, x0, x6, asr #63
    0058514cadd x3, x3, x6
    00585150str x3, [sp+120]
    00585154str x5, [sp+128]
    00585158str x4, [sp+136]
    0058515cstr x3, [sp+336]
    00585160str x5, [sp+344]
    00585164str x4, [sp+352]
    00585168ldr x3, [sp+440]
    0058516cldrsb x27, [x3]
    00585170ldr x4, [x3+24]
    00585174ldr x5, [x3+16]
    00585178ldr x3, [x3+32]
    0058517cstr x5, [sp+312]
    00585180str x4, [sp+320]
    00585184str x3, [sp+328]
    00585188ldr x3, [sp+344]
    0058518cstr x3, [sp+80]
    00585190subs xzr, x3, x4
    00585194b.gt 0x58519c
    00585198b 0x5851a4
    0058519c
    0058519cloc_58519c:
    0058519cstr x4, [sp+80]
    005851a0b 0x5851a8
    005851a4
    005851a4loc_5851a4:
    005851a4b 0x5851a8
    005851a8
    005851a8loc_5851a8:
    005851a8ldr x3, [sp+336]
    005851acldr x4, [sp+312]
    005851b0subs xzr, x4, x3
    005851b4b.ne 0x5851bc
    005851b8b 0x5851d8
    005851bc
    005851bcloc_5851bc:
    005851bcldr x3, [sp+80]
    005851c0str x3, [sp+72]
    005851c4ldr x2, [sp+72]
    005851c8ldr x1, [sp+312]
    005851ccldr x0, [sp+336]
    005851d0bl runtime.memmove
    005851d4b 0x5851dc
    005851d8
    005851d8loc_5851d8:
    005851d8b 0x5851dc
    005851dc
    005851dcloc_5851dc:
    005851dcldr x1, [sp+80]
    005851e0str x1, [sp+56]
    005851e4ldr x2, [sp+48]
    005851e8add x1, x2, x1
    005851ecstr x1, [sp+48]
    005851f0b 0x5851f4
    005851f4
    005851f4loc_5851f4:
    005851f4b 0x58501c
    005851f8
    005851f8loc_5851f8:
    005851f8ldr x1, [sp+440]
    005851fcldrsb x27, [x1]
    00585200ldr x0, [x1+8]
    00585204str x0, [sp+304]
    00585208bl crypto/internal/fips140/hmac.(*HMAC).Reset
    0058520cldr x1, [sp+440]
    00585210ldrsb x27, [x1]
    00585214ldr x1, [x1+8]
    00585218str x1, [sp+296]
    0058521cldr x1, [sp+440]
    00585220ldrsb x27, [x1]
    00585224ldr x2, [x1+16]
    00585228ldr x3, [x1+24]
    0058522cldr x1, [x1+32]
    00585230str x2, [sp+272]
    00585234str x3, [sp+280]
    00585238str x1, [sp+288]
    0058523cldr x0, [sp+296]
    00585240mov x4, x1
    00585244mov x1, x2
    00585248mov x2, x3
    0058524cmov x3, x4
    00585250bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585254adrp x0, 0x78000
    00585258add x0, x0, 2432
    0058525cbl runtime.newobject
    00585260str x0, [sp+240]
    00585264strb wzr, [x0]
    00585268ldr x1, [sp+240]
    0058526cldrsb x27, [x1]
    00585270b 0x585274
    00585274
    00585274loc_585274:
    00585274str x1, [sp+248]
    00585278orr x4, xzr, 1
    0058527cstr x4, [sp+256]
    00585280str x4, [sp+264]
    00585284ldr x4, [sp+440]
    00585288ldrsb x27, [x4]
    0058528cldr x0, [x4+8]
    00585290str x0, [sp+232]
    00585294ldr x1, [sp+248]
    00585298ldr x2, [sp+256]
    0058529cldr x3, [sp+264]
    005852a0bl crypto/internal/fips140/hmac.(*HMAC).Write
    005852a4ldr x4, [sp+440]
    005852a8ldrsb x27, [x4]
    005852acldr x0, [x4+8]
    005852b0str x0, [sp+224]
    005852b4mov x1, xzr
    005852b8mov x2, xzr
    005852bcmov x3, x2
    005852c0bl crypto/internal/fips140/hmac.(*HMAC).Sum
    005852c4str x0, [sp+88]
    005852c8str x1, [sp+96]
    005852ccstr x2, [sp+104]
    005852d0ldr x4, [sp+440]
    005852d4ldrsb x27, [x4]
    005852d8ldr x26, [x4]
    005852dcldr x4, [x26]
    005852e0blr x4
    005852e4str x0, [sp+112]
    005852e8ldr x4, [sp+440]
    005852ecldrsb x27, [x4]
    005852f0adrp x27, 0x4c6000
    005852f4ldr w5, [x27+3056]
    005852f8cbz w5, 0x585300
    005852fcb 0x585304
    00585300
    00585300loc_585300:
    00585300b 0x585318
    00585304
    00585304loc_585304:
    00585304bl runtime.gcWriteBarrier2
    00585308str x0, [x25]
    0058530cldr x5, [x4+8]
    00585310str x5, [x25+8]
    00585314b 0x585318
    00585318
    00585318loc_585318:
    00585318str x0, [x4+8]
    0058531cldr x4, [sp+440]
    00585320ldrsb x27, [x4]
    00585324ldr x4, [x4+8]
    00585328str x4, [sp+216]
    0058532cldr x4, [sp+440]
    00585330ldrsb x27, [x4]
    00585334ldr x1, [x4+16]
    00585338ldr x2, [x4+24]
    0058533cldr x3, [x4+32]
    00585340str x1, [sp+192]
    00585344str x2, [sp+200]
    00585348str x3, [sp+208]
    0058534cldr x0, [sp+216]
    00585350bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585354ldr x4, [sp+440]
    00585358ldrsb x27, [x4]
    0058535cldr x5, [x4+16]
    00585360ldr x4, [x4+32]
    00585364b 0x585368
    00585368
    00585368loc_585368:
    00585368b 0x58536c
    0058536c
    0058536cloc_58536c:
    0058536cstr x5, [sp+120]
    00585370str xzr, [sp+128]
    00585374str x4, [sp+136]
    00585378ldr x4, [sp+440]
    0058537cldrsb x27, [x4]
    00585380ldr x0, [x4+8]
    00585384str x0, [sp+184]
    00585388ldr x1, [sp+120]
    0058538cldr x2, [sp+128]
    00585390ldr x3, [sp+136]
    00585394bl crypto/internal/fips140/hmac.(*HMAC).Sum
    00585398str x0, [sp+144]
    0058539cstr x1, [sp+152]
    005853a0str x2, [sp+160]
    005853a4ldr x4, [sp+440]
    005853a8ldrsb x27, [x4]
    005853acstr x1, [x4+24]
    005853b0str x2, [x4+32]
    005853b4adrp x27, 0x4c6000
    005853b8ldr w5, [x27+3056]
    005853bccbz w5, 0x5853c4
    005853c0b 0x5853c8
    005853c4
    005853c4loc_5853c4:
    005853c4b 0x5853dc
    005853c8
    005853c8loc_5853c8:
    005853c8bl runtime.gcWriteBarrier2
    005853ccstr x0, [x25]
    005853d0ldr x1, [x4+16]
    005853d4str x1, [x25+8]
    005853d8b 0x5853dc
    005853dc
    005853dcloc_5853dc:
    005853dcstr x0, [x4+16]
    005853e0ldr x0, [sp+440]
    005853e4ldrsb x27, [x0]
    005853e8ldr x1, [sp+440]
    005853ecldrsb x27, [x1]
    005853f0ldr x1, [x1+40]
    005853f4add x1, x1, 1
    005853f8str x1, [x0+40]
    005853fcldp x29, x30, [sp-8]
    00585400add sp, sp, 432
    00585404ret x30
    00585408
    00585408loc_585408:
    00585408bl runtime.panicSliceB
    0058540c
    0058540cloc_58540c:
    0058540cadrp x0, 0x139000
    00585410add x0, x0, 692
    00585414str x0, [sp+168]
    00585418orr x1, xzr, 31
    0058541cstr x1, [sp+176]
    00585420bl runtime.convTstring
    00585424str x0, [sp+408]
    00585428mov x1, x0
    0058542cadrp x0, 0x70000
    00585430add x0, x0, 2944
    00585434bl runtime.gopanic
    00585438
    00585438loc_585438:
    00585438adrp x0, 0x144000
    0058543cadd x0, x0, 3331
    00585440str x0, [sp+168]
    00585444movz x1, 51
    00585448str x1, [sp+176]
    0058544cbl runtime.convTstring
    00585450str x0, [sp+416]
    00585454mov x1, x0
    00585458adrp x0, 0x70000
    0058545cadd x0, x0, 2944
    00585460bl runtime.gopanic
    00585464hint
    00585468
    00585468loc_585468:
    00585468stp x0, x1, [sp+8]
    0058546cstp x2, x3, [sp+24]
    00585470mov x3, x30
    00585474bl runtime.morestack_noctxt.abi0
    00585478ldp x0, x1, [sp+8]
    0058547cldp x2, x3, [sp+24]
    00585480b 0x584fb0
    00585484udf 0
    00585488udf 0
    0058548cudf 0
    00584fb0
    00585490
    00585490crypto/internal/fips140/ecdsa.newDRBG[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]: ; void crypto/internal/fips140/ecdsa.newDRBG[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }](uintptr[3] * dict, int64_t hash, struct []uint8 entropy, struct []uint8 nonce, crypto/internal/fips140/ecdsa.personalizationString s)
    00585490ldr x16, [x28+16]
    00585494sub x17, sp, 608
    00585498subs xzr, x17, x16
    0058549cb.ls 0x585e68
    005854a0sub x20, sp, 736
    005854a4stp x29, x30, [x20-8]
    005854a8add sp, x20, 0
    005854acsub x29, sp, 8
    005854b0str x0, [sp+744]
    005854b4str x1, [sp+752]
    005854b8str x2, [sp+760]
    005854bcstr x3, [sp+768]
    005854c0str x4, [sp+776]
    005854c4str x5, [sp+784]
    005854c8str x6, [sp+792]
    005854ccstr x7, [sp+800]
    005854d0str x8, [sp+808]
    005854d4str x9, [sp+816]
    005854d8str xzr, [sp+160]
    005854dcbl crypto/internal/fips140.RecordApproved
    005854e0adrp x0, 0xe3000
    005854e4add x0, x0, 2336
    005854e8bl runtime.newobject
    005854ecstr x0, [sp+632]
    005854f0adrp x27, 0x4c6000
    005854f4ldr w1, [x27+3056]
    005854f8cbz w1, 0x585500
    005854fcb 0x585504
    00585500
    00585500loc_585500:
    00585500b 0x585520
    00585504
    00585504loc_585504:
    00585504str x0, [sp+352]
    00585508mov x1, x0
    0058550cadrp x0, 0xe3000
    00585510add x0, x0, 2336
    00585514bl runtime.wbZero
    00585518ldr x0, [sp+352]
    0058551cb 0x585520
    00585520
    00585520loc_585520:
    00585520stp xzr, xzr, [x0]
    00585524stp xzr, xzr, [x0+16]
    00585528stp xzr, xzr, [x0+32]
    0058552cadrp x0, 0xc8000
    00585530add x0, x0, 1824
    00585534bl runtime.newobject
    00585538str x0, [sp+624]
    0058553cadrp x1, 0
    00585540add x1, x1, 3744
    00585544str x1, [x0]
    00585548ldr x1, [sp+752]
    0058554cldr x2, [sp+624]
    00585550ldrsb x27, [x2]
    00585554adrp x27, 0x4c6000
    00585558ldr w3, [x27+3056]
    0058555ccbz w3, 0x585564
    00585560b 0x585568
    00585564
    00585564loc_585564:
    00585564b 0x58557c
    00585568
    00585568loc_585568:
    00585568bl runtime.gcWriteBarrier2
    0058556cstr x1, [x25]
    00585570ldr x0, [x2+8]
    00585574str x0, [x25+8]
    00585578b 0x58557c
    0058557c
    0058557cloc_58557c:
    0058557cstr x1, [x2+8]
    00585580ldr x0, [sp+744]
    00585584ldr x1, [sp+624]
    00585588ldrsb x27, [x1]
    0058558cadrp x27, 0x4c6000
    00585590ldr w2, [x27+3056]
    00585594cbz w2, 0x58559c
    00585598b 0x5855a0
    0058559c
    0058559cloc_58559c:
    0058559cb 0x5855b4
    005855a0
    005855a0loc_5855a0:
    005855a0bl runtime.gcWriteBarrier2
    005855a4str x0, [x25]
    005855a8ldr x2, [x1+16]
    005855acstr x2, [x25+8]
    005855b0b 0x5855b4
    005855b4
    005855b4loc_5855b4:
    005855b4str x0, [x1+16]
    005855b8ldr x0, [sp+632]
    005855bcldrsb x27, [x0]
    005855c0ldr x1, [sp+624]
    005855c4adrp x27, 0x4c6000
    005855c8ldr w2, [x27+3056]
    005855cccbz w2, 0x5855d4
    005855d0b 0x5855d8
    005855d4
    005855d4loc_5855d4:
    005855d4b 0x5855ec
    005855d8
    005855d8loc_5855d8:
    005855d8bl runtime.gcWriteBarrier2
    005855dcstr x1, [x25]
    005855e0ldr x2, [x0]
    005855e4str x2, [x25+8]
    005855e8b 0x5855ec
    005855ec
    005855ecloc_5855ec:
    005855ecstr x1, [x0]
    005855f0ldr x0, [sp+632]
    005855f4str x0, [sp+272]
    005855f8ldr x26, [sp+752]
    005855fcldr x0, [x26]
    00585600blr x0
    00585604str x0, [sp+712]
    00585608str x1, [sp+720]
    0058560cldr x26, [sp+744]
    00585610ldrsb x27, [x26]
    00585614ldr x2, [x26]
    00585618blr x2
    0058561cstr x0, [sp+64]
    00585620mov x1, x0
    00585624mov x2, x1
    00585628adrp x0, 0x70000
    0058562cadd x0, x0, 3072
    00585630bl runtime.makeslice
    00585634ldr x1, [sp+64]
    00585638ldr x2, [sp+64]
    0058563cstr x0, [sp+328]
    00585640str x1, [sp+336]
    00585644str x2, [sp+344]
    00585648strb wzr, [sp+55]
    0058564cadd x0, sp, 55
    00585650str x0, [sp+592]
    00585654ldrsb x27, [x0]
    00585658orr x1, xzr, 1
    0058565cstrb w1, [x0]
    00585660ldr x0, [sp+592]
    00585664ldrsb x27, [x0]
    00585668b 0x58566c
    0058566c
    0058566cloc_58566c:
    0058566cstr x0, [sp+600]
    00585670orr x2, xzr, 1
    00585674str x2, [sp+608]
    00585678str x2, [sp+616]
    0058567cldr x3, [sp+64]
    00585680mov x1, x2
    00585684bl bytes.Repeat
    00585688str x0, [sp+688]
    0058568cstr x1, [sp+696]
    00585690str x2, [sp+704]
    00585694ldr x4, [sp+272]
    00585698ldrsb x27, [x4]
    0058569cstr x1, [x4+24]
    005856a0str x2, [x4+32]
    005856a4adrp x27, 0x4c6000
    005856a8ldr w5, [x27+3056]
    005856accbz w5, 0x5856b4
    005856b0b 0x5856b8
    005856b4
    005856b4loc_5856b4:
    005856b4b 0x5856cc
    005856b8
    005856b8loc_5856b8:
    005856b8bl runtime.gcWriteBarrier2
    005856bcstr x0, [x25]
    005856c0ldr x5, [x4+16]
    005856c4str x5, [x25+8]
    005856c8b 0x5856cc
    005856cc
    005856ccloc_5856cc:
    005856ccstr x0, [x4+16]
    005856d0ldr x5, [sp+744]
    005856d4ldrsb x27, [x5]
    005856d8ldr x0, [x5+8]
    005856dcstr x0, [sp+584]
    005856e0ldr x2, [sp+328]
    005856e4ldr x1, [sp+752]
    005856e8ldr x3, [sp+336]
    005856ecldr x4, [sp+344]
    005856f0bl crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    005856f4str x0, [sp+264]
    005856f8ldr x5, [sp+272]
    005856fcldrsb x27, [x5]
    00585700ldr x1, [x5+16]
    00585704ldr x2, [x5+24]
    00585708ldr x3, [x5+32]
    0058570cstr x1, [sp+560]
    00585710str x2, [sp+568]
    00585714str x3, [sp+576]
    00585718ldr x0, [sp+264]
    0058571cbl crypto/internal/fips140/hmac.(*HMAC).Write
    00585720adrp x0, 0x78000
    00585724add x0, x0, 2432
    00585728bl runtime.newobject
    0058572cstr x0, [sp+528]
    00585730strb wzr, [x0]
    00585734ldr x1, [sp+528]
    00585738ldrsb x27, [x1]
    0058573cb 0x585740
    00585740
    00585740loc_585740:
    00585740str x1, [sp+536]
    00585744orr x3, xzr, 1
    00585748str x3, [sp+544]
    0058574cstr x3, [sp+552]
    00585750ldr x0, [sp+264]
    00585754mov x2, x3
    00585758bl crypto/internal/fips140/hmac.(*HMAC).Write
    0058575cldr x1, [sp+760]
    00585760ldr x2, [sp+768]
    00585764ldr x3, [sp+776]
    00585768ldr x0, [sp+264]
    0058576cbl crypto/internal/fips140/hmac.(*HMAC).Write
    00585770ldr x1, [sp+784]
    00585774ldr x2, [sp+792]
    00585778ldr x3, [sp+800]
    0058577cldr x0, [sp+264]
    00585780bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585784ldr x4, [sp+816]
    00585788ldr x5, [sp+808]
    0058578cstr x5, [sp+512]
    00585790str x4, [sp+520]
    00585794cbnz x5, 0x58579c
    00585798b 0x5858f0
    0058579c
    0058579cloc_58579c:
    0058579cldr w4, [x5+16]
    005857a0str w4, [sp+60]
    005857a4movz x5, 18868
    005857a8movk x5, 0x65c0000
    005857acsubs wzr, w4, w5
    005857b0b.eq 0x5857b8
    005857b4b 0x58581c
    005857b8
    005857b8loc_5857b8:
    005857b8ldr x4, [sp+512]
    005857bcadrp x5, 0x191000
    005857c0add x5, x5, 768
    005857c4subs xzr, x4, x5
    005857c8b.eq 0x5857d0
    005857ccb 0x5857d8
    005857d0
    005857d0loc_5857d0:
    005857d0orr x0, xzr, 1
    005857d4b 0x5857e0
    005857d8
    005857d8loc_5857d8:
    005857d8mov x0, xzr
    005857dcb 0x5857e0
    005857e0
    005857e0loc_5857e0:
    005857e0strb w0, [sp+54]
    005857e4tbnz w0, 0, 0x5857ec
    005857e8b 0x585818
    005857ec
    005857ecloc_5857ec:
    005857ecb 0x5857f0
    005857f0
    005857f0loc_5857f0:
    005857f0ldr x4, [sp+520]
    005857f4ldr x1, [x4]
    005857f8ldr x2, [x4+8]
    005857fcldr x3, [x4+16]
    00585800str x1, [sp+240]
    00585804str x2, [sp+248]
    00585808str x3, [sp+256]
    0058580cldr x0, [sp+264]
    00585810bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585814b 0x5858f4
    00585818
    00585818loc_585818:
    00585818b 0x5858ec
    0058581c
    0058581cloc_58581c:
    0058581cmovz x5, 51315
    00585820movk x5, 0x11760000
    00585824subs wzr, w4, w5
    00585828b.eq 0x585830
    0058582cb 0x5858e4
    00585830
    00585830loc_585830:
    00585830ldr x4, [sp+512]
    00585834adrp x5, 0x191000
    00585838add x5, x5, 800
    0058583csubs xzr, x4, x5
    00585840b.eq 0x585848
    00585844b 0x585850
    00585848
    00585848loc_585848:
    00585848orr x0, xzr, 1
    0058584cb 0x585858
    00585850
    00585850loc_585850:
    00585850mov x0, xzr
    00585854b 0x585858
    00585858
    00585858loc_585858:
    00585858strb w0, [sp+54]
    0058585ctbnz w0, 0, 0x585864
    00585860b 0x5858e0
    00585864
    00585864loc_585864:
    00585864b 0x585868
    00585868
    00585868loc_585868:
    00585868ldr x4, [sp+520]
    0058586cldr x5, [x4]
    00585870ldr x6, [x4+8]
    00585874ldr x4, [x4+16]
    00585878str x5, [sp+216]
    0058587cstr x6, [sp+224]
    00585880str x4, [sp+232]
    00585884ldr x4, [sp+272]
    00585888ldrsb x27, [x4]
    0058588cldr x4, [x4+24]
    00585890str x4, [sp+152]
    00585894ldr x5, [sp+768]
    00585898str x5, [sp+144]
    0058589cadd x4, x4, x5
    005858a0ldr x5, [sp+792]
    005858a4str x5, [sp+136]
    005858a8add x4, x4, x5
    005858acadd x4, x4, 1
    005858b0str x4, [sp+80]
    005858b4ldr x4, [sp+224]
    005858b8ldr x5, [sp+216]
    005858bcldr x6, [sp+232]
    005858c0str x5, [sp+664]
    005858c4str x4, [sp+672]
    005858c8str x6, [sp+680]
    005858ccstr xzr, [sp+128]
    005858d0str x4, [sp+120]
    005858d4ldr x4, [sp+664]
    005858d8str x4, [sp+112]
    005858dcb 0x585de4
    005858e0
    005858e0loc_5858e0:
    005858e0b 0x5858e8
    005858e4
    005858e4loc_5858e4:
    005858e4b 0x5858e8
    005858e8
    005858e8loc_5858e8:
    005858e8b 0x5858ec
    005858ec
    005858ecloc_5858ec:
    005858ecb 0x5858f4
    005858f0
    005858f0loc_5858f0:
    005858f0b 0x5858f4
    005858f4
    005858f4loc_5858f4:
    005858f4ldr x1, [sp+328]
    005858f8ldr x3, [sp+344]
    005858fcb 0x585900
    00585900
    00585900loc_585900:
    00585900b 0x585904
    00585904
    00585904loc_585904:
    00585904str x1, [sp+688]
    00585908str xzr, [sp+696]
    0058590cstr x3, [sp+704]
    00585910ldr x0, [sp+264]
    00585914mov x2, xzr
    00585918bl crypto/internal/fips140/hmac.(*HMAC).Sum
    0058591cstr x0, [sp+328]
    00585920str x1, [sp+336]
    00585924str x2, [sp+344]
    00585928ldr x4, [sp+744]
    0058592cldrsb x27, [x4]
    00585930ldr x0, [x4+8]
    00585934str x0, [sp+496]
    00585938ldr x2, [sp+328]
    0058593cldr x1, [sp+752]
    00585940ldr x3, [sp+336]
    00585944ldr x4, [sp+344]
    00585948bl crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    0058594cstr x0, [sp+264]
    00585950ldr x4, [sp+272]
    00585954ldrsb x27, [x4]
    00585958ldr x1, [x4+16]
    0058595cldr x2, [x4+24]
    00585960ldr x3, [x4+32]
    00585964str x1, [sp+472]
    00585968str x2, [sp+480]
    0058596cstr x3, [sp+488]
    00585970ldr x0, [sp+264]
    00585974bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585978ldr x4, [sp+272]
    0058597cldrsb x27, [x4]
    00585980ldr x1, [x4+16]
    00585984ldr x3, [x4+32]
    00585988b 0x58598c
    0058598c
    0058598cloc_58598c:
    0058598cb 0x585990
    00585990
    00585990loc_585990:
    00585990str x1, [sp+688]
    00585994str xzr, [sp+696]
    00585998str x3, [sp+704]
    0058599cldr x0, [sp+264]
    005859a0mov x2, xzr
    005859a4bl crypto/internal/fips140/hmac.(*HMAC).Sum
    005859a8str x0, [sp+640]
    005859acstr x1, [sp+648]
    005859b0str x2, [sp+656]
    005859b4ldr x4, [sp+272]
    005859b8ldrsb x27, [x4]
    005859bcstr x1, [x4+24]
    005859c0str x2, [x4+32]
    005859c4adrp x27, 0x4c6000
    005859c8ldr w5, [x27+3056]
    005859cccbz w5, 0x5859d4
    005859d0b 0x5859d8
    005859d4
    005859d4loc_5859d4:
    005859d4b 0x5859ec
    005859d8
    005859d8loc_5859d8:
    005859d8bl runtime.gcWriteBarrier2
    005859dcstr x0, [x25]
    005859e0ldr x1, [x4+16]
    005859e4str x1, [x25+8]
    005859e8b 0x5859ec
    005859ec
    005859ecloc_5859ec:
    005859ecstr x0, [x4+16]
    005859f0ldr x0, [sp+264]
    005859f4bl crypto/internal/fips140/hmac.(*HMAC).Reset
    005859f8ldr x1, [sp+272]
    005859fcldrsb x27, [x1]
    00585a00ldr x2, [x1+16]
    00585a04ldr x3, [x1+24]
    00585a08ldr x1, [x1+32]
    00585a0cstr x2, [sp+448]
    00585a10str x3, [sp+456]
    00585a14str x1, [sp+464]
    00585a18ldr x0, [sp+264]
    00585a1cmov x4, x1
    00585a20mov x1, x2
    00585a24mov x2, x3
    00585a28mov x3, x4
    00585a2cbl crypto/internal/fips140/hmac.(*HMAC).Write
    00585a30adrp x0, 0x78000
    00585a34add x0, x0, 2432
    00585a38bl runtime.newobject
    00585a3cstr x0, [sp+416]
    00585a40orr x1, xzr, 1
    00585a44strb w1, [x0]
    00585a48ldr x1, [sp+416]
    00585a4cldrsb x27, [x1]
    00585a50b 0x585a54
    00585a54
    00585a54loc_585a54:
    00585a54str x1, [sp+424]
    00585a58orr x3, xzr, 1
    00585a5cstr x3, [sp+432]
    00585a60str x3, [sp+440]
    00585a64ldr x0, [sp+264]
    00585a68mov x2, x3
    00585a6cbl crypto/internal/fips140/hmac.(*HMAC).Write
    00585a70ldr x1, [sp+760]
    00585a74ldr x2, [sp+768]
    00585a78ldr x3, [sp+776]
    00585a7cldr x0, [sp+264]
    00585a80bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585a84ldr x1, [sp+784]
    00585a88ldr x2, [sp+792]
    00585a8cldr x3, [sp+800]
    00585a90ldr x0, [sp+264]
    00585a94bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585a98ldr x4, [sp+816]
    00585a9cldr x5, [sp+808]
    00585aa0str x5, [sp+400]
    00585aa4str x4, [sp+408]
    00585aa8cbnz x5, 0x585ab0
    00585aacb 0x585c04
    00585ab0
    00585ab0loc_585ab0:
    00585ab0ldr w4, [x5+16]
    00585ab4str w4, [sp+56]
    00585ab8movz x5, 18868
    00585abcmovk x5, 0x65c0000
    00585ac0subs wzr, w4, w5
    00585ac4b.eq 0x585acc
    00585ac8b 0x585b30
    00585acc
    00585accloc_585acc:
    00585accldr x4, [sp+400]
    00585ad0adrp x5, 0x191000
    00585ad4add x5, x5, 768
    00585ad8subs xzr, x4, x5
    00585adcb.eq 0x585ae4
    00585ae0b 0x585aec
    00585ae4
    00585ae4loc_585ae4:
    00585ae4orr x0, xzr, 1
    00585ae8b 0x585af4
    00585aec
    00585aecloc_585aec:
    00585aecmov x0, xzr
    00585af0b 0x585af4
    00585af4
    00585af4loc_585af4:
    00585af4strb w0, [sp+53]
    00585af8tbnz w0, 0, 0x585b00
    00585afcb 0x585b2c
    00585b00
    00585b00loc_585b00:
    00585b00b 0x585b04
    00585b04
    00585b04loc_585b04:
    00585b04ldr x4, [sp+408]
    00585b08ldr x1, [x4]
    00585b0cldr x2, [x4+8]
    00585b10ldr x3, [x4+16]
    00585b14str x1, [sp+192]
    00585b18str x2, [sp+200]
    00585b1cstr x3, [sp+208]
    00585b20ldr x0, [sp+264]
    00585b24bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585b28b 0x585c08
    00585b2c
    00585b2cloc_585b2c:
    00585b2cb 0x585c00
    00585b30
    00585b30loc_585b30:
    00585b30movz x5, 51315
    00585b34movk x5, 0x11760000
    00585b38subs wzr, w4, w5
    00585b3cb.eq 0x585b44
    00585b40b 0x585bf8
    00585b44
    00585b44loc_585b44:
    00585b44ldr x4, [sp+400]
    00585b48adrp x5, 0x191000
    00585b4cadd x5, x5, 800
    00585b50subs xzr, x4, x5
    00585b54b.eq 0x585b5c
    00585b58b 0x585b64
    00585b5c
    00585b5cloc_585b5c:
    00585b5corr x0, xzr, 1
    00585b60b 0x585b6c
    00585b64
    00585b64loc_585b64:
    00585b64mov x0, xzr
    00585b68b 0x585b6c
    00585b6c
    00585b6cloc_585b6c:
    00585b6cstrb w0, [sp+53]
    00585b70tbnz w0, 0, 0x585b78
    00585b74b 0x585bf4
    00585b78
    00585b78loc_585b78:
    00585b78b 0x585b7c
    00585b7c
    00585b7cloc_585b7c:
    00585b7cldr x4, [sp+408]
    00585b80ldr x5, [x4]
    00585b84ldr x6, [x4+8]
    00585b88ldr x4, [x4+16]
    00585b8cstr x5, [sp+168]
    00585b90str x6, [sp+176]
    00585b94str x4, [sp+184]
    00585b98ldr x4, [sp+272]
    00585b9cldrsb x27, [x4]
    00585ba0ldr x4, [x4+24]
    00585ba4str x4, [sp+136]
    00585ba8ldr x5, [sp+768]
    00585bacstr x5, [sp+144]
    00585bb0add x4, x4, x5
    00585bb4ldr x5, [sp+792]
    00585bb8str x5, [sp+152]
    00585bbcadd x4, x4, x5
    00585bc0add x4, x4, 1
    00585bc4str x4, [sp+72]
    00585bc8ldr x4, [sp+176]
    00585bccldr x5, [sp+168]
    00585bd0ldr x6, [sp+184]
    00585bd4str x5, [sp+664]
    00585bd8str x4, [sp+672]
    00585bdcstr x6, [sp+680]
    00585be0str xzr, [sp+104]
    00585be4str x4, [sp+96]
    00585be8ldr x4, [sp+664]
    00585becstr x4, [sp+88]
    00585bf0b 0x585d60
    00585bf4
    00585bf4loc_585bf4:
    00585bf4b 0x585bfc
    00585bf8
    00585bf8loc_585bf8:
    00585bf8b 0x585bfc
    00585bfc
    00585bfcloc_585bfc:
    00585bfcb 0x585c00
    00585c00
    00585c00loc_585c00:
    00585c00b 0x585c08
    00585c04
    00585c04loc_585c04:
    00585c04b 0x585c08
    00585c08
    00585c08loc_585c08:
    00585c08ldr x1, [sp+328]
    00585c0cldr x3, [sp+344]
    00585c10b 0x585c14
    00585c14
    00585c14loc_585c14:
    00585c14b 0x585c18
    00585c18
    00585c18loc_585c18:
    00585c18str x1, [sp+640]
    00585c1cstr xzr, [sp+648]
    00585c20str x3, [sp+656]
    00585c24ldr x0, [sp+264]
    00585c28mov x2, xzr
    00585c2cbl crypto/internal/fips140/hmac.(*HMAC).Sum
    00585c30str x0, [sp+328]
    00585c34str x1, [sp+336]
    00585c38str x2, [sp+344]
    00585c3cldr x4, [sp+744]
    00585c40ldrsb x27, [x4]
    00585c44ldr x0, [x4+8]
    00585c48str x0, [sp+384]
    00585c4cldr x2, [sp+328]
    00585c50ldr x1, [sp+752]
    00585c54ldr x3, [sp+336]
    00585c58ldr x4, [sp+344]
    00585c5cbl crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    00585c60str x0, [sp+264]
    00585c64ldr x4, [sp+272]
    00585c68ldrsb x27, [x4]
    00585c6cldr x1, [x4+16]
    00585c70ldr x2, [x4+24]
    00585c74ldr x3, [x4+32]
    00585c78str x1, [sp+360]
    00585c7cstr x2, [sp+368]
    00585c80str x3, [sp+376]
    00585c84ldr x0, [sp+264]
    00585c88bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585c8cldr x4, [sp+272]
    00585c90ldrsb x27, [x4]
    00585c94ldr x1, [x4+16]
    00585c98ldr x3, [x4+32]
    00585c9cb 0x585ca0
    00585ca0
    00585ca0loc_585ca0:
    00585ca0b 0x585ca4
    00585ca4
    00585ca4loc_585ca4:
    00585ca4str x1, [sp+640]
    00585ca8str xzr, [sp+648]
    00585cacstr x3, [sp+656]
    00585cb0ldr x0, [sp+264]
    00585cb4mov x2, xzr
    00585cb8bl crypto/internal/fips140/hmac.(*HMAC).Sum
    00585cbcstr x0, [sp+688]
    00585cc0str x1, [sp+696]
    00585cc4str x2, [sp+704]
    00585cc8ldr x4, [sp+272]
    00585cccldrsb x27, [x4]
    00585cd0str x1, [x4+24]
    00585cd4str x2, [x4+32]
    00585cd8adrp x27, 0x4c6000
    00585cdcldr w5, [x27+3056]
    00585ce0cbz w5, 0x585ce8
    00585ce4b 0x585cec
    00585ce8
    00585ce8loc_585ce8:
    00585ce8b 0x585d00
    00585cec
    00585cecloc_585cec:
    00585cecbl runtime.gcWriteBarrier2
    00585cf0str x0, [x25]
    00585cf4ldr x1, [x4+16]
    00585cf8str x1, [x25+8]
    00585cfcb 0x585d00
    00585d00
    00585d00loc_585d00:
    00585d00str x0, [x4+16]
    00585d04ldr x1, [sp+272]
    00585d08ldrsb x27, [x1]
    00585d0cldr x2, [sp+264]
    00585d10adrp x27, 0x4c6000
    00585d14ldr w3, [x27+3056]
    00585d18cbz w3, 0x585d20
    00585d1cb 0x585d24
    00585d20
    00585d20loc_585d20:
    00585d20b 0x585d38
    00585d24
    00585d24loc_585d24:
    00585d24bl runtime.gcWriteBarrier2
    00585d28str x2, [x25]
    00585d2cldr x3, [x1+8]
    00585d30str x3, [x25+8]
    00585d34b 0x585d38
    00585d38
    00585d38loc_585d38:
    00585d38str x2, [x1+8]
    00585d3cldr x1, [sp+272]
    00585d40ldrsb x27, [x1]
    00585d44orr x2, xzr, 1
    00585d48str x2, [x1+40]
    00585d4cldr x0, [sp+272]
    00585d50str x0, [sp+160]
    00585d54ldp x29, x30, [sp-8]
    00585d58add sp, sp, 736
    00585d5cret x30
    00585d60
    00585d60loc_585d60:
    00585d60ldr x4, [sp+96]
    00585d64ldr x5, [sp+104]
    00585d68subs xzr, x4, x5
    00585d6cb.gt 0x585d74
    00585d70b 0x585de0
    00585d74
    00585d74loc_585d74:
    00585d74ldr x2, [sp+88]
    00585d78str x2, [sp+392]
    00585d7cldr x2, [sp+392]
    00585d80ldr x3, [x2]
    00585d84ldr x4, [x2+8]
    00585d88ldr x2, [x2+16]
    00585d8cstr x3, [sp+280]
    00585d90str x4, [sp+288]
    00585d94str x2, [sp+296]
    00585d98ldr x1, [sp+72]
    00585d9cldr x0, [sp+264]
    00585da0bl crypto/internal/fips140/ecdsa.pad000
    00585da4ldr x1, [sp+280]
    00585da8ldr x2, [sp+288]
    00585dacldr x3, [sp+296]
    00585db0ldr x0, [sp+264]
    00585db4bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585db8ldr x2, [sp+288]
    00585dbcstr x2, [sp+72]
    00585dc0b 0x585dc4
    00585dc4
    00585dc4loc_585dc4:
    00585dc4ldr x4, [sp+104]
    00585dc8add x4, x4, 1
    00585dccstr x4, [sp+104]
    00585dd0ldr x4, [sp+392]
    00585dd4add x4, x4, 24
    00585dd8str x4, [sp+88]
    00585ddcb 0x585d60
    00585de0
    00585de0loc_585de0:
    00585de0b 0x585c08
    00585de4
    00585de4loc_585de4:
    00585de4ldr x4, [sp+120]
    00585de8ldr x5, [sp+128]
    00585decsubs xzr, x4, x5
    00585df0b.gt 0x585df8
    00585df4b 0x585e64
    00585df8
    00585df8loc_585df8:
    00585df8ldr x2, [sp+112]
    00585dfcstr x2, [sp+504]
    00585e00ldr x2, [sp+504]
    00585e04ldr x3, [x2]
    00585e08ldr x4, [x2+8]
    00585e0cldr x2, [x2+16]
    00585e10str x3, [sp+304]
    00585e14str x4, [sp+312]
    00585e18str x2, [sp+320]
    00585e1cldr x1, [sp+80]
    00585e20ldr x0, [sp+264]
    00585e24bl crypto/internal/fips140/ecdsa.pad000
    00585e28ldr x1, [sp+304]
    00585e2cldr x2, [sp+312]
    00585e30ldr x3, [sp+320]
    00585e34ldr x0, [sp+264]
    00585e38bl crypto/internal/fips140/hmac.(*HMAC).Write
    00585e3cldr x2, [sp+312]
    00585e40str x2, [sp+80]
    00585e44b 0x585e48
    00585e48
    00585e48loc_585e48:
    00585e48ldr x4, [sp+128]
    00585e4cadd x4, x4, 1
    00585e50str x4, [sp+128]
    00585e54ldr x4, [sp+504]
    00585e58add x4, x4, 24
    00585e5cstr x4, [sp+112]
    00585e60b 0x585de4
    00585e64
    00585e64loc_585e64:
    00585e64b 0x5858f4
    00585e68
    00585e68loc_585e68:
    00585e68stp x0, x1, [sp+8]
    00585e6cstp x2, x3, [sp+24]
    00585e70stp x4, x5, [sp+40]
    00585e74stp x6, x7, [sp+56]
    00585e78stp x8, x9, [sp+72]
    00585e7cmov x3, x30
    00585e80bl runtime.morestack_noctxt.abi0
    00585e84ldp x0, x1, [sp+8]
    00585e88ldp x2, x3, [sp+24]
    00585e8cldp x4, x5, [sp+40]
    00585e90ldp x6, x7, [sp+56]
    00585e94ldp x8, x9, [sp+72]
    00585e98b 0x585490
    00585e9cudf 0
    00585490
    00585ea0
    00585ea0crypto/internal/fips140/ecdsa.newDRBG[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1: ; void crypto/internal/fips140/ecdsa.newDRBG[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1(struct []uint8 key)
    00585ea0ldr x16, [x28+16]
    00585ea4subs xzr, sp, x16
    00585ea8b.ls 0x585f10
    00585eacstr x30, [sp-96]!
    00585eb0stur x29, [sp-8]
    00585eb4sub x29, sp, 8
    00585eb8str x0, [sp+104]
    00585ebcstr x1, [sp+112]
    00585ec0str x2, [sp+120]
    00585ec4ldr x5, [x26+8]
    00585ec8str x5, [sp+56]
    00585eccldr x5, [x26+16]
    00585ed0str x5, [sp+64]
    00585ed4str xzr, [sp+48]
    00585ed8ldr x5, [sp+64]
    00585edcldrsb x27, [x5]
    00585ee0ldr x0, [x5+8]
    00585ee4str x0, [sp+72]
    00585ee8ldr x2, [sp+104]
    00585eecldr x1, [sp+56]
    00585ef0ldr x3, [sp+112]
    00585ef4ldr x4, [sp+120]
    00585ef8bl crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    00585efcstr x0, [sp+80]
    00585f00str x0, [sp+48]
    00585f04ldur x29, [sp-8]
    00585f08ldr x30, [sp], 96
    00585f0cret x30
    00585f10
    00585f10loc_585f10:
    00585f10stp x0, x1, [sp+8]
    00585f14str x2, [sp+24]
    00585f18mov x3, x30
    00585f1cbl runtime.morestack.abi0
    00585f20ldp x0, x1, [sp+8]
    00585f24ldr x2, [sp+24]
    00585f28b 0x585ea0
    00585f2cudf 0
    00585ea0
    00585f30
    00585f30crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]: ; void crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }](uintptr[3] * dict, int64_t h, struct []uint8 key)
    00585f30ldr x16, [x28+16]
    00585f34sub x17, sp, 320
    00585f38subs xzr, x17, x16
    00585f3cb.ls 0x586538
    00585f40sub x20, sp, 448
    00585f44stp x29, x30, [x20-8]
    00585f48add sp, x20, 0
    00585f4csub x29, sp, 8
    00585f50str x0, [sp+456]
    00585f54str x1, [sp+464]
    00585f58str x2, [sp+472]
    00585f5cstr x3, [sp+480]
    00585f60str x4, [sp+488]
    00585f64str xzr, [sp+152]
    00585f68ldr x1, [sp+480]
    00585f6cstr x1, [sp+80]
    00585f70adrp x0, 0x102000
    00585f74add x0, x0, 640
    00585f78bl runtime.newobject
    00585f7cstr x0, [sp+376]
    00585f80adrp x27, 0x4c6000
    00585f84ldr w1, [x27+3056]
    00585f88cbz w1, 0x585f90
    00585f8cb 0x585f94
    00585f90
    00585f90loc_585f90:
    00585f90b 0x585fb0
    00585f94
    00585f94loc_585f94:
    00585f94str x0, [sp+176]
    00585f98mov x1, x0
    00585f9cadrp x0, 0x102000
    00585fa0add x0, x0, 640
    00585fa4bl runtime.wbZero
    00585fa8ldr x0, [sp+176]
    00585facb 0x585fb0
    00585fb0
    00585fb0loc_585fb0:
    00585fb0mov x20, x0
    00585fb4adr x27, 16
    00585fb8stp x29, x27, [sp-24]
    00585fbcsub x29, sp, 24
    00585fc0bl fn_87cf8
    00585fc4sub x29, sp, 8
    00585fc8ldr x0, [sp+376]
    00585fccldrsb x27, [x0]
    00585fd0ldr x1, [sp+80]
    00585fd4str x1, [x0+88]
    00585fd8ldr x0, [sp+376]
    00585fdcstr x0, [sp+160]
    00585fe0ldr x26, [sp+464]
    00585fe4ldr x0, [x26]
    00585fe8blr x0
    00585fecstr x0, [sp+424]
    00585ff0str x1, [sp+432]
    00585ff4str x0, [sp+360]
    00585ff8str x1, [sp+368]
    00585ffccbnz x0, 0x586004
    00586000b 0x586020
    00586004
    00586004loc_586004:
    00586004str x1, [sp+168]
    00586008ldr x1, [x0+8]
    0058600cadrp x0, 0x48b000
    00586010add x0, x0, 144
    00586014bl runtime.typeAssert
    00586018ldr x1, [sp+168]
    0058601cb 0x586024
    00586020
    00586020loc_586020:
    00586020b 0x586024
    00586024
    00586024loc_586024:
    00586024str x0, [sp+344]
    00586028str x1, [sp+352]
    0058602cldr x2, [sp+160]
    00586030ldrsb x27, [x2]
    00586034str x0, [x2+48]
    00586038adrp x27, 0x4c5000
    0058603cldr w0, [x27+3056]
    00586040cbz w0, 0x586048
    00586044b 0x58604c
    00586048
    00586048loc_586048:
    00586048b 0x586060
    0058604c
    0058604cloc_58604c:
    0058604cbl runtime.gcWriteBarrier2
    00586050str x1, [x25]
    00586054ldr x0, [x2+56]
    00586058str x0, [x25+8]
    0058605cb 0x586060
    00586060
    00586060loc_586060:
    00586060str x1, [x2+56]
    00586064ldr x26, [sp+464]
    00586068ldr x0, [x26]
    0058606cblr x0
    00586070str x0, [sp+424]
    00586074str x1, [sp+432]
    00586078str x0, [sp+328]
    0058607cstr x1, [sp+336]
    00586080cbnz x0, 0x586088
    00586084b 0x5860a4
    00586088
    00586088loc_586088:
    00586088str x1, [sp+168]
    0058608cldr x1, [x0+8]
    00586090adrp x0, 0x48b000
    00586094add x0, x0, 176
    00586098bl runtime.typeAssert
    0058609cldr x1, [sp+168]
    005860a0b 0x5860a8
    005860a4
    005860a4loc_5860a4:
    005860a4b 0x5860a8
    005860a8
    005860a8loc_5860a8:
    005860a8str x0, [sp+312]
    005860acstr x1, [sp+320]
    005860b0ldr x3, [sp+160]
    005860b4ldrsb x27, [x3]
    005860b8str x0, [x3+64]
    005860bcadrp x27, 0x4c5000
    005860c0ldr w4, [x27+3056]
    005860c4cbz w4, 0x5860cc
    005860c8b 0x5860d0
    005860cc
    005860ccloc_5860cc:
    005860ccb 0x5860e4
    005860d0
    005860d0loc_5860d0:
    005860d0bl runtime.gcWriteBarrier2
    005860d4str x1, [x25]
    005860d8ldr x4, [x3+72]
    005860dcstr x4, [x25+8]
    005860e0b 0x5860e4
    005860e4
    005860e4loc_5860e4:
    005860e4str x1, [x3+72]
    005860e8orr x3, xzr, 1
    005860ecstrb w3, [sp+55]
    005860f0ldr x2, [sp+456]
    005860f4ldr x0, [sp+160]
    005860f8add x1, sp, 55
    005860fcbl crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1
    00586100ldrb w3, [sp+55]
    00586104tbnz w3, 0, 0x58610c
    00586108b 0x586508
    0058610c
    0058610cloc_58610c:
    0058610cldr x1, [sp+160]
    00586110ldrsb x27, [x1]
    00586114ldr x2, [x1+64]
    00586118ldrsb x27, [x2]
    0058611cldr x0, [x1+72]
    00586120ldr x1, [x2+24]
    00586124blr x1
    00586128str x0, [sp+72]
    0058612cmov x1, x0
    00586130mov x2, x1
    00586134adrp x0, 0x6f000
    00586138add x0, x0, 3072
    0058613cbl runtime.makeslice
    00586140ldr x1, [sp+72]
    00586144ldr x2, [sp+72]
    00586148str x0, [sp+384]
    0058614cstr x1, [sp+392]
    00586150str x2, [sp+400]
    00586154ldr x3, [sp+160]
    00586158ldrsb x27, [x3]
    0058615cstr x1, [x3+32]
    00586160str x2, [x3+40]
    00586164adrp x27, 0x4c5000
    00586168ldr w1, [x27+3056]
    0058616ccbz w1, 0x586174
    00586170b 0x586178
    00586174
    00586174loc_586174:
    00586174b 0x58618c
    00586178
    00586178loc_586178:
    00586178bl runtime.gcWriteBarrier2
    0058617cstr x0, [x25]
    00586180ldr x4, [x3+24]
    00586184str x4, [x25+8]
    00586188b 0x58618c
    0058618c
    0058618cloc_58618c:
    0058618cstr x0, [x3+24]
    00586190ldr x2, [sp+72]
    00586194ldr x1, [sp+72]
    00586198adrp x0, 0x6f000
    0058619cadd x0, x0, 3072
    005861a0bl runtime.makeslice
    005861a4ldr x3, [sp+72]
    005861a8ldr x4, [sp+72]
    005861acstr x0, [sp+384]
    005861b0str x3, [sp+392]
    005861b4str x4, [sp+400]
    005861b8ldr x5, [sp+160]
    005861bcldrsb x27, [x5]
    005861c0str x3, [x5+8]
    005861c4str x4, [x5+16]
    005861c8adrp x27, 0x4c5000
    005861ccldr w3, [x27+3056]
    005861d0cbz w3, 0x5861d8
    005861d4b 0x5861dc
    005861d8
    005861d8loc_5861d8:
    005861d8b 0x5861f0
    005861dc
    005861dcloc_5861dc:
    005861dcbl runtime.gcWriteBarrier2
    005861e0str x0, [x25]
    005861e4ldr x4, [x5]
    005861e8str x4, [x25+8]
    005861ecb 0x5861f0
    005861f0
    005861f0loc_5861f0:
    005861f0str x0, [x5]
    005861f4ldr x4, [sp+480]
    005861f8str x4, [sp+80]
    005861fcldr x5, [sp+72]
    00586200subs xzr, x5, x4
    00586204b.lt 0x58620c
    00586208b 0x58626c
    0058620c
    0058620cloc_58620c:
    0058620cldr x4, [sp+160]
    00586210ldrsb x27, [x4]
    00586214ldr x5, [x4+48]
    00586218ldrsb x27, [x5]
    0058621cldr x0, [x4+56]
    00586220ldr x1, [sp+472]
    00586224ldr x2, [sp+480]
    00586228ldr x3, [sp+488]
    0058622cldr x4, [x5+56]
    00586230blr x4
    00586234ldr x4, [sp+160]
    00586238ldrsb x27, [x4]
    0058623cldr x5, [x4+48]
    00586240ldrsb x27, [x5]
    00586244ldr x0, [x4+56]
    00586248ldr x4, [x5+48]
    0058624cmov x1, xzr
    00586250mov x2, xzr
    00586254mov x3, x2
    00586258blr x4
    0058625cstr x0, [sp+472]
    00586260str x1, [sp+480]
    00586264str x2, [sp+488]
    00586268b 0x586270
    0058626c
    0058626cloc_58626c:
    0058626cb 0x586270
    00586270
    00586270loc_586270:
    00586270ldr x4, [sp+160]
    00586274ldrsb x27, [x4]
    00586278ldr x5, [x4+24]
    0058627cldr x6, [x4+32]
    00586280ldr x4, [x4+40]
    00586284str x5, [sp+280]
    00586288str x6, [sp+288]
    0058628cstr x4, [sp+296]
    00586290ldr x4, [sp+480]
    00586294ldr x5, [sp+472]
    00586298ldr x6, [sp+488]
    0058629cstr x5, [sp+256]
    005862a0str x4, [sp+264]
    005862a4str x6, [sp+272]
    005862a8ldr x5, [sp+288]
    005862acstr x5, [sp+144]
    005862b0subs xzr, x4, x5
    005862b4b.lt 0x5862bc
    005862b8b 0x5862c4
    005862bc
    005862bcloc_5862bc:
    005862bcstr x4, [sp+144]
    005862c0b 0x5862c8
    005862c4
    005862c4loc_5862c4:
    005862c4b 0x5862c8
    005862c8
    005862c8loc_5862c8:
    005862c8ldr x4, [sp+256]
    005862ccldr x5, [sp+280]
    005862d0subs xzr, x4, x5
    005862d4b.ne 0x5862dc
    005862d8b 0x5862f8
    005862dc
    005862dcloc_5862dc:
    005862dcldr x3, [sp+144]
    005862e0str x3, [sp+136]
    005862e4ldr x2, [sp+136]
    005862e8ldr x1, [sp+256]
    005862ecldr x0, [sp+280]
    005862f0bl runtime.memmove
    005862f4b 0x5862fc
    005862f8
    005862f8loc_5862f8:
    005862f8b 0x5862fc
    005862fc
    005862fcloc_5862fc:
    005862fcldr x4, [sp+160]
    00586300ldrsb x27, [x4]
    00586304ldr x5, [x4]
    00586308ldr x6, [x4+8]
    0058630cldr x4, [x4+16]
    00586310str x5, [sp+232]
    00586314str x6, [sp+240]
    00586318str x4, [sp+248]
    0058631cldr x4, [sp+480]
    00586320ldr x5, [sp+472]
    00586324ldr x6, [sp+488]
    00586328str x5, [sp+208]
    0058632cstr x4, [sp+216]
    00586330str x6, [sp+224]
    00586334ldr x5, [sp+240]
    00586338str x5, [sp+128]
    0058633csubs xzr, x5, x4
    00586340b.gt 0x586348
    00586344b 0x586350
    00586348
    00586348loc_586348:
    00586348str x4, [sp+128]
    0058634cb 0x586354
    00586350
    00586350loc_586350:
    00586350b 0x586354
    00586354
    00586354loc_586354:
    00586354ldr x4, [sp+208]
    00586358ldr x5, [sp+232]
    0058635csubs xzr, x4, x5
    00586360b.ne 0x586368
    00586364b 0x586384
    00586368
    00586368loc_586368:
    00586368ldr x3, [sp+128]
    0058636cstr x3, [sp+120]
    00586370ldr x2, [sp+120]
    00586374ldr x1, [sp+208]
    00586378ldr x0, [sp+232]
    0058637cbl runtime.memmove
    00586380b 0x586388
    00586384
    00586384loc_586384:
    00586384b 0x586388
    00586388
    00586388loc_586388:
    00586388str xzr, [sp+112]
    0058638cldr x4, [sp+160]
    00586390ldrsb x27, [x4]
    00586394ldr x4, [x4+32]
    00586398str x4, [sp+104]
    0058639cb 0x5863a0
    005863a0
    005863a0loc_5863a0:
    005863a0ldr x4, [sp+104]
    005863a4ldr x5, [sp+112]
    005863a8subs xzr, x4, x5
    005863acb.gt 0x5863b4
    005863b0b 0x586418
    005863b4
    005863b4loc_5863b4:
    005863b4ldr x0, [sp+112]
    005863b8str x0, [sp+64]
    005863bcldr x4, [sp+160]
    005863c0ldrsb x27, [x4]
    005863c4ldr x1, [x4+32]
    005863c8ldr x4, [x4+24]
    005863ccsubs xzr, x1, x0
    005863d0b.hi 0x5863d8
    005863d4b 0x586504
    005863d8
    005863d8loc_5863d8:
    005863d8ldr x5, [sp+160]
    005863dcldrsb x27, [x5]
    005863e0ldr x1, [x5+32]
    005863e4ldr x5, [x5+24]
    005863e8ldrb w4, [x4+x0]
    005863ecmovz x6, 54
    005863f0eor x4, x4, x6
    005863f4subs xzr, x1, x0
    005863f8b.hi 0x586400
    005863fcb 0x586500
    00586400
    00586400loc_586400:
    00586400strb w4, [x5+x0]
    00586404b 0x586408
    00586408
    00586408loc_586408:
    00586408ldr x4, [sp+112]
    0058640cadd x4, x4, 1
    00586410str x4, [sp+112]
    00586414b 0x5863a0
    00586418
    00586418loc_586418:
    00586418str xzr, [sp+96]
    0058641cldr x4, [sp+160]
    00586420ldrsb x27, [x4]
    00586424ldr x4, [x4+8]
    00586428str x4, [sp+88]
    0058642cb 0x586430
    00586430
    00586430loc_586430:
    00586430ldr x4, [sp+88]
    00586434ldr x5, [sp+96]
    00586438subs xzr, x4, x5
    0058643cb.gt 0x586444
    00586440b 0x5864a8
    00586444
    00586444loc_586444:
    00586444ldr x0, [sp+96]
    00586448str x0, [sp+56]
    0058644cldr x4, [sp+160]
    00586450ldrsb x27, [x4]
    00586454ldr x1, [x4+8]
    00586458ldr x4, [x4]
    0058645csubs xzr, x1, x0
    00586460b.hi 0x586468
    00586464b 0x5864fc
    00586468
    00586468loc_586468:
    00586468ldr x5, [sp+160]
    0058646cldrsb x27, [x5]
    00586470ldr x1, [x5+8]
    00586474ldr x5, [x5]
    00586478ldrb w4, [x4+x0]
    0058647cmovz x6, 92
    00586480eor x4, x4, x6
    00586484subs xzr, x1, x0
    00586488b.hi 0x586490
    0058648cb 0x5864f8
    00586490
    00586490loc_586490:
    00586490strb w4, [x5+x0]
    00586494b 0x586498
    00586498
    00586498loc_586498:
    00586498ldr x4, [sp+96]
    0058649cadd x4, x4, 1
    005864a0str x4, [sp+96]
    005864a4b 0x586430
    005864a8
    005864a8loc_5864a8:
    005864a8ldr x4, [sp+160]
    005864acldrsb x27, [x4]
    005864b0ldr x1, [x4+24]
    005864b4ldr x2, [x4+32]
    005864b8ldr x3, [x4+40]
    005864bcstr x1, [sp+184]
    005864c0str x2, [sp+192]
    005864c4str x3, [sp+200]
    005864c8ldr x4, [sp+160]
    005864ccldrsb x27, [x4]
    005864d0ldr x5, [x4+64]
    005864d4ldrsb x27, [x5]
    005864d8ldr x0, [x4+72]
    005864dcldr x4, [x5+56]
    005864e0blr x4
    005864e4ldr x0, [sp+160]
    005864e8str x0, [sp+152]
    005864ecldp x29, x30, [sp-8]
    005864f0add sp, sp, 448
    005864f4ret x30
    005864f8
    005864f8loc_5864f8:
    005864f8bl runtime.panicIndex
    005864fc
    005864fcloc_5864fc:
    005864fcbl runtime.panicIndex
    00586500
    00586500loc_586500:
    00586500bl runtime.panicIndex
    00586504
    00586504loc_586504:
    00586504bl runtime.panicIndex
    00586508
    00586508loc_586508:
    00586508adrp x0, 0x148000
    0058650cadd x0, x0, 719
    00586510str x0, [sp+408]
    00586514movz x1, 68
    00586518str x1, [sp+416]
    0058651cbl runtime.convTstring
    00586520str x0, [sp+304]
    00586524mov x1, x0
    00586528adrp x0, 0x6f000
    0058652cadd x0, x0, 2944
    00586530bl runtime.gopanic
    00586534hint
    00586538
    00586538loc_586538:
    00586538stp x0, x1, [sp+8]
    0058653cstp x2, x3, [sp+24]
    00586540str x4, [sp+40]
    00586544mov x3, x30
    00586548bl runtime.morestack_noctxt.abi0
    0058654cldp x0, x1, [sp+8]
    00586550ldp x2, x3, [sp+24]
    00586554ldr x4, [sp+40]
    00586558b 0x585f30
    0058655cudf 0
    00585f30
    00586560
    00586560crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1: ; void crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1(crypto/internal/fips140/hmac.HMAC * hm, bool * unique, uintptr[3] * dict)
    00586560ldr x16, [x28+16]
    00586564sub x17, sp, 16
    00586568subs xzr, x17, x16
    0058656cb.ls 0x586674
    00586570str x30, [sp-144]!
    00586574stur x29, [sp-8]
    00586578sub x29, sp, 8
    0058657cstr x0, [sp+152]
    00586580str x1, [sp+160]
    00586584str x2, [sp+168]
    00586588stp xzr, xzr, [sp+112]
    0058658cadd x1, sp, 112
    00586590str x1, [sp+128]
    00586594ldrsb x27, [x1]
    00586598adrp x2, 0
    0058659cadd x2, x2, 1680
    005865a0str x2, [x1]
    005865a4ldrsb x27, [x1]
    005865a8ldr x2, [sp+168]
    005865acadrp x27, 0x4c5000
    005865b0ldr w3, [x27+3056]
    005865b4cbz w3, 0x5865bc
    005865b8b 0x5865c0
    005865bc
    005865bcloc_5865bc:
    005865bcb 0x5865d4
    005865c0
    005865c0loc_5865c0:
    005865c0bl runtime.gcWriteBarrier2
    005865c4str x2, [x25]
    005865c8ldr x3, [x1+8]
    005865ccstr x3, [x25+8]
    005865d0b 0x5865d4
    005865d4
    005865d4loc_5865d4:
    005865d4str x2, [x1+8]
    005865d8str x1, [sp+56]
    005865dcadd x0, sp, 32
    005865e0bl runtime.deferprocStack
    005865e4subs xzr, x0, 0
    005865e8b.ne 0x586664
    005865ecb 0x5865f0
    005865f0
    005865f0loc_5865f0:
    005865f0ldr x3, [sp+152]
    005865f4ldrsb x27, [x3]
    005865f8ldr x4, [x3+64]
    005865fcldr x3, [x3+72]
    00586600str x4, [sp+96]
    00586604str x3, [sp+104]
    00586608ldr x3, [sp+152]
    0058660cldrsb x27, [x3]
    00586610ldr x0, [x3+48]
    00586614ldr x1, [x3+56]
    00586618str x0, [sp+80]
    0058661cstr x1, [sp+88]
    00586620ldr x3, [sp+96]
    00586624subs xzr, x0, x3
    00586628b.eq 0x586630
    0058662cb 0x586650
    00586630
    00586630loc_586630:
    00586630ldr x2, [sp+104]
    00586634bl runtime.ifaceeq
    00586638tbnz w0, 0, 0x586640
    0058663cb 0x58664c
    00586640
    00586640loc_586640:
    00586640ldr x0, [sp+160]
    00586644strb wzr, [x0]
    00586648b 0x586654
    0058664c
    0058664cloc_58664c:
    0058664cb 0x586654
    00586650
    00586650loc_586650:
    00586650b 0x586654
    00586654
    00586654loc_586654:
    00586654bl runtime.deferreturn
    00586658ldur x29, [sp-8]
    0058665cldr x30, [sp], 144
    00586660ret x30
    00586664
    00586664loc_586664:
    00586664bl runtime.deferreturn
    00586668ldur x29, [sp-8]
    0058666cldr x30, [sp], 144
    00586670ret x30
    00586674
    00586674loc_586674:
    00586674stp x0, x1, [sp+8]
    00586678str x2, [sp+24]
    0058667cmov x3, x30
    00586680bl runtime.morestack_noctxt.abi0
    00586684ldp x0, x1, [sp+8]
    00586688ldr x2, [sp+24]
    0058668cb 0x586560
    00586560
    00586690
    00586690crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1.1: ; void crypto/internal/fips140/hmac.New[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1.1(void)
    00586690ldr x16, [x28+16]
    00586694subs xzr, sp, x16
    00586698b.ls 0x5866c8
    0058669cstr x30, [sp-32]!
    005866a0stur x29, [sp-8]
    005866a4sub x29, sp, 8
    005866a8ldr x1, [x26+8]
    005866acstr x1, [sp+16]
    005866b0add x1, sp, 32
    005866b4add x0, x1, 8
    005866b8bl runtime.gorecover
    005866bcldur x29, [sp-8]
    005866c0ldr x30, [sp], 32
    005866c4ret x30
    005866c8
    005866c8loc_5866c8:
    005866c8mov x3, x30
    005866ccbl runtime.morestack.abi0
    005866d0b 0x586690
    005866d4udf 0
    005866d8udf 0
    005866dcudf 0
    00586690
    005866e0
    005866e0crypto/internal/fips140/ecdsa.bits2octets[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/internal/fips140/ecdsa.bits2octets[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, struct []uint8 hash)
    005866e0ldr x16, [x28+16]
    005866e4sub x17, sp, 16
    005866e8subs xzr, x17, x16
    005866ecb.ls 0x586784
    005866f0str x30, [sp-144]!
    005866f4stur x29, [sp-8]
    005866f8sub x29, sp, 8
    005866fcstr x0, [sp+152]
    00586700str x1, [sp+160]
    00586704str x2, [sp+168]
    00586708str x3, [sp+176]
    0058670cstr x4, [sp+184]
    00586710str xzr, [sp+64]
    00586714stp xzr, xzr, [sp+72]
    00586718bl crypto/internal/fips140/bigmod.NewNat
    0058671cstr x0, [sp+88]
    00586720ldr x0, [sp+152]
    00586724ldrsb x27, [x0]
    00586728ldr x0, [x0]
    0058672cstr x0, [sp+104]
    00586730ldr x3, [sp+168]
    00586734ldr x2, [sp+88]
    00586738ldr x1, [sp+160]
    0058673cldr x4, [sp+176]
    00586740ldr x5, [sp+184]
    00586744bl crypto/internal/fips140/ecdsa.hashToNat[go.shape.*crypto/internal/fips140/nistec.P256Point]
    00586748ldr x0, [sp+160]
    0058674cldrsb x27, [x0]
    00586750ldr x1, [x0+32]
    00586754str x1, [sp+96]
    00586758ldr x0, [sp+88]
    0058675cbl crypto/internal/fips140/bigmod.(*Nat).Bytes
    00586760str x0, [sp+112]
    00586764str x1, [sp+120]
    00586768str x2, [sp+128]
    0058676cstr x0, [sp+64]
    00586770str x1, [sp+72]
    00586774str x2, [sp+80]
    00586778ldur x29, [sp-8]
    0058677cldr x30, [sp], 144
    00586780ret x30
    00586784
    00586784loc_586784:
    00586784stp x0, x1, [sp+8]
    00586788stp x2, x3, [sp+24]
    0058678cstr x4, [sp+40]
    00586790mov x3, x30
    00586794bl runtime.morestack_noctxt.abi0
    00586798ldp x0, x1, [sp+8]
    0058679cldp x2, x3, [sp+24]
    005867a0ldr x4, [sp+40]
    005867a4b 0x5866e0
    005867a8udf 0
    005867acudf 0
    005866e0
    005867b0
    005867b0crypto/internal/fips140/ecdsa.hashToNat[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/internal/fips140/ecdsa.hashToNat[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[1] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto/internal/fips140/bigmod.Nat * e, struct []uint8 hash)
    005867b0ldr x16, [x28+16]
    005867b4sub x17, sp, 80
    005867b8subs xzr, x17, x16
    005867bcb.ls 0x586930
    005867c0str x30, [sp-208]!
    005867c4stur x29, [sp-8]
    005867c8sub x29, sp, 8
    005867ccstr x0, [sp+216]
    005867d0str x1, [sp+224]
    005867d4str x2, [sp+232]
    005867d8str x3, [sp+240]
    005867dcstr x4, [sp+248]
    005867e0str x5, [sp+256]
    005867e4ldr x1, [sp+224]
    005867e8ldrsb x27, [x1]
    005867ecldr x0, [x1+32]
    005867f0str x0, [sp+152]
    005867f4bl crypto/internal/fips140/bigmod.(*Modulus).Size
    005867f8str x0, [sp+56]
    005867fcldr x1, [sp+248]
    00586800str x1, [sp+72]
    00586804subs xzr, x0, x1
    00586808b.le 0x586810
    0058680cb 0x586888
    00586810
    00586810loc_586810:
    00586810ldr x2, [sp+256]
    00586814subs xzr, x0, x2
    00586818b.ls 0x586820
    0058681cb 0x586924
    00586820
    00586820loc_586820:
    00586820b 0x586824
    00586824
    00586824loc_586824:
    00586824str x0, [sp+248]
    00586828str x0, [sp+72]
    0058682cldr x1, [sp+224]
    00586830ldrsb x27, [x1]
    00586834ldr x0, [x1+32]
    00586838str x0, [sp+144]
    0058683cbl crypto/internal/fips140/bigmod.(*Modulus).BitLen
    00586840str x0, [sp+80]
    00586844ldr x1, [sp+72]
    00586848ubfm x1, x1, 61, 60
    0058684csub x3, x1, x0
    00586850str x3, [sp+64]
    00586854subs xzr, x3, 0
    00586858b.gt 0x586860
    0058685cb 0x586880
    00586860
    00586860loc_586860:
    00586860ldr x0, [sp+240]
    00586864ldr x1, [sp+248]
    00586868ldr x2, [sp+256]
    0058686cbl crypto/internal/fips140/ecdsa.rightShift
    00586870str x0, [sp+240]
    00586874str x1, [sp+248]
    00586878str x2, [sp+256]
    0058687cb 0x586884
    00586880
    00586880loc_586880:
    00586880b 0x586884
    00586884
    00586884loc_586884:
    00586884b 0x58688c
    00586888
    00586888loc_586888:
    00586888b 0x58688c
    0058688c
    0058688cloc_58688c:
    0058688cstr xzr, [sp+192]
    00586890stp xzr, xzr, [sp+176]
    00586894ldr x5, [sp+224]
    00586898ldrsb x27, [x5]
    0058689cldr x4, [x5+32]
    005868a0str x4, [sp+136]
    005868a4ldr x1, [sp+240]
    005868a8ldr x0, [sp+232]
    005868acldr x2, [sp+248]
    005868b0ldr x3, [sp+256]
    005868b4bl crypto/internal/fips140/bigmod.(*Nat).SetOverflowingBytes
    005868b8str x0, [sp+192]
    005868bcstr x1, [sp+176]
    005868c0str x2, [sp+184]
    005868c4ldr x5, [sp+192]
    005868c8str x5, [sp+120]
    005868ccldr x5, [sp+184]
    005868d0ldr x6, [sp+176]
    005868d4str x6, [sp+104]
    005868d8str x5, [sp+112]
    005868dcstr x6, [sp+88]
    005868e0str x5, [sp+96]
    005868e4cbnz x6, 0x5868f8
    005868e8b 0x5868ec
    005868ec
    005868ecloc_5868ec:
    005868ecldur x29, [sp-8]
    005868f0ldr x30, [sp], 208
    005868f4ret x30
    005868f8
    005868f8loc_5868f8:
    005868f8adrp x0, 0x143000
    005868fcadd x0, x0, 515
    00586900str x0, [sp+160]
    00586904movz x1, 49
    00586908str x1, [sp+168]
    0058690cbl runtime.convTstring
    00586910str x0, [sp+128]
    00586914mov x1, x0
    00586918adrp x0, 0x6f000
    0058691cadd x0, x0, 2944
    00586920bl runtime.gopanic
    00586924
    00586924loc_586924:
    00586924mov x1, x0
    00586928bl runtime.panicSliceAcap
    0058692chint
    00586930
    00586930loc_586930:
    00586930stp x0, x1, [sp+8]
    00586934stp x2, x3, [sp+24]
    00586938stp x4, x5, [sp+40]
    0058693cmov x3, x30
    00586940bl runtime.morestack_noctxt.abi0
    00586944ldp x0, x1, [sp+8]
    00586948ldp x2, x3, [sp+24]
    0058694cldp x4, x5, [sp+40]
    00586950b 0x5867b0
    00586954udf 0
    00586958udf 0
    0058695cudf 0
    005867b0
    00586960
    00586960crypto/internal/fips140/ecdsa.verify[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/internal/fips140/ecdsa.verify[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto/internal/fips140/ecdsa.PublicKey * pub, struct []uint8 hash, crypto/internal/fips140/ecdsa.Signature * sig)
    00586960ldr x16, [x28+16]
    00586964subs xzr, sp, x16
    00586968b.ls 0x5869e0
    0058696cstr x30, [sp-112]!
    00586970stur x29, [sp-8]
    00586974sub x29, sp, 8
    00586978str x0, [sp+120]
    0058697cstr x1, [sp+128]
    00586980str x2, [sp+136]
    00586984str x3, [sp+144]
    00586988str x4, [sp+152]
    0058698cstr x5, [sp+160]
    00586990str x6, [sp+168]
    00586994stp xzr, xzr, [sp+64]
    00586998ldr x7, [sp+120]
    0058699cldrsb x27, [x7]
    005869a0ldr x0, [x7]
    005869a4str x0, [sp+80]
    005869a8ldr x3, [sp+144]
    005869acldr x2, [sp+136]
    005869b0ldr x6, [sp+168]
    005869b4ldr x1, [sp+128]
    005869b8ldr x4, [sp+152]
    005869bcldr x5, [sp+160]
    005869c0bl crypto/internal/fips140/ecdsa.verifyGeneric[go.shape.*crypto/internal/fips140/nistec.P256Point]
    005869c4str x0, [sp+88]
    005869c8str x1, [sp+96]
    005869ccstr x0, [sp+64]
    005869d0str x1, [sp+72]
    005869d4ldur x29, [sp-8]
    005869d8ldr x30, [sp], 112
    005869dcret x30
    005869e0
    005869e0loc_5869e0:
    005869e0stp x0, x1, [sp+8]
    005869e4stp x2, x3, [sp+24]
    005869e8stp x4, x5, [sp+40]
    005869ecstr x6, [sp+56]
    005869f0mov x3, x30
    005869f4bl runtime.morestack_noctxt.abi0
    005869f8ldp x0, x1, [sp+8]
    005869fcldp x2, x3, [sp+24]
    00586a00ldp x4, x5, [sp+40]
    00586a04ldr x6, [sp+56]
    00586a08b 0x586960
    00586a0cudf 0
    00586960
    00586a10
    00586a10crypto/internal/fips140/ecdsa.verifyGeneric[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/internal/fips140/ecdsa.verifyGeneric[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[9] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto/internal/fips140/ecdsa.PublicKey * pub, struct []uint8 hash, crypto/internal/fips140/ecdsa.Signature * sig)
    00586a10ldr x16, [x28+16]
    00586a14sub x17, sp, 464
    00586a18subs xzr, x17, x16
    00586a1cb.ls 0x5870b0
    00586a20sub x20, sp, 592
    00586a24stp x29, x30, [x20-8]
    00586a28add sp, x20, 0
    00586a2csub x29, sp, 8
    00586a30str x0, [sp+600]
    00586a34str x1, [sp+608]
    00586a38str x2, [sp+616]
    00586a3cstr x3, [sp+624]
    00586a40str x4, [sp+632]
    00586a44str x5, [sp+640]
    00586a48str x6, [sp+648]
    00586a4cstp xzr, xzr, [sp+64]
    00586a50ldr x0, [sp+608]
    00586a54ldrsb x27, [x0]
    00586a58ldr x26, [x0+16]
    00586a5cldr x0, [x26]
    00586a60blr x0
    00586a64str x0, [sp+416]
    00586a68str xzr, [sp+408]
    00586a6cstp xzr, xzr, [sp+392]
    00586a70ldr x0, [sp+616]
    00586a74ldrsb x27, [x0]
    00586a78ldr x1, [x0+16]
    00586a7cldr x2, [x0+24]
    00586a80ldr x3, [x0+32]
    00586a84str x1, [sp+328]
    00586a88str x2, [sp+336]
    00586a8cstr x3, [sp+344]
    00586a90ldr x26, [sp+600]
    00586a94ldrsb x27, [x26]
    00586a98ldr x0, [x26]
    00586a9cldr x4, [sp+416]
    00586aa0mov x5, x0
    00586aa4mov x0, x4
    00586aa8blr x5
    00586aacstr x0, [sp+408]
    00586ab0str x1, [sp+392]
    00586ab4str x2, [sp+400]
    00586ab8ldr x0, [sp+408]
    00586abcstr x0, [sp+200]
    00586ac0ldr x0, [sp+392]
    00586ac4ldr x1, [sp+400]
    00586ac8str x0, [sp+184]
    00586accstr x1, [sp+192]
    00586ad0ldr x0, [sp+200]
    00586ad4str x0, [sp+176]
    00586ad8ldr x1, [sp+192]
    00586adcldr x0, [sp+184]
    00586ae0str x0, [sp+128]
    00586ae4str x1, [sp+136]
    00586ae8cbnz x0, 0x586af0
    00586aecb 0x586b04
    00586af0
    00586af0loc_586af0:
    00586af0str x0, [sp+64]
    00586af4str x1, [sp+72]
    00586af8ldp x29, x30, [sp-8]
    00586afcadd sp, sp, 592
    00586b00ret x30
    00586b04
    00586b04loc_586b04:
    00586b04bl crypto/internal/fips140/bigmod.NewNat
    00586b08str x0, [sp+384]
    00586b0cstr xzr, [sp+376]
    00586b10stp xzr, xzr, [sp+392]
    00586b14ldr x0, [sp+648]
    00586b18ldrsb x27, [x0]
    00586b1cldr x1, [x0]
    00586b20ldr x2, [x0+8]
    00586b24ldr x0, [x0+16]
    00586b28str x1, [sp+304]
    00586b2cstr x2, [sp+312]
    00586b30str x0, [sp+320]
    00586b34ldr x0, [sp+608]
    00586b38ldrsb x27, [x0]
    00586b3cldr x4, [x0+32]
    00586b40str x4, [sp+296]
    00586b44ldr x1, [sp+304]
    00586b48ldr x2, [sp+312]
    00586b4cldr x3, [sp+320]
    00586b50ldr x0, [sp+384]
    00586b54bl crypto/internal/fips140/bigmod.(*Nat).SetBytes
    00586b58str x0, [sp+376]
    00586b5cstr x1, [sp+392]
    00586b60str x2, [sp+400]
    00586b64ldr x0, [sp+376]
    00586b68str x0, [sp+576]
    00586b6cldr x0, [sp+392]
    00586b70ldr x1, [sp+400]
    00586b74str x0, [sp+560]
    00586b78str x1, [sp+568]
    00586b7cldr x0, [sp+576]
    00586b80str x0, [sp+104]
    00586b84ldr x1, [sp+568]
    00586b88ldr x0, [sp+560]
    00586b8cstr x0, [sp+128]
    00586b90str x1, [sp+136]
    00586b94cbnz x0, 0x586b9c
    00586b98b 0x586bb0
    00586b9c
    00586b9cloc_586b9c:
    00586b9cstr x0, [sp+64]
    00586ba0str x1, [sp+72]
    00586ba4ldp x29, x30, [sp-8]
    00586ba8add sp, sp, 592
    00586bacret x30
    00586bb0
    00586bb0loc_586bb0:
    00586bb0ldr x0, [sp+104]
    00586bb4bl crypto/internal/fips140/bigmod.(*Nat).IsZero
    00586bb8str x0, [sp+56]
    00586bbcsubs xzr, x0, 1
    00586bc0b.eq 0x586bc8
    00586bc4b 0x586bf4
    00586bc8
    00586bc8loc_586bc8:
    00586bc8adrp x0, 0x13a000
    00586bccadd x0, x0, 4031
    00586bd0movz x1, 35
    00586bd4bl errors.New
    00586bd8str x0, [sp+392]
    00586bdcstr x1, [sp+400]
    00586be0str x0, [sp+64]
    00586be4str x1, [sp+72]
    00586be8ldp x29, x30, [sp-8]
    00586becadd sp, sp, 592
    00586bf0ret x30
    00586bf4
    00586bf4loc_586bf4:
    00586bf4bl crypto/internal/fips140/bigmod.NewNat
    00586bf8str x0, [sp+376]
    00586bfcstr xzr, [sp+384]
    00586c00stp xzr, xzr, [sp+392]
    00586c04ldr x0, [sp+648]
    00586c08ldrsb x27, [x0]
    00586c0cldr x1, [x0+24]
    00586c10ldr x2, [x0+32]
    00586c14ldr x0, [x0+40]
    00586c18str x1, [sp+272]
    00586c1cstr x2, [sp+280]
    00586c20str x0, [sp+288]
    00586c24ldr x0, [sp+608]
    00586c28ldrsb x27, [x0]
    00586c2cldr x4, [x0+32]
    00586c30str x4, [sp+264]
    00586c34ldr x1, [sp+272]
    00586c38ldr x2, [sp+280]
    00586c3cldr x3, [sp+288]
    00586c40ldr x0, [sp+376]
    00586c44bl crypto/internal/fips140/bigmod.(*Nat).SetBytes
    00586c48str x0, [sp+384]
    00586c4cstr x1, [sp+392]
    00586c50str x2, [sp+400]
    00586c54ldr x0, [sp+384]
    00586c58str x0, [sp+552]
    00586c5cldr x0, [sp+392]
    00586c60ldr x1, [sp+400]
    00586c64str x0, [sp+536]
    00586c68str x1, [sp+544]
    00586c6cldr x0, [sp+552]
    00586c70str x0, [sp+96]
    00586c74ldr x1, [sp+544]
    00586c78ldr x0, [sp+536]
    00586c7cstr x0, [sp+128]
    00586c80str x1, [sp+136]
    00586c84cbnz x0, 0x586c8c
    00586c88b 0x586ca0
    00586c8c
    00586c8cloc_586c8c:
    00586c8cstr x0, [sp+64]
    00586c90str x1, [sp+72]
    00586c94ldp x29, x30, [sp-8]
    00586c98add sp, sp, 592
    00586c9cret x30
    00586ca0
    00586ca0loc_586ca0:
    00586ca0ldr x0, [sp+96]
    00586ca4bl crypto/internal/fips140/bigmod.(*Nat).IsZero
    00586ca8str x0, [sp+56]
    00586cacsubs xzr, x0, 1
    00586cb0b.eq 0x586cb8
    00586cb4b 0x586ce4
    00586cb8
    00586cb8loc_586cb8:
    00586cb8adrp x0, 0x13a000
    00586cbcadd x0, x0, 4066
    00586cc0movz x1, 35
    00586cc4bl errors.New
    00586cc8str x0, [sp+392]
    00586cccstr x1, [sp+400]
    00586cd0str x0, [sp+64]
    00586cd4str x1, [sp+72]
    00586cd8ldp x29, x30, [sp-8]
    00586cdcadd sp, sp, 592
    00586ce0ret x30
    00586ce4
    00586ce4loc_586ce4:
    00586ce4bl crypto/internal/fips140/bigmod.NewNat
    00586ce8str x0, [sp+144]
    00586cecldr x0, [sp+600]
    00586cf0ldrsb x27, [x0]
    00586cf4ldr x0, [x0+40]
    00586cf8str x0, [sp+256]
    00586cfcldr x3, [sp+624]
    00586d00ldr x2, [sp+144]
    00586d04ldr x1, [sp+608]
    00586d08ldr x4, [sp+632]
    00586d0cldr x5, [sp+640]
    00586d10bl crypto/internal/fips140/ecdsa.hashToNat[go.shape.*crypto/internal/fips140/nistec.P256Point]
    00586d14bl crypto/internal/fips140/bigmod.NewNat
    00586d18str x0, [sp+80]
    00586d1cldr x0, [sp+600]
    00586d20ldrsb x27, [x0]
    00586d24ldr x0, [x0+48]
    00586d28str x0, [sp+248]
    00586d2cldr x2, [sp+80]
    00586d30ldr x3, [sp+96]
    00586d34ldr x1, [sp+608]
    00586d38bl crypto/internal/fips140/ecdsa.inverse[go.shape.*crypto/internal/fips140/nistec.P256Point]
    00586d3cldr x0, [sp+608]
    00586d40ldrsb x27, [x0]
    00586d44ldr x26, [x0+16]
    00586d48ldr x0, [x26]
    00586d4cblr x0
    00586d50str x0, [sp+408]
    00586d54ldr x0, [sp+608]
    00586d58ldrsb x27, [x0]
    00586d5cldr x2, [x0+32]
    00586d60str x2, [sp+240]
    00586d64ldr x0, [sp+144]
    00586d68ldr x1, [sp+80]
    00586d6cbl crypto/internal/fips140/bigmod.(*Nat).Mul
    00586d70str x0, [sp+384]
    00586d74ldr x0, [sp+608]
    00586d78ldrsb x27, [x0]
    00586d7cldr x1, [x0+32]
    00586d80str x1, [sp+232]
    00586d84ldr x0, [sp+384]
    00586d88bl crypto/internal/fips140/bigmod.(*Nat).Bytes
    00586d8cstr x0, [sp+352]
    00586d90str x1, [sp+360]
    00586d94str x2, [sp+368]
    00586d98str xzr, [sp+416]
    00586d9cstp xzr, xzr, [sp+392]
    00586da0ldr x0, [sp+600]
    00586da4ldrsb x27, [x0]
    00586da8add x26, x0, 8
    00586dacldr x0, [x0+8]
    00586db0ldr x1, [sp+352]
    00586db4ldr x2, [sp+360]
    00586db8ldr x3, [sp+368]
    00586dbcldr x4, [sp+408]
    00586dc0mov x5, x0
    00586dc4mov x0, x4
    00586dc8blr x5
    00586dccstr x0, [sp+416]
    00586dd0str x1, [sp+392]
    00586dd4str x2, [sp+400]
    00586dd8ldr x0, [sp+416]
    00586ddcstr x0, [sp+528]
    00586de0ldr x0, [sp+392]
    00586de4ldr x1, [sp+400]
    00586de8str x0, [sp+512]
    00586decstr x1, [sp+520]
    00586df0ldr x0, [sp+528]
    00586df4str x0, [sp+120]
    00586df8ldr x1, [sp+520]
    00586dfcldr x0, [sp+512]
    00586e00str x0, [sp+128]
    00586e04str x1, [sp+136]
    00586e08cbnz x0, 0x586e10
    00586e0cb 0x586e24
    00586e10
    00586e10loc_586e10:
    00586e10str x0, [sp+64]
    00586e14str x1, [sp+72]
    00586e18ldp x29, x30, [sp-8]
    00586e1cadd sp, sp, 592
    00586e20ret x30
    00586e24
    00586e24loc_586e24:
    00586e24ldr x3, [sp+608]
    00586e28ldrsb x27, [x3]
    00586e2cldr x2, [x3+32]
    00586e30str x2, [sp+224]
    00586e34ldr x0, [sp+80]
    00586e38ldr x1, [sp+104]
    00586e3cbl crypto/internal/fips140/bigmod.(*Nat).Mul
    00586e40str x0, [sp+384]
    00586e44ldr x3, [sp+608]
    00586e48ldrsb x27, [x3]
    00586e4cldr x1, [x3+32]
    00586e50str x1, [sp+216]
    00586e54ldr x0, [sp+384]
    00586e58bl crypto/internal/fips140/bigmod.(*Nat).Bytes
    00586e5cstr x0, [sp+352]
    00586e60str x1, [sp+360]
    00586e64str x2, [sp+368]
    00586e68str xzr, [sp+416]
    00586e6cstp xzr, xzr, [sp+392]
    00586e70ldr x3, [sp+600]
    00586e74ldrsb x27, [x3]
    00586e78add x26, x3, 16
    00586e7cldr x0, [sp+176]
    00586e80ldr x1, [sp+176]
    00586e84ldr x3, [x3+16]
    00586e88ldr x2, [sp+352]
    00586e8cldr x4, [sp+360]
    00586e90ldr x5, [sp+368]
    00586e94mov x6, x3
    00586e98mov x3, x4
    00586e9cmov x4, x5
    00586ea0blr x6
    00586ea4str x0, [sp+416]
    00586ea8str x1, [sp+392]
    00586eacstr x2, [sp+400]
    00586eb0ldr x3, [sp+416]
    00586eb4str x3, [sp+504]
    00586eb8ldr x3, [sp+392]
    00586ebcldr x4, [sp+400]
    00586ec0str x3, [sp+488]
    00586ec4str x4, [sp+496]
    00586ec8ldr x3, [sp+504]
    00586eccstr x3, [sp+112]
    00586ed0ldr x1, [sp+496]
    00586ed4ldr x0, [sp+488]
    00586ed8str x0, [sp+128]
    00586edcstr x1, [sp+136]
    00586ee0cbnz x0, 0x586ee8
    00586ee4b 0x586efc
    00586ee8
    00586ee8loc_586ee8:
    00586ee8str x0, [sp+64]
    00586eecstr x1, [sp+72]
    00586ef0ldp x29, x30, [sp-8]
    00586ef4add sp, sp, 592
    00586ef8ret x30
    00586efc
    00586efcloc_586efc:
    00586efcldr x3, [sp+600]
    00586f00ldrsb x27, [x3]
    00586f04add x26, x3, 24
    00586f08ldr x0, [sp+120]
    00586f0cldr x1, [sp+120]
    00586f10ldr x2, [sp+112]
    00586f14ldr x3, [x3+24]
    00586f18blr x3
    00586f1cstr x0, [sp+416]
    00586f20str xzr, [sp+352]
    00586f24stp xzr, xzr, [sp+360]
    00586f28stp xzr, xzr, [sp+392]
    00586f2cldr x3, [sp+600]
    00586f30ldrsb x27, [x3]
    00586f34add x26, x3, 32
    00586f38ldr x3, [x3+32]
    00586f3cldr x0, [sp+416]
    00586f40blr x3
    00586f44str x0, [sp+352]
    00586f48str x1, [sp+360]
    00586f4cstr x2, [sp+368]
    00586f50str x3, [sp+392]
    00586f54str x4, [sp+400]
    00586f58ldr x3, [sp+352]
    00586f5cldr x4, [sp+360]
    00586f60ldr x5, [sp+368]
    00586f64str x3, [sp+464]
    00586f68str x4, [sp+472]
    00586f6cstr x5, [sp+480]
    00586f70ldr x3, [sp+392]
    00586f74ldr x4, [sp+400]
    00586f78str x3, [sp+448]
    00586f7cstr x4, [sp+456]
    00586f80ldr x3, [sp+464]
    00586f84ldr x4, [sp+472]
    00586f88ldr x5, [sp+480]
    00586f8cstr x3, [sp+152]
    00586f90str x4, [sp+160]
    00586f94str x5, [sp+168]
    00586f98ldr x1, [sp+456]
    00586f9cldr x0, [sp+448]
    00586fa0str x0, [sp+128]
    00586fa4str x1, [sp+136]
    00586fa8cbnz x0, 0x586fb0
    00586facb 0x586fc4
    00586fb0
    00586fb0loc_586fb0:
    00586fb0str x0, [sp+64]
    00586fb4str x1, [sp+72]
    00586fb8ldp x29, x30, [sp-8]
    00586fbcadd sp, sp, 592
    00586fc0ret x30
    00586fc4
    00586fc4loc_586fc4:
    00586fc4bl crypto/internal/fips140/bigmod.NewNat
    00586fc8str x0, [sp+384]
    00586fccstr xzr, [sp+376]
    00586fd0stp xzr, xzr, [sp+392]
    00586fd4ldr x0, [sp+608]
    00586fd8ldrsb x27, [x0]
    00586fdcldr x4, [x0+32]
    00586fe0str x4, [sp+208]
    00586fe4ldr x1, [sp+152]
    00586fe8ldr x2, [sp+160]
    00586fecldr x3, [sp+168]
    00586ff0ldr x0, [sp+384]
    00586ff4bl crypto/internal/fips140/bigmod.(*Nat).SetOverflowingBytes
    00586ff8str x0, [sp+376]
    00586ffcstr x1, [sp+392]
    00587000str x2, [sp+400]
    00587004ldr x0, [sp+376]
    00587008str x0, [sp+440]
    0058700cldr x0, [sp+392]
    00587010ldr x1, [sp+400]
    00587014str x0, [sp+424]
    00587018str x1, [sp+432]
    0058701cldr x0, [sp+440]
    00587020str x0, [sp+88]
    00587024ldr x1, [sp+432]
    00587028ldr x0, [sp+424]
    0058702cstr x0, [sp+128]
    00587030str x1, [sp+136]
    00587034cbnz x0, 0x58703c
    00587038b 0x587050
    0058703c
    0058703cloc_58703c:
    0058703cstr x0, [sp+64]
    00587040str x1, [sp+72]
    00587044ldp x29, x30, [sp-8]
    00587048add sp, sp, 592
    0058704cret x30
    00587050
    00587050loc_587050:
    00587050ldr x1, [sp+104]
    00587054ldr x0, [sp+88]
    00587058bl crypto/internal/fips140/bigmod.(*Nat).Equal
    0058705cstr x0, [sp+56]
    00587060subs xzr, x0, 1
    00587064b.ne 0x58706c
    00587068b 0x587098
    0058706c
    0058706cloc_58706c:
    0058706cadrp x0, 0x137000
    00587070add x0, x0, 351
    00587074orr x1, xzr, 31
    00587078bl errors.New
    0058707cstr x0, [sp+392]
    00587080str x1, [sp+400]
    00587084str x0, [sp+64]
    00587088str x1, [sp+72]
    0058708cldp x29, x30, [sp-8]
    00587090add sp, sp, 592
    00587094ret x30
    00587098
    00587098loc_587098:
    00587098stp xzr, xzr, [sp+64]
    0058709cmov x0, xzr
    005870a0mov x1, xzr
    005870a4ldp x29, x30, [sp-8]
    005870a8add sp, sp, 592
    005870acret x30
    005870b0
    005870b0loc_5870b0:
    005870b0stp x0, x1, [sp+8]
    005870b4stp x2, x3, [sp+24]
    005870b8stp x4, x5, [sp+40]
    005870bcstr x6, [sp+56]
    005870c0mov x3, x30
    005870c4bl runtime.morestack_noctxt.abi0
    005870c8ldp x0, x1, [sp+8]
    005870ccldp x2, x3, [sp+24]
    005870d0ldp x4, x5, [sp+40]
    005870d4ldr x6, [sp+56]
    005870d8b 0x586a10
    005870dcudf 0
    00586a10