File 8base_80736669542d3727c77ccda1589f9d7c17568a1d97d98ffae84afbbbf081be67.elf
Function:
Loading..
00406448
00406448thpool_pause:
00406448stp x29, x30, [sp-48]!
0040644cadd x29, sp, 0
00406450str x0, [sp+24]
00406454str wzr, [sp+44]
00406458b 0x40648c
0040645c
0040645cloc_40645c:
0040645cldr x0, [sp+24]
00406460ldr x1, [x0]
00406464ldrsw x0, [sp+44]
00406468ubfm x0, x0, 61, 60
0040646cadd x0, x1, x0
00406470ldr x0, [x0]
00406474ldr x0, [x0+8]
00406478movz w1, 10
0040647cbl pthread_kill@plt
00406480ldr w0, [sp+44]
00406484add w0, w0, 1
00406488str w0, [sp+44]
0040648c
0040648cloc_40648c:
0040648cldr x0, [sp+24]
00406490ldr w0, [x0+8]
00406494ldr w1, [sp+44]
00406498subs wzr, w1, w0
0040649cb.lt 0x40645c
004064a0hint
004064a4hint
004064a8ldp x29, x30, [sp], 48
004064acret x30
00406448
00406448thpool_pause:
00406448stp x29, x30, [sp-48]!
0040644cadd x29, sp, 0
00406450str x0, [sp+24]
00406454str wzr, [sp+44]
00406458b 0x40648c
0040645c
0040645cloc_40645c:
0040645cldr x0, [sp+24]
00406460ldr x1, [x0]
00406464ldrsw x0, [sp+44]
00406468ubfm x0, x0, 61, 60
0040646cadd x0, x1, x0
00406470ldr x0, [x0]
00406474ldr x0, [x0+8]
00406478movz w1, 10
0040647cbl pthread_kill@plt
00406480ldr w0, [sp+44]
00406484add w0, w0, 1
00406488str w0, [sp+44]
0040648c
0040648cloc_40648c:
0040648cldr x0, [sp+24]
00406490ldr w0, [x0+8]
00406494ldr w1, [sp+44]
00406498subs wzr, w1, w0
0040649cb.lt 0x40645c
004064a0hint
004064a4hint
004064a8ldp x29, x30, [sp], 48
004064acret x30
00406448
004064b0
004064b0thpool_resume:
004064b0sub sp, sp, 16
004064b4str x0, [sp+8]
004064b8adrp x0, 0x14000
004064bcadd x0, x0, 692
004064c0str wzr, [x0]
004064c4hint
004064c8add sp, sp, 16
004064ccret x30
004064b0
004064b0thpool_resume:
004064b0sub sp, sp, 16
004064b4str x0, [sp+8]
004064b8adrp x0, 0x14000
004064bcadd x0, x0, 692
004064c0str wzr, [x0]
004064c4hint
004064c8add sp, sp, 16
004064ccret x30
004064b0
004064d0
004064d0thpool_num_threads_working:
004064d0sub sp, sp, 16
004064d4str x0, [sp+8]
004064d8ldr x0, [sp+8]
004064dcldr w0, [x0+12]
004064e0add sp, sp, 16
004064e4ret x30
004064d0
004064d0thpool_num_threads_working:
004064d0sub sp, sp, 16
004064d4str x0, [sp+8]
004064d8ldr x0, [sp+8]
004064dcldr w0, [x0+12]
004064e0add sp, sp, 16
004064e4ret x30
004064d0
004064e8
004064e8thread_init:
004064e8stp x29, x30, [sp-48]!
004064ecadd x29, sp, 0
004064f0str x0, [sp+40]
004064f4str x1, [sp+32]
004064f8str w2, [sp+28]
004064fcmovz x0, 24
00406500bl malloc@plt
00406504mov x1, x0
00406508ldr x0, [sp+32]
0040650cstr x1, [x0]
00406510ldr x0, [sp+32]
00406514ldr x0, [x0]
00406518subs xzr, x0, 0
0040651cb.ne 0x40654c
00406520adrp x0, 0x14000
00406524add x0, x0, 648
00406528ldr x0, [x0]
0040652cmov x3, x0
00406530movz x2, 52
00406534movz x1, 1
00406538adrp x0, 8192
0040653cadd x0, x0, 56
00406540bl fwrite@plt
00406544movn w0, 0
00406548b 0x4065ac
0040654c
0040654cloc_40654c:
0040654cldr x0, [sp+32]
00406550ldr x0, [x0]
00406554ldr x1, [sp+40]
00406558str x1, [x0+16]
0040655cldr x0, [sp+32]
00406560ldr x0, [x0]
00406564ldr w1, [sp+28]
00406568str w1, [x0]
0040656cldr x0, [sp+32]
00406570ldr x0, [x0]
00406574add x4, x0, 8
00406578ldr x0, [sp+32]
0040657cldr x0, [x0]
00406580mov x3, x0
00406584adrp x0, 0
00406588add x2, x0, 1536
0040658cmovz x1, 0
00406590mov x0, x4
00406594bl pthread_create@plt
00406598ldr x0, [sp+32]
0040659cldr x0, [x0]
004065a0ldr x0, [x0+8]
004065a4bl pthread_detach@plt
004065a8movz w0, 0
004065ac
004065acloc_4065ac:
004065acldp x29, x30, [sp], 48
004065b0ret x30
004064e8
004064e8thread_init:
004064e8stp x29, x30, [sp-48]!
004064ecadd x29, sp, 0
004064f0str x0, [sp+40]
004064f4str x1, [sp+32]
004064f8str w2, [sp+28]
004064fcmovz x0, 24
00406500bl malloc@plt
00406504mov x1, x0
00406508ldr x0, [sp+32]
0040650cstr x1, [x0]
00406510ldr x0, [sp+32]
00406514ldr x0, [x0]
00406518subs xzr, x0, 0
0040651cb.ne 0x40654c
00406520adrp x0, 0x14000
00406524add x0, x0, 648
00406528ldr x0, [x0]
0040652cmov x3, x0
00406530movz x2, 52
00406534movz x1, 1
00406538adrp x0, 8192
0040653cadd x0, x0, 56
00406540bl fwrite@plt
00406544movn w0, 0
00406548b 0x4065ac
0040654c
0040654cloc_40654c:
0040654cldr x0, [sp+32]
00406550ldr x0, [x0]
00406554ldr x1, [sp+40]
00406558str x1, [x0+16]
0040655cldr x0, [sp+32]
00406560ldr x0, [x0]
00406564ldr w1, [sp+28]
00406568str w1, [x0]
0040656cldr x0, [sp+32]
00406570ldr x0, [x0]
00406574add x4, x0, 8
00406578ldr x0, [sp+32]
0040657cldr x0, [x0]
00406580mov x3, x0
00406584adrp x0, 0
00406588add x2, x0, 1536
0040658cmovz x1, 0
00406590mov x0, x4
00406594bl pthread_create@plt
00406598ldr x0, [sp+32]
0040659cldr x0, [x0]
004065a0ldr x0, [x0+8]
004065a4bl pthread_detach@plt
004065a8movz w0, 0
004065ac
004065acloc_4065ac:
004065acldp x29, x30, [sp], 48
004065b0ret x30
004064e8
004065b4
004065b4thread_hold:
004065b4stp x29, x30, [sp-32]!
004065b8add x29, sp, 0
004065bcstr w0, [sp+28]
004065c0adrp x0, 0x14000
004065c4add x0, x0, 692
004065c8movz w1, 1
004065ccstr w1, [x0]
004065d0b 0x4065dc
004065d4
004065d4loc_4065d4:
004065d4movz w0, 1
004065d8bl sleep@plt
004065dc
004065dcloc_4065dc:
004065dcadrp x0, 0x14000
004065e0add x0, x0, 692
004065e4ldr w0, [x0]
004065e8subs wzr, w0, 0
004065ecb.ne 0x4065d4
004065f0hint
004065f4hint
004065f8ldp x29, x30, [sp], 32
004065fcret x30
004065b4
004065b4thread_hold:
004065b4stp x29, x30, [sp-32]!
004065b8add x29, sp, 0
004065bcstr w0, [sp+28]
004065c0adrp x0, 0x14000
004065c4add x0, x0, 692
004065c8movz w1, 1
004065ccstr w1, [x0]
004065d0b 0x4065dc
004065d4
004065d4loc_4065d4:
004065d4movz w0, 1
004065d8bl sleep@plt
004065dc
004065dcloc_4065dc:
004065dcadrp x0, 0x14000
004065e0add x0, x0, 692
004065e4ldr w0, [x0]
004065e8subs wzr, w0, 0
004065ecb.ne 0x4065d4
004065f0hint
004065f4hint
004065f8ldp x29, x30, [sp], 32
004065fcret x30
004065b4
00406600
00406600thread_do:
00406600stp x29, x30, [sp-256]!
00406604add x29, sp, 0
00406608str x0, [sp+24]
0040660cstp xzr, xzr, [sp+192]
00406610stp xzr, xzr, [sp+208]
00406614ldr x0, [sp+24]
00406618ldr w0, [x0]
0040661cadd x4, sp, 192
00406620mov w3, w0
00406624adrp x0, 8192
00406628add x2, x0, 112
0040662cmovz x1, 32
00406630mov x0, x4
00406634bl snprintf@plt
00406638add x0, sp, 192
0040663cmov x1, x0
00406640movz w0, 15
00406644bl prctl@plt
00406648ldr x0, [sp+24]
0040664cldr x0, [x0+16]
00406650str x0, [sp+248]
00406654add x0, sp, 40
00406658add x0, x0, 8
0040665cbl sigemptyset@plt
00406660str wzr, [sp+176]
00406664adrp x0, 0
00406668add x0, x0, 1460
0040666cstr x0, [sp+40]
00406670add x0, sp, 40
00406674movz x2, 0
00406678mov x1, x0
0040667cmovz w0, 10
00406680bl sigaction@plt
00406684adds wzr, w0, 1
00406688b.ne 0x4066b0
0040668cadrp x0, 0x14000
00406690add x0, x0, 648
00406694ldr x0, [x0]
00406698mov x3, x0
0040669cmovz x2, 34
004066a0movz x1, 1
004066a4adrp x0, 8192
004066a8add x0, x0, 128
004066acbl fwrite@plt
004066b0
004066b0loc_4066b0:
004066b0ldr x0, [sp+248]
004066b4add x0, x0, 16
004066b8bl pthread_mutex_lock@plt
004066bcldr x0, [sp+248]
004066c0ldr w0, [x0+8]
004066c4add w1, w0, 1
004066c8ldr x0, [sp+248]
004066ccstr w1, [x0+8]
004066d0ldr x0, [sp+248]
004066d4add x0, x0, 16
004066d8bl pthread_mutex_unlock@plt
004066dcb 0x4067bc
004066e0
004066e0loc_4066e0:
004066e0ldr x0, [sp+248]
004066e4ldr x0, [x0+176]
004066e8bl bsem_wait
004066ecadrp x0, 0x14000
004066f0add x0, x0, 688
004066f4ldr w0, [x0]
004066f8subs wzr, w0, 0
004066fcb.eq 0x4067bc
00406700ldr x0, [sp+248]
00406704add x0, x0, 16
00406708bl pthread_mutex_lock@plt
0040670cldr x0, [sp+248]
00406710ldr w0, [x0+12]
00406714add w1, w0, 1
00406718ldr x0, [sp+248]
0040671cstr w1, [x0+12]
00406720ldr x0, [sp+248]
00406724add x0, x0, 16
00406728bl pthread_mutex_unlock@plt
0040672cldr x0, [sp+248]
00406730add x0, x0, 112
00406734bl jobqueue_pull
00406738str x0, [sp+240]
0040673cldr x0, [sp+240]
00406740subs xzr, x0, 0
00406744b.eq 0x406774
00406748ldr x0, [sp+240]
0040674cldr x0, [x0+8]
00406750str x0, [sp+232]
00406754ldr x0, [sp+240]
00406758ldr x0, [x0+16]
0040675cstr x0, [sp+224]
00406760ldr x1, [sp+232]
00406764ldr x0, [sp+224]
00406768blr x1
0040676cldr x0, [sp+240]
00406770bl free@plt
00406774
00406774loc_406774:
00406774ldr x0, [sp+248]
00406778add x0, x0, 16
0040677cbl pthread_mutex_lock@plt
00406780ldr x0, [sp+248]
00406784ldr w0, [x0+12]
00406788sub w1, w0, 1
0040678cldr x0, [sp+248]
00406790str w1, [x0+12]
00406794ldr x0, [sp+248]
00406798ldr w0, [x0+12]
0040679csubs wzr, w0, 0
004067a0b.ne 0x4067b0
004067a4ldr x0, [sp+248]
004067a8add x0, x0, 64
004067acbl pthread_cond_signal@plt
004067b0
004067b0loc_4067b0:
004067b0ldr x0, [sp+248]
004067b4add x0, x0, 16
004067b8bl pthread_mutex_unlock@plt
004067bc
004067bcloc_4067bc:
004067bcadrp x0, 0x14000
004067c0add x0, x0, 688
004067c4ldr w0, [x0]
004067c8subs wzr, w0, 0
004067ccb.ne 0x4066e0
004067d0ldr x0, [sp+248]
004067d4add x0, x0, 16
004067d8bl pthread_mutex_lock@plt
004067dcldr x0, [sp+248]
004067e0ldr w0, [x0+8]
004067e4sub w1, w0, 1
004067e8ldr x0, [sp+248]
004067ecstr w1, [x0+8]
004067f0ldr x0, [sp+248]
004067f4add x0, x0, 16
004067f8bl pthread_mutex_unlock@plt
004067fcmovz x0, 0
00406800ldp x29, x30, [sp], 256
00406804ret x30
00406600
00406600thread_do:
00406600stp x29, x30, [sp-256]!
00406604add x29, sp, 0
00406608str x0, [sp+24]
0040660cstp xzr, xzr, [sp+192]
00406610stp xzr, xzr, [sp+208]
00406614ldr x0, [sp+24]
00406618ldr w0, [x0]
0040661cadd x4, sp, 192
00406620mov w3, w0
00406624adrp x0, 8192
00406628add x2, x0, 112
0040662cmovz x1, 32
00406630mov x0, x4
00406634bl snprintf@plt
00406638add x0, sp, 192
0040663cmov x1, x0
00406640movz w0, 15
00406644bl prctl@plt
00406648ldr x0, [sp+24]
0040664cldr x0, [x0+16]
00406650str x0, [sp+248]
00406654add x0, sp, 40
00406658add x0, x0, 8
0040665cbl sigemptyset@plt
00406660str wzr, [sp+176]
00406664adrp x0, 0
00406668add x0, x0, 1460
0040666cstr x0, [sp+40]
00406670add x0, sp, 40
00406674movz x2, 0
00406678mov x1, x0
0040667cmovz w0, 10
00406680bl sigaction@plt
00406684adds wzr, w0, 1
00406688b.ne 0x4066b0
0040668cadrp x0, 0x14000
00406690add x0, x0, 648
00406694ldr x0, [x0]
00406698mov x3, x0
0040669cmovz x2, 34
004066a0movz x1, 1
004066a4adrp x0, 8192
004066a8add x0, x0, 128
004066acbl fwrite@plt
004066b0
004066b0loc_4066b0:
004066b0ldr x0, [sp+248]
004066b4add x0, x0, 16
004066b8bl pthread_mutex_lock@plt
004066bcldr x0, [sp+248]
004066c0ldr w0, [x0+8]
004066c4add w1, w0, 1
004066c8ldr x0, [sp+248]
004066ccstr w1, [x0+8]
004066d0ldr x0, [sp+248]
004066d4add x0, x0, 16
004066d8bl pthread_mutex_unlock@plt
004066dcb 0x4067bc
004066e0
004066e0loc_4066e0:
004066e0ldr x0, [sp+248]
004066e4ldr x0, [x0+176]
004066e8bl bsem_wait
004066ecadrp x0, 0x14000
004066f0add x0, x0, 688
004066f4ldr w0, [x0]
004066f8subs wzr, w0, 0
004066fcb.eq 0x4067bc
00406700ldr x0, [sp+248]
00406704add x0, x0, 16
00406708bl pthread_mutex_lock@plt
0040670cldr x0, [sp+248]
00406710ldr w0, [x0+12]
00406714add w1, w0, 1
00406718ldr x0, [sp+248]
0040671cstr w1, [x0+12]
00406720ldr x0, [sp+248]
00406724add x0, x0, 16
00406728bl pthread_mutex_unlock@plt
0040672cldr x0, [sp+248]
00406730add x0, x0, 112
00406734bl jobqueue_pull
00406738str x0, [sp+240]
0040673cldr x0, [sp+240]
00406740subs xzr, x0, 0
00406744b.eq 0x406774
00406748ldr x0, [sp+240]
0040674cldr x0, [x0+8]
00406750str x0, [sp+232]
00406754ldr x0, [sp+240]
00406758ldr x0, [x0+16]
0040675cstr x0, [sp+224]
00406760ldr x1, [sp+232]
00406764ldr x0, [sp+224]
00406768blr x1
0040676cldr x0, [sp+240]
00406770bl free@plt
00406774
00406774loc_406774:
00406774ldr x0, [sp+248]
00406778add x0, x0, 16
0040677cbl pthread_mutex_lock@plt
00406780ldr x0, [sp+248]
00406784ldr w0, [x0+12]
00406788sub w1, w0, 1
0040678cldr x0, [sp+248]
00406790str w1, [x0+12]
00406794ldr x0, [sp+248]
00406798ldr w0, [x0+12]
0040679csubs wzr, w0, 0
004067a0b.ne 0x4067b0
004067a4ldr x0, [sp+248]
004067a8add x0, x0, 64
004067acbl pthread_cond_signal@plt
004067b0
004067b0loc_4067b0:
004067b0ldr x0, [sp+248]
004067b4add x0, x0, 16
004067b8bl pthread_mutex_unlock@plt
004067bc
004067bcloc_4067bc:
004067bcadrp x0, 0x14000
004067c0add x0, x0, 688
004067c4ldr w0, [x0]
004067c8subs wzr, w0, 0
004067ccb.ne 0x4066e0
004067d0ldr x0, [sp+248]
004067d4add x0, x0, 16
004067d8bl pthread_mutex_lock@plt
004067dcldr x0, [sp+248]
004067e0ldr w0, [x0+8]
004067e4sub w1, w0, 1
004067e8ldr x0, [sp+248]
004067ecstr w1, [x0+8]
004067f0ldr x0, [sp+248]
004067f4add x0, x0, 16
004067f8bl pthread_mutex_unlock@plt
004067fcmovz x0, 0
00406800ldp x29, x30, [sp], 256
00406804ret x30
00406600
00406808
00406808thread_destroy:
00406808stp x29, x30, [sp-32]!
0040680cadd x29, sp, 0
00406810str x0, [sp+24]
00406814ldr x0, [sp+24]
00406818bl free@plt
0040681chint
00406820ldp x29, x30, [sp], 32
00406824ret x30
00406808
00406808thread_destroy:
00406808stp x29, x30, [sp-32]!
0040680cadd x29, sp, 0
00406810str x0, [sp+24]
00406814ldr x0, [sp+24]
00406818bl free@plt
0040681chint
00406820ldp x29, x30, [sp], 32
00406824ret x30
00406808
00406828
00406828jobqueue_init:
00406828stp x29, x30, [sp-32]!
0040682cadd x29, sp, 0
00406830str x0, [sp+24]
00406834ldr x0, [sp+24]
00406838str wzr, [x0+72]
0040683cldr x0, [sp+24]
00406840str xzr, [x0+48]
00406844ldr x0, [sp+24]
00406848str xzr, [x0+56]
0040684cmovz x0, 104
00406850bl malloc@plt
00406854mov x1, x0
00406858ldr x0, [sp+24]
0040685cstr x1, [x0+64]
00406860ldr x0, [sp+24]
00406864ldr x0, [x0+64]
00406868subs xzr, x0, 0
0040686cb.ne 0x406878
00406870movn w0, 0
00406874b 0x406898
00406878
00406878loc_406878:
00406878ldr x0, [sp+24]
0040687cmovz x1, 0
00406880bl pthread_mutex_init@plt
00406884ldr x0, [sp+24]
00406888ldr x0, [x0+64]
0040688cmovz w1, 0
00406890bl bsem_init
00406894movz w0, 0
00406898
00406898loc_406898:
00406898ldp x29, x30, [sp], 32
0040689cret x30
00406828
00406828jobqueue_init:
00406828stp x29, x30, [sp-32]!
0040682cadd x29, sp, 0
00406830str x0, [sp+24]
00406834ldr x0, [sp+24]
00406838str wzr, [x0+72]
0040683cldr x0, [sp+24]
00406840str xzr, [x0+48]
00406844ldr x0, [sp+24]
00406848str xzr, [x0+56]
0040684cmovz x0, 104
00406850bl malloc@plt
00406854mov x1, x0
00406858ldr x0, [sp+24]
0040685cstr x1, [x0+64]
00406860ldr x0, [sp+24]
00406864ldr x0, [x0+64]
00406868subs xzr, x0, 0
0040686cb.ne 0x406878
00406870movn w0, 0
00406874b 0x406898
00406878
00406878loc_406878:
00406878ldr x0, [sp+24]
0040687cmovz x1, 0
00406880bl pthread_mutex_init@plt
00406884ldr x0, [sp+24]
00406888ldr x0, [x0+64]
0040688cmovz w1, 0
00406890bl bsem_init
00406894movz w0, 0
00406898
00406898loc_406898:
00406898ldp x29, x30, [sp], 32
0040689cret x30
00406828
004068a0
004068a0jobqueue_clear:
004068a0stp x29, x30, [sp-32]!
004068a4add x29, sp, 0
004068a8str x0, [sp+24]
004068acb 0x4068bc
004068b0
004068b0loc_4068b0:
004068b0ldr x0, [sp+24]
004068b4bl jobqueue_pull
004068b8bl free@plt
004068bc
004068bcloc_4068bc:
004068bcldr x0, [sp+24]
004068c0ldr w0, [x0+72]
004068c4subs wzr, w0, 0
004068c8b.ne 0x4068b0
004068ccldr x0, [sp+24]
004068d0str xzr, [x0+48]
004068d4ldr x0, [sp+24]
004068d8str xzr, [x0+56]
004068dcldr x0, [sp+24]
004068e0ldr x0, [x0+64]
004068e4bl bsem_reset
004068e8ldr x0, [sp+24]
004068ecstr wzr, [x0+72]
004068f0hint
004068f4ldp x29, x30, [sp], 32
004068f8ret x30
004068a0
004068a0jobqueue_clear:
004068a0stp x29, x30, [sp-32]!
004068a4add x29, sp, 0
004068a8str x0, [sp+24]
004068acb 0x4068bc
004068b0
004068b0loc_4068b0:
004068b0ldr x0, [sp+24]
004068b4bl jobqueue_pull
004068b8bl free@plt
004068bc
004068bcloc_4068bc:
004068bcldr x0, [sp+24]
004068c0ldr w0, [x0+72]
004068c4subs wzr, w0, 0
004068c8b.ne 0x4068b0
004068ccldr x0, [sp+24]
004068d0str xzr, [x0+48]
004068d4ldr x0, [sp+24]
004068d8str xzr, [x0+56]
004068dcldr x0, [sp+24]
004068e0ldr x0, [x0+64]
004068e4bl bsem_reset
004068e8ldr x0, [sp+24]
004068ecstr wzr, [x0+72]
004068f0hint
004068f4ldp x29, x30, [sp], 32
004068f8ret x30
004068a0
004068fc
004068fcjobqueue_push:
004068fcstp x29, x30, [sp-32]!
00406900add x29, sp, 0
00406904str x0, [sp+24]
00406908str x1, [sp+16]
0040690cldr x0, [sp+24]
00406910bl pthread_mutex_lock@plt
00406914ldr x0, [sp+16]
00406918str xzr, [x0]
0040691cldr x0, [sp+24]
00406920ldr w0, [x0+72]
00406924subs wzr, w0, 0
00406928b.ne 0x406948
0040692cldr x0, [sp+24]
00406930ldr x1, [sp+16]
00406934str x1, [x0+48]
00406938ldr x0, [sp+24]
0040693cldr x1, [sp+16]
00406940str x1, [x0+56]
00406944b 0x406964
00406948
00406948loc_406948:
00406948ldr x0, [sp+24]
0040694cldr x0, [x0+56]
00406950ldr x1, [sp+16]
00406954str x1, [x0]
00406958ldr x0, [sp+24]
0040695cldr x1, [sp+16]
00406960str x1, [x0+56]
00406964
00406964loc_406964:
00406964ldr x0, [sp+24]
00406968ldr w0, [x0+72]
0040696cadd w1, w0, 1
00406970ldr x0, [sp+24]
00406974str w1, [x0+72]
00406978ldr x0, [sp+24]
0040697cldr x0, [x0+64]
00406980bl bsem_post
00406984ldr x0, [sp+24]
00406988bl pthread_mutex_unlock@plt
0040698chint
00406990ldp x29, x30, [sp], 32
00406994ret x30
004068fc
004068fcjobqueue_push:
004068fcstp x29, x30, [sp-32]!
00406900add x29, sp, 0
00406904str x0, [sp+24]
00406908str x1, [sp+16]
0040690cldr x0, [sp+24]
00406910bl pthread_mutex_lock@plt
00406914ldr x0, [sp+16]
00406918str xzr, [x0]
0040691cldr x0, [sp+24]
00406920ldr w0, [x0+72]
00406924subs wzr, w0, 0
00406928b.ne 0x406948
0040692cldr x0, [sp+24]
00406930ldr x1, [sp+16]
00406934str x1, [x0+48]
00406938ldr x0, [sp+24]
0040693cldr x1, [sp+16]
00406940str x1, [x0+56]
00406944b 0x406964
00406948
00406948loc_406948:
00406948ldr x0, [sp+24]
0040694cldr x0, [x0+56]
00406950ldr x1, [sp+16]
00406954str x1, [x0]
00406958ldr x0, [sp+24]
0040695cldr x1, [sp+16]
00406960str x1, [x0+56]
00406964
00406964loc_406964:
00406964ldr x0, [sp+24]
00406968ldr w0, [x0+72]
0040696cadd w1, w0, 1
00406970ldr x0, [sp+24]
00406974str w1, [x0+72]
00406978ldr x0, [sp+24]
0040697cldr x0, [x0+64]
00406980bl bsem_post
00406984ldr x0, [sp+24]
00406988bl pthread_mutex_unlock@plt
0040698chint
00406990ldp x29, x30, [sp], 32
00406994ret x30
004068fc
00406998
00406998jobqueue_pull:
00406998stp x29, x30, [sp-48]!
0040699cadd x29, sp, 0
004069a0str x0, [sp+24]
004069a4ldr x0, [sp+24]
004069a8bl pthread_mutex_lock@plt
004069acldr x0, [sp+24]
004069b0ldr x0, [x0+48]
004069b4str x0, [sp+40]
004069b8ldr x0, [sp+24]
004069bcldr w0, [x0+72]
004069c0subs wzr, w0, 0
004069c4b.eq 0x406a20
004069c8subs wzr, w0, 1
004069ccb.ne 0x4069ec
004069d0ldr x0, [sp+24]
004069d4str xzr, [x0+48]
004069d8ldr x0, [sp+24]
004069dcstr xzr, [x0+56]
004069e0ldr x0, [sp+24]
004069e4str wzr, [x0+72]
004069e8b 0x406a24
004069ec
004069ecloc_4069ec:
004069ecldr x0, [sp+40]
004069f0ldr x1, [x0]
004069f4ldr x0, [sp+24]
004069f8str x1, [x0+48]
004069fcldr x0, [sp+24]
00406a00ldr w0, [x0+72]
00406a04sub w1, w0, 1
00406a08ldr x0, [sp+24]
00406a0cstr w1, [x0+72]
00406a10ldr x0, [sp+24]
00406a14ldr x0, [x0+64]
00406a18bl bsem_post
00406a1cb 0x406a24
00406a20
00406a20loc_406a20:
00406a20hint
00406a24
00406a24loc_406a24:
00406a24ldr x0, [sp+24]
00406a28bl pthread_mutex_unlock@plt
00406a2cldr x0, [sp+40]
00406a30ldp x29, x30, [sp], 48
00406a34ret x30
00406998
00406998jobqueue_pull:
00406998stp x29, x30, [sp-48]!
0040699cadd x29, sp, 0
004069a0str x0, [sp+24]
004069a4ldr x0, [sp+24]
004069a8bl pthread_mutex_lock@plt
004069acldr x0, [sp+24]
004069b0ldr x0, [x0+48]
004069b4str x0, [sp+40]
004069b8ldr x0, [sp+24]
004069bcldr w0, [x0+72]
004069c0subs wzr, w0, 0
004069c4b.eq 0x406a20
004069c8subs wzr, w0, 1
004069ccb.ne 0x4069ec
004069d0ldr x0, [sp+24]
004069d4str xzr, [x0+48]
004069d8ldr x0, [sp+24]
004069dcstr xzr, [x0+56]
004069e0ldr x0, [sp+24]
004069e4str wzr, [x0+72]
004069e8b 0x406a24
004069ec
004069ecloc_4069ec:
004069ecldr x0, [sp+40]
004069f0ldr x1, [x0]
004069f4ldr x0, [sp+24]
004069f8str x1, [x0+48]
004069fcldr x0, [sp+24]
00406a00ldr w0, [x0+72]
00406a04sub w1, w0, 1
00406a08ldr x0, [sp+24]
00406a0cstr w1, [x0+72]
00406a10ldr x0, [sp+24]
00406a14ldr x0, [x0+64]
00406a18bl bsem_post
00406a1cb 0x406a24
00406a20
00406a20loc_406a20:
00406a20hint
00406a24
00406a24loc_406a24:
00406a24ldr x0, [sp+24]
00406a28bl pthread_mutex_unlock@plt
00406a2cldr x0, [sp+40]
00406a30ldp x29, x30, [sp], 48
00406a34ret x30
00406998
00406a38
00406a38jobqueue_destroy:
00406a38stp x29, x30, [sp-32]!
00406a3cadd x29, sp, 0
00406a40str x0, [sp+24]
00406a44ldr x0, [sp+24]
00406a48bl jobqueue_clear
00406a4cldr x0, [sp+24]
00406a50ldr x0, [x0+64]
00406a54bl free@plt
00406a58hint
00406a5cldp x29, x30, [sp], 32
00406a60ret x30
00406a38
00406a38jobqueue_destroy:
00406a38stp x29, x30, [sp-32]!
00406a3cadd x29, sp, 0
00406a40str x0, [sp+24]
00406a44ldr x0, [sp+24]
00406a48bl jobqueue_clear
00406a4cldr x0, [sp+24]
00406a50ldr x0, [x0+64]
00406a54bl free@plt
00406a58hint
00406a5cldp x29, x30, [sp], 32
00406a60ret x30
00406a38
00406a64
00406a64bsem_init:
00406a64stp x29, x30, [sp-32]!
00406a68add x29, sp, 0
00406a6cstr x0, [sp+24]
00406a70str w1, [sp+20]
00406a74ldr w0, [sp+20]
00406a78subs wzr, w0, 0
00406a7cb.lt 0x406a8c
00406a80ldr w0, [sp+20]
00406a84subs wzr, w0, 1
00406a88b.le 0x406ab8
00406a8c
00406a8cloc_406a8c:
00406a8cadrp x0, 0x14000
00406a90add x0, x0, 648
00406a94ldr x0, [x0]
00406a98mov x3, x0
00406a9cmovz x2, 57
00406aa0movz x1, 1
00406aa4adrp x0, 8192
00406aa8add x0, x0, 168
00406aacbl fwrite@plt
00406ab0movz w0, 1
00406ab4bl exit@plt
00406ab8
00406ab8loc_406ab8:
00406ab8ldr x0, [sp+24]
00406abcmovz x1, 0
00406ac0bl pthread_mutex_init@plt
00406ac4ldr x0, [sp+24]
00406ac8add x0, x0, 48
00406accmovz x1, 0
00406ad0bl pthread_cond_init@plt
00406ad4ldr x0, [sp+24]
00406ad8ldr w1, [sp+20]
00406adcstr w1, [x0+96]
00406ae0hint
00406ae4ldp x29, x30, [sp], 32
00406ae8ret x30
00406a64
00406a64bsem_init:
00406a64stp x29, x30, [sp-32]!
00406a68add x29, sp, 0
00406a6cstr x0, [sp+24]
00406a70str w1, [sp+20]
00406a74ldr w0, [sp+20]
00406a78subs wzr, w0, 0
00406a7cb.lt 0x406a8c
00406a80ldr w0, [sp+20]
00406a84subs wzr, w0, 1
00406a88b.le 0x406ab8
00406a8c
00406a8cloc_406a8c:
00406a8cadrp x0, 0x14000
00406a90add x0, x0, 648
00406a94ldr x0, [x0]
00406a98mov x3, x0
00406a9cmovz x2, 57
00406aa0movz x1, 1
00406aa4adrp x0, 8192
00406aa8add x0, x0, 168
00406aacbl fwrite@plt
00406ab0movz w0, 1
00406ab4bl exit@plt
00406ab8
00406ab8loc_406ab8:
00406ab8ldr x0, [sp+24]
00406abcmovz x1, 0
00406ac0bl pthread_mutex_init@plt
00406ac4ldr x0, [sp+24]
00406ac8add x0, x0, 48
00406accmovz x1, 0
00406ad0bl pthread_cond_init@plt
00406ad4ldr x0, [sp+24]
00406ad8ldr w1, [sp+20]
00406adcstr w1, [x0+96]
00406ae0hint
00406ae4ldp x29, x30, [sp], 32
00406ae8ret x30
00406a64
00406aec
00406aecbsem_reset:
00406aecstp x29, x30, [sp-32]!
00406af0add x29, sp, 0
00406af4str x0, [sp+24]
00406af8movz w1, 0
00406afcldr x0, [sp+24]
00406b00bl bsem_init
00406b04hint
00406b08ldp x29, x30, [sp], 32
00406b0cret x30
00406aec
00406aecbsem_reset:
00406aecstp x29, x30, [sp-32]!
00406af0add x29, sp, 0
00406af4str x0, [sp+24]
00406af8movz w1, 0
00406afcldr x0, [sp+24]
00406b00bl bsem_init
00406b04hint
00406b08ldp x29, x30, [sp], 32
00406b0cret x30
00406aec
00406b10
00406b10bsem_post:
00406b10stp x29, x30, [sp-32]!
00406b14add x29, sp, 0
00406b18str x0, [sp+24]
00406b1cldr x0, [sp+24]
00406b20bl pthread_mutex_lock@plt
00406b24ldr x0, [sp+24]
00406b28movz w1, 1
00406b2cstr w1, [x0+96]
00406b30ldr x0, [sp+24]
00406b34add x0, x0, 48
00406b38bl pthread_cond_signal@plt
00406b3cldr x0, [sp+24]
00406b40bl pthread_mutex_unlock@plt
00406b44hint
00406b48ldp x29, x30, [sp], 32
00406b4cret x30
00406b10
00406b10bsem_post:
00406b10stp x29, x30, [sp-32]!
00406b14add x29, sp, 0
00406b18str x0, [sp+24]
00406b1cldr x0, [sp+24]
00406b20bl pthread_mutex_lock@plt
00406b24ldr x0, [sp+24]
00406b28movz w1, 1
00406b2cstr w1, [x0+96]
00406b30ldr x0, [sp+24]
00406b34add x0, x0, 48
00406b38bl pthread_cond_signal@plt
00406b3cldr x0, [sp+24]
00406b40bl pthread_mutex_unlock@plt
00406b44hint
00406b48ldp x29, x30, [sp], 32
00406b4cret x30
00406b10
00406b50
00406b50bsem_post_all:
00406b50stp x29, x30, [sp-32]!
00406b54add x29, sp, 0
00406b58str x0, [sp+24]
00406b5cldr x0, [sp+24]
00406b60bl pthread_mutex_lock@plt
00406b64ldr x0, [sp+24]
00406b68movz w1, 1
00406b6cstr w1, [x0+96]
00406b70ldr x0, [sp+24]
00406b74add x0, x0, 48
00406b78bl pthread_cond_broadcast@plt
00406b7cldr x0, [sp+24]
00406b80bl pthread_mutex_unlock@plt
00406b84hint
00406b88ldp x29, x30, [sp], 32
00406b8cret x30
00406b50
00406b50bsem_post_all:
00406b50stp x29, x30, [sp-32]!
00406b54add x29, sp, 0
00406b58str x0, [sp+24]
00406b5cldr x0, [sp+24]
00406b60bl pthread_mutex_lock@plt
00406b64ldr x0, [sp+24]
00406b68movz w1, 1
00406b6cstr w1, [x0+96]
00406b70ldr x0, [sp+24]
00406b74add x0, x0, 48
00406b78bl pthread_cond_broadcast@plt
00406b7cldr x0, [sp+24]
00406b80bl pthread_mutex_unlock@plt
00406b84hint
00406b88ldp x29, x30, [sp], 32
00406b8cret x30
00406b50
00406b90
00406b90bsem_wait:
00406b90stp x29, x30, [sp-32]!
00406b94add x29, sp, 0
00406b98str x0, [sp+24]
00406b9cldr x0, [sp+24]
00406ba0bl pthread_mutex_lock@plt
00406ba4b 0x406bb8
00406ba8
00406ba8loc_406ba8:
00406ba8ldr x0, [sp+24]
00406bacadd x0, x0, 48
00406bb0ldr x1, [sp+24]
00406bb4bl pthread_cond_wait@plt
00406bb8
00406bb8loc_406bb8:
00406bb8ldr x0, [sp+24]
00406bbcldr w0, [x0+96]
00406bc0subs wzr, w0, 1
00406bc4b.ne 0x406ba8
00406bc8ldr x0, [sp+24]
00406bccstr wzr, [x0+96]
00406bd0ldr x0, [sp+24]
00406bd4bl pthread_mutex_unlock@plt
00406bd8hint
00406bdcldp x29, x30, [sp], 32
00406be0ret x30
00406b90
00406b90bsem_wait:
00406b90stp x29, x30, [sp-32]!
00406b94add x29, sp, 0
00406b98str x0, [sp+24]
00406b9cldr x0, [sp+24]
00406ba0bl pthread_mutex_lock@plt
00406ba4b 0x406bb8
00406ba8
00406ba8loc_406ba8:
00406ba8ldr x0, [sp+24]
00406bacadd x0, x0, 48
00406bb0ldr x1, [sp+24]
00406bb4bl pthread_cond_wait@plt
00406bb8
00406bb8loc_406bb8:
00406bb8ldr x0, [sp+24]
00406bbcldr w0, [x0+96]
00406bc0subs wzr, w0, 1
00406bc4b.ne 0x406ba8
00406bc8ldr x0, [sp+24]
00406bccstr wzr, [x0+96]
00406bd0ldr x0, [sp+24]
00406bd4bl pthread_mutex_unlock@plt
00406bd8hint
00406bdcldp x29, x30, [sp], 32
00406be0ret x30
00406b90
00406be4
00406be4copy_path:
00406be4stp x29, x30, [sp-48]!
00406be8add x29, sp, 0
00406becstr x0, [sp+24]
00406bf0ldr x0, [sp+24]
00406bf4bl strlen@plt
00406bf8add x0, x0, 1
00406bfcbl malloc@plt
00406c00str x0, [sp+40]
00406c04ldr x0, [sp+40]
00406c08subs xzr, x0, 0
00406c0cb.ne 0x406c18
00406c10movz x0, 0
00406c14b 0x406c28
00406c18
00406c18loc_406c18:
00406c18ldr x1, [sp+24]
00406c1cldr x0, [sp+40]
00406c20bl strcpy@plt
00406c24ldr x0, [sp+40]
00406c28
00406c28loc_406c28:
00406c28ldp x29, x30, [sp], 48
00406c2cret x30
00406be4
00406be4copy_path:
00406be4stp x29, x30, [sp-48]!
00406be8add x29, sp, 0
00406becstr x0, [sp+24]
00406bf0ldr x0, [sp+24]
00406bf4bl strlen@plt
00406bf8add x0, x0, 1
00406bfcbl malloc@plt
00406c00str x0, [sp+40]
00406c04ldr x0, [sp+40]
00406c08subs xzr, x0, 0
00406c0cb.ne 0x406c18
00406c10movz x0, 0
00406c14b 0x406c28
00406c18
00406c18loc_406c18:
00406c18ldr x1, [sp+24]
00406c1cldr x0, [sp+40]
00406c20bl strcpy@plt
00406c24ldr x0, [sp+40]
00406c28
00406c28loc_406c28:
00406c28ldp x29, x30, [sp], 48
00406c2cret x30
00406be4
00406c30
00406c30file_write_message:
00406c30stp x29, x30, [sp-64]!
00406c34add x29, sp, 0
00406c38str x0, [sp+40]
00406c3cstr x1, [sp+32]
00406c40str x2, [sp+24]
00406c44str x3, [sp+16]
00406c48movz x0, 4097
00406c4cbl malloc@plt
00406c50str x0, [sp+56]
00406c54ldr x0, [sp+56]
00406c58subs xzr, x0, 0
00406c5cb.eq 0x406cec
00406c60ldr x1, [sp+40]
00406c64ldr x0, [sp+56]
00406c68bl strcpy@plt
00406c6cldr x0, [sp+56]
00406c70bl strlen@plt
00406c74mov x1, x0
00406c78ldr x0, [sp+56]
00406c7cadd x0, x0, x1
00406c80movz w1, 47
00406c84strh w1, [x0]
00406c88ldr x1, [sp+32]
00406c8cldr x0, [sp+56]
00406c90bl strcat@plt
00406c94ldr x1, [sp+16]
00406c98ldr x0, [sp+56]
00406c9cbl strcat@plt
00406ca0adrp x0, 8192
00406ca4add x1, x0, 552
00406ca8ldr x0, [sp+56]
00406cacbl fopen@plt
00406cb0str x0, [sp+48]
00406cb4ldr x0, [sp+48]
00406cb8subs xzr, x0, 0
00406cbcb.eq 0x406ce4
00406cc0ldr x0, [sp+24]
00406cc4bl strlen@plt
00406cc8ldr x3, [sp+48]
00406cccmov x2, x0
00406cd0movz x1, 1
00406cd4ldr x0, [sp+24]
00406cd8bl fwrite@plt
00406cdcldr x0, [sp+48]
00406ce0bl fclose@plt
00406ce4
00406ce4loc_406ce4:
00406ce4ldr x0, [sp+56]
00406ce8bl free@plt
00406cec
00406cecloc_406cec:
00406cechint
00406cf0ldp x29, x30, [sp], 64
00406cf4ret x30
00406c30
00406c30file_write_message:
00406c30stp x29, x30, [sp-64]!
00406c34add x29, sp, 0
00406c38str x0, [sp+40]
00406c3cstr x1, [sp+32]
00406c40str x2, [sp+24]
00406c44str x3, [sp+16]
00406c48movz x0, 4097
00406c4cbl malloc@plt
00406c50str x0, [sp+56]
00406c54ldr x0, [sp+56]
00406c58subs xzr, x0, 0
00406c5cb.eq 0x406cec
00406c60ldr x1, [sp+40]
00406c64ldr x0, [sp+56]
00406c68bl strcpy@plt
00406c6cldr x0, [sp+56]
00406c70bl strlen@plt
00406c74mov x1, x0
00406c78ldr x0, [sp+56]
00406c7cadd x0, x0, x1
00406c80movz w1, 47
00406c84strh w1, [x0]
00406c88ldr x1, [sp+32]
00406c8cldr x0, [sp+56]
00406c90bl strcat@plt
00406c94ldr x1, [sp+16]
00406c98ldr x0, [sp+56]
00406c9cbl strcat@plt
00406ca0adrp x0, 8192
00406ca4add x1, x0, 552
00406ca8ldr x0, [sp+56]
00406cacbl fopen@plt
00406cb0str x0, [sp+48]
00406cb4ldr x0, [sp+48]
00406cb8subs xzr, x0, 0
00406cbcb.eq 0x406ce4
00406cc0ldr x0, [sp+24]
00406cc4bl strlen@plt
00406cc8ldr x3, [sp+48]
00406cccmov x2, x0
00406cd0movz x1, 1
00406cd4ldr x0, [sp+24]
00406cd8bl fwrite@plt
00406cdcldr x0, [sp+48]
00406ce0bl fclose@plt
00406ce4
00406ce4loc_406ce4:
00406ce4ldr x0, [sp+56]
00406ce8bl free@plt
00406cec
00406cecloc_406cec:
00406cechint
00406cf0ldp x29, x30, [sp], 64
00406cf4ret x30
00406c30
00406cf8
00406cf8file_ext_get:
00406cf8stp x29, x30, [sp-48]!
00406cfcadd x29, sp, 0
00406d00str x0, [sp+24]
00406d04ldr x0, [sp+24]
00406d08bl strlen@plt
00406d0cmov x1, x0
00406d10ldr x0, [sp+24]
00406d14add x0, x0, x1
00406d18str x0, [sp+40]
00406d1c
00406d1cloc_406d1c:
00406d1cldr x0, [sp+40]
00406d20sub x0, x0, 1
00406d24str x0, [sp+40]
00406d28ldr x0, [sp+40]
00406d2cldrb w0, [x0]
00406d30subs wzr, w0, 46
00406d34b.eq 0x406d60
00406d38ldr x1, [sp+40]
00406d3cldr x0, [sp+24]
00406d40subs xzr, x1, x0
00406d44b.ls 0x406d58
00406d48ldr x0, [sp+40]
00406d4cldrb w0, [x0]
00406d50subs wzr, w0, 47
00406d54b.ne 0x406d1c
00406d58
00406d58loc_406d58:
00406d58movz x0, 0
00406d5cb 0x406d68
00406d60
00406d60loc_406d60:
00406d60hint
00406d64ldr x0, [sp+40]
00406d68
00406d68loc_406d68:
00406d68ldp x29, x30, [sp], 48
00406d6cret x30
00406cf8
00406cf8file_ext_get:
00406cf8stp x29, x30, [sp-48]!
00406cfcadd x29, sp, 0
00406d00str x0, [sp+24]
00406d04ldr x0, [sp+24]
00406d08bl strlen@plt
00406d0cmov x1, x0
00406d10ldr x0, [sp+24]
00406d14add x0, x0, x1
00406d18str x0, [sp+40]
00406d1c
00406d1cloc_406d1c:
00406d1cldr x0, [sp+40]
00406d20sub x0, x0, 1
00406d24str x0, [sp+40]
00406d28ldr x0, [sp+40]
00406d2cldrb w0, [x0]
00406d30subs wzr, w0, 46
00406d34b.eq 0x406d60
00406d38ldr x1, [sp+40]
00406d3cldr x0, [sp+24]
00406d40subs xzr, x1, x0
00406d44b.ls 0x406d58
00406d48ldr x0, [sp+40]
00406d4cldrb w0, [x0]
00406d50subs wzr, w0, 47
00406d54b.ne 0x406d1c
00406d58
00406d58loc_406d58:
00406d58movz x0, 0
00406d5cb 0x406d68
00406d60
00406d60loc_406d60:
00406d60hint
00406d64ldr x0, [sp+40]
00406d68
00406d68loc_406d68:
00406d68ldp x29, x30, [sp], 48
00406d6cret x30
00406cf8
00406d70
00406d70file_ext_find:
00406d70stp x29, x30, [sp-64]!
00406d74add x29, sp, 0
00406d78str x19, [sp+16]
00406d7cstr x0, [sp+40]
00406d80str x1, [sp+32]
00406d84adrp x0, 0x14000
00406d88add x0, x0, 536
00406d8cldr x19, [x0]
00406d90adrp x0, 0x14000
00406d94add x0, x0, 536
00406d98ldr x0, [x0]
00406d9cbl strlen@plt
00406da0mov x2, x0
00406da4mov x1, x19
00406da8ldr x0, [sp+40]
00406dacbl strncmp@plt
00406db0subs wzr, w0, 0
00406db4b.ne 0x406dc0
00406db8movz w0, 2
00406dbcb 0x406e78
00406dc0
00406dc0loc_406dc0:
00406dc0ldr x0, [sp+40]
00406dc4bl file_ext_get
00406dc8str x0, [sp+48]
00406dccldr x0, [sp+48]
00406dd0subs xzr, x0, 0
00406dd4b.eq 0x406e74
00406dd8adrp x0, 0x14000
00406ddcadd x0, x0, 544
00406de0ldr x0, [x0]
00406de4mov x1, x0
00406de8ldr x0, [sp+48]
00406decbl strcmp@plt
00406df0subs wzr, w0, 0
00406df4b.ne 0x406e00
00406df8movz w0, 2
00406dfcb 0x406e78
00406e00
00406e00loc_406e00:
00406e00adrp x0, 0x14000
00406e04add x0, x0, 528
00406e08ldr x0, [x0]
00406e0cadd x0, x0, 1
00406e10ldrb w0, [x0]
00406e14subs wzr, w0, 42
00406e18b.ne 0x406e24
00406e1cmovz w0, 0
00406e20b 0x406e78
00406e24
00406e24loc_406e24:
00406e24str wzr, [sp+60]
00406e28b 0x406e60
00406e2c
00406e2cloc_406e2c:
00406e2cadrp x0, 0x14000
00406e30add x0, x0, 528
00406e34ldrsw x1, [sp+60]
00406e38ldr x0, [x0+3*x1]
00406e3cldr x1, [sp+48]
00406e40bl strcasecmp@plt
00406e44subs wzr, w0, 0
00406e48b.ne 0x406e54
00406e4cmovz w0, 0
00406e50b 0x406e78
00406e54
00406e54loc_406e54:
00406e54ldr w0, [sp+60]
00406e58add w0, w0, 1
00406e5cstr w0, [sp+60]
00406e60
00406e60loc_406e60:
00406e60ldr w0, [sp+60]
00406e64subs wzr, w0, 0
00406e68b.eq 0x406e2c
00406e6cmovz w0, 2
00406e70b 0x406e78
00406e74
00406e74loc_406e74:
00406e74movz w0, 1
00406e78
00406e78loc_406e78:
00406e78ldr x19, [sp+16]
00406e7cldp x29, x30, [sp], 64
00406e80ret x30
00406d70
00406d70file_ext_find:
00406d70stp x29, x30, [sp-64]!
00406d74add x29, sp, 0
00406d78str x19, [sp+16]
00406d7cstr x0, [sp+40]
00406d80str x1, [sp+32]
00406d84adrp x0, 0x14000
00406d88add x0, x0, 536
00406d8cldr x19, [x0]
00406d90adrp x0, 0x14000
00406d94add x0, x0, 536
00406d98ldr x0, [x0]
00406d9cbl strlen@plt
00406da0mov x2, x0
00406da4mov x1, x19
00406da8ldr x0, [sp+40]
00406dacbl strncmp@plt
00406db0subs wzr, w0, 0
00406db4b.ne 0x406dc0
00406db8movz w0, 2
00406dbcb 0x406e78
00406dc0
00406dc0loc_406dc0:
00406dc0ldr x0, [sp+40]
00406dc4bl file_ext_get
00406dc8str x0, [sp+48]
00406dccldr x0, [sp+48]
00406dd0subs xzr, x0, 0
00406dd4b.eq 0x406e74
00406dd8adrp x0, 0x14000
00406ddcadd x0, x0, 544
00406de0ldr x0, [x0]
00406de4mov x1, x0
00406de8ldr x0, [sp+48]
00406decbl strcmp@plt
00406df0subs wzr, w0, 0
00406df4b.ne 0x406e00
00406df8movz w0, 2
00406dfcb 0x406e78
00406e00
00406e00loc_406e00:
00406e00adrp x0, 0x14000
00406e04add x0, x0, 528
00406e08ldr x0, [x0]
00406e0cadd x0, x0, 1
00406e10ldrb w0, [x0]
00406e14subs wzr, w0, 42
00406e18b.ne 0x406e24
00406e1cmovz w0, 0
00406e20b 0x406e78
00406e24
00406e24loc_406e24:
00406e24str wzr, [sp+60]
00406e28b 0x406e60
00406e2c
00406e2cloc_406e2c:
00406e2cadrp x0, 0x14000
00406e30add x0, x0, 528
00406e34ldrsw x1, [sp+60]
00406e38ldr x0, [x0+3*x1]
00406e3cldr x1, [sp+48]
00406e40bl strcasecmp@plt
00406e44subs wzr, w0, 0
00406e48b.ne 0x406e54
00406e4cmovz w0, 0
00406e50b 0x406e78
00406e54
00406e54loc_406e54:
00406e54ldr w0, [sp+60]
00406e58add w0, w0, 1
00406e5cstr w0, [sp+60]
00406e60
00406e60loc_406e60:
00406e60ldr w0, [sp+60]
00406e64subs wzr, w0, 0
00406e68b.eq 0x406e2c
00406e6cmovz w0, 2
00406e70b 0x406e78
00406e74
00406e74loc_406e74:
00406e74movz w0, 1
00406e78
00406e78loc_406e78:
00406e78ldr x19, [sp+16]
00406e7cldp x29, x30, [sp], 64
00406e80ret x30
00406d70
00406e84
00406e84file_rename:
00406e84stp x29, x30, [sp-64]!
00406e88add x29, sp, 0
00406e8cstr x19, [sp+16]
00406e90str x0, [sp+40]
00406e94str xzr, [sp+56]
00406e98ldr x0, [sp+40]
00406e9cbl strlen@plt
00406ea0mov x19, x0
00406ea4adrp x0, 0x14000
00406ea8add x0, x0, 544
00406eacldr x0, [x0]
00406eb0bl strlen@plt
00406eb4add x0, x19, x0
00406eb8add x0, x0, 1
00406ebcbl malloc@plt
00406ec0str x0, [sp+56]
00406ec4ldr x0, [sp+56]
00406ec8subs xzr, x0, 0
00406eccb.eq 0x406f08
00406ed0ldr x1, [sp+40]
00406ed4ldr x0, [sp+56]
00406ed8bl strcpy@plt
00406edcadrp x0, 0x14000
00406ee0add x0, x0, 544
00406ee4ldr x0, [x0]
00406ee8mov x1, x0
00406eecldr x0, [sp+56]
00406ef0bl strcat@plt
00406ef4ldr x1, [sp+56]
00406ef8ldr x0, [sp+40]
00406efcbl rename@plt
00406f00ldr x0, [sp+40]
00406f04bl free@plt
00406f08
00406f08loc_406f08:
00406f08ldr x0, [sp+56]
00406f0cldr x19, [sp+16]
00406f10ldp x29, x30, [sp], 64
00406f14ret x30
00406e84
00406e84file_rename:
00406e84stp x29, x30, [sp-64]!
00406e88add x29, sp, 0
00406e8cstr x19, [sp+16]
00406e90str x0, [sp+40]
00406e94str xzr, [sp+56]
00406e98ldr x0, [sp+40]
00406e9cbl strlen@plt
00406ea0mov x19, x0
00406ea4adrp x0, 0x14000
00406ea8add x0, x0, 544
00406eacldr x0, [x0]
00406eb0bl strlen@plt
00406eb4add x0, x19, x0
00406eb8add x0, x0, 1
00406ebcbl malloc@plt
00406ec0str x0, [sp+56]
00406ec4ldr x0, [sp+56]
00406ec8subs xzr, x0, 0
00406eccb.eq 0x406f08
00406ed0ldr x1, [sp+40]
00406ed4ldr x0, [sp+56]
00406ed8bl strcpy@plt
00406edcadrp x0, 0x14000
00406ee0add x0, x0, 544
00406ee4ldr x0, [x0]
00406ee8mov x1, x0
00406eecldr x0, [sp+56]
00406ef0bl strcat@plt
00406ef4ldr x1, [sp+56]
00406ef8ldr x0, [sp+40]
00406efcbl rename@plt
00406f00ldr x0, [sp+40]
00406f04bl free@plt
00406f08
00406f08loc_406f08:
00406f08ldr x0, [sp+56]
00406f0cldr x19, [sp+16]
00406f10ldp x29, x30, [sp], 64
00406f14ret x30
00406e84
00406f18
00406f18file_get_meta_data:
00406f18stp x29, x30, [sp-208]!
00406f1cadd x29, sp, 0
00406f20str x0, [sp+40]
00406f24str x1, [sp+32]
00406f28str w2, [sp+28]
00406f2cmovz w0, 1
00406f30str w0, [sp+204]
00406f34str xzr, [sp+192]
00406f38add x0, sp, 56
00406f3cmov x1, x0
00406f40ldr x0, [sp+40]
00406f44bl stat@plt
00406f48subs wzr, w0, 0
00406f4cb.ne 0x407008
00406f50ldr x0, [sp+104]
00406f54subs xzr, x0, 35
00406f58b.ls 0x407008
00406f5cadrp x0, 8192
00406f60add x1, x0, 560
00406f64ldr x0, [sp+40]
00406f68bl fopen@plt
00406f6cstr x0, [sp+184]
00406f70ldr x0, [sp+184]
00406f74subs xzr, x0, 0
00406f78b.eq 0x407008
00406f7cmovz w2, 2
00406f80movn x1, 35
00406f84ldr x0, [sp+184]
00406f88bl fseek@plt
00406f8csubs wzr, w0, 0
00406f90b.ne 0x406fd4
00406f94ldr x3, [sp+184]
00406f98movz x2, 36
00406f9cmovz x1, 1
00406fa0ldr x0, [sp+32]
00406fa4bl fread@plt
00406fa8str x0, [sp+192]
00406facldr x0, [sp+192]
00406fb0subs xzr, x0, 36
00406fb4b.ne 0x406fd4
00406fb8ldr x0, [sp+32]
00406fbcldr w1, [x0+32]
00406fc0movz w0, 50198
00406fc4movk w0, 0x6c890000
00406fc8subs wzr, w1, w0
00406fccb.ne 0x406fd4
00406fd0str wzr, [sp+204]
00406fd4
00406fd4loc_406fd4:
00406fd4ldr x0, [sp+184]
00406fd8bl fclose@plt
00406fdcldr w0, [sp+28]
00406fe0subs wzr, w0, 0
00406fe4b.eq 0x407008
00406fe8ldr w0, [sp+204]
00406fecsubs wzr, w0, 0
00406ff0b.ne 0x407008
00406ff4ldr x0, [sp+104]
00406ff8sub x0, x0, 36
00406ffcmov x1, x0
00407000ldr x0, [sp+40]
00407004bl truncate@plt
00407008
00407008loc_407008:
00407008ldr w0, [sp+204]
0040700cldp x29, x30, [sp], 208
00407010ret x30
00406f18
00406f18file_get_meta_data:
00406f18stp x29, x30, [sp-208]!
00406f1cadd x29, sp, 0
00406f20str x0, [sp+40]
00406f24str x1, [sp+32]
00406f28str w2, [sp+28]
00406f2cmovz w0, 1
00406f30str w0, [sp+204]
00406f34str xzr, [sp+192]
00406f38add x0, sp, 56
00406f3cmov x1, x0
00406f40ldr x0, [sp+40]
00406f44bl stat@plt
00406f48subs wzr, w0, 0
00406f4cb.ne 0x407008
00406f50ldr x0, [sp+104]
00406f54subs xzr, x0, 35
00406f58b.ls 0x407008
00406f5cadrp x0, 8192
00406f60add x1, x0, 560
00406f64ldr x0, [sp+40]
00406f68bl fopen@plt
00406f6cstr x0, [sp+184]
00406f70ldr x0, [sp+184]
00406f74subs xzr, x0, 0
00406f78b.eq 0x407008
00406f7cmovz w2, 2
00406f80movn x1, 35
00406f84ldr x0, [sp+184]
00406f88bl fseek@plt
00406f8csubs wzr, w0, 0
00406f90b.ne 0x406fd4
00406f94ldr x3, [sp+184]
00406f98movz x2, 36
00406f9cmovz x1, 1
00406fa0ldr x0, [sp+32]
00406fa4bl fread@plt
00406fa8str x0, [sp+192]
00406facldr x0, [sp+192]
00406fb0subs xzr, x0, 36
00406fb4b.ne 0x406fd4
00406fb8ldr x0, [sp+32]
00406fbcldr w1, [x0+32]
00406fc0movz w0, 50198
00406fc4movk w0, 0x6c890000
00406fc8subs wzr, w1, w0
00406fccb.ne 0x406fd4
00406fd0str wzr, [sp+204]
00406fd4
00406fd4loc_406fd4:
00406fd4ldr x0, [sp+184]
00406fd8bl fclose@plt
00406fdcldr w0, [sp+28]
00406fe0subs wzr, w0, 0
00406fe4b.eq 0x407008
00406fe8ldr w0, [sp+204]
00406fecsubs wzr, w0, 0
00406ff0b.ne 0x407008
00406ff4ldr x0, [sp+104]
00406ff8sub x0, x0, 36
00406ffcmov x1, x0
00407000ldr x0, [sp+40]
00407004bl truncate@plt
00407008
00407008loc_407008:
00407008ldr w0, [sp+204]
0040700cldp x29, x30, [sp], 208
00407010ret x30
00406f18
00407014
00407014file_process:
00407014stp x29, x30, [sp-336]!
00407018add x29, sp, 0
0040701cstr x0, [sp+24]
00407020str xzr, [sp+320]
00407024str xzr, [sp+328]
00407028add x0, sp, 136
0040702cmovz w2, 0
00407030mov x1, x0
00407034ldr x0, [sp+24]
00407038bl file_get_meta_data
0040703csubs wzr, w0, 0
00407040b.eq 0x4071c8
00407044add x0, sp, 176
00407048mov x1, x0
0040704cldr x0, [sp+24]
00407050bl stat@plt
00407054subs wzr, w0, 0
00407058b.ne 0x4071cc
0040705cldr x0, [sp+224]
00407060subs xzr, x0, 15
00407064b.le 0x4071cc
00407068ldr x1, [sp+24]
0040706cadrp x0, 4096
00407070add x0, x0, 568
00407074bl printf@plt
00407078adrp x0, 4096
0040707cadd x1, x0, 560
00407080ldr x0, [sp+24]
00407084bl fopen@plt
00407088str x0, [sp+312]
0040708cldr x0, [sp+312]
00407090subs xzr, x0, 0
00407094b.eq 0x4071cc
00407098movz x0, 0x100000
0040709cbl malloc@plt
004070a0str x0, [sp+304]
004070a4ldr x0, [sp+304]
004070a8subs xzr, x0, 0
004070acb.eq 0x4071bc
004070b0add x1, sp, 136
004070b4add x0, sp, 40
004070b8mov x2, x1
004070bcmov x1, x0
004070c0adrp x0, 0x13000
004070c4add x0, x0, 496
004070c8bl session_key_get
004070ccadd x1, sp, 40
004070d0add x0, sp, 72
004070d4bl crypto_session_init
004070d8
004070d8loc_4070d8:
004070d8ldr x3, [sp+312]
004070dcmovz x2, 0x100000
004070e0movz x1, 1
004070e4ldr x0, [sp+304]
004070e8bl fread@plt
004070ecstr x0, [sp+320]
004070f0ldr x0, [sp+320]
004070f4subs xzr, x0, 16
004070f8b.ls 0x407178
004070fcldr x0, [sp+320]
00407100mov w1, w0
00407104add x0, sp, 72
00407108mov x2, x0
0040710cldr x0, [sp+304]
00407110bl buffer_crypt
00407114ldr x0, [sp+320]
00407118sub x0, xzr, x0
0040711cmovz w2, 1
00407120mov x1, x0
00407124ldr x0, [sp+312]
00407128bl fseek@plt
0040712cldr x3, [sp+312]
00407130ldr x2, [sp+320]
00407134movz x1, 1
00407138ldr x0, [sp+304]
0040713cbl fwrite@plt
00407140movz w2, 1
00407144movz x1, 0x3100000
00407148ldr x0, [sp+312]
0040714cbl fseek@plt
00407150ldr x1, [sp+328]
00407154movz x0, 0x3200000
00407158add x0, x1, x0
0040715cstr x0, [sp+328]
00407160ldr x0, [sp+224]
00407164mov x1, x0
00407168ldr x0, [sp+328]
0040716csubs xzr, x0, x1
00407170b.lo 0x4070d8
00407174b 0x40717c
00407178
00407178loc_407178:
00407178hint
0040717c
0040717cloc_40717c:
0040717cadd x0, sp, 72
00407180bl crypto_session_close
00407184ldr x0, [sp+304]
00407188bl free@plt
0040718cmovz w0, 50198
00407190movk w0, 0x6c890000
00407194str w0, [sp+168]
00407198movz w2, 2
0040719cmovz x1, 0
004071a0ldr x0, [sp+312]
004071a4bl fseek@plt
004071a8add x0, sp, 136
004071acldr x3, [sp+312]
004071b0movz x2, 36
004071b4movz x1, 1
004071b8bl fwrite@plt
004071bc
004071bcloc_4071bc:
004071bcldr x0, [sp+312]
004071c0bl fclose@plt
004071c4b 0x4071cc
004071c8
004071c8loc_4071c8:
004071c8hint
004071cc
004071ccloc_4071cc:
004071ccldp x29, x30, [sp], 336
004071d0ret x30
00407014
00407014file_process:
00407014stp x29, x30, [sp-336]!
00407018add x29, sp, 0
0040701cstr x0, [sp+24]
00407020str xzr, [sp+320]
00407024str xzr, [sp+328]
00407028add x0, sp, 136
0040702cmovz w2, 0
00407030mov x1, x0
00407034ldr x0, [sp+24]
00407038bl file_get_meta_data
0040703csubs wzr, w0, 0
00407040b.eq 0x4071c8
00407044add x0, sp, 176
00407048mov x1, x0
0040704cldr x0, [sp+24]
00407050bl stat@plt
00407054subs wzr, w0, 0
00407058b.ne 0x4071cc
0040705cldr x0, [sp+224]
00407060subs xzr, x0, 15
00407064b.le 0x4071cc
00407068ldr x1, [sp+24]
0040706cadrp x0, 4096
00407070add x0, x0, 568
00407074bl printf@plt
00407078adrp x0, 4096
0040707cadd x1, x0, 560
00407080ldr x0, [sp+24]
00407084bl fopen@plt
00407088str x0, [sp+312]
0040708cldr x0, [sp+312]
00407090subs xzr, x0, 0
00407094b.eq 0x4071cc
00407098movz x0, 0x100000
0040709cbl malloc@plt
004070a0str x0, [sp+304]
004070a4ldr x0, [sp+304]
004070a8subs xzr, x0, 0
004070acb.eq 0x4071bc
004070b0add x1, sp, 136
004070b4add x0, sp, 40
004070b8mov x2, x1
004070bcmov x1, x0
004070c0adrp x0, 0x13000
004070c4add x0, x0, 496
004070c8bl session_key_get
004070ccadd x1, sp, 40
004070d0add x0, sp, 72
004070d4bl crypto_session_init
004070d8
004070d8loc_4070d8:
004070d8ldr x3, [sp+312]
004070dcmovz x2, 0x100000
004070e0movz x1, 1
004070e4ldr x0, [sp+304]
004070e8bl fread@plt
004070ecstr x0, [sp+320]
004070f0ldr x0, [sp+320]
004070f4subs xzr, x0, 16
004070f8b.ls 0x407178
004070fcldr x0, [sp+320]
00407100mov w1, w0
00407104add x0, sp, 72
00407108mov x2, x0
0040710cldr x0, [sp+304]
00407110bl buffer_crypt
00407114ldr x0, [sp+320]
00407118sub x0, xzr, x0
0040711cmovz w2, 1
00407120mov x1, x0
00407124ldr x0, [sp+312]
00407128bl fseek@plt
0040712cldr x3, [sp+312]
00407130ldr x2, [sp+320]
00407134movz x1, 1
00407138ldr x0, [sp+304]
0040713cbl fwrite@plt
00407140movz w2, 1
00407144movz x1, 0x3100000
00407148ldr x0, [sp+312]
0040714cbl fseek@plt
00407150ldr x1, [sp+328]
00407154movz x0, 0x3200000
00407158add x0, x1, x0
0040715cstr x0, [sp+328]
00407160ldr x0, [sp+224]
00407164mov x1, x0
00407168ldr x0, [sp+328]
0040716csubs xzr, x0, x1
00407170b.lo 0x4070d8
00407174b 0x40717c
00407178
00407178loc_407178:
00407178hint
0040717c
0040717cloc_40717c:
0040717cadd x0, sp, 72
00407180bl crypto_session_close
00407184ldr x0, [sp+304]
00407188bl free@plt
0040718cmovz w0, 50198
00407190movk w0, 0x6c890000
00407194str w0, [sp+168]
00407198movz w2, 2
0040719cmovz x1, 0
004071a0ldr x0, [sp+312]
004071a4bl fseek@plt
004071a8add x0, sp, 136
004071acldr x3, [sp+312]
004071b0movz x2, 36
004071b4movz x1, 1
004071b8bl fwrite@plt
004071bc
004071bcloc_4071bc:
004071bcldr x0, [sp+312]
004071c0bl fclose@plt
004071c4b 0x4071cc
004071c8
004071c8loc_4071c8:
004071c8hint
004071cc
004071ccloc_4071cc:
004071ccldp x29, x30, [sp], 336
004071d0ret x30
00407014
004071d4
004071d4files_find_recursive:
004071d4stp x29, x30, [sp-96]!
004071d8add x29, sp, 0
004071dcstr x0, [sp+40]
004071e0str x1, [sp+32]
004071e4str w2, [sp+28]
004071e8movz x0, 4097
004071ecbl malloc@plt
004071f0str x0, [sp+88]
004071f4ldr x0, [sp+88]
004071f8subs xzr, x0, 0
004071fcb.eq 0x40742c
00407200ldr x1, [sp+40]
00407204ldr x0, [sp+88]
00407208bl strcpy@plt
0040720cldr x1, [sp+40]
00407210adrp x0, 4096
00407214add x0, x0, 576
00407218bl printf@plt
0040721cldr x0, [sp+88]
00407220bl opendir@plt
00407224str x0, [sp+80]
00407228ldr x0, [sp+80]
0040722csubs xzr, x0, 0
00407230b.eq 0x4073c4
00407234str xzr, [sp+72]
00407238b 0x4073a4
0040723c
0040723cloc_40723c:
0040723cldr x0, [sp+72]
00407240add x2, x0, 19
00407244adrp x0, 4096
00407248add x1, x0, 600
0040724cmov x0, x2
00407250bl strcmp@plt
00407254subs wzr, w0, 0
00407258b.eq 0x4073a4
0040725cldr x0, [sp+72]
00407260add x2, x0, 19
00407264adrp x0, 4096
00407268add x1, x0, 608
0040726cmov x0, x2
00407270bl strcmp@plt
00407274subs wzr, w0, 0
00407278b.eq 0x4073a4
0040727cldr x0, [sp+72]
00407280ldrb w0, [x0+18]
00407284subs wzr, w0, 4
00407288b.ne 0x4072f4
0040728cldr x1, [sp+40]
00407290ldr x0, [sp+88]
00407294bl strcpy@plt
00407298ldr x0, [sp+88]
0040729cbl strlen@plt
004072a0mov x1, x0
004072a4ldr x0, [sp+88]
004072a8add x0, x0, x1
004072acmovz w1, 47
004072b0strh w1, [x0]
004072b4ldr x0, [sp+72]
004072b8add x0, x0, 19
004072bcmov x1, x0
004072c0ldr x0, [sp+88]
004072c4bl strcat@plt
004072c8ldr x0, [sp+88]
004072ccbl copy_path
004072d0str x0, [sp+48]
004072d4ldr x0, [sp+48]
004072d8subs xzr, x0, 0
004072dcb.eq 0x4073a4
004072e0movz w2, 0
004072e4ldr x1, [sp+32]
004072e8ldr x0, [sp+48]
004072ecbl files_find_recursive
004072f0b 0x4073a4
004072f4
004072f4loc_4072f4:
004072f4ldr x0, [sp+72]
004072f8ldrb w0, [x0+18]
004072fcsubs wzr, w0, 8
00407300b.ne 0x4073a4
00407304ldr x1, [sp+40]
00407308ldr x0, [sp+88]
0040730cbl strcpy@plt
00407310ldr x0, [sp+88]
00407314bl strlen@plt
00407318mov x1, x0
0040731cldr x0, [sp+88]
00407320add x0, x0, x1
00407324movz w1, 47
00407328strh w1, [x0]
0040732cldr x0, [sp+72]
00407330add x0, x0, 19
00407334mov x1, x0
00407338ldr x0, [sp+88]
0040733cbl strcat@plt
00407340ldr x0, [sp+72]
00407344add x2, x0, 19
00407348adrp x0, 0x13000
0040734cadd x1, x0, 528
00407350mov x0, x2
00407354bl file_ext_find
00407358str w0, [sp+68]
0040735cldr w0, [sp+68]
00407360subs wzr, w0, 0
00407364b.ne 0x4073a0
00407368ldr x0, [sp+88]
0040736cbl copy_path
00407370str x0, [sp+56]
00407374ldr x0, [sp+56]
00407378subs xzr, x0, 0
0040737cb.eq 0x4073a0
00407380ldr x0, [sp+56]
00407384bl file_rename
00407388str x0, [sp+56]
0040738cldr x2, [sp+56]
00407390adrp x0, 0
00407394add x1, x0, 20
00407398ldr x0, [sp+32]
0040739cbl thpool_add_work
004073a0
004073a0loc_4073a0:
004073a0hint
004073a4
004073a4loc_4073a4:
004073a4ldr x0, [sp+80]
004073a8bl readdir@plt
004073acstr x0, [sp+72]
004073b0ldr x0, [sp+72]
004073b4subs xzr, x0, 0
004073b8b.ne 0x40723c
004073bcldr x0, [sp+80]
004073c0bl closedir@plt
004073c4
004073c4loc_4073c4:
004073c4adrp x0, 0x13000
004073c8add x0, x0, 536
004073ccldr x1, [x0]
004073d0adrp x0, 4096
004073d4add x3, x0, 616
004073d8adrp x0, 4096
004073dcadd x2, x0, 248
004073e0ldr x0, [sp+40]
004073e4bl file_write_message
004073e8adrp x0, 0x13000
004073ecadd x0, x0, 536
004073f0ldr x1, [x0]
004073f4adrp x0, 4096
004073f8add x3, x0, 624
004073fcadrp x0, 4096
00407400add x2, x0, 368
00407404ldr x0, [sp+40]
00407408bl file_write_message
0040740cldr w0, [sp+28]
00407410subs wzr, w0, 0
00407414b.ne 0x407420
00407418ldr x0, [sp+40]
0040741cbl free@plt
00407420
00407420loc_407420:
00407420ldr x0, [sp+88]
00407424bl free@plt
00407428b 0x407430
0040742c
0040742cloc_40742c:
0040742chint
00407430
00407430loc_407430:
00407430ldp x29, x30, [sp], 96
00407434ret x30
004071d4
004071d4files_find_recursive:
004071d4stp x29, x30, [sp-96]!
004071d8add x29, sp, 0
004071dcstr x0, [sp+40]
004071e0str x1, [sp+32]
004071e4str w2, [sp+28]
004071e8movz x0, 4097
004071ecbl malloc@plt
004071f0str x0, [sp+88]
004071f4ldr x0, [sp+88]
004071f8subs xzr, x0, 0
004071fcb.eq 0x40742c
00407200ldr x1, [sp+40]
00407204ldr x0, [sp+88]
00407208bl strcpy@plt
0040720cldr x1, [sp+40]
00407210adrp x0, 4096
00407214add x0, x0, 576
00407218bl printf@plt
0040721cldr x0, [sp+88]
00407220bl opendir@plt
00407224str x0, [sp+80]
00407228ldr x0, [sp+80]
0040722csubs xzr, x0, 0
00407230b.eq 0x4073c4
00407234str xzr, [sp+72]
00407238b 0x4073a4
0040723c
0040723cloc_40723c:
0040723cldr x0, [sp+72]
00407240add x2, x0, 19
00407244adrp x0, 4096
00407248add x1, x0, 600
0040724cmov x0, x2
00407250bl strcmp@plt
00407254subs wzr, w0, 0
00407258b.eq 0x4073a4
0040725cldr x0, [sp+72]
00407260add x2, x0, 19
00407264adrp x0, 4096
00407268add x1, x0, 608
0040726cmov x0, x2
00407270bl strcmp@plt
00407274subs wzr, w0, 0
00407278b.eq 0x4073a4
0040727cldr x0, [sp+72]
00407280ldrb w0, [x0+18]
00407284subs wzr, w0, 4
00407288b.ne 0x4072f4
0040728cldr x1, [sp+40]
00407290ldr x0, [sp+88]
00407294bl strcpy@plt
00407298ldr x0, [sp+88]
0040729cbl strlen@plt
004072a0mov x1, x0
004072a4ldr x0, [sp+88]
004072a8add x0, x0, x1
004072acmovz w1, 47
004072b0strh w1, [x0]
004072b4ldr x0, [sp+72]
004072b8add x0, x0, 19
004072bcmov x1, x0
004072c0ldr x0, [sp+88]
004072c4bl strcat@plt
004072c8ldr x0, [sp+88]
004072ccbl copy_path
004072d0str x0, [sp+48]
004072d4ldr x0, [sp+48]
004072d8subs xzr, x0, 0
004072dcb.eq 0x4073a4
004072e0movz w2, 0
004072e4ldr x1, [sp+32]
004072e8ldr x0, [sp+48]
004072ecbl files_find_recursive
004072f0b 0x4073a4
004072f4
004072f4loc_4072f4:
004072f4ldr x0, [sp+72]
004072f8ldrb w0, [x0+18]
004072fcsubs wzr, w0, 8
00407300b.ne 0x4073a4
00407304ldr x1, [sp+40]
00407308ldr x0, [sp+88]
0040730cbl strcpy@plt
00407310ldr x0, [sp+88]
00407314bl strlen@plt
00407318mov x1, x0
0040731cldr x0, [sp+88]
00407320add x0, x0, x1
00407324movz w1, 47
00407328strh w1, [x0]
0040732cldr x0, [sp+72]
00407330add x0, x0, 19
00407334mov x1, x0
00407338ldr x0, [sp+88]
0040733cbl strcat@plt
00407340ldr x0, [sp+72]
00407344add x2, x0, 19
00407348adrp x0, 0x13000
0040734cadd x1, x0, 528
00407350mov x0, x2
00407354bl file_ext_find
00407358str w0, [sp+68]
0040735cldr w0, [sp+68]
00407360subs wzr, w0, 0
00407364b.ne 0x4073a0
00407368ldr x0, [sp+88]
0040736cbl copy_path
00407370str x0, [sp+56]
00407374ldr x0, [sp+56]
00407378subs xzr, x0, 0
0040737cb.eq 0x4073a0
00407380ldr x0, [sp+56]
00407384bl file_rename
00407388str x0, [sp+56]
0040738cldr x2, [sp+56]
00407390adrp x0, 0
00407394add x1, x0, 20
00407398ldr x0, [sp+32]
0040739cbl thpool_add_work
004073a0
004073a0loc_4073a0:
004073a0hint
004073a4
004073a4loc_4073a4:
004073a4ldr x0, [sp+80]
004073a8bl readdir@plt
004073acstr x0, [sp+72]
004073b0ldr x0, [sp+72]
004073b4subs xzr, x0, 0
004073b8b.ne 0x40723c
004073bcldr x0, [sp+80]
004073c0bl closedir@plt
004073c4
004073c4loc_4073c4:
004073c4adrp x0, 0x13000
004073c8add x0, x0, 536
004073ccldr x1, [x0]
004073d0adrp x0, 4096
004073d4add x3, x0, 616
004073d8adrp x0, 4096
004073dcadd x2, x0, 248
004073e0ldr x0, [sp+40]
004073e4bl file_write_message
004073e8adrp x0, 0x13000
004073ecadd x0, x0, 536
004073f0ldr x1, [x0]
004073f4adrp x0, 4096
004073f8add x3, x0, 624
004073fcadrp x0, 4096
00407400add x2, x0, 368
00407404ldr x0, [sp+40]
00407408bl file_write_message
0040740cldr w0, [sp+28]
00407410subs wzr, w0, 0
00407414b.ne 0x407420
00407418ldr x0, [sp+40]
0040741cbl free@plt
00407420
00407420loc_407420:
00407420ldr x0, [sp+88]
00407424bl free@plt
00407428b 0x407430
0040742c
0040742cloc_40742c:
0040742chint
00407430
00407430loc_407430:
00407430ldp x29, x30, [sp], 96
00407434ret x30
004071d4
00407438
00407438csprng:
00407438stp x29, x30, [sp-48]!
0040743cadd x29, sp, 0
00407440str x0, [sp+24]
00407444str w1, [sp+20]
00407448adrp x0, 4096
0040744cadd x1, x0, 952
00407450adrp x0, 4096
00407454add x0, x0, 960
00407458bl fopen@plt
0040745cstr x0, [sp+40]
00407460ldr x0, [sp+40]
00407464subs xzr, x0, 0
00407468b.eq 0x40748c
0040746cldrsw x0, [sp+20]
00407470ldr x3, [sp+40]
00407474mov x2, x0
00407478movz x1, 1
0040747cldr x0, [sp+24]
00407480bl fread@plt
00407484ldr x0, [sp+40]
00407488bl fclose@plt
0040748c
0040748cloc_40748c:
0040748chint
00407490ldp x29, x30, [sp], 48
00407494ret x30
00407438
00407438csprng:
00407438stp x29, x30, [sp-48]!
0040743cadd x29, sp, 0
00407440str x0, [sp+24]
00407444str w1, [sp+20]
00407448adrp x0, 4096
0040744cadd x1, x0, 952
00407450adrp x0, 4096
00407454add x0, x0, 960
00407458bl fopen@plt
0040745cstr x0, [sp+40]
00407460ldr x0, [sp+40]
00407464subs xzr, x0, 0
00407468b.eq 0x40748c
0040746cldrsw x0, [sp+20]
00407470ldr x3, [sp+40]
00407474mov x2, x0
00407478movz x1, 1
0040747cldr x0, [sp+24]
00407480bl fread@plt
00407484ldr x0, [sp+40]
00407488bl fclose@plt
0040748c
0040748cloc_40748c:
0040748chint
00407490ldp x29, x30, [sp], 48
00407494ret x30
00407438
00407498
00407498session_key_get:
00407498stp x29, x30, [sp-256]!
0040749cadd x29, sp, 0
004074a0str x0, [sp+40]
004074a4str x1, [sp+32]
004074a8str x2, [sp+24]
004074acmovz x0, 9
004074b0movz x1, 0
004074b4stp x0, x1, [sp+88]
004074b8stp xzr, xzr, [sp+104]
004074bcadd x0, sp, 56
004074c0movz w1, 32
004074c4bl csprng
004074c8ldrb w0, [sp+56]
004074ccand w0, w0, 0xfffffff8
004074d0and w0, w0, 255
004074d4strb w0, [sp+56]
004074d8ldrb w0, [sp+87]
004074dcand w0, w0, 127
004074e0and w0, w0, 255
004074e4strb w0, [sp+87]
004074e8ldrb w0, [sp+87]
004074ecorr w0, w0, 64
004074f0and w0, w0, 255
004074f4strb w0, [sp+87]
004074f8add x1, sp, 88
004074fcadd x0, sp, 56
00407500mov x2, x1
00407504mov x1, x0
00407508ldr x0, [sp+24]
0040750cbl curve25519_donna
00407510add x1, sp, 56
00407514add x0, sp, 224
00407518ldr x2, [sp+40]
0040751cbl curve25519_donna
00407520add x0, sp, 56
00407524movz x2, 32
00407528movz w1, 0
0040752cbl memset@plt
00407530add x0, sp, 120
00407534bl sha256_init
00407538add x1, sp, 224
0040753cadd x0, sp, 120
00407540movz w2, 32
00407544bl sha256_hash
00407548add x0, sp, 120
0040754cldr x1, [sp+32]
00407550bl sha256_done
00407554add x0, sp, 120
00407558movz x2, 104
0040755cmovz w1, 0
00407560bl memset@plt
00407564hint
00407568ldp x29, x30, [sp], 256
0040756cret x30
00407498
00407498session_key_get:
00407498stp x29, x30, [sp-256]!
0040749cadd x29, sp, 0
004074a0str x0, [sp+40]
004074a4str x1, [sp+32]
004074a8str x2, [sp+24]
004074acmovz x0, 9
004074b0movz x1, 0
004074b4stp x0, x1, [sp+88]
004074b8stp xzr, xzr, [sp+104]
004074bcadd x0, sp, 56
004074c0movz w1, 32
004074c4bl csprng
004074c8ldrb w0, [sp+56]
004074ccand w0, w0, 0xfffffff8
004074d0and w0, w0, 255
004074d4strb w0, [sp+56]
004074d8ldrb w0, [sp+87]
004074dcand w0, w0, 127
004074e0and w0, w0, 255
004074e4strb w0, [sp+87]
004074e8ldrb w0, [sp+87]
004074ecorr w0, w0, 64
004074f0and w0, w0, 255
004074f4strb w0, [sp+87]
004074f8add x1, sp, 88
004074fcadd x0, sp, 56
00407500mov x2, x1
00407504mov x1, x0
00407508ldr x0, [sp+24]
0040750cbl curve25519_donna
00407510add x1, sp, 56
00407514add x0, sp, 224
00407518ldr x2, [sp+40]
0040751cbl curve25519_donna
00407520add x0, sp, 56
00407524movz x2, 32
00407528movz w1, 0
0040752cbl memset@plt
00407530add x0, sp, 120
00407534bl sha256_init
00407538add x1, sp, 224
0040753cadd x0, sp, 120
00407540movz w2, 32
00407544bl sha256_hash
00407548add x0, sp, 120
0040754cldr x1, [sp+32]
00407550bl sha256_done
00407554add x0, sp, 120
00407558movz x2, 104
0040755cmovz w1, 0
00407560bl memset@plt
00407564hint
00407568ldp x29, x30, [sp], 256
0040756cret x30
00407498
00407570
00407570buffer_crypt:
00407570stp x29, x30, [sp-48]!
00407574add x29, sp, 0
00407578str x0, [sp+40]
0040757cstr w1, [sp+36]
00407580str x2, [sp+24]
00407584ldr x0, [sp+24]
00407588mov x2, x0
0040758cldr x1, [sp+40]
00407590ldr w0, [sp+36]
00407594bl cc20_encrypt
00407598hint
0040759cldp x29, x30, [sp], 48
004075a0ret x30
00407570
00407570buffer_crypt:
00407570stp x29, x30, [sp-48]!
00407574add x29, sp, 0
00407578str x0, [sp+40]
0040757cstr w1, [sp+36]
00407580str x2, [sp+24]
00407584ldr x0, [sp+24]
00407588mov x2, x0
0040758cldr x1, [sp+40]
00407590ldr w0, [sp+36]
00407594bl cc20_encrypt
00407598hint
0040759cldp x29, x30, [sp], 48
004075a0ret x30
00407570
004075a4
004075a4crypto_session_init:
004075a4stp x29, x30, [sp-32]!
004075a8add x29, sp, 0
004075acstr x0, [sp+24]
004075b0str x1, [sp+16]
004075b4movz x2, 64
004075b8movz w1, 0
004075bcldr x0, [sp+24]
004075c0bl memset@plt
004075c4ldr x3, [sp+24]
004075c8adrp x0, 0x13000
004075ccadd x2, x0, 568
004075d0ldr x1, [sp+16]
004075d4mov x0, x3
004075d8bl cc20_setkey
004075dchint
004075e0ldp x29, x30, [sp], 32
004075e4ret x30
004075a4
004075a4crypto_session_init:
004075a4stp x29, x30, [sp-32]!
004075a8add x29, sp, 0
004075acstr x0, [sp+24]
004075b0str x1, [sp+16]
004075b4movz x2, 64
004075b8movz w1, 0
004075bcldr x0, [sp+24]
004075c0bl memset@plt
004075c4ldr x3, [sp+24]
004075c8adrp x0, 0x13000
004075ccadd x2, x0, 568
004075d0ldr x1, [sp+16]
004075d4mov x0, x3
004075d8bl cc20_setkey
004075dchint
004075e0ldp x29, x30, [sp], 32
004075e4ret x30
004075a4
004075e8
004075e8crypto_session_close:
004075e8stp x29, x30, [sp-32]!
004075ecadd x29, sp, 0
004075f0str x0, [sp+24]
004075f4movz x2, 64
004075f8movz w1, 0
004075fcldr x0, [sp+24]
00407600bl memset@plt
00407604hint
00407608ldp x29, x30, [sp], 32
0040760cret x30
004075e8
004075e8crypto_session_close:
004075e8stp x29, x30, [sp-32]!
004075ecadd x29, sp, 0
004075f0str x0, [sp+24]
004075f4movz x2, 64
004075f8movz w1, 0
004075fcldr x0, [sp+24]
00407600bl memset@plt
00407604hint
00407608ldp x29, x30, [sp], 32
0040760cret x30
004075e8
00407610
00407610usage:
00407610stp x29, x30, [sp-16]!
00407614add x29, sp, 0
00407618movz w0, 10
0040761cbl putchar@plt
00407620adrp x0, 4096
00407624add x0, x0, 976
00407628bl puts@plt
0040762cadrp x0, 4096
00407630add x0, x0, 1000
00407634bl puts@plt
00407638movz w0, 1
0040763cbl exit@plt
00407610
00407610usage:
00407610stp x29, x30, [sp-16]!
00407614add x29, sp, 0
00407618movz w0, 10
0040761cbl putchar@plt
00407620adrp x0, 4096
00407624add x0, x0, 976
00407628bl puts@plt
0040762cadrp x0, 4096
00407630add x0, x0, 1000
00407634bl puts@plt
00407638movz w0, 1
0040763cbl exit@plt
00407610
00407640
00407640parse_args:
00407640stp x29, x30, [sp-64]!
00407644add x29, sp, 0
00407648str w0, [sp+44]
0040764cstr x1, [sp+32]
00407650str x2, [sp+24]
00407654str xzr, [sp+56]
00407658b 0x4076a4
0040765c
0040765cloc_40765c:
0040765cldr w0, [sp+52]
00407660subs wzr, w0, 100
00407664b.eq 0x407678
00407668ldr w0, [sp+52]
0040766csubs wzr, w0, 112
00407670b.eq 0x407688
00407674b 0x4076a0
00407678
00407678loc_407678:
00407678ldr x0, [sp+24]
0040767cmovz w1, 1
00407680strb w1, [x0]
00407684b 0x4076a4
00407688
00407688loc_407688:
00407688adrp x0, 0x13000
0040768cadd x0, x0, 656
00407690ldr x1, [x0]
00407694ldr x0, [sp+24]
00407698str x1, [x0+8]
0040769cb 0x4076a4
004076a0
004076a0loc_4076a0:
004076a0bl usage
004076a4
004076a4loc_4076a4:
004076a4adrp x0, 4096
004076a8add x2, x0, 1072
004076acldr x1, [sp+32]
004076b0ldr w0, [sp+44]
004076b4bl getopt@plt
004076b8str w0, [sp+52]
004076bcldr w0, [sp+52]
004076c0adds wzr, w0, 1
004076c4b.ne 0x40765c
004076c8movz w0, 0
004076ccldp x29, x30, [sp], 64
004076d0ret x30
00407640
00407640parse_args:
00407640stp x29, x30, [sp-64]!
00407644add x29, sp, 0
00407648str w0, [sp+44]
0040764cstr x1, [sp+32]
00407650str x2, [sp+24]
00407654str xzr, [sp+56]
00407658b 0x4076a4
0040765c
0040765cloc_40765c:
0040765cldr w0, [sp+52]
00407660subs wzr, w0, 100
00407664b.eq 0x407678
00407668ldr w0, [sp+52]
0040766csubs wzr, w0, 112
00407670b.eq 0x407688
00407674b 0x4076a0
00407678
00407678loc_407678:
00407678ldr x0, [sp+24]
0040767cmovz w1, 1
00407680strb w1, [x0]
00407684b 0x4076a4
00407688
00407688loc_407688:
00407688adrp x0, 0x13000
0040768cadd x0, x0, 656
00407690ldr x1, [x0]
00407694ldr x0, [sp+24]
00407698str x1, [x0+8]
0040769cb 0x4076a4
004076a0
004076a0loc_4076a0:
004076a0bl usage
004076a4
004076a4loc_4076a4:
004076a4adrp x0, 4096
004076a8add x2, x0, 1072
004076acldr x1, [sp+32]
004076b0ldr w0, [sp+44]
004076b4bl getopt@plt
004076b8str w0, [sp+52]
004076bcldr w0, [sp+52]
004076c0adds wzr, w0, 1
004076c4b.ne 0x40765c
004076c8movz w0, 0
004076ccldp x29, x30, [sp], 64
004076d0ret x30
00407640
004076d4
004076d4cc20_setkey:
004076d4sub sp, sp, 48
004076d8str x0, [sp+24]
004076dcstr x1, [sp+16]
004076e0str x2, [sp+8]
004076e4ldr x0, [sp+8]
004076e8str x0, [sp+32]
004076ecldr x0, [sp+24]
004076f0movz w1, 30821
004076f4movk w1, 0x61700000
004076f8str w1, [x0]
004076fcldr x0, [sp+24]
00407700movz w1, 25710
00407704movk w1, 0x33200000
00407708str w1, [x0+4]
0040770cldr x0, [sp+24]
00407710movz w1, 11570
00407714movk w1, 0x79620000
00407718str w1, [x0+8]
0040771cldr x0, [sp+24]
00407720movz w1, 25972
00407724movk w1, 0x6b200000
00407728str w1, [x0+12]
0040772cstr wzr, [sp+44]
00407730b 0x407764
00407734
00407734loc_407734:
00407734ldrsw x0, [sp+44]
00407738ldr x1, [sp+16]
0040773cadd x0, x1, x0
00407740ldr w1, [sp+44]
00407744add w3, w1, 16
00407748ldrb w2, [x0]
0040774cldr x1, [sp+24]
00407750sbfm x0, x3, 0, 31
00407754strb w2, [x1+x0]
00407758ldr w0, [sp+44]
0040775cadd w0, w0, 1
00407760str w0, [sp+44]
00407764
00407764loc_407764:
00407764ldr w0, [sp+44]
00407768subs wzr, w0, 31
0040776cb.le 0x407734
00407770ldr x0, [sp+24]
00407774str wzr, [x0+48]
00407778ldr x0, [sp+24]
0040777cstr wzr, [x0+52]
00407780ldr x0, [sp+32]
00407784ldr w1, [x0]
00407788ldr x0, [sp+24]
0040778cstr w1, [x0+56]
00407790ldr x0, [sp+32]
00407794ldr w1, [x0+4]
00407798ldr x0, [sp+24]
0040779cstr w1, [x0+60]
004077a0hint
004077a4add sp, sp, 48
004077a8ret x30
004076d4
004076d4cc20_setkey:
004076d4sub sp, sp, 48
004076d8str x0, [sp+24]
004076dcstr x1, [sp+16]
004076e0str x2, [sp+8]
004076e4ldr x0, [sp+8]
004076e8str x0, [sp+32]
004076ecldr x0, [sp+24]
004076f0movz w1, 30821
004076f4movk w1, 0x61700000
004076f8str w1, [x0]
004076fcldr x0, [sp+24]
00407700movz w1, 25710
00407704movk w1, 0x33200000
00407708str w1, [x0+4]
0040770cldr x0, [sp+24]
00407710movz w1, 11570
00407714movk w1, 0x79620000
00407718str w1, [x0+8]
0040771cldr x0, [sp+24]
00407720movz w1, 25972
00407724movk w1, 0x6b200000
00407728str w1, [x0+12]
0040772cstr wzr, [sp+44]
00407730b 0x407764
00407734
00407734loc_407734:
00407734ldrsw x0, [sp+44]
00407738ldr x1, [sp+16]
0040773cadd x0, x1, x0
00407740ldr w1, [sp+44]
00407744add w3, w1, 16
00407748ldrb w2, [x0]
0040774cldr x1, [sp+24]
00407750sbfm x0, x3, 0, 31
00407754strb w2, [x1+x0]
00407758ldr w0, [sp+44]
0040775cadd w0, w0, 1
00407760str w0, [sp+44]
00407764
00407764loc_407764:
00407764ldr w0, [sp+44]
00407768subs wzr, w0, 31
0040776cb.le 0x407734
00407770ldr x0, [sp+24]
00407774str wzr, [x0+48]
00407778ldr x0, [sp+24]
0040777cstr wzr, [x0+52]
00407780ldr x0, [sp+32]
00407784ldr w1, [x0]
00407788ldr x0, [sp+24]
0040778cstr w1, [x0+56]
00407790ldr x0, [sp+32]
00407794ldr w1, [x0+4]
00407798ldr x0, [sp+24]
0040779cstr w1, [x0+60]
004077a0hint
004077a4add sp, sp, 48
004077a8ret x30
004076d4
004077ac
004077acchacha_permute:
004077acsub sp, sp, 48
004077b0str x0, [sp+8]
004077b4strh w1, [sp+6]
004077b8ldr x0, [sp+8]
004077bcstr x0, [sp+40]
004077c0ldrh w0, [sp+6]
004077c4and w0, w0, 15
004077c8str w0, [sp+36]
004077ccldrh w0, [sp+6]
004077d0ubfm w0, w0, 4, 31
004077d4and w0, w0, 65535
004077d8and w0, w0, 15
004077dcstr w0, [sp+32]
004077e0ldrh w0, [sp+6]
004077e4ubfm w0, w0, 8, 31
004077e8and w0, w0, 65535
004077ecand w0, w0, 15
004077f0str w0, [sp+28]
004077f4ldrh w0, [sp+6]
004077f8ubfm w0, w0, 12, 31
004077fcand w0, w0, 65535
00407800and w0, w0, 15
00407804str w0, [sp+24]
00407808ldr w0, [sp+36]
0040780cubfm x0, x0, 62, 61
00407810ldr x1, [sp+40]
00407814add x0, x1, x0
00407818ldr w2, [x0]
0040781cldr w0, [sp+32]
00407820ubfm x0, x0, 62, 61
00407824ldr x1, [sp+40]
00407828add x0, x1, x0
0040782cldr w1, [x0]
00407830ldr w0, [sp+36]
00407834ubfm x0, x0, 62, 61
00407838ldr x3, [sp+40]
0040783cadd x0, x3, x0
00407840add w1, w2, w1
00407844str w1, [x0]
00407848ldr w0, [sp+24]
0040784cubfm x0, x0, 62, 61
00407850ldr x1, [sp+40]
00407854add x0, x1, x0
00407858ldr w1, [x0]
0040785cldr w0, [sp+36]
00407860ubfm x0, x0, 62, 61
00407864ldr x2, [sp+40]
00407868add x0, x2, x0
0040786cldr w0, [x0]
00407870eor w1, w1, w0
00407874ldr w0, [sp+24]
00407878ubfm x0, x0, 62, 61
0040787cldr x2, [sp+40]
00407880add x0, x2, x0
00407884extr w1, w1, w1, 16
00407888str w1, [x0]
0040788cldr w0, [sp+28]
00407890ubfm x0, x0, 62, 61
00407894ldr x1, [sp+40]
00407898add x0, x1, x0
0040789cldr w2, [x0]
004078a0ldr w0, [sp+24]
004078a4ubfm x0, x0, 62, 61
004078a8ldr x1, [sp+40]
004078acadd x0, x1, x0
004078b0ldr w1, [x0]
004078b4ldr w0, [sp+28]
004078b8ubfm x0, x0, 62, 61
004078bcldr x3, [sp+40]
004078c0add x0, x3, x0
004078c4add w1, w2, w1
004078c8str w1, [x0]
004078ccldr w0, [sp+32]
004078d0ubfm x0, x0, 62, 61
004078d4ldr x1, [sp+40]
004078d8add x0, x1, x0
004078dcldr w1, [x0]
004078e0ldr w0, [sp+28]
004078e4ubfm x0, x0, 62, 61
004078e8ldr x2, [sp+40]
004078ecadd x0, x2, x0
004078f0ldr w0, [x0]
004078f4eor w1, w1, w0
004078f8ldr w0, [sp+32]
004078fcubfm x0, x0, 62, 61
00407900ldr x2, [sp+40]
00407904add x0, x2, x0
00407908extr w1, w1, w1, 20
0040790cstr w1, [x0]
00407910ldr w0, [sp+36]
00407914ubfm x0, x0, 62, 61
00407918ldr x1, [sp+40]
0040791cadd x0, x1, x0
00407920ldr w2, [x0]
00407924ldr w0, [sp+32]
00407928ubfm x0, x0, 62, 61
0040792cldr x1, [sp+40]
00407930add x0, x1, x0
00407934ldr w1, [x0]
00407938ldr w0, [sp+36]
0040793cubfm x0, x0, 62, 61
00407940ldr x3, [sp+40]
00407944add x0, x3, x0
00407948add w1, w2, w1
0040794cstr w1, [x0]
00407950ldr w0, [sp+24]
00407954ubfm x0, x0, 62, 61
00407958ldr x1, [sp+40]
0040795cadd x0, x1, x0
00407960ldr w1, [x0]
00407964ldr w0, [sp+36]
00407968ubfm x0, x0, 62, 61
0040796cldr x2, [sp+40]
00407970add x0, x2, x0
00407974ldr w0, [x0]
00407978eor w1, w1, w0
0040797cldr w0, [sp+24]
00407980ubfm x0, x0, 62, 61
00407984ldr x2, [sp+40]
00407988add x0, x2, x0
0040798cextr w1, w1, w1, 24
00407990str w1, [x0]
00407994ldr w0, [sp+28]
00407998ubfm x0, x0, 62, 61
0040799cldr x1, [sp+40]
004079a0add x0, x1, x0
004079a4ldr w2, [x0]
004079a8ldr w0, [sp+24]
004079acubfm x0, x0, 62, 61
004079b0ldr x1, [sp+40]
004079b4add x0, x1, x0
004079b8ldr w1, [x0]
004079bcldr w0, [sp+28]
004079c0ubfm x0, x0, 62, 61
004079c4ldr x3, [sp+40]
004079c8add x0, x3, x0
004079ccadd w1, w2, w1
004079d0str w1, [x0]
004079d4ldr w0, [sp+32]
004079d8ubfm x0, x0, 62, 61
004079dcldr x1, [sp+40]
004079e0add x0, x1, x0
004079e4ldr w1, [x0]
004079e8ldr w0, [sp+28]
004079ecubfm x0, x0, 62, 61
004079f0ldr x2, [sp+40]
004079f4add x0, x2, x0
004079f8ldr w0, [x0]
004079fceor w1, w1, w0
00407a00ldr w0, [sp+32]
00407a04ubfm x0, x0, 62, 61
00407a08ldr x2, [sp+40]
00407a0cadd x0, x2, x0
00407a10extr w1, w1, w1, 25
00407a14str w1, [x0]
00407a18hint
00407a1cadd sp, sp, 48
00407a20ret x30
004077ac
004077acchacha_permute:
004077acsub sp, sp, 48
004077b0str x0, [sp+8]
004077b4strh w1, [sp+6]
004077b8ldr x0, [sp+8]
004077bcstr x0, [sp+40]
004077c0ldrh w0, [sp+6]
004077c4and w0, w0, 15
004077c8str w0, [sp+36]
004077ccldrh w0, [sp+6]
004077d0ubfm w0, w0, 4, 31
004077d4and w0, w0, 65535
004077d8and w0, w0, 15
004077dcstr w0, [sp+32]
004077e0ldrh w0, [sp+6]
004077e4ubfm w0, w0, 8, 31
004077e8and w0, w0, 65535
004077ecand w0, w0, 15
004077f0str w0, [sp+28]
004077f4ldrh w0, [sp+6]
004077f8ubfm w0, w0, 12, 31
004077fcand w0, w0, 65535
00407800and w0, w0, 15
00407804str w0, [sp+24]
00407808ldr w0, [sp+36]
0040780cubfm x0, x0, 62, 61
00407810ldr x1, [sp+40]
00407814add x0, x1, x0
00407818ldr w2, [x0]
0040781cldr w0, [sp+32]
00407820ubfm x0, x0, 62, 61
00407824ldr x1, [sp+40]
00407828add x0, x1, x0
0040782cldr w1, [x0]
00407830ldr w0, [sp+36]
00407834ubfm x0, x0, 62, 61
00407838ldr x3, [sp+40]
0040783cadd x0, x3, x0
00407840add w1, w2, w1
00407844str w1, [x0]
00407848ldr w0, [sp+24]
0040784cubfm x0, x0, 62, 61
00407850ldr x1, [sp+40]
00407854add x0, x1, x0
00407858ldr w1, [x0]
0040785cldr w0, [sp+36]
00407860ubfm x0, x0, 62, 61
00407864ldr x2, [sp+40]
00407868add x0, x2, x0
0040786cldr w0, [x0]
00407870eor w1, w1, w0
00407874ldr w0, [sp+24]
00407878ubfm x0, x0, 62, 61
0040787cldr x2, [sp+40]
00407880add x0, x2, x0
00407884extr w1, w1, w1, 16
00407888str w1, [x0]
0040788cldr w0, [sp+28]
00407890ubfm x0, x0, 62, 61
00407894ldr x1, [sp+40]
00407898add x0, x1, x0
0040789cldr w2, [x0]
004078a0ldr w0, [sp+24]
004078a4ubfm x0, x0, 62, 61
004078a8ldr x1, [sp+40]
004078acadd x0, x1, x0
004078b0ldr w1, [x0]
004078b4ldr w0, [sp+28]
004078b8ubfm x0, x0, 62, 61
004078bcldr x3, [sp+40]
004078c0add x0, x3, x0
004078c4add w1, w2, w1
004078c8str w1, [x0]
004078ccldr w0, [sp+32]
004078d0ubfm x0, x0, 62, 61
004078d4ldr x1, [sp+40]
004078d8add x0, x1, x0
004078dcldr w1, [x0]
004078e0ldr w0, [sp+28]
004078e4ubfm x0, x0, 62, 61
004078e8ldr x2, [sp+40]
004078ecadd x0, x2, x0
004078f0ldr w0, [x0]
004078f4eor w1, w1, w0
004078f8ldr w0, [sp+32]
004078fcubfm x0, x0, 62, 61
00407900ldr x2, [sp+40]
00407904add x0, x2, x0
00407908extr w1, w1, w1, 20
0040790cstr w1, [x0]
00407910ldr w0, [sp+36]
00407914ubfm x0, x0, 62, 61
00407918ldr x1, [sp+40]
0040791cadd x0, x1, x0
00407920ldr w2, [x0]
00407924ldr w0, [sp+32]
00407928ubfm x0, x0, 62, 61
0040792cldr x1, [sp+40]
00407930add x0, x1, x0
00407934ldr w1, [x0]
00407938ldr w0, [sp+36]
0040793cubfm x0, x0, 62, 61
00407940ldr x3, [sp+40]
00407944add x0, x3, x0
00407948add w1, w2, w1
0040794cstr w1, [x0]
00407950ldr w0, [sp+24]
00407954ubfm x0, x0, 62, 61
00407958ldr x1, [sp+40]
0040795cadd x0, x1, x0
00407960ldr w1, [x0]
00407964ldr w0, [sp+36]
00407968ubfm x0, x0, 62, 61
0040796cldr x2, [sp+40]
00407970add x0, x2, x0
00407974ldr w0, [x0]
00407978eor w1, w1, w0
0040797cldr w0, [sp+24]
00407980ubfm x0, x0, 62, 61
00407984ldr x2, [sp+40]
00407988add x0, x2, x0
0040798cextr w1, w1, w1, 24
00407990str w1, [x0]
00407994ldr w0, [sp+28]
00407998ubfm x0, x0, 62, 61
0040799cldr x1, [sp+40]
004079a0add x0, x1, x0
004079a4ldr w2, [x0]
004079a8ldr w0, [sp+24]
004079acubfm x0, x0, 62, 61
004079b0ldr x1, [sp+40]
004079b4add x0, x1, x0
004079b8ldr w1, [x0]
004079bcldr w0, [sp+28]
004079c0ubfm x0, x0, 62, 61
004079c4ldr x3, [sp+40]
004079c8add x0, x3, x0
004079ccadd w1, w2, w1
004079d0str w1, [x0]
004079d4ldr w0, [sp+32]
004079d8ubfm x0, x0, 62, 61
004079dcldr x1, [sp+40]
004079e0add x0, x1, x0
004079e4ldr w1, [x0]
004079e8ldr w0, [sp+28]
004079ecubfm x0, x0, 62, 61
004079f0ldr x2, [sp+40]
004079f4add x0, x2, x0
004079f8ldr w0, [x0]
004079fceor w1, w1, w0
00407a00ldr w0, [sp+32]
00407a04ubfm x0, x0, 62, 61
00407a08ldr x2, [sp+40]
00407a0cadd x0, x2, x0
00407a10extr w1, w1, w1, 25
00407a14str w1, [x0]
00407a18hint
00407a1cadd sp, sp, 48
00407a20ret x30
004077ac
00407a24
00407a24cc20_stream:
00407a24stp x29, x30, [sp-64]!
00407a28add x29, sp, 0
00407a2cstr x0, [sp+24]
00407a30str x1, [sp+16]
00407a34movn w0, 14271
00407a38strh w0, [sp+40]
00407a3cmovn w0, 9902
00407a40strh w0, [sp+42]
00407a44movn w0, 5533
00407a48strh w0, [sp+44]
00407a4cmovn w0, 1164
00407a50strh w0, [sp+46]
00407a54movn w0, 1455
00407a58strh w0, [sp+48]
00407a5cmovn w0, 13470
00407a60strh w0, [sp+50]
00407a64movn w0, 10125
00407a68strh w0, [sp+52]
00407a6cmovn w0, 5820
00407a70strh w0, [sp+54]
00407a74str wzr, [sp+60]
00407a78b 0x407aa0
00407a7c
00407a7cloc_407a7c:
00407a7cldr x0, [sp+24]
00407a80ldrsw x1, [sp+60]
00407a84ldr w2, [x0+2*x1]
00407a88ldr x0, [sp+16]
00407a8cldrsw x1, [sp+60]
00407a90str w2, [x0+2*x1]
00407a94ldr w0, [sp+60]
00407a98add w0, w0, 1
00407a9cstr w0, [sp+60]
00407aa0
00407aa0loc_407aa0:
00407aa0ldr w0, [sp+60]
00407aa4subs wzr, w0, 15
00407aa8b.le 0x407a7c
00407aacstr wzr, [sp+60]
00407ab0b 0x407afc
00407ab4
00407ab4loc_407ab4:
00407ab4str wzr, [sp+56]
00407ab8b 0x407ae4
00407abc
00407abcloc_407abc:
00407abcldrsw x0, [sp+56]
00407ac0ubfm x0, x0, 63, 62
00407ac4add x1, sp, 40
00407ac8ldrh w0, [x1+x0]
00407accmov w1, w0
00407ad0ldr x0, [sp+16]
00407ad4bl chacha_permute
00407ad8ldr w0, [sp+56]
00407adcadd w0, w0, 1
00407ae0str w0, [sp+56]
00407ae4
00407ae4loc_407ae4:
00407ae4ldr w0, [sp+56]
00407ae8subs wzr, w0, 7
00407aecb.le 0x407abc
00407af0ldr w0, [sp+60]
00407af4add w0, w0, 2
00407af8str w0, [sp+60]
00407afc
00407afcloc_407afc:
00407afcldr w0, [sp+60]
00407b00subs wzr, w0, 19
00407b04b.le 0x407ab4
00407b08str wzr, [sp+60]
00407b0cb 0x407b44
00407b10
00407b10loc_407b10:
00407b10ldr x0, [sp+16]
00407b14ldrsw x1, [sp+60]
00407b18ldr w1, [x0+2*x1]
00407b1cldr x0, [sp+24]
00407b20ldrsw x2, [sp+60]
00407b24ldr w0, [x0+2*x2]
00407b28add w2, w1, w0
00407b2cldr x0, [sp+16]
00407b30ldrsw x1, [sp+60]
00407b34str w2, [x0+2*x1]
00407b38ldr w0, [sp+60]
00407b3cadd w0, w0, 1
00407b40str w0, [sp+60]
00407b44
00407b44loc_407b44:
00407b44ldr w0, [sp+60]
00407b48subs wzr, w0, 15
00407b4cb.le 0x407b10
00407b50ldr x0, [sp+24]
00407b54ldr x0, [x0+48]
00407b58add x1, x0, 1
00407b5cldr x0, [sp+24]
00407b60str x1, [x0+48]
00407b64hint
00407b68ldp x29, x30, [sp], 64
00407b6cret x30
00407a24
00407a24cc20_stream:
00407a24stp x29, x30, [sp-64]!
00407a28add x29, sp, 0
00407a2cstr x0, [sp+24]
00407a30str x1, [sp+16]
00407a34movn w0, 14271
00407a38strh w0, [sp+40]
00407a3cmovn w0, 9902
00407a40strh w0, [sp+42]
00407a44movn w0, 5533
00407a48strh w0, [sp+44]
00407a4cmovn w0, 1164
00407a50strh w0, [sp+46]
00407a54movn w0, 1455
00407a58strh w0, [sp+48]
00407a5cmovn w0, 13470
00407a60strh w0, [sp+50]
00407a64movn w0, 10125
00407a68strh w0, [sp+52]
00407a6cmovn w0, 5820
00407a70strh w0, [sp+54]
00407a74str wzr, [sp+60]
00407a78b 0x407aa0
00407a7c
00407a7cloc_407a7c:
00407a7cldr x0, [sp+24]
00407a80ldrsw x1, [sp+60]
00407a84ldr w2, [x0+2*x1]
00407a88ldr x0, [sp+16]
00407a8cldrsw x1, [sp+60]
00407a90str w2, [x0+2*x1]
00407a94ldr w0, [sp+60]
00407a98add w0, w0, 1
00407a9cstr w0, [sp+60]
00407aa0
00407aa0loc_407aa0:
00407aa0ldr w0, [sp+60]
00407aa4subs wzr, w0, 15
00407aa8b.le 0x407a7c
00407aacstr wzr, [sp+60]
00407ab0b 0x407afc
00407ab4
00407ab4loc_407ab4:
00407ab4str wzr, [sp+56]
00407ab8b 0x407ae4
00407abc
00407abcloc_407abc:
00407abcldrsw x0, [sp+56]
00407ac0ubfm x0, x0, 63, 62
00407ac4add x1, sp, 40
00407ac8ldrh w0, [x1+x0]
00407accmov w1, w0
00407ad0ldr x0, [sp+16]
00407ad4bl chacha_permute
00407ad8ldr w0, [sp+56]
00407adcadd w0, w0, 1
00407ae0str w0, [sp+56]
00407ae4
00407ae4loc_407ae4:
00407ae4ldr w0, [sp+56]
00407ae8subs wzr, w0, 7
00407aecb.le 0x407abc
00407af0ldr w0, [sp+60]
00407af4add w0, w0, 2
00407af8str w0, [sp+60]
00407afc
00407afcloc_407afc:
00407afcldr w0, [sp+60]
00407b00subs wzr, w0, 19
00407b04b.le 0x407ab4
00407b08str wzr, [sp+60]
00407b0cb 0x407b44
00407b10
00407b10loc_407b10:
00407b10ldr x0, [sp+16]
00407b14ldrsw x1, [sp+60]
00407b18ldr w1, [x0+2*x1]
00407b1cldr x0, [sp+24]
00407b20ldrsw x2, [sp+60]
00407b24ldr w0, [x0+2*x2]
00407b28add w2, w1, w0
00407b2cldr x0, [sp+16]
00407b30ldrsw x1, [sp+60]
00407b34str w2, [x0+2*x1]
00407b38ldr w0, [sp+60]
00407b3cadd w0, w0, 1
00407b40str w0, [sp+60]
00407b44
00407b44loc_407b44:
00407b44ldr w0, [sp+60]
00407b48subs wzr, w0, 15
00407b4cb.le 0x407b10
00407b50ldr x0, [sp+24]
00407b54ldr x0, [x0+48]
00407b58add x1, x0, 1
00407b5cldr x0, [sp+24]
00407b60str x1, [x0+48]
00407b64hint
00407b68ldp x29, x30, [sp], 64
00407b6cret x30
00407a24
00407b70
00407b70cc20_encrypt:
00407b70stp x29, x30, [sp-144]!
00407b74add x29, sp, 0
00407b78str w0, [sp+44]
00407b7cstr x1, [sp+32]
00407b80str x2, [sp+24]
00407b84ldr x0, [sp+32]
00407b88str x0, [sp+128]
00407b8cb 0x407c30
00407b90
00407b90loc_407b90:
00407b90add x0, sp, 56
00407b94mov x1, x0
00407b98ldr x0, [sp+24]
00407b9cbl cc20_stream
00407ba0ldr w2, [sp+44]
00407ba4ldr w1, [sp+44]
00407ba8movz w0, 64
00407bacsubs wzr, w2, 64
00407bb0csel w0, w1, w0, ls
00407bb4str w0, [sp+124]
00407bb8str wzr, [sp+140]
00407bbcb 0x407c00
00407bc0
00407bc0loc_407bc0:
00407bc0ldr w0, [sp+140]
00407bc4ldr x1, [sp+128]
00407bc8add x0, x1, x0
00407bccldrb w2, [x0]
00407bd0ldr w0, [sp+140]
00407bd4add x1, sp, 56
00407bd8ldrb w1, [x1+x0]
00407bdcldr w0, [sp+140]
00407be0ldr x3, [sp+128]
00407be4add x0, x3, x0
00407be8eor w1, w2, w1
00407becand w1, w1, 255
00407bf0strb w1, [x0]
00407bf4ldr w0, [sp+140]
00407bf8add w0, w0, 1
00407bfcstr w0, [sp+140]
00407c00
00407c00loc_407c00:
00407c00ldr w1, [sp+140]
00407c04ldr w0, [sp+124]
00407c08subs wzr, w1, w0
00407c0cb.lo 0x407bc0
00407c10ldr w1, [sp+44]
00407c14ldr w0, [sp+124]
00407c18sub w0, w1, w0
00407c1cstr w0, [sp+44]
00407c20ldr w0, [sp+124]
00407c24ldr x1, [sp+128]
00407c28add x0, x1, x0
00407c2cstr x0, [sp+128]
00407c30
00407c30loc_407c30:
00407c30ldr w0, [sp+44]
00407c34subs wzr, w0, 0
00407c38b.ne 0x407b90
00407c3chint
00407c40hint
00407c44ldp x29, x30, [sp], 144
00407c48ret x30
00407b70
00407b70cc20_encrypt:
00407b70stp x29, x30, [sp-144]!
00407b74add x29, sp, 0
00407b78str w0, [sp+44]
00407b7cstr x1, [sp+32]
00407b80str x2, [sp+24]
00407b84ldr x0, [sp+32]
00407b88str x0, [sp+128]
00407b8cb 0x407c30
00407b90
00407b90loc_407b90:
00407b90add x0, sp, 56
00407b94mov x1, x0
00407b98ldr x0, [sp+24]
00407b9cbl cc20_stream
00407ba0ldr w2, [sp+44]
00407ba4ldr w1, [sp+44]
00407ba8movz w0, 64
00407bacsubs wzr, w2, 64
00407bb0csel w0, w1, w0, ls
00407bb4str w0, [sp+124]
00407bb8str wzr, [sp+140]
00407bbcb 0x407c00
00407bc0
00407bc0loc_407bc0:
00407bc0ldr w0, [sp+140]
00407bc4ldr x1, [sp+128]
00407bc8add x0, x1, x0
00407bccldrb w2, [x0]
00407bd0ldr w0, [sp+140]
00407bd4add x1, sp, 56
00407bd8ldrb w1, [x1+x0]
00407bdcldr w0, [sp+140]
00407be0ldr x3, [sp+128]
00407be4add x0, x3, x0
00407be8eor w1, w2, w1
00407becand w1, w1, 255
00407bf0strb w1, [x0]
00407bf4ldr w0, [sp+140]
00407bf8add w0, w0, 1
00407bfcstr w0, [sp+140]
00407c00
00407c00loc_407c00:
00407c00ldr w1, [sp+140]
00407c04ldr w0, [sp+124]
00407c08subs wzr, w1, w0
00407c0cb.lo 0x407bc0
00407c10ldr w1, [sp+44]
00407c14ldr w0, [sp+124]
00407c18sub w0, w1, w0
00407c1cstr w0, [sp+44]
00407c20ldr w0, [sp+124]
00407c24ldr x1, [sp+128]
00407c28add x0, x1, x0
00407c2cstr x0, [sp+128]
00407c30
00407c30loc_407c30:
00407c30ldr w0, [sp+44]
00407c34subs wzr, w0, 0
00407c38b.ne 0x407b90
00407c3chint
00407c40hint
00407c44ldp x29, x30, [sp], 144
00407c48ret x30
00407b70
00407c4c
00407c4c_fini:
00407c4chint
00407c50stp x29, x30, [sp-16]!
00407c54add x29, sp, 0
00407c58ldp x29, x30, [sp], 16
00407c5cret x30
00407c4c
00407c4c_fini:
00407c4chint
00407c50stp x29, x30, [sp-16]!
00407c54add x29, sp, 0
00407c58ldp x29, x30, [sp], 16
00407c5cret x30
00407c4c
00407c60
00407c60 string ".rodata"
00408434
00408434 struct EH_FRAME_HDR
00408434 version int 1
00408435 eh_frame_ptr_enc uint8 0x1b ; DW_EH_PE_pcrel_sdata4
00408436 fde_count_enc uint8 0x03 ; DW_EH_PE_udata4
00408437 table_enc uint8 0x3b ; DW_EH_PE_datarel_sdata4
00408438 eh_frame_ptr uint32 0x408688
0040843c fde_count int 73
00408440
00408440 struct EH_FRAME_HDR_ENTRY
00408440 initial_loc uint32 0x401400
00408444 fde uint32 0x40869c
00408448
00408448 struct EH_FRAME_HDR_ENTRY
00408448 initial_loc uint32 0x401450
0040844c fde uint32 0x4086b0
00408450
00408450 struct EH_FRAME_HDR_ENTRY
00408450 initial_loc uint32 0x401480
00408454 fde uint32 0x4086c4
00408458
00408458 struct EH_FRAME_HDR_ENTRY
00408458 initial_loc uint32 0x4014bc
0040845c fde uint32 0x4086d8
00408460
00408460 struct EH_FRAME_HDR_ENTRY
00408460 initial_loc uint32 0x4014ec
00408464 fde uint32 0x4086fc
00408468
00408468 struct EH_FRAME_HDR_ENTRY
00408468 initial_loc uint32 0x4014f0
0040846c fde uint32 0x408710
00408470
00408470 struct EH_FRAME_HDR_ENTRY
00408470 initial_loc uint32 0x401748
00408474 fde uint32 0x408730
00408478
00408478 struct EH_FRAME_HDR_ENTRY
00408478 initial_loc uint32 0x40181c
0040847c fde uint32 0x408748
00408480
00408480 struct EH_FRAME_HDR_ENTRY
00408480 initial_loc uint32 0x401898
00408484 fde uint32 0x408760
00408488
00408488 struct EH_FRAME_HDR_ENTRY
00408488 initial_loc uint32 0x401908
0040848c fde uint32 0x408778
00407c60 string ".rodata"
00408434
00408434 struct EH_FRAME_HDR
00408434 version int 1
00408435 eh_frame_ptr_enc uint8 0x1b ; DW_EH_PE_pcrel_sdata4
00408436 fde_count_enc uint8 0x03 ; DW_EH_PE_udata4
00408437 table_enc uint8 0x3b ; DW_EH_PE_datarel_sdata4
00408438 eh_frame_ptr uint32 0x408688
0040843c fde_count int 73
00408440
00408440 struct EH_FRAME_HDR_ENTRY
00408440 initial_loc uint32 0x401400
00408444 fde uint32 0x40869c
00408448
00408448 struct EH_FRAME_HDR_ENTRY
00408448 initial_loc uint32 0x401450
0040844c fde uint32 0x4086b0
00408450
00408450 struct EH_FRAME_HDR_ENTRY
00408450 initial_loc uint32 0x401480
00408454 fde uint32 0x4086c4
00408458
00408458 struct EH_FRAME_HDR_ENTRY
00408458 initial_loc uint32 0x4014bc
0040845c fde uint32 0x4086d8
00408460
00408460 struct EH_FRAME_HDR_ENTRY
00408460 initial_loc uint32 0x4014ec
00408464 fde uint32 0x4086fc
00408468
00408468 struct EH_FRAME_HDR_ENTRY
00408468 initial_loc uint32 0x4014f0
0040846c fde uint32 0x408710
00408470
00408470 struct EH_FRAME_HDR_ENTRY
00408470 initial_loc uint32 0x401748
00408474 fde uint32 0x408730
00408478
00408478 struct EH_FRAME_HDR_ENTRY
00408478 initial_loc uint32 0x40181c
0040847c fde uint32 0x408748
00408480
00408480 struct EH_FRAME_HDR_ENTRY
00408480 initial_loc uint32 0x401898
00408484 fde uint32 0x408760
00408488
00408488 struct EH_FRAME_HDR_ENTRY
00408488 initial_loc uint32 0x401908
0040848c fde uint32 0x408778
Loading..