[*] Binary protection state of ext4.ko
No RELRO No Canary found NX disabled REL No RPATH No RUNPATH Symbols
[*] Function system tear down of ext4.ko
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/modules/5.10.52-axis8/kernel/fs/ext4/ext4.ko @ 0x8001ff8 */
| #include <stdint.h>
|
; (fcn) sym.ext4_setup_system_zone () | void ext4_setup_system_zone (int32_t arg_14h, int32_t arg_44h, int32_t arg_148h, int32_t arg_1ech, int32_t arg1) {
| int32_t var_0h;
| int32_t var_4h;
| int32_t var_8h;
| int32_t var_10h;
| int32_t var_14h;
| int32_t var_18h;
| int32_t var_1ch;
| int32_t var_20h;
| int32_t var_28h;
| int32_t var_2ch;
| int32_t var_30h;
| int32_t var_34h;
| int32_t var_38h;
| int32_t var_3ch;
| r0 = arg1;
0x08001ff8 push {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x08001ffc mov r6, r0 | r6 = r0;
0x08002000 ldr r3, [r0, 0x1f0] | r3 = *(var_0hx1f0);
0x08002004 sub sp, sp, 0x4c |
0x08002008 ldr r5, [r3, 0x20] | r5 = *((r3 + 0x20));
0x0800200c str r5, [sp, 0x28] | var_28h = r5;
0x08002010 ldr fp, [r0, 0x1f0] | fp = *(var_0hx1f0);
0x08002014 mov sl, 1 | sl = 1;
0x08002018 mov r1, 0xdc0 | r1 = 0xdc0;
0x0800201c ldr r3, [fp, 0x1ec] | r3 = *(arg_1ech);
0x08002020 lsl r4, sl, r3 | r4 = sl << r3;
0x08002024 stmdaeq r8, {r2, r3, r4, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r3, r4, r5, r8, sb, sl, ip, sp, lr}");
0x08002028 stmdaeq r8, {r2, r3, r4, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r3, r4, r5, r8, sb, sl, ip, sp, lr}");
0x0800202c ldr r0, [r3, 0x18] | r0 = *((r3 + 0x18));
0x08002030 stmdaeq r8, {r4, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r4, r8, sb, sl, ip, sp, lr}");
0x08002034 subs r8, r0, 0 | r8 = r0 - 0;
| if (r8 == r0) {
0x08002038 beq 0x80023a8 | goto label_5;
| }
0x0800203c cmp r5, 0 |
| if (r5 == 0) {
0x08002040 beq 0x80021e4 | goto label_6;
| }
0x08002044 sub r3, r4, 1 | r3 = r4 - 1;
0x08002048 mov r5, 0 | r5 = 0;
0x0800204c str r3, [sp, 0x2c] | var_2ch = r3;
0x08002050 mov sb, r5 | sb = r5;
0x08002054 b 0x80020c4 |
| while (r4 == 0) {
0x08002058 stmdaeq r4, {r3, r5, r7, sl, fp, ip, lr} | __asm ("stmdaeq r4, {r3, r5, r7, sl, fp, ip, lr}");
0x0800205c mov r2, r0 | r2 = r0;
0x08002060 mov r3, r1 | r3 = r1;
0x08002064 str r4, [sp, 4] | var_4h = r4;
0x08002068 mov r0, r8 | r0 = r8;
0x0800206c str sl, [sp] | *(sp) = sl;
0x08002070 bl 0x8001dd0 | r0 = add_system_zone ()
0x08002074 mov r4, r0 | r4 = r0;
0x08002078 mov r1, r7 | r1 = r7;
0x0800207c mov r0, r6 | r0 = r6;
0x08002080 cmp r4, 0 |
| if (r4 != 0) {
0x08002084 bne 0x8002190 | goto label_2;
| }
0x08002088 stmdaeq r4, {r3, r6, r7, sl, fp, ip, lr} | __asm ("stmdaeq r4, {r3, r6, r7, sl, fp, ip, lr}");
0x0800208c str r4, [sp, 4] | var_4h = r4;
0x08002090 mov r3, r1 | r3 = r1;
0x08002094 ldr r1, [fp, 0x14] | r1 = *(arg_14h);
0x08002098 mov r2, r0 | r2 = r0;
0x0800209c str r1, [sp] | *(sp) = r1;
0x080020a0 mov r0, r8 | r0 = r8;
0x080020a4 bl 0x8001dd0 | r0 = add_system_zone ()
0x080020a8 subs r4, r0, 0 | r4 = r0 - 0;
| if (r4 != r0) {
0x080020ac bne 0x8002190 | goto label_2;
| }
0x080020b0 ldr r3, [sp, 0x28] | r3 = var_28h;
0x080020b4 adds r5, r5, 1 | r5++;
0x080020b8 adc sb, sb, 0 | __asm ("adc sb, sb, 0");
0x080020bc cmp r3, r5 |
| if (r3 < r5) {
0x080020c0 bls 0x80021e4 | goto label_6;
| }
0x080020c4 mov r1, r5 | r1 = r5;
0x080020c8 mov r0, r6 | r0 = r6;
0x080020cc stmdaeq r0, {r2, r5, r8, sb, fp} | __asm ("stmdaeq r0, {r2, r5, r8, sb, fp}");
0x080020d0 mov r3, r0 | r3 = r0;
0x080020d4 mov r1, r5 | r1 = r5;
0x080020d8 mov r0, r6 | r0 = r6;
0x080020dc cmp r3, 0 |
| if (r3 != 0) {
0x080020e0 beq 0x8002140 |
0x080020e4 cmp r5, 4 |
| if (r5 >= 4) {
0x080020e8 bls 0x80020f8 |
0x080020ec ldr r3, [sp, 0x2c] | r3 = var_2ch;
0x080020f0 tst r3, r5 |
| if ((r3 & r5) != 0) {
0x080020f4 bne 0x8002140 | goto label_7;
| }
| }
0x080020f8 ldr r2, [r6, 0x1f0] | r2 = *((r6 + 0x1f0));
0x080020fc ldr r3, [r2, 8] | r3 = *((r2 + 8));
0x08002100 ldr r2, [r2, 0x44] | r2 = *((r2 + 0x44));
0x08002104 umull r4, r7, r3, r5 | r4:r7 = r3 * r5;
0x08002108 ldr r2, [r2, 0x14] | r2 = *((r2 + 0x14));
0x0800210c adds r4, r4, r2 | r4 += r2;
0x08002110 mla r7, r3, sb, r7 | __asm ("mla r7, r3, sb, r7");
0x08002114 adc r7, r7, 0 | __asm ("adc r7, r7, 0");
0x08002118 stmdaeq r0, {r2, r4, r5, r7, sl, fp} | __asm ("stmdaeq r0, {r2, r4, r5, r7, sl, fp}");
0x0800211c mov r2, r4 | r2 = r4;
0x08002120 add r1, r0, 1 | r1 = r0 + 1;
0x08002124 mov ip, 0 |
0x08002128 mov r3, r7 | r3 = r7;
0x0800212c mov r0, r8 | r0 = r8;
0x08002130 stm sp, {r1, ip} | *(sp) = r1;
| *((sp + 4)) = ip;
0x08002134 bl 0x8001dd0 | r0 = add_system_zone ()
0x08002138 subs r4, r0, 0 | r4 = r0 - 0;
| if (r4 != r0) {
0x0800213c bne 0x8002190 | goto label_2;
| }
| }
| label_7:
0x08002140 mov r2, 0 | r2 = 0;
0x08002144 mov r1, r5 | r1 = r5;
0x08002148 mov r0, r6 | r0 = r6;
0x0800214c stmdaeq r0, {r3, r4, r6, r7, r8, sl} | __asm ("stmdaeq r0, {r3, r4, r6, r7, r8, sl}");
0x08002150 mov r7, r0 | r7 = r0;
0x08002154 mov r1, r7 | r1 = r7;
0x08002158 mov r0, r6 | r0 = r6;
0x0800215c stmdaeq r4, {r3, r7, sl, fp, ip, lr} | __asm ("stmdaeq r4, {r3, r7, sl, fp, ip, lr}");
0x08002160 mov r2, r0 | r2 = r0;
0x08002164 mov r3, r1 | r3 = r1;
0x08002168 mov r0, r8 | r0 = r8;
0x0800216c mov r1, 0 | r1 = 0;
0x08002170 str sl, [sp] | *(sp) = sl;
0x08002174 str r1, [sp, 4] | var_4h = r1;
0x08002178 bl 0x8001dd0 | r0 = add_system_zone ()
0x0800217c mov r4, r0 | r4 = r0;
0x08002180 mov r1, r7 | r1 = r7;
0x08002184 mov r0, r6 | r0 = r6;
0x08002188 cmp r4, 0 |
0x0800218c beq 0x8002058 |
| }
| label_2:
0x08002190 mov r0, r8 | r0 = r8;
0x08002194 stmdaeq r8, {r3, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r3, r5, r8, sb, sl, ip, sp, lr}");
0x08002198 subs r5, r0, 0 | r5 = r0 - 0;
| if (r5 == r0) {
0x0800219c beq 0x80021d0 | goto label_8;
| }
0x080021a0 stmdaeq r6, {r2, r3, r6, r7, r8, sb, sl, ip} | __asm ("stmdaeq r6, {r2, r3, r6, r7, r8, sb, sl, ip}");
0x080021a4 stmdaeq r6, {r2, r3, r6, r7, r8, sb, sl, ip} | __asm ("stmdaeq r6, {r2, r3, r6, r7, r8, sb, sl, ip}");
| do {
0x080021a8 mov r0, r5 | r0 = r5;
0x080021ac stmdaeq r8, {r2, r3, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r3, r5, r8, sb, sl, ip, sp, lr}");
0x080021b0 mov r1, r5 | r1 = r5;
0x080021b4 subs r3, r0, 0 | r3 = r0 - 0;
0x080021b8 ldr r0, [r6] | r0 = *(r6);
| if (r3 == r0) {
0x080021bc beq 0x80021cc | goto label_9;
| }
0x080021c0 mov r5, r3 | r5 = r3;
0x080021c4 stmdaeq r8, {r2, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r5, r8, sb, sl, ip, sp, lr}");
0x080021c8 b 0x80021a8 |
| } while (1);
| label_9:
0x080021cc stmdaeq r8, {r2, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r5, r8, sb, sl, ip, sp, lr}");
| label_8:
0x080021d0 mov r0, r8 | r0 = r8;
0x080021d4 stmdaeq r8, {r4, r5, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r4, r5, r8, sb, sl, ip, sp, lr}");
| do {
| label_4:
0x080021d8 mov r0, r4 | r0 = r4;
0x080021dc add sp, sp, 0x4c |
0x080021e0 pop {r4, r5, r6, r7, r8, sb, sl, fp, pc} |
| label_6:
0x080021e4 ldr r3, [r6, 0x1f0] | r3 = *((r6 + 0x1f0));
0x080021e8 ldr r3, [r3, 0x44] | r3 = *((r3 + 0x44));
0x080021ec ldr r2, [r3, 0x5c] | r2 = *((r3 + 0x5c));
0x080021f0 tst r2, 4 |
| if ((r2 & 4) != 0) {
0x080021f4 beq 0x8002208 |
0x080021f8 ldr r2, [fp, 0x44] | r2 = *(arg_44h);
0x080021fc ldr sl, [r2, 0xe0] | sl = *((r2 + 0xe0));
0x08002200 cmp sl, 0 |
| if (sl != 0) {
0x08002204 bne 0x80022a4 | goto label_10;
| }
| }
| label_1:
0x08002208 str r8, [fp, 0x148] | *(arg_148h) = r8;
0x0800220c ldr r3, [r6, 0x1f0] | r3 = *((r6 + 0x1f0));
0x08002210 ldr r4, [r3, 0x4c] | r4 = *((r3 + 0x4c));
0x08002214 ands r4, r4, 8 | r4 &= 8;
0x08002218 beq 0x80021d8 |
| } while (r4 == r4);
0x0800221c stmdaeq r5, {r2, r4, r6, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r2, r4, r6, r7, sl, ip, pc}");
0x08002220 stmdaeq r5, {r2, r4, r6, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r2, r4, r6, r7, sl, ip, pc}");
0x08002224 stmdaeq r8, {r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r6, r8, sb, sl, ip, sp, lr}");
0x08002228 stmdaeq r5, {r3, r4, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r3, r4, r7, sl, ip, pc}");
0x0800222c stmdaeq r5, {r3, r4, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r3, r4, r7, sl, ip, pc}");
0x08002230 stmdaeq r8, {r3, r6, r7, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r3, r6, r7, sb, sl, ip, sp, lr}");
0x08002234 ldr r0, [fp, 0x148] | r0 = *(arg_148h);
0x08002238 stmdaeq r5, {r2, r3, r4, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r2, r3, r4, r7, sl, ip, pc}");
0x0800223c stmdaeq r5, {r2, r3, r4, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r2, r3, r4, r7, sl, ip, pc}");
0x08002240 stmdaeq r8, {r2, r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r6, r8, sb, sl, ip, sp, lr}");
0x08002244 stmdaeq r5, {r3, r5, r6, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r3, r5, r6, r7, sl, ip, pc}");
0x08002248 stmdaeq r5, {r3, r5, r6, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r3, r5, r6, r7, sl, ip, pc}");
0x0800224c mov r4, r0 | r4 = r0;
0x08002250 mov r1, 1 | r1 = 1;
| do {
0x08002254 cmp r4, 0 |
| if (r4 == 0) {
0x08002258 beq 0x800242c | goto label_11;
| }
0x0800225c ldrd r2, r3, [r4, 0x10] | __asm ("ldrd r2, r3, [r4, 0x10]");
0x08002260 mov r0, r5 | r0 = r5;
0x08002264 ldr r8, [r4, 0x18] | r8 = *((r4 + 0x18));
0x08002268 subs ip, r2, 1 |
0x0800226c sbc lr, r3, 0 | __asm ("sbc lr, r3, 0");
0x08002270 adds ip, ip, r8 |
0x08002274 str ip, [sp] | *(sp) = ip;
0x08002278 adc ip, lr, 0 | __asm ("adc ip, lr, 0");
0x0800227c cmp r1, 0 |
0x08002280 str ip, [sp, 4] | var_4h = ip;
| if (r1 == 0) {
0x08002284 movne r1, r7 | r1 = r7;
| }
| if (r1 != 0) {
0x08002288 moveq r1, r6 | r1 = r6;
| }
0x0800228c stmdaeq r8, {r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r6, r8, sb, sl, ip, sp, lr}");
0x08002290 mov r0, r4 | r0 = r4;
0x08002294 stmdaeq r8, {r2, r3, r4, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r3, r4, r8, sb, sl, ip, sp, lr}");
0x08002298 mov r1, 0 | r1 = 0;
0x0800229c mov r4, r0 | r4 = r0;
0x080022a0 b 0x8002254 |
| } while (1);
| label_10:
0x080022a4 cmp sl, 1 |
| if (sl == 1) {
0x080022a8 beq 0x80023bc | goto label_12;
| }
0x080022ac ldr r3, [r3] | r3 = *(r3);
0x080022b0 cmp sl, r3 |
| if (sl > r3) {
0x080022b4 bhi 0x80023bc | goto label_12;
| }
0x080022b8 mov r3, 0xa0 | r3 = 0xa0;
0x080022bc mov r1, sl | r1 = sl;
0x080022c0 str r3, [sp] | *(sp) = r3;
0x080022c4 mov r0, r6 | r0 = r6;
0x080022c8 stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr} | __asm ("stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr}");
0x080022cc stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr} | __asm ("stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr}");
0x080022d0 mov r2, 1 | r2 = 1;
0x080022d4 stmdaeq r2, {r2, r3, r4, r7, r8, sb} | __asm ("stmdaeq r2, {r2, r3, r4, r7, r8, sb}");
0x080022d8 cmn r0, 0x1000 |
0x080022dc mov sb, r0 | sb = r0;
| if (r0 <= 0x1000) {
0x080022e0 movhi r4, r0 | r4 = r0;
| }
| if (r0 > 0x1000) {
0x080022e4 bhi 0x8002394 | goto label_13;
| }
0x080022e8 ldr r3, [r6, 0x10] | r3 = *((r6 + 0x10));
0x080022ec ldr r0, [r0, 0x30] | r0 = *((r0 + 0x30));
0x080022f0 ldrb r2, [r6, 0xc] | r2 = *((r6 + 0xc));
0x080022f4 subs r3, r3, 1 | r3--;
0x080022f8 sbc r1, r1, r1 | __asm ("sbc r1, r1, r1");
0x080022fc ldr ip, [sb, 0x34] | ip = *((sb + 0x34));
0x08002300 adds r3, r3, r0 | r3 += r0;
0x08002304 adc r1, r1, ip | __asm ("adc r1, r1, ip");
0x08002308 lsr r7, r3, r2 | r7 = r3 >> r2;
0x0800230c rsb r3, r2, 0x20 | r3 = 0x20 - r2;
0x08002310 subs r2, r2, 0x20 | r2 -= 0x20;
0x08002314 orr r7, r7, r1, lsl r3 | r7 |= (r1 << r3);
| if (r2 < r2) {
0x08002318 orrpl r7, r7, r1, asr r2 | r7 |= (r1 >> r2);
| }
0x0800231c cmp r7, 0 |
| if (r7 == 0) {
0x08002320 beq 0x80023b0 | goto label_14;
| }
0x08002324 mov r4, 0 | r4 = 0;
0x08002328 mov r5, r4 | r5 = r4;
0x0800232c b 0x8002338 |
| while (r0 == 0) {
| label_0:
0x08002330 cmp r7, r5 |
| if (r7 < r5) {
0x08002334 bls 0x800238c | goto label_3;
| }
0x08002338 sub r2, r7, r5 | r2 = r7 - r5;
0x0800233c mov r3, 0 | r3 = 0;
0x08002340 str r2, [sp, 0x3c] | var_3ch = r2;
0x08002344 mov r1, sb | r1 = sb;
0x08002348 add r2, sp, 0x30 | r2 += var_30h;
0x0800234c mov r0, r3 | r0 = r3;
0x08002350 str r5, [sp, 0x38] | var_38h = r5;
0x08002354 stmdaeq r1, {sb, sl, sp, lr, pc} | __asm ("stmdaeq r1, {sb, sl, sp, lr, pc}");
0x08002358 cmp r0, 0 |
| if (r0 < 0) {
0x0800235c blt 0x80023a0 | goto label_15;
| }
| if (r0 != 0) {
0x08002360 addeq r5, r5, 1 | r5++;
| }
0x08002364 beq 0x8002330 |
| }
0x08002368 stm sp, {r0, sl} | *(sp) = r0;
| *((sp + 4)) = sl;
0x0800236c add r5, r5, r0 | r5 += r0;
0x08002370 ldrd r2, r3, [sp, 0x30] | __asm ("ldrd r2, r3, [var_30h]");
0x08002374 mov r0, r8 | r0 = r8;
0x08002378 bl 0x8001dd0 | r0 = add_system_zone ()
0x0800237c subs r4, r0, 0 | r4 = r0 - 0;
| if (r4 >= r0) {
0x08002380 bge 0x8002330 | goto label_0;
| }
0x08002384 cmn r4, 0x75 |
| if (r4 == 0x75) {
0x08002388 beq 0x80023c4 | goto label_16;
| }
| label_3:
0x0800238c mov r0, sb | r0 = sb;
0x08002390 stmdaeq r8, {r3, r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r3, r6, r8, sb, sl, ip, sp, lr}");
| label_13:
0x08002394 cmp r4, 0 |
| if (r4 == 0) {
0x08002398 beq 0x8002208 | goto label_1;
| }
0x0800239c b 0x8002190 | goto label_2;
| label_15:
0x080023a0 mov r4, r0 | r4 = r0;
0x080023a4 b 0x800238c | goto label_3;
| label_5:
0x080023a8 mvn r4, 0xb | r4 = ~0xb;
0x080023ac b 0x80021d8 | goto label_4;
| label_14:
0x080023b0 mov r0, sb | r0 = sb;
0x080023b4 stmdaeq r8, {r3, r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r3, r6, r8, sb, sl, ip, sp, lr}");
0x080023b8 b 0x8002208 | goto label_1;
| label_12:
0x080023bc mvn r4, 0x15 | r4 = ~0x15;
0x080023c0 b 0x8002190 | goto label_2;
| label_16:
0x080023c4 ldr r3, [sp, 0x30] | r3 = var_30h;
0x080023c8 mov r0, r6 | r0 = r6;
0x080023cc ldr r2, [sp, 0x34] | r2 = var_34h;
0x080023d0 ldr r1, [sp, 0x3c] | r1 = var_3ch;
0x080023d4 str r3, [sp, 0x10] | var_10h = r3;
0x080023d8 str r3, [sp] | *(sp) = r3;
0x080023dc subs r3, r3, 1 | r3--;
0x080023e0 str r2, [sp, 0x14] | *(arg_14h) = r2;
0x080023e4 str r2, [sp, 4] | var_4h = r2;
0x080023e8 sbc r2, r2, 0 | __asm ("sbc r2, r2, 0");
0x080023ec adds r1, r1, r3 | r1 += r3;
0x080023f0 str sl, [sp, 0x20] | var_20h = sl;
0x080023f4 adc r3, r2, 0 | __asm ("adc r3, r2, 0");
0x080023f8 str r1, [sp, 0x18] | var_18h = r1;
0x080023fc str r3, [sp, 0x1c] | var_1ch = r3;
0x08002400 mov r2, 0xb3 | r2 = 0xb3;
0x08002404 stmdaeq r5, {r5, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r5, r7, sl, ip, pc}");
0x08002408 stmdaeq r5, {r5, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r5, r7, sl, ip, pc}");
0x0800240c stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr} | __asm ("stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr}");
0x08002410 stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr} | __asm ("stmdaeq r5, {r3, r5, r6, r8, sb, fp, sp, lr}");
0x08002414 str r3, [sp, 8] | var_8h = r3;
0x08002418 mov r3, 0x75 | r3 = 0x75;
0x0800241c stmdaeq r4, {r2, r4, r5, r7, r8, sb, sp, lr} | __asm ("stmdaeq r4, {r2, r4, r5, r7, r8, sb, sp, lr}");
0x08002420 mov r0, sb | r0 = sb;
0x08002424 stmdaeq r8, {r3, r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r3, r6, r8, sb, sl, ip, sp, lr}");
0x08002428 b 0x8002190 | goto label_2;
| label_11:
0x0800242c stmdaeq r8, {r2, r3, r6, r7, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r2, r3, r6, r7, sb, sl, ip, sp, lr}");
0x08002430 stmdaeq r5, {r3, r4, r5, r6, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r3, r4, r5, r6, r7, sl, ip, pc}");
0x08002434 stmdaeq r5, {r3, r4, r5, r6, r7, sl, ip, pc} | __asm ("stmdaeq r5, {r3, r4, r5, r6, r7, sl, ip, pc}");
0x08002438 stmdaeq r8, {r6, r8, sb, sl, ip, sp, lr} | __asm ("stmdaeq r8, {r6, r8, sb, sl, ip, sp, lr}");
0x0800243c b 0x80021d8 | goto label_4;
| }
[*] Function system used 7 times ext4.ko