.section .rodata.ecc_point_mult.str1.4,"aMS",%progbits,1 .align 2 .LC45: .ascii "6 32 72 6 z:1337 144 72 7 t1:1196 256 144 7 rx:1335" .ascii " 464 144 7 ry:1336 672 144 7 sk:1338 880 144 12 pro" .ascii "duct:1028\000" .section .text.ecc_point_mult,"ax",%progbits .align 2 .syntax unified .arm .type ecc_point_mult, %function ecc_point_mult: .LASANPC2762: .fnstart @ args = 8, pretend = 0, frame = 1232 @ frame_needed = 0, uses_anonymous_args = 0 push {r4, r5, r6, r7, r8, r9, r10, fp, lr} .save {r4, r5, r6, r7, r8, r9, r10, fp, lr} .pad #1232 sub sp, sp, #1232 .pad #12 sub sp, sp, #12 push {lr} bl __gnu_mcount_nc str r3, [sp, #64] add r3, sp, #1232 add r3, r3, #8 bic lr, r3, #31 ldr ip, .L3548 str r0, [sp, #44] str r1, [sp, #32] str lr, [sp, #40] ldr r4, [sp, #1280] sub r3, lr, #1120 str ip, [lr, #-1120] ldr ip, .L3548+4 lsr r3, r3, #3 str ip, [lr, #-1116] ldr ip, .L3548+8 add r5, r3, #-1627389952 ldr r3, .L3548+12 str ip, [lr, #-1112] mov r7, lr ldr r0, .L3548+16 ldr lr, .L3548+20 ldr r1, .L3548+24 ldr r6, .L3548+28 mov r8, r2 ldr r2, .L3548+32 ldr fp, [sp, #1284] mov ip, #-234881024 str r3, [r5, #28] str r3, [r5, #52] str r3, [r5, #76] str r3, [r5, #80] str r3, [r5, #104] ldr r3, .L3548+36 str lr, [r5, #12] str ip, [r5, #24] str r2, [r5, #16] str r0, [r5, #48] str r0, [r5, #100] str r2, [r5, #56] str r2, [r5, #108] str r1, [r5, #128] str r1, [r5, #132] str r6, [r5] ldr r3, [r3] str r3, [sp, #1236] mov r3, #0 bl __sanitizer_cov_trace_pc sub r3, r7, #864 mov r2, #144 mov r1, #254 mov r0, r3 str r3, [sp, #24] bl memset sub r3, r7, #656 mov r2, #144 mov r1, #254 mov r0, r3 str r3, [sp, #36] bl memset sub r3, r7, #1088 mov r2, #72 mov r1, #254 mov r0, r3 str r3, [sp, #28] bl memset sub r3, r7, #448 mov r2, #144 mov r0, r3 mov r1, #254 str r3, [sp, #48] bl memset add r0, r4, #20 and r3, r0, #7 lsr r2, r0, #3 add r2, r2, #-1627389952 add r3, r3, #3 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3325 bl __asan_report_load4_noabort .L3325: add r0, r4, #24 and r3, r0, #7 lsr r2, r0, #3 add r2, r2, #-1627389952 add r3, r3, #3 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 ldr r3, [r4, #20] str r3, [sp, #56] beq .L3326 bl __asan_report_load4_noabort .L3326: mov r1, fp mov r0, #0 ldr r7, [r4, #24] bl __sanitizer_cov_trace_const_cmp4 cmp fp, #0 beq .L3327 mov r1, #0 ldr r9, [sp, #48] mov r10, r7 str r7, [sp, #52] mov r7, r1 str r1, [sp, #8] str r9, [sp, #16] str r4, [sp, #60] str fp, [sp, #1284] str r5, [sp, #68] .L3332: bl __sanitizer_cov_trace_pc lsr r3, r8, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3328 mov r0, r8 bl __asan_report_load8_noabort .L3328: lsr r3, r10, #3 add r3, r3, #-1627389952 ldm r8, {r6, fp} ldrsb r3, [r3] add r8, r8, #8 mov r5, r10 cmp r3, #0 beq .L3329 mov r0, r10 bl __asan_report_load8_noabort .L3329: ldrd r4, [r5] ldr r3, [sp, #8] mov r0, r6 adds r4, r6, r4 adc r5, fp, r5 adds r4, r4, r3 adc r5, r5, #0 mov r2, r4 mov r3, r5 mov r1, fp bl __sanitizer_cov_trace_cmp8 cmp fp, r5 cmpeq r6, r4 add r10, r10, #8 beq .L3330 bl __sanitizer_cov_trace_pc mov r3, r5 mov r1, fp mov r2, r4 mov r0, r6 bl __sanitizer_cov_trace_cmp8 cmp r4, r6 sbcs r1, r5, fp movcc r3, #1 movcs r3, #0 str r3, [sp, #8] .L3330: bl __sanitizer_cov_trace_pc lsr r3, r9, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3331 mov r0, r9 bl __asan_report_store8_noabort .L3331: add r7, r7, #1 strd r4, [r9] ldr r0, [sp, #1284] mov r1, r7 bl __sanitizer_cov_trace_cmp4 add r9, r9, #8 ldr r3, [sp, #1284] cmp r7, r3 bne .L3332 ldr r4, [sp, #60] ldr r5, [sp, #68] mov fp, r3 ldr r6, [sp, #16] ldr r7, [sp, #52] bl __sanitizer_cov_trace_pc mov r10, #0 str r10, [sp, #16] str r4, [sp, #52] str fp, [sp, #1284] str r5, [sp, #60] b .L3341 .L3327: bl __sanitizer_cov_trace_pc add r0, r4, #4 and r3, r0, #7 lsr r2, r0, #3 add r2, r2, #-1627389952 add r3, r3, #3 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3334 bl __asan_report_load4_noabort .L3334: ldr r7, [r4, #4] ldr r6, .L3548+40 mov r1, r7 mov r0, r6 bl __sanitizer_cov_trace_const_cmp4 cmp r7, r6 beq .L3335 ldr r3, [sp, #40] sub r8, r3, #376 b .L3336 .L3412: mov r6, r9 .L3341: bl __sanitizer_cov_trace_pc lsr r3, r6, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3337 mov r0, r6 bl __asan_report_load8_noabort .L3337: lsr r3, r7, #3 add r3, r3, #-1627389952 ldm r6, {r8, fp} ldrsb r3, [r3] add r9, r6, #8 mov r5, r7 cmp r3, #0 beq .L3338 mov r0, r7 bl __asan_report_load8_noabort .L3338: ldrd r4, [r5] ldr r3, [sp, #16] mov r0, r8 adds r4, r8, r4 adc r5, fp, r5 adds r4, r4, r3 adc r5, r5, #0 mov r2, r4 mov r3, r5 mov r1, fp bl __sanitizer_cov_trace_cmp8 cmp fp, r5 cmpeq r8, r4 add r7, r7, #8 beq .L3339 bl __sanitizer_cov_trace_pc mov r3, r5 mov r1, fp mov r2, r4 mov r0, r8 bl __sanitizer_cov_trace_cmp8 cmp r4, r8 sbcs r1, r5, fp movcc r3, #1 movcs r3, #0 str r3, [sp, #16] .L3339: add r6, r6, #72 bl __sanitizer_cov_trace_pc lsr r3, r6, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3340 mov r0, r6 bl __asan_report_store8_noabort .L3340: add r10, r10, #1 ldr r0, [sp, #1284] mov r1, r10 strd r4, [r9, #64] bl __sanitizer_cov_trace_cmp4 ldr r3, [sp, #1284] cmp r10, r3 bne .L3412 ldr r4, [sp, #52] mov fp, r3 ldr r5, [sp, #60] bl __sanitizer_cov_trace_pc add r0, r4, #4 lsr r2, r0, #3 add r2, r2, #-1627389952 ldrsb r2, [r2] ldr r3, [sp, #8] eor r8, r3, #1 rsb r8, r8, #0 ldr r3, [sp, #48] and r8, r8, #72 add r8, r3, r8 and r3, r0, #7 add r3, r3, #3 cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3343 bl __asan_report_load4_noabort .L3343: ldr r7, [r4, #4] ldr r6, .L3548+40 mov r1, r7 mov r0, r6 bl __sanitizer_cov_trace_const_cmp4 cmp r7, r6 beq .L3344 .L3336: bl __sanitizer_cov_trace_pc bl __sanitizer_cov_trace_pc lsl r7, fp, #6 sub r7, r7, #1 ldr r1, [sp, #32] lsr r3, r1, #3 str r3, [sp, #76] add r3, r3, #-1627389952 ldrsb r2, [r3] and r3, r1, #7 str r3, [sp, #72] add r3, r3, #3 cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3345 mov r0, r1 bl __asan_report_load4_noabort .L3345: ldr r3, [sp, #32] mov r1, fp mov r0, #0 ldr r6, [r3] bl __sanitizer_cov_trace_const_cmp4 cmp fp, #0 bne .L3410 ldr r3, [sp, #40] sub r2, r3, #792 str r2, [sp, #52] ldr r2, [sp, #32] sub r3, r3, #584 add r2, r2, #4 str r2, [sp, #60] str r3, [sp, #8] b .L3346 .L3410: ldr r3, [sp, #40] mov r10, #0 sub r3, r3, #792 mov r9, r3 str r3, [sp, #52] .L3349: bl __sanitizer_cov_trace_pc lsr r3, r6, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3347 mov r0, r6 bl __asan_report_load8_noabort .L3347: lsr r3, r9, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 ldrd r2, [r6], #8 beq .L3348 mov r0, r9 strd r2, [sp, #8] bl __asan_report_store8_noabort ldrd r2, [sp, #8] .L3348: add r10, r10, #1 mov r1, r10 mov r0, fp strd r2, [r9], #8 bl __sanitizer_cov_trace_cmp4 cmp r10, fp bne .L3349 bl __sanitizer_cov_trace_pc ldr r3, [sp, #32] add r2, r3, #4 and r3, r2, #7 str r2, [sp, #60] lsr r2, r2, #3 add r2, r2, #-1627389952 add r3, r3, #3 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3350 ldr r0, [sp, #60] bl __asan_report_load4_noabort .L3350: ldr r3, [sp, #40] mov r10, #0 sub r6, r3, #584 ldr r3, [sp, #32] str r6, [sp, #8] ldr r9, [r3, #4] .L3353: bl __sanitizer_cov_trace_pc lsr r3, r9, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3351 mov r0, r9 bl __asan_report_load8_noabort .L3351: lsr r3, r6, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 ldrd r2, [r9], #8 beq .L3352 mov r0, r6 strd r2, [sp, #16] bl __asan_report_store8_noabort ldrd r2, [sp, #16] .L3352: add r10, r10, #1 mov r1, r10 mov r0, fp strd r2, [r6], #8 bl __sanitizer_cov_trace_cmp4 cmp r10, fp bne .L3353 .L3346: bl __sanitizer_cov_trace_pc ldr r3, [sp, #64] ldr r1, [sp, #8] ldr r2, [sp, #24] ldr r0, [sp, #52] str r3, [sp] str r4, [sp, #4] ldr r3, [sp, #36] bl xycz_initial_double mov r1, r7 mov r0, #0 bl __sanitizer_cov_trace_const_cmp4 cmp r7, #0 bgt .L3354 .L3372: bl __sanitizer_cov_trace_pc lsr r3, r8, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3355 mov r0, r8 bl __asan_report_load8_noabort .L3355: ldr r3, [r8] ldr ip, [sp, #24] and r3, r3, #1 eor r2, r3, #1 rsb r2, r2, #0 rsb r3, r3, #0 ldr lr, [sp, #36] and r3, r3, #72 and r2, r2, #72 add r0, ip, r3 add ip, ip, r2 add r1, lr, r3 str r4, [sp] add r3, lr, r2 mov r2, ip str r0, [sp, #16] str r1, [sp, #48] str ip, [sp, #64] str r3, [sp, #68] bl xycz_add_c mov r1, fp mov r0, #0 bl __sanitizer_cov_trace_const_cmp4 cmp fp, #0 bne .L3360 b .L3361 .L3354: str fp, [sp, #1284] ldr fp, [sp, #36] mov r9, #1 str r8, [sp, #8] str r5, [sp, #16] .L3371: bl __sanitizer_cov_trace_pc lsr r5, r7, #6 ldr r3, [sp, #8] add r5, r3, r5, lsl #3 lsr r3, r5, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3362 mov r0, r5 bl __asan_report_load8_noabort .L3362: and r3, r7, #63 sub r2, r3, #32 rsb r1, r3, #32 lsl r2, r9, r2 ldr r6, [r5] ldr r8, [r5, #4] orr r2, r2, r9, lsr r1 and r6, r6, r9, lsl r3 and r8, r8, r2 mov r3, r8 mov r2, r6 mov r0, #0 mov r1, #0 bl __sanitizer_cov_trace_const_cmp8 orrs r3, r6, r8 mov r2, r6 mov r3, r8 mov r0, #0 mov r1, #0 moveq r5, #1 movne r5, #0 bl __sanitizer_cov_trace_const_cmp8 orrs r8, r6, r8 movne r3, #1 moveq r3, #0 sub r7, r7, #1 cmp r3, #0 movne r6, #72 ldr r3, [sp, #24] moveq r6, #0 cmp r5, #0 movne r5, #72 moveq r5, #0 add r10, r3, r6 add r8, r3, r5 add r6, fp, r6 add r5, fp, r5 mov r3, r5 mov r2, r8 mov r1, r6 mov r0, r10 str r4, [sp] bl xycz_add_c mov r3, r6 mov r2, r10 mov r1, r5 mov r0, r8 str r4, [sp] bl xycz_add mov r0, #0 mov r1, r7 bl __sanitizer_cov_trace_const_cmp4 cmp r7, #0 bne .L3371 ldr r8, [sp, #8] ldr fp, [sp, #1284] ldr r5, [sp, #16] b .L3372 .L3361: bl __sanitizer_cov_trace_pc add r10, r4, #16 mov r2, #144 mov r1, #254 lsr r7, r10, #3 and r8, r10, #7 ldr r3, [sp, #40] sub r6, r3, #240 mov r0, r6 bl memset add r2, r7, #-1627389952 and r3, r10, #7 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3374 mov r0, r10 bl __asan_report_load1_noabort .L3374: ldr r9, [sp, #28] ldrb r3, [r4, #16] @ zero_extendqisi2 ldr r2, [sp, #48] mov r1, r9 mov r0, r6 bl vli_mult mov r2, r4 mov r1, r6 mov r0, r9 bl vli_mmod_fast ldr r3, [sp, #76] add r2, r3, #-1627389952 ldr r3, [sp, #72] ldrsb r2, [r2] add r3, r3, #3 cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3375 ldr r0, [sp, #32] bl __asan_report_load4_noabort .L3375: ldr r3, [sp, #32] mov r2, #144 mov r1, #254 mov r0, r6 ldr r9, [r3] bl memset add r3, r7, #-1627389952 ldrsb r3, [r3] cmp r8, r3 movlt r2, #0 movge r2, #1 cmp r3, #0 moveq r2, #0 cmp r2, #0 beq .L3376 mov r0, r10 bl __asan_report_load1_noabort .L3376: mov r2, r9 ldr r9, [sp, #28] ldrb r3, [r4, #16] @ zero_extendqisi2 mov r1, r9 mov r0, r6 bl vli_mult mov r2, r4 mov r1, r6 mov r0, r9 bl vli_mmod_fast ldr r3, [sp, #32] add r0, r3, #8 and r3, r0, #7 lsr r2, r0, #3 add r2, r2, #-1627389952 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3377 bl __asan_report_load1_noabort .L3377: ldr r3, [sp, #32] ldr r1, [sp, #28] ldr r2, [sp, #56] ldrb r3, [r3, #8] @ zero_extendqisi2 mov r0, r1 bl vli_mod_inv ldr r1, [sp, #60] lsr r3, r1, #3 add r3, r3, #-1627389952 ldrsb r2, [r3] and r3, r1, #7 add r3, r3, #3 cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3378 mov r0, r1 bl __asan_report_load4_noabort .L3378: ldr r3, [sp, #32] mov r2, #144 mov r1, #254 mov r0, r6 ldr r9, [r3, #4] bl memset add r3, r7, #-1627389952 ldrsb r3, [r3] cmp r8, r3 movlt r2, #0 movge r2, #1 cmp r3, #0 moveq r2, #0 cmp r2, #0 beq .L3379 mov r0, r10 bl __asan_report_load1_noabort .L3379: mov r2, r9 ldr r9, [sp, #28] ldrb r3, [r4, #16] @ zero_extendqisi2 mov r1, r9 mov r0, r6 bl vli_mult mov r2, r4 mov r1, r6 mov r0, r9 bl vli_mmod_fast mov r2, #144 mov r1, #254 mov r0, r6 bl memset add r3, r7, #-1627389952 ldrsb r3, [r3] cmp r8, r3 movlt r2, #0 movge r2, #1 cmp r3, #0 moveq r2, #0 cmp r2, #0 beq .L3381 mov r0, r10 bl __asan_report_load1_noabort .L3381: ldr r9, [sp, #28] ldrb r3, [r4, #16] @ zero_extendqisi2 mov r1, r9 ldr r2, [sp, #16] mov r0, r6 bl vli_mult mov r2, r4 mov r1, r6 mov r0, r9 bl vli_mmod_fast ldrd r0, [sp, #64] ldr r3, [sp, #48] ldr r2, [sp, #16] str r4, [sp] bl xycz_add mov r2, #72 mov r1, #254 ldr r3, [sp, #40] sub r9, r3, #976 mov r0, r9 bl memset mov r2, #144 mov r1, #254 mov r0, r6 bl memset add r3, r7, #-1627389952 ldrsb r3, [r3] cmp r8, r3 movlt r2, #0 movge r2, #1 cmp r3, #0 moveq r2, #0 cmp r2, #0 beq .L3386 mov r0, r10 bl __asan_report_load1_noabort .L3386: ldrb r2, [r4, #16] @ zero_extendqisi2 ldr r1, [sp, #28] mov r0, r6 bl vli_square mov r2, r4 mov r1, r6 mov r0, r9 bl vli_mmod_fast mov r2, #144 mov r1, #254 mov r0, r6 bl memset add r3, r7, #-1627389952 ldrsb r3, [r3] cmp r8, r3 movlt r2, #0 movge r2, #1 cmp r3, #0 moveq r2, #0 cmp r2, #0 beq .L3387 mov r0, r10 bl __asan_report_load1_noabort .L3387: ldrb r3, [r4, #16] @ zero_extendqisi2 ldr r1, [sp, #24] mov r2, r9 mov r0, r6 bl vli_mult mov r2, r4 mov r1, r6 ldr r0, [sp, #24] bl vli_mmod_fast mov r2, #144 mov r1, #254 mov r0, r6 bl memset add r3, r7, #-1627389952 ldrsb r3, [r3] cmp r8, r3 movlt r2, #0 movge r2, #1 cmp r3, #0 moveq r2, #0 cmp r2, #0 beq .L3388 mov r0, r10 bl __asan_report_load1_noabort .L3388: ldrb r3, [r4, #16] @ zero_extendqisi2 ldr r2, [sp, #28] mov r1, r9 mov r0, r6 bl vli_mult add r7, r7, #-1627389952 mov r2, r4 mov r1, r6 mov r0, r9 bl vli_mmod_fast mov r2, #144 mov r1, #254 mov r0, r6 bl memset ldrsb r3, [r7] cmp r8, r3 movlt r8, #0 movge r8, #1 cmp r3, #0 moveq r8, #0 cmp r8, #0 beq .L3389 mov r0, r10 bl __asan_report_load1_noabort .L3389: ldr r7, [sp, #36] ldrb r3, [r4, #16] @ zero_extendqisi2 mov r2, r9 mov r1, r7 mov r0, r6 bl vli_mult mov r2, r4 mov r1, r6 mov r0, r7 bl vli_mmod_fast ldr r1, [sp, #44] lsr r3, r1, #3 add r3, r3, #-1627389952 ldrsb r2, [r3] and r3, r1, #7 add r3, r3, #3 cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3390 mov r0, r1 bl __asan_report_load4_noabort .L3390: ldr r3, [sp, #44] mov r1, fp mov r0, #0 ldr r6, [r3] bl __sanitizer_cov_trace_const_cmp4 cmp fp, #0 movne r4, #0 ldrne r7, [sp, #24] bne .L3404 b .L3392 .L3360: ldr r8, [sp, #28] mov r9, #0 ldr r6, [sp, #52] str r9, [sp, #8] str r8, [sp, #52] strd r4, [sp, #80] .L3397: bl __sanitizer_cov_trace_pc lsr r3, r6, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3393 mov r0, r6 bl __asan_report_load8_noabort .L3393: sub r0, r6, #72 ldr r7, [r6] lsr r3, r0, #3 add r3, r3, #-1627389952 ldr r10, [r6, #4] ldrsb r3, [r3] add r6, r6, #8 cmp r3, #0 beq .L3394 bl __asan_report_load8_noabort .L3394: ldr r2, [sp, #8] ldr r3, [r6, #-80] subs r4, r7, r2 ldr r2, [r6, #-76] sbc r5, r10, #0 subs r4, r4, r3 sbc r5, r5, r2 mov r3, r5 mov r2, r4 mov r0, r7 mov r1, r10 bl __sanitizer_cov_trace_cmp8 cmp r10, r5 cmpeq r7, r4 beq .L3395 bl __sanitizer_cov_trace_pc mov r3, r5 mov r1, r10 mov r2, r4 mov r0, r7 bl __sanitizer_cov_trace_cmp8 cmp r7, r4 sbcs r1, r10, r5 movcc r3, #1 movcs r3, #0 str r3, [sp, #8] .L3395: bl __sanitizer_cov_trace_pc lsr r3, r8, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3396 mov r0, r8 bl __asan_report_store8_noabort .L3396: add r9, r9, #1 strd r4, [r8] mov r1, r9 mov r0, fp bl __sanitizer_cov_trace_cmp4 cmp r9, fp add r8, r8, #8 bne .L3397 ldr r7, [sp, #52] ldrd r4, [sp, #80] bl __sanitizer_cov_trace_pc mov r3, #0 mov r0, #0 mov r1, #0 ldr r6, [sp, #8] mov r2, r6 bl __sanitizer_cov_trace_const_cmp8 orrs r9, r6, #0 beq .L3361 ldr r9, [sp, #56] mov r10, #0 str r10, [sp, #8] str r4, [sp, #52] str r5, [sp, #80] .L3401: bl __sanitizer_cov_trace_pc lsr r3, r7, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3398 mov r0, r7 bl __asan_report_load8_noabort .L3398: lsr r3, r9, #3 add r3, r3, #-1627389952 ldm r7, {r6, r8} ldrsb r3, [r3] add r7, r7, #8 mov r5, r9 cmp r3, #0 beq .L3399 mov r0, r9 bl __asan_report_load8_noabort .L3399: ldrd r4, [r5] ldr r3, [sp, #8] mov r0, r6 adds r4, r6, r4 adc r5, r8, r5 adds r4, r4, r3 adc r5, r5, #0 mov r2, r4 mov r3, r5 mov r1, r8 bl __sanitizer_cov_trace_cmp8 cmp r8, r5 cmpeq r6, r4 add r9, r9, #8 beq .L3400 bl __sanitizer_cov_trace_pc mov r3, r5 mov r1, r8 mov r2, r4 mov r0, r6 bl __sanitizer_cov_trace_cmp8 cmp r4, r6 sbcs r1, r5, r8 movcc r3, #1 movcs r3, #0 str r3, [sp, #8] .L3400: add r10, r10, #1 bl __sanitizer_cov_trace_pc mov r1, r10 mov r0, fp strd r4, [r7, #-8] bl __sanitizer_cov_trace_cmp4 cmp r10, fp bne .L3401 ldr r4, [sp, #52] ldr r5, [sp, #80] b .L3361 .L3392: bl __sanitizer_cov_trace_pc mov r2, r5 mov r3, #0 str r3, [r2], #12 str r3, [r5, #12] str r3, [r2, #4] str r3, [r5, #24] str r3, [r5, #28] str r3, [r5, #48] str r3, [r5, #52] str r3, [r5, #56] str r3, [r5, #76] str r3, [r5, #80] str r3, [r5, #100] str r3, [r5, #104] str r3, [r5, #108] str r3, [r5, #128] str r3, [r5, #132] ldr r3, .L3548+36 ldr r2, [r3] ldr r3, [sp, #1236] eors r2, r3, r2 mov r3, #0 beq .L3411 b .L3547 .L3549: .align 2 .L3548: .word 1102416563 .word .LC45 .word .LASANPC2762 .word -218959118 .word -219021312 .word -218959360 .word -202116109 .word -235802127 .word 62194 .word __stack_chk_guard .word 521 .L3404: bl __sanitizer_cov_trace_pc lsr r3, r7, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3402 mov r0, r7 bl __asan_report_load8_noabort .L3402: lsr r3, r6, #3 add r3, r3, #-1627389952 ldrd r8, [r7], #8 ldrsb r3, [r3] cmp r3, #0 beq .L3403 mov r0, r6 bl __asan_report_store8_noabort .L3403: add r4, r4, #1 mov r1, r4 mov r0, fp strd r8, [r6], #8 bl __sanitizer_cov_trace_cmp4 cmp r4, fp bne .L3404 bl __sanitizer_cov_trace_pc ldr r3, [sp, #44] add r0, r3, #4 and r3, r0, #7 lsr r2, r0, #3 add r2, r2, #-1627389952 add r3, r3, #3 ldrsb r2, [r2] cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3405 bl __asan_report_load4_noabort .L3405: ldr r3, [sp, #44] ldr r9, [sp, #36] mov r4, #0 ldr r8, [r3, #4] .L3408: bl __sanitizer_cov_trace_pc lsr r3, r9, #3 add r3, r3, #-1627389952 ldrsb r3, [r3] cmp r3, #0 beq .L3406 mov r0, r9 bl __asan_report_load8_noabort .L3406: lsr r3, r8, #3 add r3, r3, #-1627389952 ldrd r6, [r9], #8 ldrsb r3, [r3] cmp r3, #0 beq .L3407 mov r0, r8 bl __asan_report_store8_noabort .L3407: add r4, r4, #1 mov r1, r4 mov r0, fp strd r6, [r8], #8 bl __sanitizer_cov_trace_cmp4 cmp r4, fp bne .L3408 b .L3392 .L3335: bl __sanitizer_cov_trace_pc ldr r3, [sp, #64] ldr r6, [sp, #40] ldr r2, [sp, #24] sub r0, r6, #792 sub r1, r6, #584 stm sp, {r3, r4} ldr r3, [sp, #36] str r0, [sp, #52] bl xycz_initial_double mov r1, r7 mov r0, #0 bl __sanitizer_cov_trace_const_cmp4 sub r8, r6, #376 ldr r3, [sp, #32] lsr r2, r3, #3 str r2, [sp, #76] and r2, r3, #7 add r3, r3, #4 str r2, [sp, #72] str r3, [sp, #60] b .L3354 .L3344: bl __sanitizer_cov_trace_pc ldr r1, [sp, #32] lsr r3, r1, #3 str r3, [sp, #76] add r3, r3, #-1627389952 ldrsb r2, [r3] and r3, r1, #7 str r3, [sp, #72] add r3, r3, #3 cmp r3, r2 movlt r3, #0 movge r3, #1 cmp r2, #0 moveq r3, #0 cmp r3, #0 beq .L3409 mov r0, r1 bl __asan_report_load4_noabort .L3409: ldr r3, [sp, #32] mov r1, fp mov r0, #0 ldr r6, [r3] ldr r7, .L3548+40 bl __sanitizer_cov_trace_const_cmp4 b .L3410 .L3547: bl __stack_chk_fail .L3411: add sp, sp, #1232 add sp, sp, #12 @ sp needed mov r0, #0 mov r1, #0 mov r2, #0 mov r3, #0 mov ip, #0 mov lr, #0 pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} .fnend .size ecc_point_mult, .-ecc_point_mult