From af5a1611d5022884636b6bf1f3fc7b0d9f737ea6 Mon Sep 17 00:00:00 2001 From: matthias wagner Date: Sat, 13 May 2023 13:57:56 +0200 Subject: [PATCH] speed limit hit at 250ms per refresh now try pio --- CMakeLists.txt | 2 +- ...son => cache-v2-2e397d5d242cbf496ee1.json} | 2 +- ...on => index-2023-05-13T11-27-53-0064.json} | 4 +- build/.ninja_deps | Bin 30180 -> 30680 bytes build/.ninja_log | 233 +- build/CMakeCache.txt | 2 +- build/CMakeFiles/clacer.dir/src/main.c.obj | Bin 6796 -> 8256 bytes build/CMakeFiles/clacer.dir/src/tft.c.obj | Bin 18048 -> 25020 bytes build/clacer.bin | Bin 20876 -> 23564 bytes build/clacer.dis | 16282 +++++++++------- build/clacer.elf | Bin 254328 -> 306112 bytes build/clacer.elf.map | 2008 +- build/clacer.hex | 2701 +-- build/clacer.uf2 | Bin 41984 -> 47616 bytes .../tmp/PioasmBuild-cache-Release.cmake | 2 + build/pioasm/.ninja_log | 8 +- build/pioasm/build.ninja | 25 +- src/main.c | 37 +- src/main.h | 5 +- src/tft.c | 266 +- src/tft.h | 43 +- src/tft.pio | 57 + 22 files changed, 11580 insertions(+), 10097 deletions(-) rename build/.cmake/api/v1/reply/{cache-v2-c0b90e06688d9807cafc.json => cache-v2-2e397d5d242cbf496ee1.json} (98%) rename build/.cmake/api/v1/reply/{index-2023-05-13T09-04-32-0437.json => index-2023-05-13T11-27-53-0064.json} (94%) create mode 100644 build/pico-sdk/src/rp2_common/pico_cyw43_driver/pioasm/tmp/PioasmBuild-cache-Release.cmake create mode 100644 src/tft.pio diff --git a/CMakeLists.txt b/CMakeLists.txt index 11861ab..e673a5a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,6 +6,6 @@ pico_sdk_init() project(clacer C CXX ASM) file(GLOB SOURCES "src/*.c") add_executable(clacer ${SOURCES}) -target_link_libraries(clacer pico_stdlib hardware_spi) +target_link_libraries(clacer pico_stdlib pico_time hardware_spi) set_target_properties(clacer PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/build) pico_add_extra_outputs(clacer) diff --git a/build/.cmake/api/v1/reply/cache-v2-c0b90e06688d9807cafc.json b/build/.cmake/api/v1/reply/cache-v2-2e397d5d242cbf496ee1.json similarity index 98% rename from build/.cmake/api/v1/reply/cache-v2-c0b90e06688d9807cafc.json rename to build/.cmake/api/v1/reply/cache-v2-2e397d5d242cbf496ee1.json index c1e029c..5eebefe 100644 --- a/build/.cmake/api/v1/reply/cache-v2-c0b90e06688d9807cafc.json +++ b/build/.cmake/api/v1/reply/cache-v2-2e397d5d242cbf496ee1.json @@ -1475,7 +1475,7 @@ } ], "type" : "INTERNAL", - "value" : " /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs" + "value" : " /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs /home/spider_pig/src/c/pico/pico-sdk/src/rp2_common/cmsis /home/spider_pig/src/c/pico/pico-sdk/src/rp2040/hardware_regs" }, { "name" : "PICO_DOXYGEN_PATHS", diff --git a/build/.cmake/api/v1/reply/index-2023-05-13T09-04-32-0437.json b/build/.cmake/api/v1/reply/index-2023-05-13T11-27-53-0064.json similarity index 94% rename from build/.cmake/api/v1/reply/index-2023-05-13T09-04-32-0437.json rename to build/.cmake/api/v1/reply/index-2023-05-13T11-27-53-0064.json index 84c7b75..87884dd 100644 --- a/build/.cmake/api/v1/reply/index-2023-05-13T09-04-32-0437.json +++ b/build/.cmake/api/v1/reply/index-2023-05-13T11-27-53-0064.json @@ -35,7 +35,7 @@ } }, { - "jsonFile" : "cache-v2-c0b90e06688d9807cafc.json", + "jsonFile" : "cache-v2-2e397d5d242cbf496ee1.json", "kind" : "cache", "version" : { @@ -90,7 +90,7 @@ "responses" : [ { - "jsonFile" : "cache-v2-c0b90e06688d9807cafc.json", + "jsonFile" : "cache-v2-2e397d5d242cbf496ee1.json", "kind" : "cache", "version" : { diff --git a/build/.ninja_deps b/build/.ninja_deps index 34cf39a3d3eb4b60f2c35b1c2b7f661e3587cbdf..9bd07f351b7b2bac867de91160b1385f9c5267d7 100644 GIT binary patch delta 4492 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 delta 4299 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 ZhJ<(uG?R=z?un?}^RUk|Oz=$gzX6AQ`UwC4 literal 6796 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 Xf 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 SkzA89^?Yc&!VCwV-v0p2Ah6y5 literal 18048 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 diff --git a/build/clacer.bin b/build/clacer.bin index 2e8674b63c9b96c645b65e531a8aa7b01d7bc574..9ac7835825c45d94c66b7ccab1754bcece505711 100755 GIT binary patch delta 5425 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: 100001d4: 7188ebf2 .word 0x7188ebf2 -100001d8: 10004f44 .word 0x10004f44 -100001dc: 10004f60 .word 0x10004f60 +100001d8: 10005924 .word 0x10005924 +100001dc: 10005948 .word 0x10005948 100001e0: 10000234 .word 0x10000234 100001e4: e71aa390 .word 0xe71aa390 @@ -254,13 +254,13 @@ Disassembly of section .text: 10000232: 4770 bx lr 10000234 : -10000234: 10004f60 .word 0x10004f60 +10000234: 10005948 .word 0x10005948 10000238: 200000c0 .word 0x200000c0 -1000023c: 200002ec .word 0x200002ec -10000240: 1000518c .word 0x1000518c +1000023c: 20000384 .word 0x20000384 +10000240: 10005c0c .word 0x10005c0c 10000244: 20040000 .word 0x20040000 10000248: 20040000 .word 0x20040000 -1000024c: 1000518c .word 0x1000518c +1000024c: 10005c0c .word 0x10005c0c 10000250: 20041000 .word 0x20041000 10000254: 20041000 .word 0x20041000 10000258: 00000000 .word 0x00000000 @@ -268,29 +268,29 @@ Disassembly of section .text: 1000025e : 1000025e: 4809 ldr r0, [pc, #36] @ (10000284 ) -10000260: f002 fe26 bl 10002eb0 +10000260: f003 f900 bl 10003464 10000264: 4700 bx r0 10000266: 0000 .short 0x0000 10000268: e000ed08 .word 0xe000ed08 1000026c: d0000000 .word 0xd0000000 -10000270: 200002f0 .word 0x200002f0 -10000274: 200006b8 .word 0x200006b8 -10000278: 10001bc1 .word 0x10001bc1 -1000027c: 10000355 .word 0x10000355 -10000280: 10001b81 .word 0x10001b81 +10000270: 20000388 .word 0x20000388 +10000274: 20000780 .word 0x20000780 +10000278: 10002175 .word 0x10002175 +1000027c: 1000039d .word 0x1000039d +10000280: 10002135 .word 0x10002135 10000284: 00005657 .word 0x00005657 10000288 <__bi_50>: -10000288: 50520006 5360b3ab 10004ee0 ..RP..`S.N.. +10000288: 50520006 5360b3ab 10005880 ..RP..`S.X.. 10000294 <__bi_38>: -10000294: 50520006 02031c86 10004ef0 ..RP.....N.. +10000294: 50520006 02031c86 10005890 ..RP.....X.. 100002a0 <__bi_30>: -100002a0: 50520006 9da22254 10004ef8 ..RPT"...N.. +100002a0: 50520006 9da22254 10005898 ..RPT"...X.. 100002ac <__bi_22>: -100002ac: 50520005 68f465de 1000518c ..RP.e.h.Q.. +100002ac: 50520005 68f465de 10005c0c ..RP.e.h.\.. 100002b8 <_init>: 100002b8: b5f8 push {r3, r4, r5, r6, r7, lr} @@ -307,8 +307,8 @@ Disassembly of section .text: 100002ca: d000 beq.n 100002ce 100002cc: 4798 blx r3 100002ce: bd10 pop {r4, pc} -100002d0: 200002ec .word 0x200002ec -100002d4: 200002ec .word 0x200002ec +100002d0: 20000384 .word 0x20000384 +100002d4: 20000384 .word 0x20000384 100002d8: 00000000 .word 0x00000000 100002dc : @@ -326,8 +326,8 @@ Disassembly of section .text: 100002f2: d000 beq.n 100002f6 100002f4: 4798 blx r3 100002f6: bd10 pop {r4, pc} -100002f8: 200002ec .word 0x200002ec -100002fc: 200002ec .word 0x200002ec +100002f8: 20000384 .word 0x20000384 +100002fc: 20000384 .word 0x20000384 10000300: 00000000 .word 0x00000000 10000304 <__do_global_dtors_aux>: @@ -346,9 +346,9 @@ Disassembly of section .text: 1000031e: 2301 movs r3, #1 10000320: 7023 strb r3, [r4, #0] 10000322: bd10 pop {r4, pc} -10000324: 200003f0 .word 0x200003f0 +10000324: 20000488 .word 0x20000488 10000328: 00000000 .word 0x00000000 -1000032c: 100040f8 .word 0x100040f8 +1000032c: 10004a20 .word 0x10004a20 10000330 : 10000330: 4b05 ldr r3, [pc, #20] @ (10000348 ) @@ -363,7607 +363,8703 @@ Disassembly of section .text: 10000344: bd10 pop {r4, pc} 10000346: 46c0 nop @ (mov r8, r8) 10000348: 00000000 .word 0x00000000 -1000034c: 200003f4 .word 0x200003f4 -10000350: 100040f8 .word 0x100040f8 +1000034c: 2000048c .word 0x2000048c +10000350: 10004a20 .word 0x10004a20 -10000354
: -10000354: b570 push {r4, r5, r6, lr} -10000356: 2019 movs r0, #25 -10000358: f000 f82c bl 100003b4 -1000035c: 23d0 movs r3, #208 @ 0xd0 -1000035e: 061b lsls r3, r3, #24 -10000360: 2280 movs r2, #128 @ 0x80 -10000362: 0492 lsls r2, r2, #18 -10000364: 625a str r2, [r3, #36] @ 0x24 -10000366: 24d0 movs r4, #208 @ 0xd0 -10000368: 0624 lsls r4, r4, #24 -1000036a: 2580 movs r5, #128 @ 0x80 -1000036c: 04ad lsls r5, r5, #18 -1000036e: 61a5 str r5, [r4, #24] -10000370: 20fa movs r0, #250 @ 0xfa -10000372: f000 ff5e bl 10001232 -10000376: 6165 str r5, [r4, #20] -10000378: 20fa movs r0, #250 @ 0xfa -1000037a: 0080 lsls r0, r0, #2 -1000037c: f000 ff59 bl 10001232 -10000380: e7f1 b.n 10000366 +10000354 : +10000354: b510 push {r4, lr} +10000356: 2b00 cmp r3, #0 +10000358: db02 blt.n 10000360 +1000035a: 6002 str r2, [r0, #0] +1000035c: 6043 str r3, [r0, #4] +1000035e: bd10 pop {r4, pc} +10000360: 4b02 ldr r3, [pc, #8] @ (1000036c ) +10000362: 4a03 ldr r2, [pc, #12] @ (10000370 ) +10000364: 4803 ldr r0, [pc, #12] @ (10000374 ) +10000366: 213f movs r1, #63 @ 0x3f +10000368: f001 fee8 bl 1000213c <__assert_func> +1000036c: 10004a20 .word 0x10004a20 +10000370: 10004a94 .word 0x10004a94 +10000374: 10004a3c .word 0x10004a3c + +10000378 : +10000378: b510 push {r4, lr} +1000037a: b082 sub sp, #8 +1000037c: 0004 movs r4, r0 +1000037e: f001 fa29 bl 100017d4 +10000382: 0002 movs r2, r0 +10000384: 000b movs r3, r1 +10000386: 4668 mov r0, sp +10000388: f7ff ffe4 bl 10000354 +1000038c: 9a00 ldr r2, [sp, #0] +1000038e: 9b01 ldr r3, [sp, #4] +10000390: 6022 str r2, [r4, #0] +10000392: 6063 str r3, [r4, #4] +10000394: 0020 movs r0, r4 +10000396: b002 add sp, #8 +10000398: bd10 pop {r4, pc} ... -10000384 : -10000384: b510 push {r4, lr} -10000386: 0083 lsls r3, r0, #2 -10000388: 4a08 ldr r2, [pc, #32] @ (100003ac ) -1000038a: 4694 mov ip, r2 -1000038c: 4463 add r3, ip -1000038e: 681a ldr r2, [r3, #0] -10000390: 2440 movs r4, #64 @ 0x40 -10000392: 4062 eors r2, r4 -10000394: 3480 adds r4, #128 @ 0x80 -10000396: 4014 ands r4, r2 -10000398: 2280 movs r2, #128 @ 0x80 -1000039a: 0152 lsls r2, r2, #5 -1000039c: 4313 orrs r3, r2 -1000039e: 601c str r4, [r3, #0] -100003a0: 00c0 lsls r0, r0, #3 -100003a2: 4b03 ldr r3, [pc, #12] @ (100003b0 ) -100003a4: 469c mov ip, r3 -100003a6: 4460 add r0, ip -100003a8: 6041 str r1, [r0, #4] -100003aa: bd10 pop {r4, pc} -100003ac: 4001c004 .word 0x4001c004 -100003b0: 40014000 .word 0x40014000 +1000039c
: +1000039c: b530 push {r4, r5, lr} +1000039e: b085 sub sp, #20 +100003a0: f004 f948 bl 10004634 +100003a4: 480d ldr r0, [pc, #52] @ (100003dc ) +100003a6: f000 f8a1 bl 100004ec +100003aa: 4668 mov r0, sp +100003ac: f7ff ffe4 bl 10000378 +100003b0: 9c00 ldr r4, [sp, #0] +100003b2: 9d01 ldr r5, [sp, #4] +100003b4: 2000 movs r0, #0 +100003b6: f000 f96f bl 10000698 +100003ba: 4809 ldr r0, [pc, #36] @ (100003e0 ) +100003bc: f000 f96c bl 10000698 +100003c0: 4668 mov r0, sp +100003c2: f7ff ffd9 bl 10000378 +100003c6: 9a00 ldr r2, [sp, #0] +100003c8: 9b01 ldr r3, [sp, #4] +100003ca: 1b12 subs r2, r2, r4 +100003cc: 41ab sbcs r3, r5 +100003ce: 9202 str r2, [sp, #8] +100003d0: 9303 str r3, [sp, #12] +100003d2: 4804 ldr r0, [pc, #16] @ (100003e4 ) +100003d4: f004 f922 bl 1000461c <__wrap_printf> +100003d8: e7e7 b.n 100003aa +100003da: 46c0 nop @ (mov r8, r8) +100003dc: 10004aac .word 0x10004aac +100003e0: 0000ffff .word 0x0000ffff +100003e4: 10004a8c .word 0x10004a8c -100003b4 : -100003b4: b510 push {r4, lr} -100003b6: 2301 movs r3, #1 -100003b8: 4083 lsls r3, r0 -100003ba: 22d0 movs r2, #208 @ 0xd0 -100003bc: 0612 lsls r2, r2, #24 -100003be: 6293 str r3, [r2, #40] @ 0x28 -100003c0: 6193 str r3, [r2, #24] -100003c2: 2105 movs r1, #5 -100003c4: f7ff ffde bl 10000384 -100003c8: bd10 pop {r4, pc} +100003e8 : +100003e8: b570 push {r4, r5, r6, lr} +100003ea: b084 sub sp, #16 +100003ec: 0006 movs r6, r0 +100003ee: 000c movs r4, r1 +100003f0: ab01 add r3, sp, #4 +100003f2: aa02 add r2, sp, #8 +100003f4: a903 add r1, sp, #12 +100003f6: f000 f9bf bl 10000778 +100003fa: 1e05 subs r5, r0, #0 +100003fc: d104 bne.n 10000408 +100003fe: 2c00 cmp r4, #0 +10000400: d109 bne.n 10000416 +10000402: 0020 movs r0, r4 +10000404: b004 add sp, #16 +10000406: bd70 pop {r4, r5, r6, pc} +10000408: 9a01 ldr r2, [sp, #4] +1000040a: 9902 ldr r1, [sp, #8] +1000040c: 9803 ldr r0, [sp, #12] +1000040e: f000 f977 bl 10000700 +10000412: 002c movs r4, r5 +10000414: e7f5 b.n 10000402 +10000416: 4802 ldr r0, [pc, #8] @ (10000420 ) +10000418: 0031 movs r1, r6 +1000041a: f001 ff27 bl 1000226c +1000041e: 46c0 nop @ (mov r8, r8) +10000420: 10004acc .word 0x10004acc + +10000424 : +10000424: b570 push {r4, r5, r6, lr} +10000426: b082 sub sp, #8 +10000428: 000c movs r4, r1 +1000042a: 0015 movs r5, r2 +1000042c: 466b mov r3, sp +1000042e: 1dd9 adds r1, r3, #7 +10000430: 7008 strb r0, [r1, #0] +10000432: 4b1c ldr r3, [pc, #112] @ (100004a4 ) +10000434: 681e ldr r6, [r3, #0] +10000436: 6832 ldr r2, [r6, #0] +10000438: 2007 movs r0, #7 +1000043a: 4042 eors r2, r0 +1000043c: 30c8 adds r0, #200 @ 0xc8 +1000043e: 4010 ands r0, r2 +10000440: 2280 movs r2, #128 @ 0x80 +10000442: 0152 lsls r2, r2, #5 +10000444: 4332 orrs r2, r6 +10000446: 6010 str r0, [r2, #0] +10000448: 4a17 ldr r2, [pc, #92] @ (100004a8 ) +1000044a: 2000 movs r0, #0 +1000044c: 7010 strb r0, [r2, #0] +1000044e: 68da ldr r2, [r3, #12] +10000450: 3001 adds r0, #1 +10000452: 0006 movs r6, r0 +10000454: 4096 lsls r6, r2 +10000456: 22d0 movs r2, #208 @ 0xd0 +10000458: 0612 lsls r2, r2, #24 +1000045a: 6196 str r6, [r2, #24] +1000045c: 691e ldr r6, [r3, #16] +1000045e: 40b0 lsls r0, r6 +10000460: 6190 str r0, [r2, #24] +10000462: 6818 ldr r0, [r3, #0] +10000464: 2201 movs r2, #1 +10000466: f004 fac3 bl 100049f0 <__spi_write_blocking_veneer> +1000046a: 2d00 cmp r5, #0 +1000046c: d10c bne.n 10000488 +1000046e: 490d ldr r1, [pc, #52] @ (100004a4 ) +10000470: 68ca ldr r2, [r1, #12] +10000472: 2301 movs r3, #1 +10000474: 0018 movs r0, r3 +10000476: 4090 lsls r0, r2 +10000478: 22d0 movs r2, #208 @ 0xd0 +1000047a: 0612 lsls r2, r2, #24 +1000047c: 6150 str r0, [r2, #20] +1000047e: 6909 ldr r1, [r1, #16] +10000480: 408b lsls r3, r1 +10000482: 6153 str r3, [r2, #20] +10000484: b002 add sp, #8 +10000486: bd70 pop {r4, r5, r6, pc} +10000488: 4a06 ldr r2, [pc, #24] @ (100004a4 ) +1000048a: 6911 ldr r1, [r2, #16] +1000048c: 2301 movs r3, #1 +1000048e: 408b lsls r3, r1 +10000490: 21d0 movs r1, #208 @ 0xd0 +10000492: 0609 lsls r1, r1, #24 +10000494: 614b str r3, [r1, #20] +10000496: 6810 ldr r0, [r2, #0] +10000498: 002a movs r2, r5 +1000049a: 0021 movs r1, r4 +1000049c: f004 faa8 bl 100049f0 <__spi_write_blocking_veneer> +100004a0: e7e5 b.n 1000046e +100004a2: 46c0 nop @ (mov r8, r8) +100004a4: 20000754 .word 0x20000754 +100004a8: 2000077e .word 0x2000077e + +100004ac : +100004ac: b500 push {lr} +100004ae: b083 sub sp, #12 +100004b0: 000b movs r3, r1 +100004b2: a901 add r1, sp, #4 +100004b4: 0a02 lsrs r2, r0, #8 +100004b6: 700a strb r2, [r1, #0] +100004b8: 7048 strb r0, [r1, #1] +100004ba: 0a1a lsrs r2, r3, #8 +100004bc: 708a strb r2, [r1, #2] +100004be: 70cb strb r3, [r1, #3] +100004c0: 2204 movs r2, #4 +100004c2: 202a movs r0, #42 @ 0x2a +100004c4: f7ff ffae bl 10000424 +100004c8: b003 add sp, #12 +100004ca: bd00 pop {pc} + +100004cc : +100004cc: b500 push {lr} +100004ce: b083 sub sp, #12 +100004d0: 000b movs r3, r1 +100004d2: a901 add r1, sp, #4 +100004d4: 0a02 lsrs r2, r0, #8 +100004d6: 700a strb r2, [r1, #0] +100004d8: 7048 strb r0, [r1, #1] +100004da: 0a1a lsrs r2, r3, #8 +100004dc: 708a strb r2, [r1, #2] +100004de: 70cb strb r3, [r1, #3] +100004e0: 2204 movs r2, #4 +100004e2: 202b movs r0, #43 @ 0x2b +100004e4: f7ff ff9e bl 10000424 +100004e8: b003 add sp, #12 +100004ea: bd00 pop {pc} + +100004ec : +100004ec: b5f0 push {r4, r5, r6, r7, lr} +100004ee: b085 sub sp, #20 +100004f0: 0001 movs r1, r0 +100004f2: 4c42 ldr r4, [pc, #264] @ (100005fc ) +100004f4: 2220 movs r2, #32 +100004f6: 0020 movs r0, r4 +100004f8: f003 ff00 bl 100042fc <__wrap___aeabi_memcpy> +100004fc: 2101 movs r1, #1 +100004fe: 4840 ldr r0, [pc, #256] @ (10000600 ) +10000500: f7ff ff72 bl 100003e8 +10000504: 6820 ldr r0, [r4, #0] +10000506: 493f ldr r1, [pc, #252] @ (10000604 ) +10000508: f004 f9f4 bl 100048f4 +1000050c: 9001 str r0, [sp, #4] +1000050e: 6821 ldr r1, [r4, #0] +10000510: 680b ldr r3, [r1, #0] +10000512: 2207 movs r2, #7 +10000514: 4053 eors r3, r2 +10000516: 32c8 adds r2, #200 @ 0xc8 +10000518: 401a ands r2, r3 +1000051a: 2380 movs r3, #128 @ 0x80 +1000051c: 015b lsls r3, r3, #5 +1000051e: 430b orrs r3, r1 +10000520: 601a str r2, [r3, #0] +10000522: 6860 ldr r0, [r4, #4] +10000524: 2101 movs r1, #1 +10000526: f000 f97f bl 10000828 +1000052a: 68a0 ldr r0, [r4, #8] +1000052c: 2101 movs r1, #1 +1000052e: f000 f97b bl 10000828 +10000532: 68e0 ldr r0, [r4, #12] +10000534: f000 f990 bl 10000858 +10000538: 6920 ldr r0, [r4, #16] +1000053a: f000 f98d bl 10000858 +1000053e: 6960 ldr r0, [r4, #20] +10000540: f000 f98a bl 10000858 +10000544: 69a0 ldr r0, [r4, #24] +10000546: f000 f987 bl 10000858 +1000054a: 68e3 ldr r3, [r4, #12] +1000054c: 2601 movs r6, #1 +1000054e: 0031 movs r1, r6 +10000550: 4099 lsls r1, r3 +10000552: 25d0 movs r5, #208 @ 0xd0 +10000554: 062d lsls r5, r5, #24 +10000556: 6269 str r1, [r5, #36] @ 0x24 +10000558: 6923 ldr r3, [r4, #16] +1000055a: 0032 movs r2, r6 +1000055c: 409a lsls r2, r3 +1000055e: 626a str r2, [r5, #36] @ 0x24 +10000560: 6963 ldr r3, [r4, #20] +10000562: 0030 movs r0, r6 +10000564: 4098 lsls r0, r3 +10000566: 0003 movs r3, r0 +10000568: 6268 str r0, [r5, #36] @ 0x24 +1000056a: 69a0 ldr r0, [r4, #24] +1000056c: 0037 movs r7, r6 +1000056e: 4087 lsls r7, r0 +10000570: 626f str r7, [r5, #36] @ 0x24 +10000572: 6169 str r1, [r5, #20] +10000574: 616a str r2, [r5, #20] +10000576: 616b str r3, [r5, #20] +10000578: 2064 movs r0, #100 @ 0x64 +1000057a: f001 f8ac bl 100016d6 +1000057e: 2200 movs r2, #0 +10000580: 2100 movs r1, #0 +10000582: 2001 movs r0, #1 +10000584: f7ff ff4e bl 10000424 +10000588: 2096 movs r0, #150 @ 0x96 +1000058a: f001 f8a4 bl 100016d6 +1000058e: 2200 movs r2, #0 +10000590: 2100 movs r1, #0 +10000592: 2011 movs r0, #17 +10000594: f7ff ff46 bl 10000424 +10000598: 2032 movs r0, #50 @ 0x32 +1000059a: f001 f89c bl 100016d6 +1000059e: a902 add r1, sp, #8 +100005a0: 2355 movs r3, #85 @ 0x55 +100005a2: 700b strb r3, [r1, #0] +100005a4: 2201 movs r2, #1 +100005a6: 203a movs r0, #58 @ 0x3a +100005a8: f7ff ff3c bl 10000424 +100005ac: 200a movs r0, #10 +100005ae: f001 f892 bl 100016d6 +100005b2: a903 add r1, sp, #12 +100005b4: 2300 movs r3, #0 +100005b6: 700b strb r3, [r1, #0] +100005b8: 2201 movs r2, #1 +100005ba: 2036 movs r0, #54 @ 0x36 +100005bc: f7ff ff32 bl 10000424 +100005c0: 8ba1 ldrh r1, [r4, #28] +100005c2: 2000 movs r0, #0 +100005c4: f7ff ff72 bl 100004ac +100005c8: 8be1 ldrh r1, [r4, #30] +100005ca: 2000 movs r0, #0 +100005cc: f7ff ff7e bl 100004cc +100005d0: 2200 movs r2, #0 +100005d2: 2100 movs r1, #0 +100005d4: 2013 movs r0, #19 +100005d6: f7ff ff25 bl 10000424 +100005da: 200a movs r0, #10 +100005dc: f001 f87b bl 100016d6 +100005e0: 2200 movs r2, #0 +100005e2: 2100 movs r1, #0 +100005e4: 2029 movs r0, #41 @ 0x29 +100005e6: f7ff ff1d bl 10000424 +100005ea: 200a movs r0, #10 +100005ec: f001 f873 bl 100016d6 +100005f0: 69a3 ldr r3, [r4, #24] +100005f2: 409e lsls r6, r3 +100005f4: 616e str r6, [r5, #20] +100005f6: b005 add sp, #20 +100005f8: bdf0 pop {r4, r5, r6, r7, pc} +100005fa: 46c0 nop @ (mov r8, r8) +100005fc: 20000754 .word 0x20000754 +10000600: 00020f58 .word 0x00020f58 +10000604: 03fe56c0 .word 0x03fe56c0 + +10000608 : +10000608: b570 push {r4, r5, r6, lr} +1000060a: b082 sub sp, #8 +1000060c: 4d0e ldr r5, [pc, #56] @ (10000648 ) +1000060e: 68eb ldr r3, [r5, #12] +10000610: 2401 movs r4, #1 +10000612: 0022 movs r2, r4 +10000614: 409a lsls r2, r3 +10000616: 26d0 movs r6, #208 @ 0xd0 +10000618: 0636 lsls r6, r6, #24 +1000061a: 61b2 str r2, [r6, #24] +1000061c: 692b ldr r3, [r5, #16] +1000061e: 0022 movs r2, r4 +10000620: 409a lsls r2, r3 +10000622: 61b2 str r2, [r6, #24] +10000624: 466b mov r3, sp +10000626: 1dd9 adds r1, r3, #7 +10000628: 232c movs r3, #44 @ 0x2c +1000062a: 700b strb r3, [r1, #0] +1000062c: 6828 ldr r0, [r5, #0] +1000062e: 2201 movs r2, #1 +10000630: f004 f9de bl 100049f0 <__spi_write_blocking_veneer> +10000634: 68eb ldr r3, [r5, #12] +10000636: 0022 movs r2, r4 +10000638: 409a lsls r2, r3 +1000063a: 61b2 str r2, [r6, #24] +1000063c: 692b ldr r3, [r5, #16] +1000063e: 409c lsls r4, r3 +10000640: 6174 str r4, [r6, #20] +10000642: b002 add sp, #8 +10000644: bd70 pop {r4, r5, r6, pc} +10000646: 46c0 nop @ (mov r8, r8) +10000648: 20000754 .word 0x20000754 + +1000064c : +1000064c: b510 push {r4, lr} +1000064e: 0003 movs r3, r0 +10000650: 084a lsrs r2, r1, #1 +10000652: 4903 ldr r1, [pc, #12] @ (10000660 ) +10000654: 6808 ldr r0, [r1, #0] +10000656: 0019 movs r1, r3 +10000658: f004 f9da bl 10004a10 <__spi_write16_blocking_veneer> +1000065c: bd10 pop {r4, pc} +1000065e: 46c0 nop @ (mov r8, r8) +10000660: 20000754 .word 0x20000754 + +10000664 : +10000664: b500 push {lr} +10000666: b083 sub sp, #12 +10000668: 466b mov r3, sp +1000066a: 80d8 strh r0, [r3, #6] +1000066c: 3306 adds r3, #6 +1000066e: 2102 movs r1, #2 +10000670: 0018 movs r0, r3 +10000672: f7ff ffeb bl 1000064c +10000676: b003 add sp, #12 +10000678: bd00 pop {pc} ... -100003cc : -100003cc: 4b03 ldr r3, [pc, #12] @ (100003dc ) -100003ce: 681b ldr r3, [r3, #0] -100003d0: 2002 movs r0, #2 -100003d2: 4018 ands r0, r3 -100003d4: 1e43 subs r3, r0, #1 -100003d6: 4198 sbcs r0, r3 -100003d8: b2c0 uxtb r0, r0 -100003da: 4770 bx lr -100003dc: 4006c000 .word 0x4006c000 +1000067c : +1000067c: b570 push {r4, r5, r6, lr} +1000067e: 000c movs r4, r1 +10000680: 4d04 ldr r5, [pc, #16] @ (10000694 ) +10000682: 8ba9 ldrh r1, [r5, #28] +10000684: f7ff ff12 bl 100004ac +10000688: 8be9 ldrh r1, [r5, #30] +1000068a: 0020 movs r0, r4 +1000068c: f7ff ff1e bl 100004cc +10000690: bd70 pop {r4, r5, r6, pc} +10000692: 46c0 nop @ (mov r8, r8) +10000694: 20000754 .word 0x20000754 -100003e0 : -100003e0: f3ef 8010 mrs r0, PRIMASK -100003e4: b672 cpsid i -100003e6: 4b03 ldr r3, [pc, #12] @ (100003f4 ) -100003e8: 681b ldr r3, [r3, #0] -100003ea: 2b00 cmp r3, #0 -100003ec: d0fb beq.n 100003e6 -100003ee: f3bf 8f5f dmb sy -100003f2: 4770 bx lr -100003f4: d000012c .word 0xd000012c +10000698 : +10000698: b570 push {r4, r5, r6, lr} +1000069a: 0006 movs r6, r0 +1000069c: 4b15 ldr r3, [pc, #84] @ (100006f4 ) +1000069e: 8b9a ldrh r2, [r3, #28] +100006a0: 8bdd ldrh r5, [r3, #30] +100006a2: 4355 muls r5, r2 +100006a4: 2100 movs r1, #0 +100006a6: 2000 movs r0, #0 +100006a8: f7ff ffe8 bl 1000067c +100006ac: 4b12 ldr r3, [pc, #72] @ (100006f8 ) +100006ae: 781b ldrb r3, [r3, #0] +100006b0: 2b00 cmp r3, #0 +100006b2: d004 beq.n 100006be +100006b4: 4811 ldr r0, [pc, #68] @ (100006fc ) +100006b6: f003 ffb1 bl 1000461c <__wrap_printf> +100006ba: 2400 movs r4, #0 +100006bc: e014 b.n 100006e8 +100006be: f7ff ffa3 bl 10000608 +100006c2: 4b0c ldr r3, [pc, #48] @ (100006f4 ) +100006c4: 6819 ldr r1, [r3, #0] +100006c6: 680b ldr r3, [r1, #0] +100006c8: 220f movs r2, #15 +100006ca: 4053 eors r3, r2 +100006cc: 32c0 adds r2, #192 @ 0xc0 +100006ce: 401a ands r2, r3 +100006d0: 2380 movs r3, #128 @ 0x80 +100006d2: 015b lsls r3, r3, #5 +100006d4: 430b orrs r3, r1 +100006d6: 601a str r2, [r3, #0] +100006d8: 4b07 ldr r3, [pc, #28] @ (100006f8 ) +100006da: 2201 movs r2, #1 +100006dc: 701a strb r2, [r3, #0] +100006de: e7e9 b.n 100006b4 +100006e0: 0030 movs r0, r6 +100006e2: f7ff ffbf bl 10000664 +100006e6: 3401 adds r4, #1 +100006e8: 42ac cmp r4, r5 +100006ea: dbf9 blt.n 100006e0 +100006ec: 4803 ldr r0, [pc, #12] @ (100006fc ) +100006ee: f003 ff95 bl 1000461c <__wrap_printf> +100006f2: bd70 pop {r4, r5, r6, pc} +100006f4: 20000754 .word 0x20000754 +100006f8: 2000077e .word 0x2000077e +100006fc: 10004a8c .word 0x10004a8c -100003f8 : -100003f8: f3bf 8f5f dmb sy -100003fc: 4b02 ldr r3, [pc, #8] @ (10000408 ) -100003fe: 2200 movs r2, #0 -10000400: 601a str r2, [r3, #0] -10000402: f380 8810 msr PRIMASK, r0 -10000406: 4770 bx lr -10000408: d000012c .word 0xd000012c +10000700 : +10000700: b5f0 push {r4, r5, r6, r7, lr} +10000702: b083 sub sp, #12 +10000704: 0004 movs r4, r0 +10000706: 000d movs r5, r1 +10000708: 0016 movs r6, r2 +1000070a: f000 f8b1 bl 10000870 +1000070e: 2800 cmp r0, #0 +10000710: d001 beq.n 10000716 +10000712: b003 add sp, #12 +10000714: bdf0 pop {r4, r5, r6, r7, pc} +10000716: 4f15 ldr r7, [pc, #84] @ (1000076c ) +10000718: 9700 str r7, [sp, #0] +1000071a: 003b movs r3, r7 +1000071c: 2201 movs r2, #1 +1000071e: 2101 movs r1, #1 +10000720: 3005 adds r0, #5 +10000722: f001 fb4b bl 10001dbc +10000726: 9600 str r6, [sp, #0] +10000728: 002b movs r3, r5 +1000072a: 0022 movs r2, r4 +1000072c: 2101 movs r1, #1 +1000072e: 4810 ldr r0, [pc, #64] @ (10000770 ) +10000730: f001 fc4c bl 10001fcc +10000734: 0031 movs r1, r6 +10000736: 4369 muls r1, r5 +10000738: 0020 movs r0, r4 +1000073a: f002 fee7 bl 1000350c <__wrap___aeabi_uidiv> +1000073e: 0004 movs r4, r0 +10000740: 4b0c ldr r3, [pc, #48] @ (10000774 ) +10000742: 9300 str r3, [sp, #0] +10000744: 2200 movs r2, #0 +10000746: 2102 movs r1, #2 +10000748: 2004 movs r0, #4 +1000074a: f001 fb37 bl 10001dbc +1000074e: 9400 str r4, [sp, #0] +10000750: 0023 movs r3, r4 +10000752: 2200 movs r2, #0 +10000754: 2101 movs r1, #1 +10000756: 2005 movs r0, #5 +10000758: f001 fb30 bl 10001dbc +1000075c: 9700 str r7, [sp, #0] +1000075e: 003b movs r3, r7 +10000760: 2202 movs r2, #2 +10000762: 2100 movs r1, #0 +10000764: 2006 movs r0, #6 +10000766: f001 fb29 bl 10001dbc +1000076a: e7d2 b.n 10000712 +1000076c: 02dc6c00 .word 0x02dc6c00 +10000770: 40028000 .word 0x40028000 +10000774: 00b71b00 .word 0x00b71b00 -1000040c : -1000040c: b5f8 push {r3, r4, r5, r6, r7, lr} -1000040e: 0006 movs r6, r0 -10000410: 000c movs r4, r1 -10000412: 0015 movs r5, r2 -10000414: f7ff ffe4 bl 100003e0 -10000418: 08e3 lsrs r3, r4, #3 -1000041a: 18f7 adds r7, r6, r3 -1000041c: 5cf1 ldrb r1, [r6, r3] -1000041e: 2207 movs r2, #7 -10000420: 4022 ands r2, r4 -10000422: 2301 movs r3, #1 -10000424: 4093 lsls r3, r2 -10000426: 420b tst r3, r1 -10000428: d105 bne.n 10000436 -1000042a: b2db uxtb r3, r3 -1000042c: 430b orrs r3, r1 -1000042e: 703b strb r3, [r7, #0] -10000430: f7ff ffe2 bl 100003f8 -10000434: bdf8 pop {r3, r4, r5, r6, r7, pc} -10000436: 0021 movs r1, r4 -10000438: 0028 movs r0, r5 -1000043a: f001 fc3d bl 10001cb8 - ... - -10000440 : -10000440: 2300 movs r3, #0 -10000442: e007 b.n 10000454 -10000444: 4a05 ldr r2, [pc, #20] @ (1000045c ) -10000446: 189a adds r2, r3, r2 -10000448: 0092 lsls r2, r2, #2 -1000044a: f3bf 8f5f dmb sy -1000044e: 2100 movs r1, #0 -10000450: 6011 str r1, [r2, #0] -10000452: 3301 adds r3, #1 -10000454: 2b1f cmp r3, #31 -10000456: d9f5 bls.n 10000444 -10000458: 4770 bx lr -1000045a: 46c0 nop @ (mov r8, r8) -1000045c: 34000040 .word 0x34000040 - -10000460 : -10000460: 4a05 ldr r2, [pc, #20] @ (10000478 ) -10000462: 7810 ldrb r0, [r2, #0] -10000464: 1c43 adds r3, r0, #1 -10000466: b2db uxtb r3, r3 -10000468: 7013 strb r3, [r2, #0] -1000046a: 2b17 cmp r3, #23 -1000046c: d902 bls.n 10000474 -1000046e: 0013 movs r3, r2 -10000470: 2210 movs r2, #16 -10000472: 701a strb r2, [r3, #0] -10000474: 4770 bx lr -10000476: 46c0 nop @ (mov r8, r8) -10000478: 20000238 .word 0x20000238 - -1000047c : -1000047c: 4b07 ldr r3, [pc, #28] @ (1000049c ) -1000047e: 689b ldr r3, [r3, #8] -10000480: 3010 adds r0, #16 -10000482: 0080 lsls r0, r0, #2 -10000484: 5019 str r1, [r3, r0] -10000486: f3bf 8f5f dmb sy -1000048a: f3bf 8f5f dmb sy -1000048e: 4b04 ldr r3, [pc, #16] @ (100004a0 ) -10000490: 2100 movs r1, #0 -10000492: 6019 str r1, [r3, #0] -10000494: f382 8810 msr PRIMASK, r2 -10000498: 4770 bx lr -1000049a: 46c0 nop @ (mov r8, r8) -1000049c: e000ed00 .word 0xe000ed00 -100004a0: d0000124 .word 0xd0000124 - -100004a4 : -100004a4: b510 push {r4, lr} -100004a6: 8803 ldrh r3, [r0, #0] -100004a8: 0ada lsrs r2, r3, #11 -100004aa: 2a1c cmp r2, #28 -100004ac: d105 bne.n 100004ba -100004ae: 055b lsls r3, r3, #21 -100004b0: 155b asrs r3, r3, #21 -100004b2: 3302 adds r3, #2 -100004b4: 005b lsls r3, r3, #1 -100004b6: 18c0 adds r0, r0, r3 -100004b8: bd10 pop {r4, pc} -100004ba: 4b03 ldr r3, [pc, #12] @ (100004c8 ) -100004bc: 4a03 ldr r2, [pc, #12] @ (100004cc ) -100004be: 4804 ldr r0, [pc, #16] @ (100004d0 ) -100004c0: 21b1 movs r1, #177 @ 0xb1 -100004c2: f001 fb61 bl 10001b88 <__assert_func> -100004c6: 46c0 nop @ (mov r8, r8) -100004c8: 100040f8 .word 0x100040f8 -100004cc: 1000429c .word 0x1000429c -100004d0: 10004110 .word 0x10004110 - -100004d4 : -100004d4: b510 push {r4, lr} -100004d6: 1a09 subs r1, r1, r0 -100004d8: 1f0b subs r3, r1, #4 -100004da: 4a0a ldr r2, [pc, #40] @ (10000504 ) -100004dc: 1888 adds r0, r1, r2 -100004de: 4a0a ldr r2, [pc, #40] @ (10000508 ) -100004e0: 4290 cmp r0, r2 -100004e2: d808 bhi.n 100004f6 -100004e4: 07c9 lsls r1, r1, #31 -100004e6: d406 bmi.n 100004f6 -100004e8: 105b asrs r3, r3, #1 -100004ea: 055b lsls r3, r3, #21 -100004ec: 0d5b lsrs r3, r3, #21 -100004ee: 4807 ldr r0, [pc, #28] @ (1000050c ) -100004f0: 4318 orrs r0, r3 -100004f2: b280 uxth r0, r0 -100004f4: bd10 pop {r4, pc} -100004f6: 4b06 ldr r3, [pc, #24] @ (10000510 ) -100004f8: 4a06 ldr r2, [pc, #24] @ (10000514 ) -100004fa: 4807 ldr r0, [pc, #28] @ (10000518 ) -100004fc: 21a3 movs r1, #163 @ 0xa3 -100004fe: f001 fb43 bl 10001b88 <__assert_func> -10000502: 46c0 nop @ (mov r8, r8) -10000504: 000007fc .word 0x000007fc -10000508: 00000ffe .word 0x00000ffe -1000050c: ffffe000 .word 0xffffe000 -10000510: 10004158 .word 0x10004158 -10000514: 10004290 .word 0x10004290 -10000518: 10004110 .word 0x10004110 - -1000051c : -1000051c: b510 push {r4, lr} -1000051e: 1a09 subs r1, r1, r0 -10000520: 3904 subs r1, #4 -10000522: 084a lsrs r2, r1, #1 -10000524: 0b09 lsrs r1, r1, #12 -10000526: d108 bne.n 1000053a -10000528: 0549 lsls r1, r1, #21 -1000052a: 0d49 lsrs r1, r1, #21 -1000052c: 4b06 ldr r3, [pc, #24] @ (10000548 ) -1000052e: 430b orrs r3, r1 -10000530: 8003 strh r3, [r0, #0] -10000532: 4b06 ldr r3, [pc, #24] @ (1000054c ) -10000534: 4313 orrs r3, r2 -10000536: 8043 strh r3, [r0, #2] -10000538: bd10 pop {r4, pc} -1000053a: 4b05 ldr r3, [pc, #20] @ (10000550 ) -1000053c: 4a05 ldr r2, [pc, #20] @ (10000554 ) -1000053e: 4806 ldr r0, [pc, #24] @ (10000558 ) -10000540: 21ab movs r1, #171 @ 0xab -10000542: f001 fb21 bl 10001b88 <__assert_func> -10000546: 46c0 nop @ (mov r8, r8) -10000548: fffff000 .word 0xfffff000 -1000054c: fffff800 .word 0xfffff800 -10000550: 10004188 .word 0x10004188 -10000554: 10004264 .word 0x10004264 -10000558: 10004110 .word 0x10004110 - -1000055c : -1000055c: 2301 movs r3, #1 -1000055e: 4083 lsls r3, r0 -10000560: 4a03 ldr r2, [pc, #12] @ (10000570 ) -10000562: 6810 ldr r0, [r2, #0] -10000564: 4018 ands r0, r3 -10000566: 1e43 subs r3, r0, #1 -10000568: 4198 sbcs r0, r3 -1000056a: b2c0 uxtb r0, r0 -1000056c: 4770 bx lr -1000056e: 46c0 nop @ (mov r8, r8) -10000570: e000e100 .word 0xe000e100 - -10000574 : -10000574: 2900 cmp r1, #0 -10000576: d004 beq.n 10000582 -10000578: 4b03 ldr r3, [pc, #12] @ (10000588 ) -1000057a: 6018 str r0, [r3, #0] -1000057c: 4b03 ldr r3, [pc, #12] @ (1000058c ) -1000057e: 6018 str r0, [r3, #0] -10000580: 4770 bx lr -10000582: 4b03 ldr r3, [pc, #12] @ (10000590 ) -10000584: 6018 str r0, [r3, #0] -10000586: e7fb b.n 10000580 -10000588: e000e280 .word 0xe000e280 -1000058c: e000e100 .word 0xe000e100 -10000590: e000e180 .word 0xe000e180 - -10000594 : -10000594: b510 push {r4, lr} -10000596: 2301 movs r3, #1 -10000598: 4083 lsls r3, r0 -1000059a: 0018 movs r0, r3 -1000059c: f7ff ffea bl 10000574 -100005a0: bd10 pop {r4, pc} - ... - -100005a4 : -100005a4: 4b02 ldr r3, [pc, #8] @ (100005b0 ) -100005a6: 689b ldr r3, [r3, #8] -100005a8: 3010 adds r0, #16 -100005aa: 0080 lsls r0, r0, #2 -100005ac: 58c0 ldr r0, [r0, r3] -100005ae: 4770 bx lr -100005b0: e000ed00 .word 0xe000ed00 - -100005b4 : -100005b4: b570 push {r4, r5, r6, lr} -100005b6: 0004 movs r4, r0 -100005b8: 000d movs r5, r1 -100005ba: f3ef 8610 mrs r6, PRIMASK -100005be: b672 cpsid i -100005c0: 4b0c ldr r3, [pc, #48] @ (100005f4 ) -100005c2: 681b ldr r3, [r3, #0] -100005c4: 2b00 cmp r3, #0 -100005c6: d0fb beq.n 100005c0 -100005c8: f3bf 8f5f dmb sy -100005cc: 0020 movs r0, r4 -100005ce: f7ff ffe9 bl 100005a4 -100005d2: 4b09 ldr r3, [pc, #36] @ (100005f8 ) -100005d4: 4298 cmp r0, r3 -100005d6: d001 beq.n 100005dc -100005d8: 42a8 cmp r0, r5 -100005da: d105 bne.n 100005e8 -100005dc: 0032 movs r2, r6 -100005de: 0029 movs r1, r5 -100005e0: 0020 movs r0, r4 -100005e2: f7ff ff4b bl 1000047c -100005e6: bd70 pop {r4, r5, r6, pc} -100005e8: 4b04 ldr r3, [pc, #16] @ (100005fc ) -100005ea: 4a05 ldr r2, [pc, #20] @ (10000600 ) -100005ec: 4805 ldr r0, [pc, #20] @ (10000604 ) -100005ee: 2186 movs r1, #134 @ 0x86 -100005f0: f001 faca bl 10001b88 <__assert_func> -100005f4: d0000124 .word 0xd0000124 -100005f8: 100001cd .word 0x100001cd -100005fc: 10004198 .word 0x10004198 -10000600: 100042ac .word 0x100042ac -10000604: 10004110 .word 0x10004110 - -10000608 : -10000608: b5f0 push {r4, r5, r6, r7, lr} -1000060a: 46ce mov lr, r9 -1000060c: 4647 mov r7, r8 -1000060e: b580 push {r7, lr} -10000610: b083 sub sp, #12 -10000612: 0006 movs r6, r0 -10000614: 000d movs r5, r1 -10000616: f3ef 8810 mrs r8, PRIMASK -1000061a: b672 cpsid i -1000061c: 4b4f ldr r3, [pc, #316] @ (1000075c ) -1000061e: 681b ldr r3, [r3, #0] -10000620: 2b00 cmp r3, #0 -10000622: d0fb beq.n 1000061c -10000624: f3bf 8f5f dmb sy -10000628: 4b4d ldr r3, [pc, #308] @ (10000760 ) -1000062a: 689a ldr r2, [r3, #8] -1000062c: 0034 movs r4, r6 -1000062e: 3410 adds r4, #16 -10000630: 00a3 lsls r3, r4, #2 -10000632: 58d7 ldr r7, [r2, r3] -10000634: 4b4b ldr r3, [pc, #300] @ (10000764 ) -10000636: 429f cmp r7, r3 -10000638: d007 beq.n 1000064a -1000063a: 42af cmp r7, r5 -1000063c: d100 bne.n 10000640 -1000063e: e08b b.n 10000758 -10000640: 9701 str r7, [sp, #4] -10000642: 4b49 ldr r3, [pc, #292] @ (10000768 ) -10000644: 1afb subs r3, r7, r3 -10000646: 2b2f cmp r3, #47 @ 0x2f -10000648: d909 bls.n 1000065e -1000064a: 4642 mov r2, r8 -1000064c: 0039 movs r1, r7 -1000064e: 0030 movs r0, r6 -10000650: f7ff ff14 bl 1000047c -10000654: b003 add sp, #12 -10000656: bcc0 pop {r6, r7} -10000658: 46b9 mov r9, r7 -1000065a: 46b0 mov r8, r6 -1000065c: bdf0 pop {r4, r5, r6, r7, pc} -1000065e: 0030 movs r0, r6 -10000660: f7ff ff7c bl 1000055c -10000664: 4681 mov r9, r0 -10000666: 2100 movs r1, #0 -10000668: 0030 movs r0, r6 -1000066a: f7ff ff93 bl 10000594 -1000066e: f3bf 8f5f dmb sy -10000672: f3ef 8105 mrs r1, IPSR -10000676: 2900 cmp r1, #0 -10000678: d001 beq.n 1000067e -1000067a: 428c cmp r4, r1 -1000067c: d111 bne.n 100006a2 -1000067e: 2301 movs r3, #1 -10000680: 9c01 ldr r4, [sp, #4] -10000682: 439c bics r4, r3 -10000684: 2000 movs r0, #0 -10000686: 68a3 ldr r3, [r4, #8] -10000688: 42ab cmp r3, r5 -1000068a: d012 beq.n 100006b2 -1000068c: 2206 movs r2, #6 -1000068e: 56a2 ldrsb r2, [r4, r2] -10000690: 2a00 cmp r2, #0 -10000692: db0d blt.n 100006b0 -10000694: 0053 lsls r3, r2, #1 -10000696: 189b adds r3, r3, r2 -10000698: 009b lsls r3, r3, #2 -1000069a: 4a33 ldr r2, [pc, #204] @ (10000768 ) -1000069c: 0020 movs r0, r4 -1000069e: 18d4 adds r4, r2, r3 -100006a0: e7f1 b.n 10000686 -100006a2: 4b32 ldr r3, [pc, #200] @ (1000076c ) -100006a4: 4a32 ldr r2, [pc, #200] @ (10000770 ) -100006a6: 2136 movs r1, #54 @ 0x36 -100006a8: 4832 ldr r0, [pc, #200] @ (10000774 ) -100006aa: 31ff adds r1, #255 @ 0xff -100006ac: f001 fa6c bl 10001b88 <__assert_func> -100006b0: 0020 movs r0, r4 -100006b2: 42ab cmp r3, r5 -100006b4: d149 bne.n 1000074a -100006b6: 2506 movs r5, #6 -100006b8: 5765 ldrsb r5, [r4, r5] -100006ba: 2d00 cmp r5, #0 -100006bc: db2b blt.n 10000716 -100006be: 4b2a ldr r3, [pc, #168] @ (10000768 ) -100006c0: 006a lsls r2, r5, #1 -100006c2: 1952 adds r2, r2, r5 -100006c4: 0092 lsls r2, r2, #2 -100006c6: 189b adds r3, r3, r2 -100006c8: 689a ldr r2, [r3, #8] -100006ca: 60a2 str r2, [r4, #8] -100006cc: 79da ldrb r2, [r3, #7] -100006ce: 71e2 strb r2, [r4, #7] -100006d0: 799b ldrb r3, [r3, #6] -100006d2: b25b sxtb r3, r3 -100006d4: 71a3 strb r3, [r4, #6] -100006d6: 2b00 cmp r3, #0 -100006d8: da0f bge.n 100006fa -100006da: 4827 ldr r0, [pc, #156] @ (10000778 ) -100006dc: 80a0 strh r0, [r4, #4] -100006de: 4b22 ldr r3, [pc, #136] @ (10000768 ) -100006e0: 006a lsls r2, r5, #1 -100006e2: 1952 adds r2, r2, r5 -100006e4: 0092 lsls r2, r2, #2 -100006e6: 189b adds r3, r3, r2 -100006e8: 4a24 ldr r2, [pc, #144] @ (1000077c ) -100006ea: 7811 ldrb r1, [r2, #0] -100006ec: 7199 strb r1, [r3, #6] -100006ee: 7015 strb r5, [r2, #0] -100006f0: 4649 mov r1, r9 -100006f2: 0030 movs r0, r6 -100006f4: f7ff ff4e bl 10000594 -100006f8: e7a7 b.n 1000064a -100006fa: 0068 lsls r0, r5, #1 -100006fc: 1940 adds r0, r0, r5 -100006fe: 0080 lsls r0, r0, #2 -10000700: 4b19 ldr r3, [pc, #100] @ (10000768 ) -10000702: 18c0 adds r0, r0, r3 -10000704: 3004 adds r0, #4 -10000706: f7ff fecd bl 100004a4 -1000070a: 0001 movs r1, r0 -1000070c: 1d23 adds r3, r4, #4 -1000070e: 0018 movs r0, r3 -10000710: f7ff fee0 bl 100004d4 -10000714: e7e2 b.n 100006dc -10000716: 2900 cmp r1, #0 -10000718: d112 bne.n 10000740 -1000071a: 2800 cmp r0, #0 -1000071c: d00e beq.n 1000073c -1000071e: 23ff movs r3, #255 @ 0xff -10000720: 7183 strb r3, [r0, #6] -10000722: 4b17 ldr r3, [pc, #92] @ (10000780 ) -10000724: 8083 strh r3, [r0, #4] -10000726: 4915 ldr r1, [pc, #84] @ (1000077c ) -10000728: 780b ldrb r3, [r1, #0] -1000072a: 71a3 strb r3, [r4, #6] -1000072c: 4a0e ldr r2, [pc, #56] @ (10000768 ) -1000072e: 4b15 ldr r3, [pc, #84] @ (10000784 ) -10000730: 1aa4 subs r4, r4, r2 -10000732: 4164 adcs r4, r4 -10000734: 4363 muls r3, r4 -10000736: 0d1b lsrs r3, r3, #20 -10000738: 700b strb r3, [r1, #0] -1000073a: e7d9 b.n 100006f0 -1000073c: 4f09 ldr r7, [pc, #36] @ (10000764 ) -1000073e: e7f2 b.n 10000726 -10000740: 4911 ldr r1, [pc, #68] @ (10000788 ) -10000742: 1d20 adds r0, r4, #4 -10000744: f7ff feea bl 1000051c -10000748: e7d2 b.n 100006f0 -1000074a: 4b10 ldr r3, [pc, #64] @ (1000078c ) -1000074c: 4a08 ldr r2, [pc, #32] @ (10000770 ) -1000074e: 216a movs r1, #106 @ 0x6a -10000750: 4808 ldr r0, [pc, #32] @ (10000774 ) -10000752: 31ff adds r1, #255 @ 0xff -10000754: f001 fa18 bl 10001b88 <__assert_func> -10000758: 4f02 ldr r7, [pc, #8] @ (10000764 ) -1000075a: e776 b.n 1000064a -1000075c: d0000124 .word 0xd0000124 -10000760: e000ed00 .word 0xe000ed00 -10000764: 100001cd .word 0x100001cd -10000768: 2000023c .word 0x2000023c -1000076c: 100041d0 .word 0x100041d0 -10000770: 1000427c .word 0x1000427c -10000774: 10004110 .word 0x10004110 -10000778: 0000bd01 .word 0x0000bd01 -1000077c: 200006b5 .word 0x200006b5 -10000780: ffffbd01 .word 0xffffbd01 -10000784: 0000aaaa .word 0x0000aaaa -10000788: 20000276 .word 0x20000276 -1000078c: 10004204 .word 0x10004204 - -10000790 : -10000790: b570 push {r4, r5, r6, lr} -10000792: 2201 movs r2, #1 -10000794: 4302 orrs r2, r0 -10000796: 4b2e ldr r3, [pc, #184] @ (10000850 ) -10000798: 1ad3 subs r3, r2, r3 -1000079a: 2b2f cmp r3, #47 @ 0x2f -1000079c: d828 bhi.n 100007f0 -1000079e: f3ef 8305 mrs r3, IPSR -100007a2: 2b00 cmp r3, #0 -100007a4: d02b beq.n 100007fe -100007a6: f3ef 8c10 mrs ip, PRIMASK -100007aa: b672 cpsid i -100007ac: 4929 ldr r1, [pc, #164] @ (10000854 ) -100007ae: 6809 ldr r1, [r1, #0] -100007b0: 2900 cmp r1, #0 -100007b2: d0fb beq.n 100007ac -100007b4: f3bf 8f5f dmb sy -100007b8: 4c25 ldr r4, [pc, #148] @ (10000850 ) -100007ba: 4927 ldr r1, [pc, #156] @ (10000858 ) -100007bc: 0005 movs r5, r0 -100007be: 1b2d subs r5, r5, r4 -100007c0: 416d adcs r5, r5 -100007c2: 4369 muls r1, r5 -100007c4: 0d09 lsrs r1, r1, #20 -100007c6: b24c sxtb r4, r1 -100007c8: 4924 ldr r1, [pc, #144] @ (1000085c ) -100007ca: 6889 ldr r1, [r1, #8] +10000778 : +10000778: b5f0 push {r4, r5, r6, r7, lr} +1000077a: 46de mov lr, fp +1000077c: 4657 mov r7, sl +1000077e: 464e mov r6, r9 +10000780: 4645 mov r5, r8 +10000782: b5e0 push {r5, r6, r7, lr} +10000784: b083 sub sp, #12 +10000786: 4680 mov r8, r0 +10000788: 468b mov fp, r1 +1000078a: 9200 str r2, [sp, #0] +1000078c: 9301 str r3, [sp, #4] +1000078e: 2004 movs r0, #4 +10000790: f001 fc16 bl 10001fc0 +10000794: 21fa movs r1, #250 @ 0xfa +10000796: 0089 lsls r1, r1, #2 +10000798: f002 feb8 bl 1000350c <__wrap___aeabi_uidiv> +1000079c: 4682 mov sl, r0 +1000079e: 23a0 movs r3, #160 @ 0xa0 +100007a0: 005b lsls r3, r3, #1 +100007a2: 4699 mov r9, r3 +100007a4: e02c b.n 10000800 +100007a6: 3c01 subs r4, #1 +100007a8: 2c00 cmp r4, #0 +100007aa: d020 beq.n 100007ee +100007ac: 0025 movs r5, r4 +100007ae: 437d muls r5, r7 +100007b0: 0029 movs r1, r5 +100007b2: 0030 movs r0, r6 +100007b4: f002 feaa bl 1000350c <__wrap___aeabi_uidiv> +100007b8: 4540 cmp r0, r8 +100007ba: d1f4 bne.n 100007a6 +100007bc: 0029 movs r1, r5 +100007be: 0030 movs r0, r6 +100007c0: f002 fea4 bl 1000350c <__wrap___aeabi_uidiv> +100007c4: 2900 cmp r1, #0 +100007c6: d1ee bne.n 100007a6 +100007c8: 0173 lsls r3, r6, #5 +100007ca: 1b9b subs r3, r3, r6 100007cc: 009b lsls r3, r3, #2 -100007ce: 58c9 ldr r1, [r1, r3] -100007d0: 4291 cmp r1, r2 -100007d2: d01b beq.n 1000080c -100007d4: 2100 movs r1, #0 -100007d6: 2903 cmp r1, #3 -100007d8: d832 bhi.n 10000840 -100007da: 4b1d ldr r3, [pc, #116] @ (10000850 ) -100007dc: 004a lsls r2, r1, #1 -100007de: 1852 adds r2, r2, r1 -100007e0: 0092 lsls r2, r2, #2 -100007e2: 189b adds r3, r3, r2 -100007e4: 799b ldrb r3, [r3, #6] -100007e6: b25b sxtb r3, r3 -100007e8: 42a3 cmp r3, r4 -100007ea: d01f beq.n 1000082c -100007ec: 3101 adds r1, #1 -100007ee: e7f2 b.n 100007d6 -100007f0: 4b1b ldr r3, [pc, #108] @ (10000860 ) -100007f2: 4a1c ldr r2, [pc, #112] @ (10000864 ) -100007f4: 21c7 movs r1, #199 @ 0xc7 -100007f6: 481c ldr r0, [pc, #112] @ (10000868 ) -100007f8: 0049 lsls r1, r1, #1 -100007fa: f001 f9c5 bl 10001b88 <__assert_func> -100007fe: 4b1b ldr r3, [pc, #108] @ (1000086c ) -10000800: 4a18 ldr r2, [pc, #96] @ (10000864 ) -10000802: 2192 movs r1, #146 @ 0x92 -10000804: 4818 ldr r0, [pc, #96] @ (10000868 ) -10000806: 31ff adds r1, #255 @ 0xff -10000808: f001 f9be bl 10001b88 <__assert_func> -1000080c: 4a13 ldr r2, [pc, #76] @ (1000085c ) -1000080e: 6892 ldr r2, [r2, #8] -10000810: 4917 ldr r1, [pc, #92] @ (10000870 ) -10000812: 50d1 str r1, [r2, r3] -10000814: 4b17 ldr r3, [pc, #92] @ (10000874 ) -10000816: 781a ldrb r2, [r3, #0] -10000818: 7182 strb r2, [r0, #6] -1000081a: 701c strb r4, [r3, #0] -1000081c: f3bf 8f5f dmb sy -10000820: 4b0c ldr r3, [pc, #48] @ (10000854 ) -10000822: 2200 movs r2, #0 -10000824: 601a str r2, [r3, #0] -10000826: f38c 8810 msr PRIMASK, ip -1000082a: bd70 pop {r4, r5, r6, pc} -1000082c: 4b08 ldr r3, [pc, #32] @ (10000850 ) -1000082e: 004a lsls r2, r1, #1 -10000830: 1855 adds r5, r2, r1 -10000832: 00ad lsls r5, r5, #2 -10000834: 195d adds r5, r3, r5 -10000836: 26ff movs r6, #255 @ 0xff -10000838: 71ae strb r6, [r5, #6] -1000083a: 4a0f ldr r2, [pc, #60] @ (10000878 ) -1000083c: 80aa strh r2, [r5, #4] -1000083e: e7e9 b.n 10000814 -10000840: 4b0e ldr r3, [pc, #56] @ (1000087c ) -10000842: 4a08 ldr r2, [pc, #32] @ (10000864 ) -10000844: 21d1 movs r1, #209 @ 0xd1 -10000846: 4808 ldr r0, [pc, #32] @ (10000868 ) -10000848: 0049 lsls r1, r1, #1 -1000084a: f001 f99d bl 10001b88 <__assert_func> -1000084e: 46c0 nop @ (mov r8, r8) -10000850: 2000023c .word 0x2000023c -10000854: d0000124 .word 0xd0000124 -10000858: 0000aaaa .word 0x0000aaaa -1000085c: e000ed00 .word 0xe000ed00 -10000860: 1000420c .word 0x1000420c -10000864: 10004248 .word 0x10004248 -10000868: 10004110 .word 0x10004110 -1000086c: 10004234 .word 0x10004234 -10000870: 100001cd .word 0x100001cd -10000874: 200006b5 .word 0x200006b5 -10000878: ffffbd01 .word 0xffffbd01 -1000087c: 10004240 .word 0x10004240 +100007ce: 199b adds r3, r3, r6 +100007d0: 00db lsls r3, r3, #3 +100007d2: 465a mov r2, fp +100007d4: 6013 str r3, [r2, #0] +100007d6: 9b00 ldr r3, [sp, #0] +100007d8: 601f str r7, [r3, #0] +100007da: 9b01 ldr r3, [sp, #4] +100007dc: 601c str r4, [r3, #0] +100007de: 2001 movs r0, #1 +100007e0: b003 add sp, #12 +100007e2: bcf0 pop {r4, r5, r6, r7} +100007e4: 46bb mov fp, r7 +100007e6: 46b2 mov sl, r6 +100007e8: 46a9 mov r9, r5 +100007ea: 46a0 mov r8, r4 +100007ec: bdf0 pop {r4, r5, r6, r7, pc} +100007ee: 3f01 subs r7, #1 +100007f0: 2f00 cmp r7, #0 +100007f2: d001 beq.n 100007f8 +100007f4: 003c movs r4, r7 +100007f6: e7d7 b.n 100007a8 +100007f8: 2301 movs r3, #1 +100007fa: 425b negs r3, r3 +100007fc: 469c mov ip, r3 +100007fe: 44e1 add r9, ip +10000800: 464b mov r3, r9 +10000802: 2b0f cmp r3, #15 +10000804: d909 bls.n 1000081a +10000806: 4656 mov r6, sl +10000808: 464b mov r3, r9 +1000080a: 435e muls r6, r3 +1000080c: 4b04 ldr r3, [pc, #16] @ (10000820 ) +1000080e: 18f2 adds r2, r6, r3 +10000810: 4b04 ldr r3, [pc, #16] @ (10000824 ) +10000812: 429a cmp r2, r3 +10000814: d8f0 bhi.n 100007f8 +10000816: 2707 movs r7, #7 +10000818: e7ea b.n 100007f0 +1000081a: 2000 movs r0, #0 +1000081c: e7e0 b.n 100007e0 +1000081e: 46c0 nop @ (mov r8, r8) +10000820: fff48e50 .word 0xfff48e50 +10000824: 000cf850 .word 0x000cf850 -10000880 : -10000880: 2200 movs r2, #0 -10000882: 4b04 ldr r3, [pc, #16] @ (10000894 ) -10000884: e002 b.n 1000088c -10000886: 4904 ldr r1, [pc, #16] @ (10000898 ) -10000888: c302 stmia r3!, {r1} -1000088a: 3201 adds r2, #1 -1000088c: 2a07 cmp r2, #7 -1000088e: d9fa bls.n 10000886 -10000890: 4770 bx lr -10000892: 46c0 nop @ (mov r8, r8) -10000894: e000e400 .word 0xe000e400 -10000898: 80808080 .word 0x80808080 +10000828 : +10000828: b510 push {r4, lr} +1000082a: 0083 lsls r3, r0, #2 +1000082c: 4a08 ldr r2, [pc, #32] @ (10000850 ) +1000082e: 4694 mov ip, r2 +10000830: 4463 add r3, ip +10000832: 681a ldr r2, [r3, #0] +10000834: 2440 movs r4, #64 @ 0x40 +10000836: 4062 eors r2, r4 +10000838: 3480 adds r4, #128 @ 0x80 +1000083a: 4014 ands r4, r2 +1000083c: 2280 movs r2, #128 @ 0x80 +1000083e: 0152 lsls r2, r2, #5 +10000840: 4313 orrs r3, r2 +10000842: 601c str r4, [r3, #0] +10000844: 00c0 lsls r0, r0, #3 +10000846: 4b03 ldr r3, [pc, #12] @ (10000854 ) +10000848: 469c mov ip, r3 +1000084a: 4460 add r0, ip +1000084c: 6041 str r1, [r0, #4] +1000084e: bd10 pop {r4, pc} +10000850: 4001c004 .word 0x4001c004 +10000854: 40014000 .word 0x40014000 -1000089c : -1000089c: 4b02 ldr r3, [pc, #8] @ (100008a8 ) -1000089e: 469c mov ip, r3 -100008a0: 4461 add r1, ip -100008a2: 0089 lsls r1, r1, #2 -100008a4: 6001 str r1, [r0, #0] -100008a6: 4770 bx lr -100008a8: 34000040 .word 0x34000040 - -100008ac : -100008ac: b510 push {r4, lr} -100008ae: 0004 movs r4, r0 -100008b0: f7ff fdd6 bl 10000460 -100008b4: 0001 movs r1, r0 -100008b6: 0020 movs r0, r4 -100008b8: f7ff fff0 bl 1000089c -100008bc: 23ff movs r3, #255 @ 0xff -100008be: 7123 strb r3, [r4, #4] -100008c0: f3bf 8f5f dmb sy -100008c4: bd10 pop {r4, pc} - -100008c6 : -100008c6: b510 push {r4, lr} -100008c8: 0004 movs r4, r0 -100008ca: f7ff fdc9 bl 10000460 -100008ce: 0001 movs r1, r0 -100008d0: 0020 movs r0, r4 -100008d2: f7ff ffe3 bl 1000089c -100008d6: 23ff movs r3, #255 @ 0xff -100008d8: 7123 strb r3, [r4, #4] -100008da: 2300 movs r3, #0 -100008dc: 7163 strb r3, [r4, #5] -100008de: f3bf 8f5f dmb sy -100008e2: bd10 pop {r4, pc} - -100008e4 : -100008e4: 4b08 ldr r3, [pc, #32] @ (10000908 ) -100008e6: 6a5b ldr r3, [r3, #36] @ 0x24 -100008e8: 4299 cmp r1, r3 -100008ea: d809 bhi.n 10000900 -100008ec: 4a06 ldr r2, [pc, #24] @ (10000908 ) -100008ee: 6a92 ldr r2, [r2, #40] @ 0x28 -100008f0: 4282 cmp r2, r0 -100008f2: d207 bcs.n 10000904 -100008f4: 4299 cmp r1, r3 -100008f6: d001 beq.n 100008fc -100008f8: 2001 movs r0, #1 -100008fa: e002 b.n 10000902 -100008fc: 2000 movs r0, #0 -100008fe: e000 b.n 10000902 -10000900: 2000 movs r0, #0 -10000902: 4770 bx lr -10000904: 2001 movs r0, #1 -10000906: e7fc b.n 10000902 -10000908: 40054000 .word 0x40054000 - -1000090c : -1000090c: b510 push {r4, lr} -1000090e: 2900 cmp r1, #0 -10000910: d00a beq.n 10000928 -10000912: 6803 ldr r3, [r0, #0] -10000914: 7b1b ldrb r3, [r3, #12] -10000916: 428b cmp r3, r1 -10000918: d306 bcc.n 10000928 -1000091a: 6880 ldr r0, [r0, #8] -1000091c: 4b05 ldr r3, [pc, #20] @ (10000934 ) -1000091e: 469c mov ip, r3 -10000920: 4461 add r1, ip -10000922: 0109 lsls r1, r1, #4 -10000924: 1840 adds r0, r0, r1 -10000926: bd10 pop {r4, pc} -10000928: 4b03 ldr r3, [pc, #12] @ (10000938 ) -1000092a: 4a04 ldr r2, [pc, #16] @ (1000093c ) -1000092c: 4804 ldr r0, [pc, #16] @ (10000940 ) -1000092e: 213c movs r1, #60 @ 0x3c -10000930: f001 f92a bl 10001b88 <__assert_func> -10000934: 0fffffff .word 0x0fffffff -10000938: 10004384 .word 0x10004384 -1000093c: 10004728 .word 0x10004728 -10000940: 100043a8 .word 0x100043a8 - -10000944 : -10000944: b5f8 push {r3, r4, r5, r6, r7, lr} -10000946: 0004 movs r4, r0 -10000948: 0017 movs r7, r2 -1000094a: f7ff ffdf bl 1000090c -1000094e: 6806 ldr r6, [r0, #0] -10000950: 6845 ldr r5, [r0, #4] -10000952: 0039 movs r1, r7 -10000954: 0020 movs r0, r4 -10000956: f7ff ffd9 bl 1000090c -1000095a: 6802 ldr r2, [r0, #0] -1000095c: 6843 ldr r3, [r0, #4] -1000095e: 2001 movs r0, #1 -10000960: 42ab cmp r3, r5 -10000962: d801 bhi.n 10000968 -10000964: d002 beq.n 1000096c -10000966: 2000 movs r0, #0 -10000968: b2c0 uxtb r0, r0 -1000096a: bdf8 pop {r3, r4, r5, r6, r7, pc} -1000096c: 42b2 cmp r2, r6 -1000096e: d8fb bhi.n 10000968 -10000970: e7f9 b.n 10000966 +10000858 : +10000858: b510 push {r4, lr} +1000085a: 2301 movs r3, #1 +1000085c: 4083 lsls r3, r0 +1000085e: 22d0 movs r2, #208 @ 0xd0 +10000860: 0612 lsls r2, r2, #24 +10000862: 6293 str r3, [r2, #40] @ 0x28 +10000864: 6193 str r3, [r2, #24] +10000866: 2105 movs r1, #5 +10000868: f7ff ffde bl 10000828 +1000086c: bd10 pop {r4, pc} ... -10000974 : -10000974: b510 push {r4, lr} -10000976: 2b00 cmp r3, #0 -10000978: db02 blt.n 10000980 -1000097a: 6002 str r2, [r0, #0] -1000097c: 6043 str r3, [r0, #4] -1000097e: bd10 pop {r4, pc} -10000980: 4b02 ldr r3, [pc, #8] @ (1000098c ) -10000982: 4a03 ldr r2, [pc, #12] @ (10000990 ) -10000984: 4803 ldr r0, [pc, #12] @ (10000994 ) -10000986: 213f movs r1, #63 @ 0x3f -10000988: f001 f8fe bl 10001b88 <__assert_func> -1000098c: 100043ec .word 0x100043ec -10000990: 100046f4 .word 0x100046f4 -10000994: 10004408 .word 0x10004408 +10000870 : +10000870: 4b03 ldr r3, [pc, #12] @ (10000880 ) +10000872: 681b ldr r3, [r3, #0] +10000874: 2002 movs r0, #2 +10000876: 4018 ands r0, r3 +10000878: 1e43 subs r3, r0, #1 +1000087a: 4198 sbcs r0, r3 +1000087c: b2c0 uxtb r0, r0 +1000087e: 4770 bx lr +10000880: 4006c000 .word 0x4006c000 -10000998 : -10000998: b510 push {r4, lr} -1000099a: b082 sub sp, #8 -1000099c: 0004 movs r4, r0 -1000099e: 9804 ldr r0, [sp, #16] -100009a0: 9905 ldr r1, [sp, #20] -100009a2: 1812 adds r2, r2, r0 -100009a4: 414b adcs r3, r1 -100009a6: 2b00 cmp r3, #0 -100009a8: db09 blt.n 100009be -100009aa: 4668 mov r0, sp -100009ac: f7ff ffe2 bl 10000974 -100009b0: 9a00 ldr r2, [sp, #0] -100009b2: 9b01 ldr r3, [sp, #4] -100009b4: 6022 str r2, [r4, #0] -100009b6: 6063 str r3, [r4, #4] -100009b8: 0020 movs r0, r4 -100009ba: b002 add sp, #8 -100009bc: bd10 pop {r4, pc} -100009be: 2201 movs r2, #1 -100009c0: 4252 negs r2, r2 -100009c2: 4b01 ldr r3, [pc, #4] @ (100009c8 ) -100009c4: e7f1 b.n 100009aa -100009c6: 46c0 nop @ (mov r8, r8) -100009c8: 7fffffff .word 0x7fffffff +10000884 : +10000884: f3ef 8010 mrs r0, PRIMASK +10000888: b672 cpsid i +1000088a: 4b03 ldr r3, [pc, #12] @ (10000898 ) +1000088c: 681b ldr r3, [r3, #0] +1000088e: 2b00 cmp r3, #0 +10000890: d0fb beq.n 1000088a +10000892: f3bf 8f5f dmb sy +10000896: 4770 bx lr +10000898: d000012c .word 0xd000012c -100009cc : -100009cc: b510 push {r4, lr} -100009ce: 2900 cmp r1, #0 -100009d0: d008 beq.n 100009e4 -100009d2: 7b03 ldrb r3, [r0, #12] -100009d4: 428b cmp r3, r1 -100009d6: d305 bcc.n 100009e4 -100009d8: 6800 ldr r0, [r0, #0] -100009da: 004b lsls r3, r1, #1 -100009dc: 185b adds r3, r3, r1 -100009de: 3b03 subs r3, #3 -100009e0: 18c0 adds r0, r0, r3 -100009e2: bd10 pop {r4, pc} -100009e4: 4b02 ldr r3, [pc, #8] @ (100009f0 ) -100009e6: 4a03 ldr r2, [pc, #12] @ (100009f4 ) -100009e8: 4803 ldr r0, [pc, #12] @ (100009f8 ) -100009ea: 2168 movs r1, #104 @ 0x68 -100009ec: f001 f8cc bl 10001b88 <__assert_func> -100009f0: 10004458 .word 0x10004458 -100009f4: 100046d0 .word 0x100046d0 -100009f8: 10004474 .word 0x10004474 +1000089c : +1000089c: f3bf 8f5f dmb sy +100008a0: 4b02 ldr r3, [pc, #8] @ (100008ac ) +100008a2: 2200 movs r2, #0 +100008a4: 601a str r2, [r3, #0] +100008a6: f380 8810 msr PRIMASK, r0 +100008aa: 4770 bx lr +100008ac: d000012c .word 0xd000012c -100009fc : -100009fc: b510 push {r4, lr} -100009fe: 7b43 ldrb r3, [r0, #13] -10000a00: 428b cmp r3, r1 -10000a02: d101 bne.n 10000a08 -10000a04: 2001 movs r0, #1 -10000a06: bd10 pop {r4, pc} -10000a08: f7ff ffe0 bl 100009cc -10000a0c: 7883 ldrb r3, [r0, #2] -10000a0e: 2b00 cmp r3, #0 -10000a10: d101 bne.n 10000a16 -10000a12: 2000 movs r0, #0 -10000a14: e7f7 b.n 10000a06 -10000a16: 2001 movs r0, #1 -10000a18: e7f5 b.n 10000a06 - -10000a1a : -10000a1a: b570 push {r4, r5, r6, lr} -10000a1c: 0004 movs r4, r0 -10000a1e: 7b85 ldrb r5, [r0, #14] -10000a20: 2d00 cmp r5, #0 -10000a22: d101 bne.n 10000a28 -10000a24: 0028 movs r0, r5 -10000a26: bd70 pop {r4, r5, r6, pc} -10000a28: 0029 movs r1, r5 -10000a2a: f7ff ffcf bl 100009cc -10000a2e: 7843 ldrb r3, [r0, #1] -10000a30: 73a3 strb r3, [r4, #14] -10000a32: 2b00 cmp r3, #0 -10000a34: d100 bne.n 10000a38 -10000a36: 73e3 strb r3, [r4, #15] -10000a38: 2300 movs r3, #0 -10000a3a: 7083 strb r3, [r0, #2] -10000a3c: 7043 strb r3, [r0, #1] -10000a3e: 7003 strb r3, [r0, #0] -10000a40: e7f0 b.n 10000a24 +100008b0 : +100008b0: b5f8 push {r3, r4, r5, r6, r7, lr} +100008b2: 0006 movs r6, r0 +100008b4: 000c movs r4, r1 +100008b6: 0015 movs r5, r2 +100008b8: f7ff ffe4 bl 10000884 +100008bc: 08e3 lsrs r3, r4, #3 +100008be: 18f7 adds r7, r6, r3 +100008c0: 5cf1 ldrb r1, [r6, r3] +100008c2: 2207 movs r2, #7 +100008c4: 4022 ands r2, r4 +100008c6: 2301 movs r3, #1 +100008c8: 4093 lsls r3, r2 +100008ca: 420b tst r3, r1 +100008cc: d105 bne.n 100008da +100008ce: b2db uxtb r3, r3 +100008d0: 430b orrs r3, r1 +100008d2: 703b strb r3, [r7, #0] +100008d4: f7ff ffe2 bl 1000089c +100008d8: bdf8 pop {r3, r4, r5, r6, r7, pc} +100008da: 0021 movs r1, r4 +100008dc: 0028 movs r0, r5 +100008de: f001 fcc5 bl 1000226c ... -10000a44 : -10000a44: b5f8 push {r3, r4, r5, r6, r7, lr} -10000a46: 0006 movs r6, r0 -10000a48: 000c movs r4, r1 -10000a4a: 0015 movs r5, r2 -10000a4c: f7ff ffbe bl 100009cc -10000a50: 0007 movs r7, r0 -10000a52: 2c00 cmp r4, #0 -10000a54: d00d beq.n 10000a72 -10000a56: 2d00 cmp r5, #0 -10000a58: d011 beq.n 10000a7e -10000a5a: 42ac cmp r4, r5 -10000a5c: d015 beq.n 10000a8a -10000a5e: 0029 movs r1, r5 -10000a60: 0030 movs r0, r6 -10000a62: f7ff ffb3 bl 100009cc -10000a66: 7084 strb r4, [r0, #2] -10000a68: 783b ldrb r3, [r7, #0] -10000a6a: 2b00 cmp r3, #0 -10000a6c: d113 bne.n 10000a96 -10000a6e: 703d strb r5, [r7, #0] -10000a70: bdf8 pop {r3, r4, r5, r6, r7, pc} -10000a72: 4b0a ldr r3, [pc, #40] @ (10000a9c ) -10000a74: 4a0a ldr r2, [pc, #40] @ (10000aa0 ) -10000a76: 480b ldr r0, [pc, #44] @ (10000aa4 ) -10000a78: 216f movs r1, #111 @ 0x6f -10000a7a: f001 f885 bl 10001b88 <__assert_func> -10000a7e: 4b0a ldr r3, [pc, #40] @ (10000aa8 ) -10000a80: 4a07 ldr r2, [pc, #28] @ (10000aa0 ) -10000a82: 4808 ldr r0, [pc, #32] @ (10000aa4 ) -10000a84: 2170 movs r1, #112 @ 0x70 -10000a86: f001 f87f bl 10001b88 <__assert_func> -10000a8a: 4b08 ldr r3, [pc, #32] @ (10000aac ) -10000a8c: 4a04 ldr r2, [pc, #16] @ (10000aa0 ) -10000a8e: 4805 ldr r0, [pc, #20] @ (10000aa4 ) -10000a90: 2171 movs r1, #113 @ 0x71 -10000a92: f001 f879 bl 10001b88 <__assert_func> -10000a96: 7043 strb r3, [r0, #1] -10000a98: 703d strb r5, [r7, #0] -10000a9a: e7e9 b.n 10000a70 -10000a9c: 100044c8 .word 0x100044c8 -10000aa0: 100046ac .word 0x100046ac -10000aa4: 10004474 .word 0x10004474 -10000aa8: 100044d4 .word 0x100044d4 -10000aac: 100044e0 .word 0x100044e0 +100008e4 : +100008e4: 2300 movs r3, #0 +100008e6: e007 b.n 100008f8 +100008e8: 4a05 ldr r2, [pc, #20] @ (10000900 ) +100008ea: 189a adds r2, r3, r2 +100008ec: 0092 lsls r2, r2, #2 +100008ee: f3bf 8f5f dmb sy +100008f2: 2100 movs r1, #0 +100008f4: 6011 str r1, [r2, #0] +100008f6: 3301 adds r3, #1 +100008f8: 2b1f cmp r3, #31 +100008fa: d9f5 bls.n 100008e8 +100008fc: 4770 bx lr +100008fe: 46c0 nop @ (mov r8, r8) +10000900: 34000040 .word 0x34000040 -10000ab0 : -10000ab0: b570 push {r4, r5, r6, lr} -10000ab2: 0006 movs r6, r0 -10000ab4: 000d movs r5, r1 -10000ab6: 0014 movs r4, r2 -10000ab8: 2900 cmp r1, #0 -10000aba: d014 beq.n 10000ae6 -10000abc: 2a00 cmp r2, #0 -10000abe: d014 beq.n 10000aea -10000ac0: 6843 ldr r3, [r0, #4] -10000ac2: 6880 ldr r0, [r0, #8] -10000ac4: 4798 blx r3 -10000ac6: 2800 cmp r0, #0 -10000ac8: d006 beq.n 10000ad8 -10000aca: 0022 movs r2, r4 -10000acc: 0029 movs r1, r5 -10000ace: 0030 movs r0, r6 -10000ad0: f7ff ffb8 bl 10000a44 -10000ad4: 0028 movs r0, r5 -10000ad6: e007 b.n 10000ae8 -10000ad8: 002a movs r2, r5 -10000ada: 0021 movs r1, r4 -10000adc: 0030 movs r0, r6 -10000ade: f7ff ffb1 bl 10000a44 -10000ae2: 0020 movs r0, r4 -10000ae4: e000 b.n 10000ae8 -10000ae6: 0010 movs r0, r2 -10000ae8: bd70 pop {r4, r5, r6, pc} -10000aea: 0008 movs r0, r1 -10000aec: e7fc b.n 10000ae8 +10000904 : +10000904: 4a05 ldr r2, [pc, #20] @ (1000091c ) +10000906: 7810 ldrb r0, [r2, #0] +10000908: 1c43 adds r3, r0, #1 +1000090a: b2db uxtb r3, r3 +1000090c: 7013 strb r3, [r2, #0] +1000090e: 2b17 cmp r3, #23 +10000910: d902 bls.n 10000918 +10000912: 0013 movs r3, r2 +10000914: 2210 movs r2, #16 +10000916: 701a strb r2, [r3, #0] +10000918: 4770 bx lr +1000091a: 46c0 nop @ (mov r8, r8) +1000091c: 200002b0 .word 0x200002b0 + +10000920 : +10000920: 4b07 ldr r3, [pc, #28] @ (10000940 ) +10000922: 689b ldr r3, [r3, #8] +10000924: 3010 adds r0, #16 +10000926: 0080 lsls r0, r0, #2 +10000928: 5019 str r1, [r3, r0] +1000092a: f3bf 8f5f dmb sy +1000092e: f3bf 8f5f dmb sy +10000932: 4b04 ldr r3, [pc, #16] @ (10000944 ) +10000934: 2100 movs r1, #0 +10000936: 6019 str r1, [r3, #0] +10000938: f382 8810 msr PRIMASK, r2 +1000093c: 4770 bx lr +1000093e: 46c0 nop @ (mov r8, r8) +10000940: e000ed00 .word 0xe000ed00 +10000944: d0000124 .word 0xd0000124 + +10000948 : +10000948: b510 push {r4, lr} +1000094a: 8803 ldrh r3, [r0, #0] +1000094c: 0ada lsrs r2, r3, #11 +1000094e: 2a1c cmp r2, #28 +10000950: d105 bne.n 1000095e +10000952: 055b lsls r3, r3, #21 +10000954: 155b asrs r3, r3, #21 +10000956: 3302 adds r3, #2 +10000958: 005b lsls r3, r3, #1 +1000095a: 18c0 adds r0, r0, r3 +1000095c: bd10 pop {r4, pc} +1000095e: 4b03 ldr r3, [pc, #12] @ (1000096c ) +10000960: 4a03 ldr r2, [pc, #12] @ (10000970 ) +10000962: 4804 ldr r0, [pc, #16] @ (10000974 ) +10000964: 21b1 movs r1, #177 @ 0xb1 +10000966: f001 fbe9 bl 1000213c <__assert_func> +1000096a: 46c0 nop @ (mov r8, r8) +1000096c: 10004b00 .word 0x10004b00 +10000970: 10004ca4 .word 0x10004ca4 +10000974: 10004b18 .word 0x10004b18 + +10000978 : +10000978: b510 push {r4, lr} +1000097a: 1a09 subs r1, r1, r0 +1000097c: 1f0b subs r3, r1, #4 +1000097e: 4a0a ldr r2, [pc, #40] @ (100009a8 ) +10000980: 1888 adds r0, r1, r2 +10000982: 4a0a ldr r2, [pc, #40] @ (100009ac ) +10000984: 4290 cmp r0, r2 +10000986: d808 bhi.n 1000099a +10000988: 07c9 lsls r1, r1, #31 +1000098a: d406 bmi.n 1000099a +1000098c: 105b asrs r3, r3, #1 +1000098e: 055b lsls r3, r3, #21 +10000990: 0d5b lsrs r3, r3, #21 +10000992: 4807 ldr r0, [pc, #28] @ (100009b0 ) +10000994: 4318 orrs r0, r3 +10000996: b280 uxth r0, r0 +10000998: bd10 pop {r4, pc} +1000099a: 4b06 ldr r3, [pc, #24] @ (100009b4 ) +1000099c: 4a06 ldr r2, [pc, #24] @ (100009b8 ) +1000099e: 4807 ldr r0, [pc, #28] @ (100009bc ) +100009a0: 21a3 movs r1, #163 @ 0xa3 +100009a2: f001 fbcb bl 1000213c <__assert_func> +100009a6: 46c0 nop @ (mov r8, r8) +100009a8: 000007fc .word 0x000007fc +100009ac: 00000ffe .word 0x00000ffe +100009b0: ffffe000 .word 0xffffe000 +100009b4: 10004b60 .word 0x10004b60 +100009b8: 10004c98 .word 0x10004c98 +100009bc: 10004b18 .word 0x10004b18 + +100009c0 : +100009c0: b510 push {r4, lr} +100009c2: 1a09 subs r1, r1, r0 +100009c4: 3904 subs r1, #4 +100009c6: 084a lsrs r2, r1, #1 +100009c8: 0b09 lsrs r1, r1, #12 +100009ca: d108 bne.n 100009de +100009cc: 0549 lsls r1, r1, #21 +100009ce: 0d49 lsrs r1, r1, #21 +100009d0: 4b06 ldr r3, [pc, #24] @ (100009ec ) +100009d2: 430b orrs r3, r1 +100009d4: 8003 strh r3, [r0, #0] +100009d6: 4b06 ldr r3, [pc, #24] @ (100009f0 ) +100009d8: 4313 orrs r3, r2 +100009da: 8043 strh r3, [r0, #2] +100009dc: bd10 pop {r4, pc} +100009de: 4b05 ldr r3, [pc, #20] @ (100009f4 ) +100009e0: 4a05 ldr r2, [pc, #20] @ (100009f8 ) +100009e2: 4806 ldr r0, [pc, #24] @ (100009fc ) +100009e4: 21ab movs r1, #171 @ 0xab +100009e6: f001 fba9 bl 1000213c <__assert_func> +100009ea: 46c0 nop @ (mov r8, r8) +100009ec: fffff000 .word 0xfffff000 +100009f0: fffff800 .word 0xfffff800 +100009f4: 10004b90 .word 0x10004b90 +100009f8: 10004c6c .word 0x10004c6c +100009fc: 10004b18 .word 0x10004b18 + +10000a00 : +10000a00: 2301 movs r3, #1 +10000a02: 4083 lsls r3, r0 +10000a04: 4a03 ldr r2, [pc, #12] @ (10000a14 ) +10000a06: 6810 ldr r0, [r2, #0] +10000a08: 4018 ands r0, r3 +10000a0a: 1e43 subs r3, r0, #1 +10000a0c: 4198 sbcs r0, r3 +10000a0e: b2c0 uxtb r0, r0 +10000a10: 4770 bx lr +10000a12: 46c0 nop @ (mov r8, r8) +10000a14: e000e100 .word 0xe000e100 + +10000a18 : +10000a18: 2900 cmp r1, #0 +10000a1a: d004 beq.n 10000a26 +10000a1c: 4b03 ldr r3, [pc, #12] @ (10000a2c ) +10000a1e: 6018 str r0, [r3, #0] +10000a20: 4b03 ldr r3, [pc, #12] @ (10000a30 ) +10000a22: 6018 str r0, [r3, #0] +10000a24: 4770 bx lr +10000a26: 4b03 ldr r3, [pc, #12] @ (10000a34 ) +10000a28: 6018 str r0, [r3, #0] +10000a2a: e7fb b.n 10000a24 +10000a2c: e000e280 .word 0xe000e280 +10000a30: e000e100 .word 0xe000e100 +10000a34: e000e180 .word 0xe000e180 + +10000a38 : +10000a38: b510 push {r4, lr} +10000a3a: 2301 movs r3, #1 +10000a3c: 4083 lsls r3, r0 +10000a3e: 0018 movs r0, r3 +10000a40: f7ff ffea bl 10000a18 +10000a44: bd10 pop {r4, pc} ... -10000af0 : -10000af0: b570 push {r4, r5, r6, lr} -10000af2: 0004 movs r4, r0 -10000af4: 1e0d subs r5, r1, #0 -10000af6: d00c beq.n 10000b12 -10000af8: f7ff ff68 bl 100009cc -10000afc: 2300 movs r3, #0 -10000afe: 7083 strb r3, [r0, #2] -10000b00: 7043 strb r3, [r0, #1] -10000b02: 7003 strb r3, [r0, #0] -10000b04: 7b61 ldrb r1, [r4, #13] -10000b06: 002a movs r2, r5 -10000b08: 0020 movs r0, r4 -10000b0a: f7ff ffd1 bl 10000ab0 -10000b0e: 7360 strb r0, [r4, #13] -10000b10: bd70 pop {r4, r5, r6, pc} -10000b12: 4b03 ldr r3, [pc, #12] @ (10000b20 ) -10000b14: 4a03 ldr r2, [pc, #12] @ (10000b24 ) -10000b16: 4804 ldr r0, [pc, #16] @ (10000b28 ) -10000b18: 21a5 movs r1, #165 @ 0xa5 -10000b1a: f001 f835 bl 10001b88 <__assert_func> -10000b1e: 46c0 nop @ (mov r8, r8) -10000b20: 100044f8 .word 0x100044f8 -10000b24: 100046c0 .word 0x100046c0 -10000b28: 10004474 .word 0x10004474 +10000a48 : +10000a48: 4b02 ldr r3, [pc, #8] @ (10000a54 ) +10000a4a: 689b ldr r3, [r3, #8] +10000a4c: 3010 adds r0, #16 +10000a4e: 0080 lsls r0, r0, #2 +10000a50: 58c0 ldr r0, [r0, r3] +10000a52: 4770 bx lr +10000a54: e000ed00 .word 0xe000ed00 -10000b2c : -10000b2c: b570 push {r4, r5, r6, lr} -10000b2e: 0004 movs r4, r0 -10000b30: 1e0d subs r5, r1, #0 -10000b32: d00f beq.n 10000b54 -10000b34: f7ff ff62 bl 100009fc -10000b38: 2800 cmp r0, #0 -10000b3a: d10b bne.n 10000b54 -10000b3c: 7be1 ldrb r1, [r4, #15] -10000b3e: 2900 cmp r1, #0 -10000b40: d10e bne.n 10000b60 -10000b42: 7ba3 ldrb r3, [r4, #14] -10000b44: 2b00 cmp r3, #0 -10000b46: d103 bne.n 10000b50 -10000b48: 7be3 ldrb r3, [r4, #15] -10000b4a: 2b00 cmp r3, #0 -10000b4c: d10d bne.n 10000b6a -10000b4e: 73a5 strb r5, [r4, #14] -10000b50: 73e5 strb r5, [r4, #15] -10000b52: bd70 pop {r4, r5, r6, pc} -10000b54: 4b08 ldr r3, [pc, #32] @ (10000b78 ) -10000b56: 4a09 ldr r2, [pc, #36] @ (10000b7c ) -10000b58: 4809 ldr r0, [pc, #36] @ (10000b80 ) -10000b5a: 21f6 movs r1, #246 @ 0xf6 -10000b5c: f001 f814 bl 10001b88 <__assert_func> -10000b60: 0020 movs r0, r4 -10000b62: f7ff ff33 bl 100009cc -10000b66: 7045 strb r5, [r0, #1] -10000b68: e7eb b.n 10000b42 -10000b6a: 4b06 ldr r3, [pc, #24] @ (10000b84 ) -10000b6c: 4a03 ldr r2, [pc, #12] @ (10000b7c ) -10000b6e: 4804 ldr r0, [pc, #16] @ (10000b80 ) -10000b70: 21fb movs r1, #251 @ 0xfb -10000b72: f001 f809 bl 10001b88 <__assert_func> -10000b76: 46c0 nop @ (mov r8, r8) -10000b78: 100044fc .word 0x100044fc -10000b7c: 1000469c .word 0x1000469c -10000b80: 10004474 .word 0x10004474 -10000b84: 10004520 .word 0x10004520 +10000a58 : +10000a58: b570 push {r4, r5, r6, lr} +10000a5a: 0004 movs r4, r0 +10000a5c: 000d movs r5, r1 +10000a5e: f3ef 8610 mrs r6, PRIMASK +10000a62: b672 cpsid i +10000a64: 4b0c ldr r3, [pc, #48] @ (10000a98 ) +10000a66: 681b ldr r3, [r3, #0] +10000a68: 2b00 cmp r3, #0 +10000a6a: d0fb beq.n 10000a64 +10000a6c: f3bf 8f5f dmb sy +10000a70: 0020 movs r0, r4 +10000a72: f7ff ffe9 bl 10000a48 +10000a76: 4b09 ldr r3, [pc, #36] @ (10000a9c ) +10000a78: 4298 cmp r0, r3 +10000a7a: d001 beq.n 10000a80 +10000a7c: 42a8 cmp r0, r5 +10000a7e: d105 bne.n 10000a8c +10000a80: 0032 movs r2, r6 +10000a82: 0029 movs r1, r5 +10000a84: 0020 movs r0, r4 +10000a86: f7ff ff4b bl 10000920 +10000a8a: bd70 pop {r4, r5, r6, pc} +10000a8c: 4b04 ldr r3, [pc, #16] @ (10000aa0 ) +10000a8e: 4a05 ldr r2, [pc, #20] @ (10000aa4 ) +10000a90: 4805 ldr r0, [pc, #20] @ (10000aa8 ) +10000a92: 2186 movs r1, #134 @ 0x86 +10000a94: f001 fb52 bl 1000213c <__assert_func> +10000a98: d0000124 .word 0xd0000124 +10000a9c: 100001cd .word 0x100001cd +10000aa0: 10004ba0 .word 0x10004ba0 +10000aa4: 10004cb4 .word 0x10004cb4 +10000aa8: 10004b18 .word 0x10004b18 -10000b88 : -10000b88: b510 push {r4, lr} -10000b8a: 2900 cmp r1, #0 -10000b8c: d007 beq.n 10000b9e -10000b8e: 6803 ldr r3, [r0, #0] -10000b90: 7b1b ldrb r3, [r3, #12] -10000b92: 428b cmp r3, r1 -10000b94: d303 bcc.n 10000b9e -10000b96: 68c0 ldr r0, [r0, #12] -10000b98: 3901 subs r1, #1 -10000b9a: 1840 adds r0, r0, r1 -10000b9c: bd10 pop {r4, pc} -10000b9e: 4b03 ldr r3, [pc, #12] @ (10000bac ) -10000ba0: 4a03 ldr r2, [pc, #12] @ (10000bb0 ) -10000ba2: 4804 ldr r0, [pc, #16] @ (10000bb4 ) -10000ba4: 2141 movs r1, #65 @ 0x41 -10000ba6: f000 ffef bl 10001b88 <__assert_func> -10000baa: 46c0 nop @ (mov r8, r8) -10000bac: 10004384 .word 0x10004384 -10000bb0: 10004688 .word 0x10004688 -10000bb4: 100043a8 .word 0x100043a8 +10000aac : +10000aac: b5f0 push {r4, r5, r6, r7, lr} +10000aae: 46ce mov lr, r9 +10000ab0: 4647 mov r7, r8 +10000ab2: b580 push {r7, lr} +10000ab4: b083 sub sp, #12 +10000ab6: 0006 movs r6, r0 +10000ab8: 000d movs r5, r1 +10000aba: f3ef 8810 mrs r8, PRIMASK +10000abe: b672 cpsid i +10000ac0: 4b4f ldr r3, [pc, #316] @ (10000c00 ) +10000ac2: 681b ldr r3, [r3, #0] +10000ac4: 2b00 cmp r3, #0 +10000ac6: d0fb beq.n 10000ac0 +10000ac8: f3bf 8f5f dmb sy +10000acc: 4b4d ldr r3, [pc, #308] @ (10000c04 ) +10000ace: 689a ldr r2, [r3, #8] +10000ad0: 0034 movs r4, r6 +10000ad2: 3410 adds r4, #16 +10000ad4: 00a3 lsls r3, r4, #2 +10000ad6: 58d7 ldr r7, [r2, r3] +10000ad8: 4b4b ldr r3, [pc, #300] @ (10000c08 ) +10000ada: 429f cmp r7, r3 +10000adc: d007 beq.n 10000aee +10000ade: 42af cmp r7, r5 +10000ae0: d100 bne.n 10000ae4 +10000ae2: e08b b.n 10000bfc +10000ae4: 9701 str r7, [sp, #4] +10000ae6: 4b49 ldr r3, [pc, #292] @ (10000c0c ) +10000ae8: 1afb subs r3, r7, r3 +10000aea: 2b2f cmp r3, #47 @ 0x2f +10000aec: d909 bls.n 10000b02 +10000aee: 4642 mov r2, r8 +10000af0: 0039 movs r1, r7 +10000af2: 0030 movs r0, r6 +10000af4: f7ff ff14 bl 10000920 +10000af8: b003 add sp, #12 +10000afa: bcc0 pop {r6, r7} +10000afc: 46b9 mov r9, r7 +10000afe: 46b0 mov r8, r6 +10000b00: bdf0 pop {r4, r5, r6, r7, pc} +10000b02: 0030 movs r0, r6 +10000b04: f7ff ff7c bl 10000a00 +10000b08: 4681 mov r9, r0 +10000b0a: 2100 movs r1, #0 +10000b0c: 0030 movs r0, r6 +10000b0e: f7ff ff93 bl 10000a38 +10000b12: f3bf 8f5f dmb sy +10000b16: f3ef 8105 mrs r1, IPSR +10000b1a: 2900 cmp r1, #0 +10000b1c: d001 beq.n 10000b22 +10000b1e: 428c cmp r4, r1 +10000b20: d111 bne.n 10000b46 +10000b22: 2301 movs r3, #1 +10000b24: 9c01 ldr r4, [sp, #4] +10000b26: 439c bics r4, r3 +10000b28: 2000 movs r0, #0 +10000b2a: 68a3 ldr r3, [r4, #8] +10000b2c: 42ab cmp r3, r5 +10000b2e: d012 beq.n 10000b56 +10000b30: 2206 movs r2, #6 +10000b32: 56a2 ldrsb r2, [r4, r2] +10000b34: 2a00 cmp r2, #0 +10000b36: db0d blt.n 10000b54 +10000b38: 0053 lsls r3, r2, #1 +10000b3a: 189b adds r3, r3, r2 +10000b3c: 009b lsls r3, r3, #2 +10000b3e: 4a33 ldr r2, [pc, #204] @ (10000c0c ) +10000b40: 0020 movs r0, r4 +10000b42: 18d4 adds r4, r2, r3 +10000b44: e7f1 b.n 10000b2a +10000b46: 4b32 ldr r3, [pc, #200] @ (10000c10 ) +10000b48: 4a32 ldr r2, [pc, #200] @ (10000c14 ) +10000b4a: 2136 movs r1, #54 @ 0x36 +10000b4c: 4832 ldr r0, [pc, #200] @ (10000c18 ) +10000b4e: 31ff adds r1, #255 @ 0xff +10000b50: f001 faf4 bl 1000213c <__assert_func> +10000b54: 0020 movs r0, r4 +10000b56: 42ab cmp r3, r5 +10000b58: d149 bne.n 10000bee +10000b5a: 2506 movs r5, #6 +10000b5c: 5765 ldrsb r5, [r4, r5] +10000b5e: 2d00 cmp r5, #0 +10000b60: db2b blt.n 10000bba +10000b62: 4b2a ldr r3, [pc, #168] @ (10000c0c ) +10000b64: 006a lsls r2, r5, #1 +10000b66: 1952 adds r2, r2, r5 +10000b68: 0092 lsls r2, r2, #2 +10000b6a: 189b adds r3, r3, r2 +10000b6c: 689a ldr r2, [r3, #8] +10000b6e: 60a2 str r2, [r4, #8] +10000b70: 79da ldrb r2, [r3, #7] +10000b72: 71e2 strb r2, [r4, #7] +10000b74: 799b ldrb r3, [r3, #6] +10000b76: b25b sxtb r3, r3 +10000b78: 71a3 strb r3, [r4, #6] +10000b7a: 2b00 cmp r3, #0 +10000b7c: da0f bge.n 10000b9e +10000b7e: 4827 ldr r0, [pc, #156] @ (10000c1c ) +10000b80: 80a0 strh r0, [r4, #4] +10000b82: 4b22 ldr r3, [pc, #136] @ (10000c0c ) +10000b84: 006a lsls r2, r5, #1 +10000b86: 1952 adds r2, r2, r5 +10000b88: 0092 lsls r2, r2, #2 +10000b8a: 189b adds r3, r3, r2 +10000b8c: 4a24 ldr r2, [pc, #144] @ (10000c20 ) +10000b8e: 7811 ldrb r1, [r2, #0] +10000b90: 7199 strb r1, [r3, #6] +10000b92: 7015 strb r5, [r2, #0] +10000b94: 4649 mov r1, r9 +10000b96: 0030 movs r0, r6 +10000b98: f7ff ff4e bl 10000a38 +10000b9c: e7a7 b.n 10000aee +10000b9e: 0068 lsls r0, r5, #1 +10000ba0: 1940 adds r0, r0, r5 +10000ba2: 0080 lsls r0, r0, #2 +10000ba4: 4b19 ldr r3, [pc, #100] @ (10000c0c ) +10000ba6: 18c0 adds r0, r0, r3 +10000ba8: 3004 adds r0, #4 +10000baa: f7ff fecd bl 10000948 +10000bae: 0001 movs r1, r0 +10000bb0: 1d23 adds r3, r4, #4 +10000bb2: 0018 movs r0, r3 +10000bb4: f7ff fee0 bl 10000978 +10000bb8: e7e2 b.n 10000b80 +10000bba: 2900 cmp r1, #0 +10000bbc: d112 bne.n 10000be4 +10000bbe: 2800 cmp r0, #0 +10000bc0: d00e beq.n 10000be0 +10000bc2: 23ff movs r3, #255 @ 0xff +10000bc4: 7183 strb r3, [r0, #6] +10000bc6: 4b17 ldr r3, [pc, #92] @ (10000c24 ) +10000bc8: 8083 strh r3, [r0, #4] +10000bca: 4915 ldr r1, [pc, #84] @ (10000c20 ) +10000bcc: 780b ldrb r3, [r1, #0] +10000bce: 71a3 strb r3, [r4, #6] +10000bd0: 4a0e ldr r2, [pc, #56] @ (10000c0c ) +10000bd2: 4b15 ldr r3, [pc, #84] @ (10000c28 ) +10000bd4: 1aa4 subs r4, r4, r2 +10000bd6: 4164 adcs r4, r4 +10000bd8: 4363 muls r3, r4 +10000bda: 0d1b lsrs r3, r3, #20 +10000bdc: 700b strb r3, [r1, #0] +10000bde: e7d9 b.n 10000b94 +10000be0: 4f09 ldr r7, [pc, #36] @ (10000c08 ) +10000be2: e7f2 b.n 10000bca +10000be4: 4911 ldr r1, [pc, #68] @ (10000c2c ) +10000be6: 1d20 adds r0, r4, #4 +10000be8: f7ff feea bl 100009c0 +10000bec: e7d2 b.n 10000b94 +10000bee: 4b10 ldr r3, [pc, #64] @ (10000c30 ) +10000bf0: 4a08 ldr r2, [pc, #32] @ (10000c14 ) +10000bf2: 216a movs r1, #106 @ 0x6a +10000bf4: 4808 ldr r0, [pc, #32] @ (10000c18 ) +10000bf6: 31ff adds r1, #255 @ 0xff +10000bf8: f001 faa0 bl 1000213c <__assert_func> +10000bfc: 4f02 ldr r7, [pc, #8] @ (10000c08 ) +10000bfe: e776 b.n 10000aee +10000c00: d0000124 .word 0xd0000124 +10000c04: e000ed00 .word 0xe000ed00 +10000c08: 100001cd .word 0x100001cd +10000c0c: 200002b4 .word 0x200002b4 +10000c10: 10004bd8 .word 0x10004bd8 +10000c14: 10004c84 .word 0x10004c84 +10000c18: 10004b18 .word 0x10004b18 +10000c1c: 0000bd01 .word 0x0000bd01 +10000c20: 2000077d .word 0x2000077d +10000c24: ffffbd01 .word 0xffffbd01 +10000c28: 0000aaaa .word 0x0000aaaa +10000c2c: 200002ee .word 0x200002ee +10000c30: 10004c0c .word 0x10004c0c -10000bb8 : -10000bb8: b570 push {r4, r5, r6, lr} -10000bba: 0005 movs r5, r0 -10000bbc: 000c movs r4, r1 -10000bbe: 0008 movs r0, r1 -10000bc0: f000 fc92 bl 100014e8 -10000bc4: 4909 ldr r1, [pc, #36] @ (10000bec ) -10000bc6: 0020 movs r0, r4 -10000bc8: f000 fbd2 bl 10001370 -10000bcc: f7ff fc48 bl 10000460 -10000bd0: 4b07 ldr r3, [pc, #28] @ (10000bf0 ) -10000bd2: 469c mov ip, r3 -10000bd4: 4460 add r0, ip -10000bd6: 0080 lsls r0, r0, #2 -10000bd8: 6068 str r0, [r5, #4] -10000bda: 752c strb r4, [r5, #20] -10000bdc: 23d0 movs r3, #208 @ 0xd0 -10000bde: 061b lsls r3, r3, #24 -10000be0: 781b ldrb r3, [r3, #0] -10000be2: 756b strb r3, [r5, #21] -10000be4: 4b03 ldr r3, [pc, #12] @ (10000bf4 ) -10000be6: 00a4 lsls r4, r4, #2 -10000be8: 50e5 str r5, [r4, r3] -10000bea: bd70 pop {r4, r5, r6, pc} -10000bec: 10000d05 .word 0x10000d05 -10000bf0: 34000040 .word 0x34000040 -10000bf4: 2000048c .word 0x2000048c +10000c34 : +10000c34: b570 push {r4, r5, r6, lr} +10000c36: 2201 movs r2, #1 +10000c38: 4302 orrs r2, r0 +10000c3a: 4b2e ldr r3, [pc, #184] @ (10000cf4 ) +10000c3c: 1ad3 subs r3, r2, r3 +10000c3e: 2b2f cmp r3, #47 @ 0x2f +10000c40: d828 bhi.n 10000c94 +10000c42: f3ef 8305 mrs r3, IPSR +10000c46: 2b00 cmp r3, #0 +10000c48: d02b beq.n 10000ca2 +10000c4a: f3ef 8c10 mrs ip, PRIMASK +10000c4e: b672 cpsid i +10000c50: 4929 ldr r1, [pc, #164] @ (10000cf8 ) +10000c52: 6809 ldr r1, [r1, #0] +10000c54: 2900 cmp r1, #0 +10000c56: d0fb beq.n 10000c50 +10000c58: f3bf 8f5f dmb sy +10000c5c: 4c25 ldr r4, [pc, #148] @ (10000cf4 ) +10000c5e: 4927 ldr r1, [pc, #156] @ (10000cfc ) +10000c60: 0005 movs r5, r0 +10000c62: 1b2d subs r5, r5, r4 +10000c64: 416d adcs r5, r5 +10000c66: 4369 muls r1, r5 +10000c68: 0d09 lsrs r1, r1, #20 +10000c6a: b24c sxtb r4, r1 +10000c6c: 4924 ldr r1, [pc, #144] @ (10000d00 ) +10000c6e: 6889 ldr r1, [r1, #8] +10000c70: 009b lsls r3, r3, #2 +10000c72: 58c9 ldr r1, [r1, r3] +10000c74: 4291 cmp r1, r2 +10000c76: d01b beq.n 10000cb0 +10000c78: 2100 movs r1, #0 +10000c7a: 2903 cmp r1, #3 +10000c7c: d832 bhi.n 10000ce4 +10000c7e: 4b1d ldr r3, [pc, #116] @ (10000cf4 ) +10000c80: 004a lsls r2, r1, #1 +10000c82: 1852 adds r2, r2, r1 +10000c84: 0092 lsls r2, r2, #2 +10000c86: 189b adds r3, r3, r2 +10000c88: 799b ldrb r3, [r3, #6] +10000c8a: b25b sxtb r3, r3 +10000c8c: 42a3 cmp r3, r4 +10000c8e: d01f beq.n 10000cd0 +10000c90: 3101 adds r1, #1 +10000c92: e7f2 b.n 10000c7a +10000c94: 4b1b ldr r3, [pc, #108] @ (10000d04 ) +10000c96: 4a1c ldr r2, [pc, #112] @ (10000d08 ) +10000c98: 21c7 movs r1, #199 @ 0xc7 +10000c9a: 481c ldr r0, [pc, #112] @ (10000d0c ) +10000c9c: 0049 lsls r1, r1, #1 +10000c9e: f001 fa4d bl 1000213c <__assert_func> +10000ca2: 4b1b ldr r3, [pc, #108] @ (10000d10 ) +10000ca4: 4a18 ldr r2, [pc, #96] @ (10000d08 ) +10000ca6: 2192 movs r1, #146 @ 0x92 +10000ca8: 4818 ldr r0, [pc, #96] @ (10000d0c ) +10000caa: 31ff adds r1, #255 @ 0xff +10000cac: f001 fa46 bl 1000213c <__assert_func> +10000cb0: 4a13 ldr r2, [pc, #76] @ (10000d00 ) +10000cb2: 6892 ldr r2, [r2, #8] +10000cb4: 4917 ldr r1, [pc, #92] @ (10000d14 ) +10000cb6: 50d1 str r1, [r2, r3] +10000cb8: 4b17 ldr r3, [pc, #92] @ (10000d18 ) +10000cba: 781a ldrb r2, [r3, #0] +10000cbc: 7182 strb r2, [r0, #6] +10000cbe: 701c strb r4, [r3, #0] +10000cc0: f3bf 8f5f dmb sy +10000cc4: 4b0c ldr r3, [pc, #48] @ (10000cf8 ) +10000cc6: 2200 movs r2, #0 +10000cc8: 601a str r2, [r3, #0] +10000cca: f38c 8810 msr PRIMASK, ip +10000cce: bd70 pop {r4, r5, r6, pc} +10000cd0: 4b08 ldr r3, [pc, #32] @ (10000cf4 ) +10000cd2: 004a lsls r2, r1, #1 +10000cd4: 1855 adds r5, r2, r1 +10000cd6: 00ad lsls r5, r5, #2 +10000cd8: 195d adds r5, r3, r5 +10000cda: 26ff movs r6, #255 @ 0xff +10000cdc: 71ae strb r6, [r5, #6] +10000cde: 4a0f ldr r2, [pc, #60] @ (10000d1c ) +10000ce0: 80aa strh r2, [r5, #4] +10000ce2: e7e9 b.n 10000cb8 +10000ce4: 4b0e ldr r3, [pc, #56] @ (10000d20 ) +10000ce6: 4a08 ldr r2, [pc, #32] @ (10000d08 ) +10000ce8: 21d1 movs r1, #209 @ 0xd1 +10000cea: 4808 ldr r0, [pc, #32] @ (10000d0c ) +10000cec: 0049 lsls r1, r1, #1 +10000cee: f001 fa25 bl 1000213c <__assert_func> +10000cf2: 46c0 nop @ (mov r8, r8) +10000cf4: 200002b4 .word 0x200002b4 +10000cf8: d0000124 .word 0xd0000124 +10000cfc: 0000aaaa .word 0x0000aaaa +10000d00: e000ed00 .word 0xe000ed00 +10000d04: 10004c14 .word 0x10004c14 +10000d08: 10004c50 .word 0x10004c50 +10000d0c: 10004b18 .word 0x10004b18 +10000d10: 10004c3c .word 0x10004c3c +10000d14: 100001cd .word 0x100001cd +10000d18: 2000077d .word 0x2000077d +10000d1c: ffffbd01 .word 0xffffbd01 +10000d20: 10004c48 .word 0x10004c48 -10000bf8 : -10000bf8: 4b0a ldr r3, [pc, #40] @ (10000c24 ) -10000bfa: 681a ldr r2, [r3, #0] -10000bfc: f3ef 8110 mrs r1, PRIMASK -10000c00: b672 cpsid i -10000c02: 6813 ldr r3, [r2, #0] -10000c04: 2b00 cmp r3, #0 -10000c06: d0fc beq.n 10000c02 -10000c08: f3bf 8f5f dmb sy -10000c0c: 4b05 ldr r3, [pc, #20] @ (10000c24 ) -10000c0e: 681b ldr r3, [r3, #0] -10000c10: f3bf 8f5f dmb sy -10000c14: 2200 movs r2, #0 -10000c16: 601a str r2, [r3, #0] -10000c18: f381 8810 msr PRIMASK, r1 -10000c1c: bf40 sev -10000c1e: 2000 movs r0, #0 -10000c20: 2100 movs r1, #0 -10000c22: 4770 bx lr -10000c24: 200006a0 .word 0x200006a0 +10000d24 : +10000d24: 2200 movs r2, #0 +10000d26: 4b04 ldr r3, [pc, #16] @ (10000d38 ) +10000d28: e002 b.n 10000d30 +10000d2a: 4904 ldr r1, [pc, #16] @ (10000d3c ) +10000d2c: c302 stmia r3!, {r1} +10000d2e: 3201 adds r2, #1 +10000d30: 2a07 cmp r2, #7 +10000d32: d9fa bls.n 10000d2a +10000d34: 4770 bx lr +10000d36: 46c0 nop @ (mov r8, r8) +10000d38: e000e400 .word 0xe000e400 +10000d3c: 80808080 .word 0x80808080 -10000c28 : -10000c28: b510 push {r4, lr} -10000c2a: b082 sub sp, #8 -10000c2c: 0004 movs r4, r0 -10000c2e: f000 fb7f bl 10001330 -10000c32: 0002 movs r2, r0 -10000c34: 000b movs r3, r1 -10000c36: 4668 mov r0, sp -10000c38: f7ff fe9c bl 10000974 -10000c3c: 9a00 ldr r2, [sp, #0] -10000c3e: 9b01 ldr r3, [sp, #4] -10000c40: 6022 str r2, [r4, #0] -10000c42: 6063 str r3, [r4, #4] -10000c44: 0020 movs r0, r4 -10000c46: b002 add sp, #8 -10000c48: bd10 pop {r4, pc} +10000d40 : +10000d40: 4b02 ldr r3, [pc, #8] @ (10000d4c ) +10000d42: 469c mov ip, r3 +10000d44: 4461 add r1, ip +10000d46: 0089 lsls r1, r1, #2 +10000d48: 6001 str r1, [r0, #0] +10000d4a: 4770 bx lr +10000d4c: 34000040 .word 0x34000040 -10000c4a : -10000c4a: b570 push {r4, r5, r6, lr} -10000c4c: b084 sub sp, #16 -10000c4e: 0004 movs r4, r0 -10000c50: 0016 movs r6, r2 -10000c52: 001d movs r5, r3 -10000c54: a802 add r0, sp, #8 -10000c56: f7ff ffe7 bl 10000c28 -10000c5a: 9a02 ldr r2, [sp, #8] -10000c5c: 9b03 ldr r3, [sp, #12] -10000c5e: 9600 str r6, [sp, #0] -10000c60: 9501 str r5, [sp, #4] -10000c62: 0020 movs r0, r4 -10000c64: f7ff fe98 bl 10000998 -10000c68: 0020 movs r0, r4 -10000c6a: b004 add sp, #16 -10000c6c: bd70 pop {r4, r5, r6, pc} +10000d50 : +10000d50: b510 push {r4, lr} +10000d52: 0004 movs r4, r0 +10000d54: f7ff fdd6 bl 10000904 +10000d58: 0001 movs r1, r0 +10000d5a: 0020 movs r0, r4 +10000d5c: f7ff fff0 bl 10000d40 +10000d60: 23ff movs r3, #255 @ 0xff +10000d62: 7123 strb r3, [r4, #4] +10000d64: f3bf 8f5f dmb sy +10000d68: bd10 pop {r4, pc} + +10000d6a : +10000d6a: b510 push {r4, lr} +10000d6c: 0004 movs r4, r0 +10000d6e: f7ff fdc9 bl 10000904 +10000d72: 0001 movs r1, r0 +10000d74: 0020 movs r0, r4 +10000d76: f7ff ffe3 bl 10000d40 +10000d7a: 23ff movs r3, #255 @ 0xff +10000d7c: 7123 strb r3, [r4, #4] +10000d7e: 2300 movs r3, #0 +10000d80: 7163 strb r3, [r4, #5] +10000d82: f3bf 8f5f dmb sy +10000d86: bd10 pop {r4, pc} + +10000d88 : +10000d88: 4b08 ldr r3, [pc, #32] @ (10000dac ) +10000d8a: 6a5b ldr r3, [r3, #36] @ 0x24 +10000d8c: 4299 cmp r1, r3 +10000d8e: d809 bhi.n 10000da4 +10000d90: 4a06 ldr r2, [pc, #24] @ (10000dac ) +10000d92: 6a92 ldr r2, [r2, #40] @ 0x28 +10000d94: 4282 cmp r2, r0 +10000d96: d207 bcs.n 10000da8 +10000d98: 4299 cmp r1, r3 +10000d9a: d001 beq.n 10000da0 +10000d9c: 2001 movs r0, #1 +10000d9e: e002 b.n 10000da6 +10000da0: 2000 movs r0, #0 +10000da2: e000 b.n 10000da6 +10000da4: 2000 movs r0, #0 +10000da6: 4770 bx lr +10000da8: 2001 movs r0, #1 +10000daa: e7fc b.n 10000da6 +10000dac: 40054000 .word 0x40054000 + +10000db0 : +10000db0: b510 push {r4, lr} +10000db2: 2900 cmp r1, #0 +10000db4: d00a beq.n 10000dcc +10000db6: 6803 ldr r3, [r0, #0] +10000db8: 7b1b ldrb r3, [r3, #12] +10000dba: 428b cmp r3, r1 +10000dbc: d306 bcc.n 10000dcc +10000dbe: 6880 ldr r0, [r0, #8] +10000dc0: 4b05 ldr r3, [pc, #20] @ (10000dd8 ) +10000dc2: 469c mov ip, r3 +10000dc4: 4461 add r1, ip +10000dc6: 0109 lsls r1, r1, #4 +10000dc8: 1840 adds r0, r0, r1 +10000dca: bd10 pop {r4, pc} +10000dcc: 4b03 ldr r3, [pc, #12] @ (10000ddc ) +10000dce: 4a04 ldr r2, [pc, #16] @ (10000de0 ) +10000dd0: 4804 ldr r0, [pc, #16] @ (10000de4 ) +10000dd2: 213c movs r1, #60 @ 0x3c +10000dd4: f001 f9b2 bl 1000213c <__assert_func> +10000dd8: 0fffffff .word 0x0fffffff +10000ddc: 10004d8c .word 0x10004d8c +10000de0: 100050c4 .word 0x100050c4 +10000de4: 10004db0 .word 0x10004db0 + +10000de8 : +10000de8: b5f8 push {r3, r4, r5, r6, r7, lr} +10000dea: 0004 movs r4, r0 +10000dec: 0017 movs r7, r2 +10000dee: f7ff ffdf bl 10000db0 +10000df2: 6806 ldr r6, [r0, #0] +10000df4: 6845 ldr r5, [r0, #4] +10000df6: 0039 movs r1, r7 +10000df8: 0020 movs r0, r4 +10000dfa: f7ff ffd9 bl 10000db0 +10000dfe: 6802 ldr r2, [r0, #0] +10000e00: 6843 ldr r3, [r0, #4] +10000e02: 2001 movs r0, #1 +10000e04: 42ab cmp r3, r5 +10000e06: d801 bhi.n 10000e0c +10000e08: d002 beq.n 10000e10 +10000e0a: 2000 movs r0, #0 +10000e0c: b2c0 uxtb r0, r0 +10000e0e: bdf8 pop {r3, r4, r5, r6, r7, pc} +10000e10: 42b2 cmp r2, r6 +10000e12: d8fb bhi.n 10000e0c +10000e14: e7f9 b.n 10000e0a ... -10000c70 : -10000c70: b5f0 push {r4, r5, r6, r7, lr} -10000c72: b083 sub sp, #12 -10000c74: 0007 movs r7, r0 -10000c76: 9201 str r2, [sp, #4] -10000c78: 001d movs r5, r3 -10000c7a: ab0a add r3, sp, #40 @ 0x28 -10000c7c: 781c ldrb r4, [r3, #0] -10000c7e: ab0b add r3, sp, #44 @ 0x2c -10000c80: 781e ldrb r6, [r3, #0] -10000c82: 2c00 cmp r4, #0 -10000c84: d00b beq.n 10000c9e -10000c86: 6800 ldr r0, [r0, #0] -10000c88: 0021 movs r1, r4 -10000c8a: f7ff feb7 bl 100009fc -10000c8e: 2800 cmp r0, #0 -10000c90: d009 beq.n 10000ca6 -10000c92: 4b19 ldr r3, [pc, #100] @ (10000cf8 ) -10000c94: 4a19 ldr r2, [pc, #100] @ (10000cfc ) -10000c96: 481a ldr r0, [pc, #104] @ (10000d00 ) -10000c98: 2167 movs r1, #103 @ 0x67 -10000c9a: f000 ff75 bl 10001b88 <__assert_func> -10000c9e: 6800 ldr r0, [r0, #0] -10000ca0: f7ff febb bl 10000a1a -10000ca4: 0004 movs r4, r0 -10000ca6: 2c00 cmp r4, #0 -10000ca8: d102 bne.n 10000cb0 -10000caa: 0020 movs r0, r4 -10000cac: b003 add sp, #12 -10000cae: bdf0 pop {r4, r5, r6, r7, pc} -10000cb0: 0021 movs r1, r4 -10000cb2: 0038 movs r0, r7 -10000cb4: f7ff fe2a bl 1000090c -10000cb8: 9b01 ldr r3, [sp, #4] -10000cba: 6003 str r3, [r0, #0] -10000cbc: 6045 str r5, [r0, #4] -10000cbe: 9b08 ldr r3, [sp, #32] -10000cc0: 6083 str r3, [r0, #8] -10000cc2: 9b09 ldr r3, [sp, #36] @ 0x24 -10000cc4: 60c3 str r3, [r0, #12] -10000cc6: 6838 ldr r0, [r7, #0] -10000cc8: 0021 movs r1, r4 -10000cca: f7ff ff11 bl 10000af0 -10000cce: 42a0 cmp r0, r4 -10000cd0: d1eb bne.n 10000caa -10000cd2: 7d38 ldrb r0, [r7, #20] -10000cd4: 9a01 ldr r2, [sp, #4] -10000cd6: 002b movs r3, r5 -10000cd8: f000 fb92 bl 10001400 -10000cdc: 1e05 subs r5, r0, #0 -10000cde: d001 beq.n 10000ce4 -10000ce0: 2e00 cmp r6, #0 -10000ce2: d004 beq.n 10000cee -10000ce4: 9b0c ldr r3, [sp, #48] @ 0x30 -10000ce6: 2b00 cmp r3, #0 -10000ce8: d0df beq.n 10000caa -10000cea: 701d strb r5, [r3, #0] -10000cec: e7dd b.n 10000caa -10000cee: 6838 ldr r0, [r7, #0] -10000cf0: 0021 movs r1, r4 -10000cf2: f000 fd3f bl 10001774 -10000cf6: e7f5 b.n 10000ce4 -10000cf8: 10004534 .word 0x10004534 -10000cfc: 100046dc .word 0x100046dc -10000d00: 100043a8 .word 0x100043a8 +10000e18 : +10000e18: b510 push {r4, lr} +10000e1a: 2b00 cmp r3, #0 +10000e1c: db02 blt.n 10000e24 +10000e1e: 6002 str r2, [r0, #0] +10000e20: 6043 str r3, [r0, #4] +10000e22: bd10 pop {r4, pc} +10000e24: 4b02 ldr r3, [pc, #8] @ (10000e30 ) +10000e26: 4a03 ldr r2, [pc, #12] @ (10000e34 ) +10000e28: 4803 ldr r0, [pc, #12] @ (10000e38 ) +10000e2a: 213f movs r1, #63 @ 0x3f +10000e2c: f001 f986 bl 1000213c <__assert_func> +10000e30: 10004a20 .word 0x10004a20 +10000e34: 10005090 .word 0x10005090 +10000e38: 10004a3c .word 0x10004a3c -10000d04 : -10000d04: b5f0 push {r4, r5, r6, r7, lr} -10000d06: 46de mov lr, fp -10000d08: 4657 mov r7, sl -10000d0a: 464e mov r6, r9 -10000d0c: 4645 mov r5, r8 -10000d0e: b5e0 push {r5, r6, r7, lr} -10000d10: b08f sub sp, #60 @ 0x3c -10000d12: 900b str r0, [sp, #44] @ 0x2c -10000d14: 2100 movs r1, #0 -10000d16: 4b78 ldr r3, [pc, #480] @ (10000ef8 ) -10000d18: 0082 lsls r2, r0, #2 -10000d1a: 58d4 ldr r4, [r2, r3] -10000d1c: 4689 mov r9, r1 -10000d1e: e082 b.n 10000e26 -10000d20: 0029 movs r1, r5 -10000d22: 0020 movs r0, r4 -10000d24: f7ff fdf2 bl 1000090c -10000d28: 4680 mov r8, r0 -10000d2a: 6802 ldr r2, [r0, #0] -10000d2c: 6843 ldr r3, [r0, #4] -10000d2e: 1b92 subs r2, r2, r6 -10000d30: 41bb sbcs r3, r7 -10000d32: 2b00 cmp r3, #0 -10000d34: dd09 ble.n 10000d4a -10000d36: 4643 mov r3, r8 -10000d38: 681a ldr r2, [r3, #0] -10000d3a: 685b ldr r3, [r3, #4] -10000d3c: 980b ldr r0, [sp, #44] @ 0x2c -10000d3e: f000 fb5f bl 10001400 -10000d42: 2300 movs r3, #0 -10000d44: 4698 mov r8, r3 -10000d46: 2600 movs r6, #0 -10000d48: e089 b.n 10000e5e -10000d4a: 2b00 cmp r3, #0 -10000d4c: d101 bne.n 10000d52 -10000d4e: 2a00 cmp r2, #0 -10000d50: d1f1 bne.n 10000d36 -10000d52: 2100 movs r1, #0 -10000d54: 4658 mov r0, fp -10000d56: f000 fd03 bl 10001760 -10000d5a: 0007 movs r7, r0 -10000d5c: 42a8 cmp r0, r5 -10000d5e: d115 bne.n 10000d8c -10000d60: 4643 mov r3, r8 -10000d62: 681a ldr r2, [r3, #0] -10000d64: 685b ldr r3, [r3, #4] -10000d66: 9208 str r2, [sp, #32] -10000d68: 9309 str r3, [sp, #36] @ 0x24 -10000d6a: 4643 mov r3, r8 -10000d6c: 689e ldr r6, [r3, #8] -10000d6e: 68db ldr r3, [r3, #12] -10000d70: 4698 mov r8, r3 -10000d72: 2e00 cmp r6, #0 -10000d74: d010 beq.n 10000d98 -10000d76: 0029 movs r1, r5 -10000d78: 0020 movs r0, r4 -10000d7a: f7ff ff05 bl 10000b88 -10000d7e: 7803 ldrb r3, [r0, #0] -10000d80: 4699 mov r9, r3 -10000d82: 021b lsls r3, r3, #8 -10000d84: 431f orrs r7, r3 -10000d86: 6127 str r7, [r4, #16] -10000d88: 2000 movs r0, #0 -10000d8a: e068 b.n 10000e5e -10000d8c: 4b5b ldr r3, [pc, #364] @ (10000efc ) -10000d8e: 4a5c ldr r2, [pc, #368] @ (10000f00 ) -10000d90: 485c ldr r0, [pc, #368] @ (10000f04 ) -10000d92: 218e movs r1, #142 @ 0x8e -10000d94: f000 fef8 bl 10001b88 <__assert_func> -10000d98: 4b5b ldr r3, [pc, #364] @ (10000f08 ) -10000d9a: 4a59 ldr r2, [pc, #356] @ (10000f00 ) -10000d9c: 4859 ldr r0, [pc, #356] @ (10000f04 ) -10000d9e: 2192 movs r1, #146 @ 0x92 -10000da0: f000 fef2 bl 10001b88 <__assert_func> -10000da4: 6923 ldr r3, [r4, #16] -10000da6: 2b00 cmp r3, #0 -10000da8: d077 beq.n 10000e9a -10000daa: 42bb cmp r3, r7 -10000dac: d119 bne.n 10000de2 -10000dae: 9806 ldr r0, [sp, #24] -10000db0: 9907 ldr r1, [sp, #28] -10000db2: 2300 movs r3, #0 -10000db4: 4242 negs r2, r0 -10000db6: 418b sbcs r3, r1 -10000db8: 9200 str r2, [sp, #0] -10000dba: 9301 str r3, [sp, #4] -10000dbc: 9a08 ldr r2, [sp, #32] -10000dbe: 9b09 ldr r3, [sp, #36] @ 0x24 -10000dc0: a80c add r0, sp, #48 @ 0x30 -10000dc2: f7ff fde9 bl 10000998 -10000dc6: 9a0c ldr r2, [sp, #48] @ 0x30 -10000dc8: 9b0d ldr r3, [sp, #52] @ 0x34 -10000dca: 2100 movs r1, #0 -10000dcc: 9104 str r1, [sp, #16] -10000dce: 3101 adds r1, #1 -10000dd0: 9103 str r1, [sp, #12] -10000dd2: 9502 str r5, [sp, #8] -10000dd4: 4641 mov r1, r8 -10000dd6: 9101 str r1, [sp, #4] -10000dd8: 9600 str r6, [sp, #0] -10000dda: 0020 movs r0, r4 -10000ddc: f7ff ff48 bl 10000c70 -10000de0: e016 b.n 10000e10 -10000de2: 4b4a ldr r3, [pc, #296] @ (10000f0c ) -10000de4: 4a46 ldr r2, [pc, #280] @ (10000f00 ) -10000de6: 4847 ldr r0, [pc, #284] @ (10000f04 ) -10000de8: 21a1 movs r1, #161 @ 0xa1 -10000dea: f000 fecd bl 10001b88 <__assert_func> -10000dee: 9a06 ldr r2, [sp, #24] -10000df0: 9b07 ldr r3, [sp, #28] -10000df2: 2b00 cmp r3, #0 -10000df4: d101 bne.n 10000dfa -10000df6: 2a00 cmp r2, #0 -10000df8: d152 bne.n 10000ea0 -10000dfa: 6820 ldr r0, [r4, #0] -10000dfc: 0029 movs r1, r5 -10000dfe: f7ff fe95 bl 10000b2c -10000e02: 0029 movs r1, r5 -10000e04: 0020 movs r0, r4 -10000e06: f7ff febf bl 10000b88 -10000e0a: 7803 ldrb r3, [r0, #0] -10000e0c: 3301 adds r3, #1 -10000e0e: 7003 strb r3, [r0, #0] -10000e10: 2300 movs r3, #0 -10000e12: 6123 str r3, [r4, #16] -10000e14: 6862 ldr r2, [r4, #4] -10000e16: f3bf 8f5f dmb sy -10000e1a: 6013 str r3, [r2, #0] -10000e1c: f38a 8810 msr PRIMASK, sl -10000e20: 2001 movs r0, #1 -10000e22: 2800 cmp r0, #0 -10000e24: d061 beq.n 10000eea -10000e26: a80c add r0, sp, #48 @ 0x30 -10000e28: f7ff fefe bl 10000c28 -10000e2c: 9e0c ldr r6, [sp, #48] @ 0x30 -10000e2e: 9f0d ldr r7, [sp, #52] @ 0x34 -10000e30: 2200 movs r2, #0 -10000e32: 2300 movs r3, #0 -10000e34: 9208 str r2, [sp, #32] -10000e36: 9309 str r3, [sp, #36] @ 0x24 -10000e38: 6862 ldr r2, [r4, #4] -10000e3a: f3ef 8a10 mrs sl, PRIMASK -10000e3e: b672 cpsid i -10000e40: 6813 ldr r3, [r2, #0] -10000e42: 2b00 cmp r3, #0 -10000e44: d0fc beq.n 10000e40 -10000e46: f3bf 8f5f dmb sy -10000e4a: 6823 ldr r3, [r4, #0] -10000e4c: 469b mov fp, r3 -10000e4e: 7b5d ldrb r5, [r3, #13] -10000e50: 2d00 cmp r5, #0 -10000e52: d000 beq.n 10000e56 -10000e54: e764 b.n 10000d20 -10000e56: 2300 movs r3, #0 -10000e58: 4698 mov r8, r3 -10000e5a: 2600 movs r6, #0 -10000e5c: 2000 movs r0, #0 -10000e5e: 6863 ldr r3, [r4, #4] -10000e60: f3bf 8f5f dmb sy -10000e64: 2200 movs r2, #0 -10000e66: 601a str r2, [r3, #0] -10000e68: f38a 8810 msr PRIMASK, sl -10000e6c: 2e00 cmp r6, #0 -10000e6e: d0d8 beq.n 10000e22 -10000e70: 464b mov r3, r9 -10000e72: 021f lsls r7, r3, #8 -10000e74: 432f orrs r7, r5 -10000e76: 4641 mov r1, r8 -10000e78: 0038 movs r0, r7 -10000e7a: 47b0 blx r6 -10000e7c: 9006 str r0, [sp, #24] -10000e7e: 9107 str r1, [sp, #28] -10000e80: 6862 ldr r2, [r4, #4] -10000e82: f3ef 8a10 mrs sl, PRIMASK -10000e86: b672 cpsid i -10000e88: 6813 ldr r3, [r2, #0] -10000e8a: 2b00 cmp r3, #0 -10000e8c: d0fc beq.n 10000e88 -10000e8e: f3bf 8f5f dmb sy -10000e92: 9b07 ldr r3, [sp, #28] -10000e94: 2b00 cmp r3, #0 -10000e96: da00 bge.n 10000e9a -10000e98: e784 b.n 10000da4 -10000e9a: 9b07 ldr r3, [sp, #28] -10000e9c: 2b00 cmp r3, #0 -10000e9e: dda6 ble.n 10000dee -10000ea0: 6923 ldr r3, [r4, #16] -10000ea2: 2b00 cmp r3, #0 -10000ea4: d0a9 beq.n 10000dfa -10000ea6: 42bb cmp r3, r7 -10000ea8: d119 bne.n 10000ede -10000eaa: a80c add r0, sp, #48 @ 0x30 -10000eac: f7ff febc bl 10000c28 -10000eb0: 9a0c ldr r2, [sp, #48] @ 0x30 -10000eb2: 9b0d ldr r3, [sp, #52] @ 0x34 -10000eb4: 9806 ldr r0, [sp, #24] -10000eb6: 9907 ldr r1, [sp, #28] -10000eb8: 9000 str r0, [sp, #0] -10000eba: 9101 str r1, [sp, #4] -10000ebc: a80c add r0, sp, #48 @ 0x30 -10000ebe: f7ff fd6b bl 10000998 -10000ec2: 9a0c ldr r2, [sp, #48] @ 0x30 -10000ec4: 9b0d ldr r3, [sp, #52] @ 0x34 -10000ec6: 2100 movs r1, #0 -10000ec8: 9104 str r1, [sp, #16] -10000eca: 3101 adds r1, #1 -10000ecc: 9103 str r1, [sp, #12] -10000ece: 9502 str r5, [sp, #8] -10000ed0: 4641 mov r1, r8 -10000ed2: 9101 str r1, [sp, #4] -10000ed4: 9600 str r6, [sp, #0] -10000ed6: 0020 movs r0, r4 -10000ed8: f7ff feca bl 10000c70 -10000edc: e798 b.n 10000e10 -10000ede: 4b0b ldr r3, [pc, #44] @ (10000f0c ) -10000ee0: 4a07 ldr r2, [pc, #28] @ (10000f00 ) -10000ee2: 4808 ldr r0, [pc, #32] @ (10000f04 ) -10000ee4: 21a4 movs r1, #164 @ 0xa4 -10000ee6: f000 fe4f bl 10001b88 <__assert_func> -10000eea: b00f add sp, #60 @ 0x3c -10000eec: bcf0 pop {r4, r5, r6, r7} -10000eee: 46bb mov fp, r7 -10000ef0: 46b2 mov sl, r6 -10000ef2: 46a9 mov r9, r5 -10000ef4: 46a0 mov r8, r4 -10000ef6: bdf0 pop {r4, r5, r6, r7, pc} -10000ef8: 2000048c .word 0x2000048c -10000efc: 1000455c .word 0x1000455c -10000f00: 1000470c .word 0x1000470c -10000f04: 100043a8 .word 0x100043a8 -10000f08: 10004574 .word 0x10004574 -10000f0c: 10004580 .word 0x10004580 +10000e3c : +10000e3c: b510 push {r4, lr} +10000e3e: b082 sub sp, #8 +10000e40: 0004 movs r4, r0 +10000e42: 9804 ldr r0, [sp, #16] +10000e44: 9905 ldr r1, [sp, #20] +10000e46: 1812 adds r2, r2, r0 +10000e48: 414b adcs r3, r1 +10000e4a: 2b00 cmp r3, #0 +10000e4c: db09 blt.n 10000e62 +10000e4e: 4668 mov r0, sp +10000e50: f7ff ffe2 bl 10000e18 +10000e54: 9a00 ldr r2, [sp, #0] +10000e56: 9b01 ldr r3, [sp, #4] +10000e58: 6022 str r2, [r4, #0] +10000e5a: 6063 str r3, [r4, #4] +10000e5c: 0020 movs r0, r4 +10000e5e: b002 add sp, #8 +10000e60: bd10 pop {r4, pc} +10000e62: 2201 movs r2, #1 +10000e64: 4252 negs r2, r2 +10000e66: 4b01 ldr r3, [pc, #4] @ (10000e6c ) +10000e68: e7f1 b.n 10000e4e +10000e6a: 46c0 nop @ (mov r8, r8) +10000e6c: 7fffffff .word 0x7fffffff -10000f10 : -10000f10: b510 push {r4, lr} -10000f12: 4b0c ldr r3, [pc, #48] @ (10000f44 ) -10000f14: 685b ldr r3, [r3, #4] -10000f16: 2b00 cmp r3, #0 -10000f18: d004 beq.n 10000f24 -10000f1a: 480b ldr r0, [pc, #44] @ (10000f48 ) -10000f1c: 210a movs r1, #10 -10000f1e: f7ff fcbd bl 1000089c -10000f22: bd10 pop {r4, pc} -10000f24: 4c07 ldr r4, [pc, #28] @ (10000f44 ) -10000f26: 4a09 ldr r2, [pc, #36] @ (10000f4c ) -10000f28: 6820 ldr r0, [r4, #0] -10000f2a: 0023 movs r3, r4 -10000f2c: 2110 movs r1, #16 -10000f2e: f000 fb82 bl 10001636 -10000f32: 2003 movs r0, #3 -10000f34: f000 f9f0 bl 10001318 -10000f38: 2103 movs r1, #3 -10000f3a: 0020 movs r0, r4 -10000f3c: f7ff fe3c bl 10000bb8 -10000f40: e7eb b.n 10000f1a -10000f42: 46c0 nop @ (mov r8, r8) -10000f44: 20000284 .word 0x20000284 -10000f48: 200006a0 .word 0x200006a0 -10000f4c: 10000945 .word 0x10000945 +10000e70 : +10000e70: b510 push {r4, lr} +10000e72: 2900 cmp r1, #0 +10000e74: d008 beq.n 10000e88 +10000e76: 7b03 ldrb r3, [r0, #12] +10000e78: 428b cmp r3, r1 +10000e7a: d305 bcc.n 10000e88 +10000e7c: 6800 ldr r0, [r0, #0] +10000e7e: 004b lsls r3, r1, #1 +10000e80: 185b adds r3, r3, r1 +10000e82: 3b03 subs r3, #3 +10000e84: 18c0 adds r0, r0, r3 +10000e86: bd10 pop {r4, pc} +10000e88: 4b02 ldr r3, [pc, #8] @ (10000e94 ) +10000e8a: 4a03 ldr r2, [pc, #12] @ (10000e98 ) +10000e8c: 4803 ldr r0, [pc, #12] @ (10000e9c ) +10000e8e: 2168 movs r1, #104 @ 0x68 +10000e90: f001 f954 bl 1000213c <__assert_func> +10000e94: 10004df4 .word 0x10004df4 +10000e98: 1000506c .word 0x1000506c +10000e9c: 10004e10 .word 0x10004e10 -10000f50 : -10000f50: b510 push {r4, lr} -10000f52: 4b06 ldr r3, [pc, #24] @ (10000f6c ) -10000f54: 685b ldr r3, [r3, #4] -10000f56: 2b00 cmp r3, #0 -10000f58: d001 beq.n 10000f5e -10000f5a: 4804 ldr r0, [pc, #16] @ (10000f6c ) -10000f5c: bd10 pop {r4, pc} -10000f5e: 4b04 ldr r3, [pc, #16] @ (10000f70 ) -10000f60: 4a04 ldr r2, [pc, #16] @ (10000f74 ) -10000f62: 4805 ldr r0, [pc, #20] @ (10000f78 ) -10000f64: 215e movs r1, #94 @ 0x5e -10000f66: f000 fe0f bl 10001b88 <__assert_func> -10000f6a: 46c0 nop @ (mov r8, r8) -10000f6c: 20000284 .word 0x20000284 -10000f70: 100045bc .word 0x100045bc -10000f74: 10004670 .word 0x10004670 -10000f78: 100043a8 .word 0x100043a8 +10000ea0 : +10000ea0: b510 push {r4, lr} +10000ea2: 7b43 ldrb r3, [r0, #13] +10000ea4: 428b cmp r3, r1 +10000ea6: d101 bne.n 10000eac +10000ea8: 2001 movs r0, #1 +10000eaa: bd10 pop {r4, pc} +10000eac: f7ff ffe0 bl 10000e70 +10000eb0: 7883 ldrb r3, [r0, #2] +10000eb2: 2b00 cmp r3, #0 +10000eb4: d101 bne.n 10000eba +10000eb6: 2000 movs r0, #0 +10000eb8: e7f7 b.n 10000eaa +10000eba: 2001 movs r0, #1 +10000ebc: e7f5 b.n 10000eaa -10000f7c : -10000f7c: b5f0 push {r4, r5, r6, r7, lr} -10000f7e: 46de mov lr, fp -10000f80: 4657 mov r7, sl -10000f82: 464e mov r6, r9 -10000f84: 4645 mov r5, r8 -10000f86: b5e0 push {r5, r6, r7, lr} -10000f88: b08d sub sp, #52 @ 0x34 -10000f8a: 0006 movs r6, r0 -10000f8c: 4690 mov r8, r2 -10000f8e: 001f movs r7, r3 -10000f90: 9b16 ldr r3, [sp, #88] @ 0x58 -10000f92: 469a mov sl, r3 -10000f94: 9b17 ldr r3, [sp, #92] @ 0x5c -10000f96: 4699 mov r9, r3 -10000f98: ab18 add r3, sp, #96 @ 0x60 -10000f9a: 781b ldrb r3, [r3, #0] -10000f9c: 9307 str r3, [sp, #28] -10000f9e: 2327 movs r3, #39 @ 0x27 -10000fa0: aa02 add r2, sp, #8 -10000fa2: 4694 mov ip, r2 -10000fa4: 4463 add r3, ip -10000fa6: 2200 movs r2, #0 -10000fa8: 701a strb r2, [r3, #0] -10000faa: e021 b.n 10000ff0 -10000fac: 0001 movs r1, r0 -10000fae: 0030 movs r0, r6 -10000fb0: f7ff fdea bl 10000b88 -10000fb4: 7800 ldrb r0, [r0, #0] -10000fb6: e03c b.n 10001032 -10000fb8: 9806 ldr r0, [sp, #24] -10000fba: 2b00 cmp r3, #0 -10000fbc: d05c beq.n 10001078 -10000fbe: 9b07 ldr r3, [sp, #28] -10000fc0: 2b00 cmp r3, #0 -10000fc2: d059 beq.n 10001078 -10000fc4: 4649 mov r1, r9 -10000fc6: 47d0 blx sl -10000fc8: 0004 movs r4, r0 -10000fca: 000d movs r5, r1 -10000fcc: 0003 movs r3, r0 -10000fce: 430b orrs r3, r1 -10000fd0: d059 beq.n 10001086 -10000fd2: 2900 cmp r1, #0 -10000fd4: db40 blt.n 10001058 -10000fd6: a808 add r0, sp, #32 -10000fd8: f7ff fe26 bl 10000c28 -10000fdc: 9a08 ldr r2, [sp, #32] -10000fde: 9b09 ldr r3, [sp, #36] @ 0x24 -10000fe0: 9400 str r4, [sp, #0] -10000fe2: 9501 str r5, [sp, #4] -10000fe4: a808 add r0, sp, #32 -10000fe6: f7ff fcd7 bl 10000998 -10000fea: 9b08 ldr r3, [sp, #32] -10000fec: 4698 mov r8, r3 -10000fee: 9f09 ldr r7, [sp, #36] @ 0x24 -10000ff0: 6872 ldr r2, [r6, #4] -10000ff2: f3ef 8b10 mrs fp, PRIMASK -10000ff6: b672 cpsid i -10000ff8: 6813 ldr r3, [r2, #0] -10000ffa: 4259 negs r1, r3 -10000ffc: 414b adcs r3, r1 -10000ffe: b2d9 uxtb r1, r3 -10001000: 9106 str r1, [sp, #24] -10001002: 2b00 cmp r3, #0 -10001004: d1f8 bne.n 10000ff8 -10001006: f3bf 8f5f dmb sy -1000100a: 3327 adds r3, #39 @ 0x27 -1000100c: aa02 add r2, sp, #8 -1000100e: 4694 mov ip, r2 -10001010: 4463 add r3, ip -10001012: 9304 str r3, [sp, #16] -10001014: 2300 movs r3, #0 -10001016: 9303 str r3, [sp, #12] -10001018: 9302 str r3, [sp, #8] -1000101a: 464b mov r3, r9 -1000101c: 9301 str r3, [sp, #4] -1000101e: 4653 mov r3, sl -10001020: 9300 str r3, [sp, #0] -10001022: 4642 mov r2, r8 -10001024: 003b movs r3, r7 -10001026: 0030 movs r0, r6 -10001028: f7ff fe22 bl 10000c70 -1000102c: 0004 movs r4, r0 -1000102e: 1e05 subs r5, r0, #0 -10001030: d1bc bne.n 10000fac -10001032: 6873 ldr r3, [r6, #4] -10001034: f3bf 8f5f dmb sy -10001038: 2100 movs r1, #0 -1000103a: 6019 str r1, [r3, #0] -1000103c: f38b 8810 msr PRIMASK, fp -10001040: 2d00 cmp r5, #0 -10001042: d017 beq.n 10001074 -10001044: 2327 movs r3, #39 @ 0x27 -10001046: aa02 add r2, sp, #8 -10001048: 4694 mov ip, r2 -1000104a: 4463 add r3, ip -1000104c: 781b ldrb r3, [r3, #0] -1000104e: 2b00 cmp r3, #0 -10001050: d1b2 bne.n 10000fb8 -10001052: 0200 lsls r0, r0, #8 -10001054: 4320 orrs r0, r4 -10001056: e7b0 b.n 10000fba -10001058: 2300 movs r3, #0 -1000105a: 4262 negs r2, r4 -1000105c: 41ab sbcs r3, r5 -1000105e: 9200 str r2, [sp, #0] -10001060: 9301 str r3, [sp, #4] -10001062: 4642 mov r2, r8 -10001064: 003b movs r3, r7 -10001066: a808 add r0, sp, #32 -10001068: f7ff fc96 bl 10000998 -1000106c: 9b08 ldr r3, [sp, #32] -1000106e: 4698 mov r8, r3 -10001070: 9f09 ldr r7, [sp, #36] @ 0x24 -10001072: e7bd b.n 10000ff0 -10001074: 2001 movs r0, #1 -10001076: 4240 negs r0, r0 -10001078: b00d add sp, #52 @ 0x34 -1000107a: bcf0 pop {r4, r5, r6, r7} -1000107c: 46bb mov fp, r7 -1000107e: 46b2 mov sl, r6 -10001080: 46a9 mov r9, r5 -10001082: 46a0 mov r8, r4 -10001084: bdf0 pop {r4, r5, r6, r7, pc} -10001086: 9806 ldr r0, [sp, #24] -10001088: e7f6 b.n 10001078 - -1000108a : -1000108a: b5f0 push {r4, r5, r6, r7, lr} -1000108c: 46c6 mov lr, r8 -1000108e: b500 push {lr} -10001090: b084 sub sp, #16 -10001092: 0005 movs r5, r0 -10001094: 4688 mov r8, r1 -10001096: 0016 movs r6, r2 -10001098: 001f movs r7, r3 -1000109a: ab0a add r3, sp, #40 @ 0x28 -1000109c: 781c ldrb r4, [r3, #0] -1000109e: f7ff ff57 bl 10000f50 -100010a2: 9402 str r4, [sp, #8] -100010a4: 9701 str r7, [sp, #4] -100010a6: 9600 str r6, [sp, #0] -100010a8: 002a movs r2, r5 -100010aa: 4643 mov r3, r8 -100010ac: f7ff ff66 bl 10000f7c -100010b0: b004 add sp, #16 -100010b2: bc80 pop {r7} -100010b4: 46b8 mov r8, r7 -100010b6: bdf0 pop {r4, r5, r6, r7, pc} - -100010b8 : -100010b8: b5f0 push {r4, r5, r6, r7, lr} -100010ba: 46c6 mov lr, r8 -100010bc: b500 push {lr} -100010be: 0004 movs r4, r0 -100010c0: 000d movs r5, r1 -100010c2: 6842 ldr r2, [r0, #4] -100010c4: f3ef 8710 mrs r7, PRIMASK -100010c8: b672 cpsid i -100010ca: 6813 ldr r3, [r2, #0] -100010cc: 2b00 cmp r3, #0 -100010ce: d0fc beq.n 100010ca -100010d0: f3bf 8f5f dmb sy -100010d4: b2ee uxtb r6, r5 -100010d6: 6823 ldr r3, [r4, #0] -100010d8: 4698 mov r8, r3 -100010da: 0031 movs r1, r6 -100010dc: 0018 movs r0, r3 -100010de: f7ff fc8d bl 100009fc -100010e2: 2800 cmp r0, #0 -100010e4: d02a beq.n 1000113c -100010e6: 6923 ldr r3, [r4, #16] -100010e8: 42ab cmp r3, r5 -100010ea: d013 beq.n 10001114 -100010ec: 0a2d lsrs r5, r5, #8 -100010ee: b2ed uxtb r5, r5 -100010f0: 0031 movs r1, r6 -100010f2: 0020 movs r0, r4 -100010f4: f7ff fd48 bl 10000b88 -100010f8: 7803 ldrb r3, [r0, #0] -100010fa: 42ab cmp r3, r5 -100010fc: d011 beq.n 10001122 -100010fe: 2000 movs r0, #0 -10001100: 6863 ldr r3, [r4, #4] -10001102: f3bf 8f5f dmb sy -10001106: 2200 movs r2, #0 -10001108: 601a str r2, [r3, #0] -1000110a: f387 8810 msr PRIMASK, r7 -1000110e: bc80 pop {r7} -10001110: 46b8 mov r8, r7 -10001112: bdf0 pop {r4, r5, r6, r7, pc} -10001114: 4b0c ldr r3, [pc, #48] @ (10001148 ) -10001116: 4a0d ldr r2, [pc, #52] @ (1000114c ) -10001118: 2195 movs r1, #149 @ 0x95 -1000111a: 480d ldr r0, [pc, #52] @ (10001150 ) -1000111c: 0049 lsls r1, r1, #1 -1000111e: f000 fd33 bl 10001b88 <__assert_func> -10001122: 0031 movs r1, r6 -10001124: 4640 mov r0, r8 -10001126: f000 fb25 bl 10001774 -1000112a: 2800 cmp r0, #0 -1000112c: d1e8 bne.n 10001100 -1000112e: 4b09 ldr r3, [pc, #36] @ (10001154 ) -10001130: 4a06 ldr r2, [pc, #24] @ (1000114c ) -10001132: 2132 movs r1, #50 @ 0x32 -10001134: 4806 ldr r0, [pc, #24] @ (10001150 ) -10001136: 31ff adds r1, #255 @ 0xff -10001138: f000 fd26 bl 10001b88 <__assert_func> -1000113c: 6923 ldr r3, [r4, #16] -1000113e: 42ab cmp r3, r5 -10001140: d1de bne.n 10001100 -10001142: 2300 movs r3, #0 -10001144: 6123 str r3, [r4, #16] -10001146: e7db b.n 10001100 -10001148: 100045e0 .word 0x100045e0 -1000114c: 10004658 .word 0x10004658 -10001150: 100043a8 .word 0x100043a8 -10001154: 10004604 .word 0x10004604 - -10001158 : -10001158: b510 push {r4, lr} -1000115a: 0004 movs r4, r0 -1000115c: f7ff fef8 bl 10000f50 -10001160: 0021 movs r1, r4 -10001162: f7ff ffa9 bl 100010b8 -10001166: bd10 pop {r4, pc} - -10001168 : -10001168: b530 push {r4, r5, lr} -1000116a: b087 sub sp, #28 -1000116c: 0004 movs r4, r0 -1000116e: 000d movs r5, r1 -10001170: f3ef 8305 mrs r3, IPSR -10001174: 2b00 cmp r3, #0 -10001176: d120 bne.n 100011ba -10001178: 2206 movs r2, #6 -1000117a: 4252 negs r2, r2 -1000117c: 17d3 asrs r3, r2, #31 -1000117e: 1912 adds r2, r2, r4 -10001180: 416b adcs r3, r5 -10001182: 428b cmp r3, r1 -10001184: d802 bhi.n 1000118c -10001186: d103 bne.n 10001190 -10001188: 4282 cmp r2, r0 -1000118a: d901 bls.n 10001190 -1000118c: 2200 movs r2, #0 -1000118e: 2300 movs r3, #0 -10001190: a804 add r0, sp, #16 -10001192: f7ff fbef bl 10000974 -10001196: a802 add r0, sp, #8 -10001198: f7ff fd46 bl 10000c28 -1000119c: 9802 ldr r0, [sp, #8] -1000119e: 9903 ldr r1, [sp, #12] -100011a0: 9a04 ldr r2, [sp, #16] -100011a2: 9b05 ldr r3, [sp, #20] -100011a4: 1a12 subs r2, r2, r0 -100011a6: 418b sbcs r3, r1 -100011a8: 2b00 cmp r3, #0 -100011aa: dc0b bgt.n 100011c4 -100011ac: d008 beq.n 100011c0 -100011ae: 0020 movs r0, r4 -100011b0: 0029 movs r1, r5 -100011b2: f000 f8c9 bl 10001348 -100011b6: b007 add sp, #28 -100011b8: bd30 pop {r4, r5, pc} -100011ba: 4814 ldr r0, [pc, #80] @ (1000120c ) -100011bc: f000 fd7c bl 10001cb8 -100011c0: 2a00 cmp r2, #0 -100011c2: d0f4 beq.n 100011ae -100011c4: 4a12 ldr r2, [pc, #72] @ (10001210 ) -100011c6: 9804 ldr r0, [sp, #16] -100011c8: 9905 ldr r1, [sp, #20] -100011ca: 2300 movs r3, #0 -100011cc: 9300 str r3, [sp, #0] -100011ce: f7ff ff5c bl 1000108a -100011d2: 2800 cmp r0, #0 -100011d4: da13 bge.n 100011fe -100011d6: e7ea b.n 100011ae -100011d8: 4b0e ldr r3, [pc, #56] @ (10001214 ) -100011da: 681a ldr r2, [r3, #0] -100011dc: f3ef 8110 mrs r1, PRIMASK -100011e0: b672 cpsid i -100011e2: 6813 ldr r3, [r2, #0] -100011e4: 2b00 cmp r3, #0 -100011e6: d0fc beq.n 100011e2 -100011e8: f3bf 8f5f dmb sy -100011ec: 4b09 ldr r3, [pc, #36] @ (10001214 ) -100011ee: 681b ldr r3, [r3, #0] -100011f0: f3bf 8f5f dmb sy -100011f4: 2200 movs r2, #0 -100011f6: 601a str r2, [r3, #0] -100011f8: f381 8810 msr PRIMASK, r1 -100011fc: bf20 wfe -100011fe: 9804 ldr r0, [sp, #16] -10001200: 9905 ldr r1, [sp, #20] -10001202: f7ff fb6f bl 100008e4 -10001206: 2800 cmp r0, #0 -10001208: d0e6 beq.n 100011d8 -1000120a: e7d0 b.n 100011ae -1000120c: 10004608 .word 0x10004608 -10001210: 10000bf9 .word 0x10000bf9 -10001214: 200006a0 .word 0x200006a0 - -10001218 : -10001218: b500 push {lr} -1000121a: b083 sub sp, #12 -1000121c: 0002 movs r2, r0 -1000121e: 000b movs r3, r1 -10001220: 4668 mov r0, sp -10001222: f7ff fd12 bl 10000c4a -10001226: 9800 ldr r0, [sp, #0] -10001228: 9901 ldr r1, [sp, #4] -1000122a: f7ff ff9d bl 10001168 -1000122e: b003 add sp, #12 -10001230: bd00 pop {pc} - -10001232 : -10001232: b510 push {r4, lr} -10001234: 22fa movs r2, #250 @ 0xfa -10001236: 0092 lsls r2, r2, #2 -10001238: 2300 movs r3, #0 -1000123a: 2100 movs r1, #0 -1000123c: f002 fcca bl 10003bd4 <__wrap___aeabi_lmul> -10001240: f7ff ffea bl 10001218 -10001244: bd10 pop {r4, pc} +10000ebe : +10000ebe: b570 push {r4, r5, r6, lr} +10000ec0: 0004 movs r4, r0 +10000ec2: 7b85 ldrb r5, [r0, #14] +10000ec4: 2d00 cmp r5, #0 +10000ec6: d101 bne.n 10000ecc +10000ec8: 0028 movs r0, r5 +10000eca: bd70 pop {r4, r5, r6, pc} +10000ecc: 0029 movs r1, r5 +10000ece: f7ff ffcf bl 10000e70 +10000ed2: 7843 ldrb r3, [r0, #1] +10000ed4: 73a3 strb r3, [r4, #14] +10000ed6: 2b00 cmp r3, #0 +10000ed8: d100 bne.n 10000edc +10000eda: 73e3 strb r3, [r4, #15] +10000edc: 2300 movs r3, #0 +10000ede: 7083 strb r3, [r0, #2] +10000ee0: 7043 strb r3, [r0, #1] +10000ee2: 7003 strb r3, [r0, #0] +10000ee4: e7f0 b.n 10000ec8 ... -10001248 : -10001248: b530 push {r4, r5, lr} -1000124a: b083 sub sp, #12 -1000124c: 0005 movs r5, r0 -1000124e: 000c movs r4, r1 -10001250: f3ef 8305 mrs r3, IPSR -10001254: 2b00 cmp r3, #0 -10001256: d10f bne.n 10001278 -10001258: 4a0b ldr r2, [pc, #44] @ (10001288 ) -1000125a: 2300 movs r3, #0 -1000125c: 9300 str r3, [sp, #0] -1000125e: f7ff ff14 bl 1000108a -10001262: 2800 cmp r0, #0 -10001264: dd0b ble.n 1000127e -10001266: bf20 wfe -10001268: f7ff ff76 bl 10001158 -1000126c: 0028 movs r0, r5 -1000126e: 0021 movs r1, r4 -10001270: f7ff fb38 bl 100008e4 -10001274: b003 add sp, #12 -10001276: bd30 pop {r4, r5, pc} -10001278: f7ff fb34 bl 100008e4 -1000127c: e7fa b.n 10001274 -1000127e: 0028 movs r0, r5 -10001280: 0021 movs r1, r4 -10001282: f7ff fb2f bl 100008e4 -10001286: e7f5 b.n 10001274 -10001288: 10000bf9 .word 0x10000bf9 +10000ee8 : +10000ee8: b5f8 push {r3, r4, r5, r6, r7, lr} +10000eea: 0006 movs r6, r0 +10000eec: 000c movs r4, r1 +10000eee: 0015 movs r5, r2 +10000ef0: f7ff ffbe bl 10000e70 +10000ef4: 0007 movs r7, r0 +10000ef6: 2c00 cmp r4, #0 +10000ef8: d00d beq.n 10000f16 +10000efa: 2d00 cmp r5, #0 +10000efc: d011 beq.n 10000f22 +10000efe: 42ac cmp r4, r5 +10000f00: d015 beq.n 10000f2e +10000f02: 0029 movs r1, r5 +10000f04: 0030 movs r0, r6 +10000f06: f7ff ffb3 bl 10000e70 +10000f0a: 7084 strb r4, [r0, #2] +10000f0c: 783b ldrb r3, [r7, #0] +10000f0e: 2b00 cmp r3, #0 +10000f10: d113 bne.n 10000f3a +10000f12: 703d strb r5, [r7, #0] +10000f14: bdf8 pop {r3, r4, r5, r6, r7, pc} +10000f16: 4b0a ldr r3, [pc, #40] @ (10000f40 ) +10000f18: 4a0a ldr r2, [pc, #40] @ (10000f44 ) +10000f1a: 480b ldr r0, [pc, #44] @ (10000f48 ) +10000f1c: 216f movs r1, #111 @ 0x6f +10000f1e: f001 f90d bl 1000213c <__assert_func> +10000f22: 4b0a ldr r3, [pc, #40] @ (10000f4c ) +10000f24: 4a07 ldr r2, [pc, #28] @ (10000f44 ) +10000f26: 4808 ldr r0, [pc, #32] @ (10000f48 ) +10000f28: 2170 movs r1, #112 @ 0x70 +10000f2a: f001 f907 bl 1000213c <__assert_func> +10000f2e: 4b08 ldr r3, [pc, #32] @ (10000f50 ) +10000f30: 4a04 ldr r2, [pc, #16] @ (10000f44 ) +10000f32: 4805 ldr r0, [pc, #20] @ (10000f48 ) +10000f34: 2171 movs r1, #113 @ 0x71 +10000f36: f001 f901 bl 1000213c <__assert_func> +10000f3a: 7043 strb r3, [r0, #1] +10000f3c: 703d strb r5, [r7, #0] +10000f3e: e7e9 b.n 10000f14 +10000f40: 10004e64 .word 0x10004e64 +10000f44: 10005048 .word 0x10005048 +10000f48: 10004e10 .word 0x10004e10 +10000f4c: 10004e70 .word 0x10004e70 +10000f50: 10004e7c .word 0x10004e7c -1000128c : -1000128c: b570 push {r4, r5, r6, lr} -1000128e: f3ef 8005 mrs r0, IPSR -10001292: 3810 subs r0, #16 -10001294: f3ef 8c10 mrs ip, PRIMASK -10001298: b672 cpsid i -1000129a: 4b19 ldr r3, [pc, #100] @ (10001300 ) -1000129c: 681b ldr r3, [r3, #0] -1000129e: 2b00 cmp r3, #0 -100012a0: d0fb beq.n 1000129a -100012a2: f3bf 8f5f dmb sy -100012a6: 2201 movs r2, #1 -100012a8: 0013 movs r3, r2 -100012aa: 4083 lsls r3, r0 -100012ac: 4915 ldr r1, [pc, #84] @ (10001304 ) -100012ae: 634b str r3, [r1, #52] @ 0x34 -100012b0: 4915 ldr r1, [pc, #84] @ (10001308 ) -100012b2: 600b str r3, [r1, #0] -100012b4: 4915 ldr r1, [pc, #84] @ (1000130c ) -100012b6: 7809 ldrb r1, [r1, #0] -100012b8: 000c movs r4, r1 -100012ba: 40c4 lsrs r4, r0 -100012bc: 4222 tst r2, r4 -100012be: d013 beq.n 100012e8 -100012c0: 4a10 ldr r2, [pc, #64] @ (10001304 ) -100012c2: 6a54 ldr r4, [r2, #36] @ 0x24 -100012c4: 4a12 ldr r2, [pc, #72] @ (10001310 ) -100012c6: 0085 lsls r5, r0, #2 -100012c8: 58aa ldr r2, [r5, r2] -100012ca: 4294 cmp r4, r2 -100012cc: d305 bcc.n 100012da -100012ce: 4a11 ldr r2, [pc, #68] @ (10001314 ) -100012d0: 58aa ldr r2, [r5, r2] -100012d2: 4c0e ldr r4, [pc, #56] @ (1000130c ) -100012d4: 4399 bics r1, r3 -100012d6: 7021 strb r1, [r4, #0] -100012d8: e007 b.n 100012ea -100012da: 4a0a ldr r2, [pc, #40] @ (10001304 ) -100012dc: 1d03 adds r3, r0, #4 -100012de: 009b lsls r3, r3, #2 -100012e0: 5899 ldr r1, [r3, r2] -100012e2: 5099 str r1, [r3, r2] -100012e4: 2200 movs r2, #0 -100012e6: e000 b.n 100012ea -100012e8: 2200 movs r2, #0 +10000f54 : +10000f54: b570 push {r4, r5, r6, lr} +10000f56: 0006 movs r6, r0 +10000f58: 000d movs r5, r1 +10000f5a: 0014 movs r4, r2 +10000f5c: 2900 cmp r1, #0 +10000f5e: d014 beq.n 10000f8a +10000f60: 2a00 cmp r2, #0 +10000f62: d014 beq.n 10000f8e +10000f64: 6843 ldr r3, [r0, #4] +10000f66: 6880 ldr r0, [r0, #8] +10000f68: 4798 blx r3 +10000f6a: 2800 cmp r0, #0 +10000f6c: d006 beq.n 10000f7c +10000f6e: 0022 movs r2, r4 +10000f70: 0029 movs r1, r5 +10000f72: 0030 movs r0, r6 +10000f74: f7ff ffb8 bl 10000ee8 +10000f78: 0028 movs r0, r5 +10000f7a: e007 b.n 10000f8c +10000f7c: 002a movs r2, r5 +10000f7e: 0021 movs r1, r4 +10000f80: 0030 movs r0, r6 +10000f82: f7ff ffb1 bl 10000ee8 +10000f86: 0020 movs r0, r4 +10000f88: e000 b.n 10000f8c +10000f8a: 0010 movs r0, r2 +10000f8c: bd70 pop {r4, r5, r6, pc} +10000f8e: 0008 movs r0, r1 +10000f90: e7fc b.n 10000f8c + ... + +10000f94 : +10000f94: b570 push {r4, r5, r6, lr} +10000f96: 0004 movs r4, r0 +10000f98: 1e0d subs r5, r1, #0 +10000f9a: d00c beq.n 10000fb6 +10000f9c: f7ff ff68 bl 10000e70 +10000fa0: 2300 movs r3, #0 +10000fa2: 7083 strb r3, [r0, #2] +10000fa4: 7043 strb r3, [r0, #1] +10000fa6: 7003 strb r3, [r0, #0] +10000fa8: 7b61 ldrb r1, [r4, #13] +10000faa: 002a movs r2, r5 +10000fac: 0020 movs r0, r4 +10000fae: f7ff ffd1 bl 10000f54 +10000fb2: 7360 strb r0, [r4, #13] +10000fb4: bd70 pop {r4, r5, r6, pc} +10000fb6: 4b03 ldr r3, [pc, #12] @ (10000fc4 ) +10000fb8: 4a03 ldr r2, [pc, #12] @ (10000fc8 ) +10000fba: 4804 ldr r0, [pc, #16] @ (10000fcc ) +10000fbc: 21a5 movs r1, #165 @ 0xa5 +10000fbe: f001 f8bd bl 1000213c <__assert_func> +10000fc2: 46c0 nop @ (mov r8, r8) +10000fc4: 10004e94 .word 0x10004e94 +10000fc8: 1000505c .word 0x1000505c +10000fcc: 10004e10 .word 0x10004e10 + +10000fd0 : +10000fd0: b570 push {r4, r5, r6, lr} +10000fd2: 0004 movs r4, r0 +10000fd4: 1e0d subs r5, r1, #0 +10000fd6: d00f beq.n 10000ff8 +10000fd8: f7ff ff62 bl 10000ea0 +10000fdc: 2800 cmp r0, #0 +10000fde: d10b bne.n 10000ff8 +10000fe0: 7be1 ldrb r1, [r4, #15] +10000fe2: 2900 cmp r1, #0 +10000fe4: d10e bne.n 10001004 +10000fe6: 7ba3 ldrb r3, [r4, #14] +10000fe8: 2b00 cmp r3, #0 +10000fea: d103 bne.n 10000ff4 +10000fec: 7be3 ldrb r3, [r4, #15] +10000fee: 2b00 cmp r3, #0 +10000ff0: d10d bne.n 1000100e +10000ff2: 73a5 strb r5, [r4, #14] +10000ff4: 73e5 strb r5, [r4, #15] +10000ff6: bd70 pop {r4, r5, r6, pc} +10000ff8: 4b08 ldr r3, [pc, #32] @ (1000101c ) +10000ffa: 4a09 ldr r2, [pc, #36] @ (10001020 ) +10000ffc: 4809 ldr r0, [pc, #36] @ (10001024 ) +10000ffe: 21f6 movs r1, #246 @ 0xf6 +10001000: f001 f89c bl 1000213c <__assert_func> +10001004: 0020 movs r0, r4 +10001006: f7ff ff33 bl 10000e70 +1000100a: 7045 strb r5, [r0, #1] +1000100c: e7eb b.n 10000fe6 +1000100e: 4b06 ldr r3, [pc, #24] @ (10001028 ) +10001010: 4a03 ldr r2, [pc, #12] @ (10001020 ) +10001012: 4804 ldr r0, [pc, #16] @ (10001024 ) +10001014: 21fb movs r1, #251 @ 0xfb +10001016: f001 f891 bl 1000213c <__assert_func> +1000101a: 46c0 nop @ (mov r8, r8) +1000101c: 10004e98 .word 0x10004e98 +10001020: 10005038 .word 0x10005038 +10001024: 10004e10 .word 0x10004e10 +10001028: 10004ebc .word 0x10004ebc + +1000102c : +1000102c: b510 push {r4, lr} +1000102e: 2900 cmp r1, #0 +10001030: d007 beq.n 10001042 +10001032: 6803 ldr r3, [r0, #0] +10001034: 7b1b ldrb r3, [r3, #12] +10001036: 428b cmp r3, r1 +10001038: d303 bcc.n 10001042 +1000103a: 68c0 ldr r0, [r0, #12] +1000103c: 3901 subs r1, #1 +1000103e: 1840 adds r0, r0, r1 +10001040: bd10 pop {r4, pc} +10001042: 4b03 ldr r3, [pc, #12] @ (10001050 ) +10001044: 4a03 ldr r2, [pc, #12] @ (10001054 ) +10001046: 4804 ldr r0, [pc, #16] @ (10001058 ) +10001048: 2141 movs r1, #65 @ 0x41 +1000104a: f001 f877 bl 1000213c <__assert_func> +1000104e: 46c0 nop @ (mov r8, r8) +10001050: 10004d8c .word 0x10004d8c +10001054: 10005024 .word 0x10005024 +10001058: 10004db0 .word 0x10004db0 + +1000105c : +1000105c: b570 push {r4, r5, r6, lr} +1000105e: 0005 movs r5, r0 +10001060: 000c movs r4, r1 +10001062: 0008 movs r0, r1 +10001064: f000 fc92 bl 1000198c +10001068: 4909 ldr r1, [pc, #36] @ (10001090 ) +1000106a: 0020 movs r0, r4 +1000106c: f000 fbd2 bl 10001814 +10001070: f7ff fc48 bl 10000904 +10001074: 4b07 ldr r3, [pc, #28] @ (10001094 ) +10001076: 469c mov ip, r3 +10001078: 4460 add r0, ip +1000107a: 0080 lsls r0, r0, #2 +1000107c: 6068 str r0, [r5, #4] +1000107e: 752c strb r4, [r5, #20] +10001080: 23d0 movs r3, #208 @ 0xd0 +10001082: 061b lsls r3, r3, #24 +10001084: 781b ldrb r3, [r3, #0] +10001086: 756b strb r3, [r5, #21] +10001088: 4b03 ldr r3, [pc, #12] @ (10001098 ) +1000108a: 00a4 lsls r4, r4, #2 +1000108c: 50e5 str r5, [r4, r3] +1000108e: bd70 pop {r4, r5, r6, pc} +10001090: 100011a9 .word 0x100011a9 +10001094: 34000040 .word 0x34000040 +10001098: 2000052c .word 0x2000052c + +1000109c : +1000109c: 4b0a ldr r3, [pc, #40] @ (100010c8 ) +1000109e: 681a ldr r2, [r3, #0] +100010a0: f3ef 8110 mrs r1, PRIMASK +100010a4: b672 cpsid i +100010a6: 6813 ldr r3, [r2, #0] +100010a8: 2b00 cmp r3, #0 +100010aa: d0fc beq.n 100010a6 +100010ac: f3bf 8f5f dmb sy +100010b0: 4b05 ldr r3, [pc, #20] @ (100010c8 ) +100010b2: 681b ldr r3, [r3, #0] +100010b4: f3bf 8f5f dmb sy +100010b8: 2200 movs r2, #0 +100010ba: 601a str r2, [r3, #0] +100010bc: f381 8810 msr PRIMASK, r1 +100010c0: bf40 sev +100010c2: 2000 movs r0, #0 +100010c4: 2100 movs r1, #0 +100010c6: 4770 bx lr +100010c8: 20000740 .word 0x20000740 + +100010cc : +100010cc: b510 push {r4, lr} +100010ce: b082 sub sp, #8 +100010d0: 0004 movs r4, r0 +100010d2: f000 fb7f bl 100017d4 +100010d6: 0002 movs r2, r0 +100010d8: 000b movs r3, r1 +100010da: 4668 mov r0, sp +100010dc: f7ff fe9c bl 10000e18 +100010e0: 9a00 ldr r2, [sp, #0] +100010e2: 9b01 ldr r3, [sp, #4] +100010e4: 6022 str r2, [r4, #0] +100010e6: 6063 str r3, [r4, #4] +100010e8: 0020 movs r0, r4 +100010ea: b002 add sp, #8 +100010ec: bd10 pop {r4, pc} + +100010ee : +100010ee: b570 push {r4, r5, r6, lr} +100010f0: b084 sub sp, #16 +100010f2: 0004 movs r4, r0 +100010f4: 0016 movs r6, r2 +100010f6: 001d movs r5, r3 +100010f8: a802 add r0, sp, #8 +100010fa: f7ff ffe7 bl 100010cc +100010fe: 9a02 ldr r2, [sp, #8] +10001100: 9b03 ldr r3, [sp, #12] +10001102: 9600 str r6, [sp, #0] +10001104: 9501 str r5, [sp, #4] +10001106: 0020 movs r0, r4 +10001108: f7ff fe98 bl 10000e3c +1000110c: 0020 movs r0, r4 +1000110e: b004 add sp, #16 +10001110: bd70 pop {r4, r5, r6, pc} + ... + +10001114 : +10001114: b5f0 push {r4, r5, r6, r7, lr} +10001116: b083 sub sp, #12 +10001118: 0007 movs r7, r0 +1000111a: 9201 str r2, [sp, #4] +1000111c: 001d movs r5, r3 +1000111e: ab0a add r3, sp, #40 @ 0x28 +10001120: 781c ldrb r4, [r3, #0] +10001122: ab0b add r3, sp, #44 @ 0x2c +10001124: 781e ldrb r6, [r3, #0] +10001126: 2c00 cmp r4, #0 +10001128: d00b beq.n 10001142 +1000112a: 6800 ldr r0, [r0, #0] +1000112c: 0021 movs r1, r4 +1000112e: f7ff feb7 bl 10000ea0 +10001132: 2800 cmp r0, #0 +10001134: d009 beq.n 1000114a +10001136: 4b19 ldr r3, [pc, #100] @ (1000119c ) +10001138: 4a19 ldr r2, [pc, #100] @ (100011a0 ) +1000113a: 481a ldr r0, [pc, #104] @ (100011a4 ) +1000113c: 2167 movs r1, #103 @ 0x67 +1000113e: f000 fffd bl 1000213c <__assert_func> +10001142: 6800 ldr r0, [r0, #0] +10001144: f7ff febb bl 10000ebe +10001148: 0004 movs r4, r0 +1000114a: 2c00 cmp r4, #0 +1000114c: d102 bne.n 10001154 +1000114e: 0020 movs r0, r4 +10001150: b003 add sp, #12 +10001152: bdf0 pop {r4, r5, r6, r7, pc} +10001154: 0021 movs r1, r4 +10001156: 0038 movs r0, r7 +10001158: f7ff fe2a bl 10000db0 +1000115c: 9b01 ldr r3, [sp, #4] +1000115e: 6003 str r3, [r0, #0] +10001160: 6045 str r5, [r0, #4] +10001162: 9b08 ldr r3, [sp, #32] +10001164: 6083 str r3, [r0, #8] +10001166: 9b09 ldr r3, [sp, #36] @ 0x24 +10001168: 60c3 str r3, [r0, #12] +1000116a: 6838 ldr r0, [r7, #0] +1000116c: 0021 movs r1, r4 +1000116e: f7ff ff11 bl 10000f94 +10001172: 42a0 cmp r0, r4 +10001174: d1eb bne.n 1000114e +10001176: 7d38 ldrb r0, [r7, #20] +10001178: 9a01 ldr r2, [sp, #4] +1000117a: 002b movs r3, r5 +1000117c: f000 fb92 bl 100018a4 +10001180: 1e05 subs r5, r0, #0 +10001182: d001 beq.n 10001188 +10001184: 2e00 cmp r6, #0 +10001186: d004 beq.n 10001192 +10001188: 9b0c ldr r3, [sp, #48] @ 0x30 +1000118a: 2b00 cmp r3, #0 +1000118c: d0df beq.n 1000114e +1000118e: 701d strb r5, [r3, #0] +10001190: e7dd b.n 1000114e +10001192: 6838 ldr r0, [r7, #0] +10001194: 0021 movs r1, r4 +10001196: f000 fd3f bl 10001c18 +1000119a: e7f5 b.n 10001188 +1000119c: 10004ed0 .word 0x10004ed0 +100011a0: 10005078 .word 0x10005078 +100011a4: 10004db0 .word 0x10004db0 + +100011a8 : +100011a8: b5f0 push {r4, r5, r6, r7, lr} +100011aa: 46de mov lr, fp +100011ac: 4657 mov r7, sl +100011ae: 464e mov r6, r9 +100011b0: 4645 mov r5, r8 +100011b2: b5e0 push {r5, r6, r7, lr} +100011b4: b08f sub sp, #60 @ 0x3c +100011b6: 900b str r0, [sp, #44] @ 0x2c +100011b8: 2100 movs r1, #0 +100011ba: 4b78 ldr r3, [pc, #480] @ (1000139c ) +100011bc: 0082 lsls r2, r0, #2 +100011be: 58d4 ldr r4, [r2, r3] +100011c0: 4689 mov r9, r1 +100011c2: e082 b.n 100012ca +100011c4: 0029 movs r1, r5 +100011c6: 0020 movs r0, r4 +100011c8: f7ff fdf2 bl 10000db0 +100011cc: 4680 mov r8, r0 +100011ce: 6802 ldr r2, [r0, #0] +100011d0: 6843 ldr r3, [r0, #4] +100011d2: 1b92 subs r2, r2, r6 +100011d4: 41bb sbcs r3, r7 +100011d6: 2b00 cmp r3, #0 +100011d8: dd09 ble.n 100011ee +100011da: 4643 mov r3, r8 +100011dc: 681a ldr r2, [r3, #0] +100011de: 685b ldr r3, [r3, #4] +100011e0: 980b ldr r0, [sp, #44] @ 0x2c +100011e2: f000 fb5f bl 100018a4 +100011e6: 2300 movs r3, #0 +100011e8: 4698 mov r8, r3 +100011ea: 2600 movs r6, #0 +100011ec: e089 b.n 10001302 +100011ee: 2b00 cmp r3, #0 +100011f0: d101 bne.n 100011f6 +100011f2: 2a00 cmp r2, #0 +100011f4: d1f1 bne.n 100011da +100011f6: 2100 movs r1, #0 +100011f8: 4658 mov r0, fp +100011fa: f000 fd03 bl 10001c04 +100011fe: 0007 movs r7, r0 +10001200: 42a8 cmp r0, r5 +10001202: d115 bne.n 10001230 +10001204: 4643 mov r3, r8 +10001206: 681a ldr r2, [r3, #0] +10001208: 685b ldr r3, [r3, #4] +1000120a: 9208 str r2, [sp, #32] +1000120c: 9309 str r3, [sp, #36] @ 0x24 +1000120e: 4643 mov r3, r8 +10001210: 689e ldr r6, [r3, #8] +10001212: 68db ldr r3, [r3, #12] +10001214: 4698 mov r8, r3 +10001216: 2e00 cmp r6, #0 +10001218: d010 beq.n 1000123c +1000121a: 0029 movs r1, r5 +1000121c: 0020 movs r0, r4 +1000121e: f7ff ff05 bl 1000102c +10001222: 7803 ldrb r3, [r0, #0] +10001224: 4699 mov r9, r3 +10001226: 021b lsls r3, r3, #8 +10001228: 431f orrs r7, r3 +1000122a: 6127 str r7, [r4, #16] +1000122c: 2000 movs r0, #0 +1000122e: e068 b.n 10001302 +10001230: 4b5b ldr r3, [pc, #364] @ (100013a0 ) +10001232: 4a5c ldr r2, [pc, #368] @ (100013a4 ) +10001234: 485c ldr r0, [pc, #368] @ (100013a8 ) +10001236: 218e movs r1, #142 @ 0x8e +10001238: f000 ff80 bl 1000213c <__assert_func> +1000123c: 4b5b ldr r3, [pc, #364] @ (100013ac ) +1000123e: 4a59 ldr r2, [pc, #356] @ (100013a4 ) +10001240: 4859 ldr r0, [pc, #356] @ (100013a8 ) +10001242: 2192 movs r1, #146 @ 0x92 +10001244: f000 ff7a bl 1000213c <__assert_func> +10001248: 6923 ldr r3, [r4, #16] +1000124a: 2b00 cmp r3, #0 +1000124c: d077 beq.n 1000133e +1000124e: 42bb cmp r3, r7 +10001250: d119 bne.n 10001286 +10001252: 9806 ldr r0, [sp, #24] +10001254: 9907 ldr r1, [sp, #28] +10001256: 2300 movs r3, #0 +10001258: 4242 negs r2, r0 +1000125a: 418b sbcs r3, r1 +1000125c: 9200 str r2, [sp, #0] +1000125e: 9301 str r3, [sp, #4] +10001260: 9a08 ldr r2, [sp, #32] +10001262: 9b09 ldr r3, [sp, #36] @ 0x24 +10001264: a80c add r0, sp, #48 @ 0x30 +10001266: f7ff fde9 bl 10000e3c +1000126a: 9a0c ldr r2, [sp, #48] @ 0x30 +1000126c: 9b0d ldr r3, [sp, #52] @ 0x34 +1000126e: 2100 movs r1, #0 +10001270: 9104 str r1, [sp, #16] +10001272: 3101 adds r1, #1 +10001274: 9103 str r1, [sp, #12] +10001276: 9502 str r5, [sp, #8] +10001278: 4641 mov r1, r8 +1000127a: 9101 str r1, [sp, #4] +1000127c: 9600 str r6, [sp, #0] +1000127e: 0020 movs r0, r4 +10001280: f7ff ff48 bl 10001114 +10001284: e016 b.n 100012b4 +10001286: 4b4a ldr r3, [pc, #296] @ (100013b0 ) +10001288: 4a46 ldr r2, [pc, #280] @ (100013a4 ) +1000128a: 4847 ldr r0, [pc, #284] @ (100013a8 ) +1000128c: 21a1 movs r1, #161 @ 0xa1 +1000128e: f000 ff55 bl 1000213c <__assert_func> +10001292: 9a06 ldr r2, [sp, #24] +10001294: 9b07 ldr r3, [sp, #28] +10001296: 2b00 cmp r3, #0 +10001298: d101 bne.n 1000129e +1000129a: 2a00 cmp r2, #0 +1000129c: d152 bne.n 10001344 +1000129e: 6820 ldr r0, [r4, #0] +100012a0: 0029 movs r1, r5 +100012a2: f7ff fe95 bl 10000fd0 +100012a6: 0029 movs r1, r5 +100012a8: 0020 movs r0, r4 +100012aa: f7ff febf bl 1000102c +100012ae: 7803 ldrb r3, [r0, #0] +100012b0: 3301 adds r3, #1 +100012b2: 7003 strb r3, [r0, #0] +100012b4: 2300 movs r3, #0 +100012b6: 6123 str r3, [r4, #16] +100012b8: 6862 ldr r2, [r4, #4] +100012ba: f3bf 8f5f dmb sy +100012be: 6013 str r3, [r2, #0] +100012c0: f38a 8810 msr PRIMASK, sl +100012c4: 2001 movs r0, #1 +100012c6: 2800 cmp r0, #0 +100012c8: d061 beq.n 1000138e +100012ca: a80c add r0, sp, #48 @ 0x30 +100012cc: f7ff fefe bl 100010cc +100012d0: 9e0c ldr r6, [sp, #48] @ 0x30 +100012d2: 9f0d ldr r7, [sp, #52] @ 0x34 +100012d4: 2200 movs r2, #0 +100012d6: 2300 movs r3, #0 +100012d8: 9208 str r2, [sp, #32] +100012da: 9309 str r3, [sp, #36] @ 0x24 +100012dc: 6862 ldr r2, [r4, #4] +100012de: f3ef 8a10 mrs sl, PRIMASK +100012e2: b672 cpsid i +100012e4: 6813 ldr r3, [r2, #0] +100012e6: 2b00 cmp r3, #0 +100012e8: d0fc beq.n 100012e4 100012ea: f3bf 8f5f dmb sy -100012ee: 4b04 ldr r3, [pc, #16] @ (10001300 ) -100012f0: 2100 movs r1, #0 -100012f2: 6019 str r1, [r3, #0] -100012f4: f38c 8810 msr PRIMASK, ip -100012f8: 2a00 cmp r2, #0 -100012fa: d000 beq.n 100012fe -100012fc: 4790 blx r2 -100012fe: bd70 pop {r4, r5, r6, pc} -10001300: d0000128 .word 0xd0000128 -10001304: 40054000 .word 0x40054000 -10001308: 4005703c .word 0x4005703c -1000130c: 200006b6 .word 0x200006b6 -10001310: 200006a4 .word 0x200006a4 -10001314: 2000040c .word 0x2000040c +100012ee: 6823 ldr r3, [r4, #0] +100012f0: 469b mov fp, r3 +100012f2: 7b5d ldrb r5, [r3, #13] +100012f4: 2d00 cmp r5, #0 +100012f6: d000 beq.n 100012fa +100012f8: e764 b.n 100011c4 +100012fa: 2300 movs r3, #0 +100012fc: 4698 mov r8, r3 +100012fe: 2600 movs r6, #0 +10001300: 2000 movs r0, #0 +10001302: 6863 ldr r3, [r4, #4] +10001304: f3bf 8f5f dmb sy +10001308: 2200 movs r2, #0 +1000130a: 601a str r2, [r3, #0] +1000130c: f38a 8810 msr PRIMASK, sl +10001310: 2e00 cmp r6, #0 +10001312: d0d8 beq.n 100012c6 +10001314: 464b mov r3, r9 +10001316: 021f lsls r7, r3, #8 +10001318: 432f orrs r7, r5 +1000131a: 4641 mov r1, r8 +1000131c: 0038 movs r0, r7 +1000131e: 47b0 blx r6 +10001320: 9006 str r0, [sp, #24] +10001322: 9107 str r1, [sp, #28] +10001324: 6862 ldr r2, [r4, #4] +10001326: f3ef 8a10 mrs sl, PRIMASK +1000132a: b672 cpsid i +1000132c: 6813 ldr r3, [r2, #0] +1000132e: 2b00 cmp r3, #0 +10001330: d0fc beq.n 1000132c +10001332: f3bf 8f5f dmb sy +10001336: 9b07 ldr r3, [sp, #28] +10001338: 2b00 cmp r3, #0 +1000133a: da00 bge.n 1000133e +1000133c: e784 b.n 10001248 +1000133e: 9b07 ldr r3, [sp, #28] +10001340: 2b00 cmp r3, #0 +10001342: dda6 ble.n 10001292 +10001344: 6923 ldr r3, [r4, #16] +10001346: 2b00 cmp r3, #0 +10001348: d0a9 beq.n 1000129e +1000134a: 42bb cmp r3, r7 +1000134c: d119 bne.n 10001382 +1000134e: a80c add r0, sp, #48 @ 0x30 +10001350: f7ff febc bl 100010cc +10001354: 9a0c ldr r2, [sp, #48] @ 0x30 +10001356: 9b0d ldr r3, [sp, #52] @ 0x34 +10001358: 9806 ldr r0, [sp, #24] +1000135a: 9907 ldr r1, [sp, #28] +1000135c: 9000 str r0, [sp, #0] +1000135e: 9101 str r1, [sp, #4] +10001360: a80c add r0, sp, #48 @ 0x30 +10001362: f7ff fd6b bl 10000e3c +10001366: 9a0c ldr r2, [sp, #48] @ 0x30 +10001368: 9b0d ldr r3, [sp, #52] @ 0x34 +1000136a: 2100 movs r1, #0 +1000136c: 9104 str r1, [sp, #16] +1000136e: 3101 adds r1, #1 +10001370: 9103 str r1, [sp, #12] +10001372: 9502 str r5, [sp, #8] +10001374: 4641 mov r1, r8 +10001376: 9101 str r1, [sp, #4] +10001378: 9600 str r6, [sp, #0] +1000137a: 0020 movs r0, r4 +1000137c: f7ff feca bl 10001114 +10001380: e798 b.n 100012b4 +10001382: 4b0b ldr r3, [pc, #44] @ (100013b0 ) +10001384: 4a07 ldr r2, [pc, #28] @ (100013a4 ) +10001386: 4808 ldr r0, [pc, #32] @ (100013a8 ) +10001388: 21a4 movs r1, #164 @ 0xa4 +1000138a: f000 fed7 bl 1000213c <__assert_func> +1000138e: b00f add sp, #60 @ 0x3c +10001390: bcf0 pop {r4, r5, r6, r7} +10001392: 46bb mov fp, r7 +10001394: 46b2 mov sl, r6 +10001396: 46a9 mov r9, r5 +10001398: 46a0 mov r8, r4 +1000139a: bdf0 pop {r4, r5, r6, r7, pc} +1000139c: 2000052c .word 0x2000052c +100013a0: 10004ef8 .word 0x10004ef8 +100013a4: 100050a8 .word 0x100050a8 +100013a8: 10004db0 .word 0x10004db0 +100013ac: 10004f10 .word 0x10004f10 +100013b0: 10004f1c .word 0x10004f1c -10001318 : -10001318: b510 push {r4, lr} -1000131a: 0001 movs r1, r0 -1000131c: 4a02 ldr r2, [pc, #8] @ (10001328 ) -1000131e: 4b03 ldr r3, [pc, #12] @ (1000132c ) -10001320: 0018 movs r0, r3 -10001322: f7ff f873 bl 1000040c -10001326: bd10 pop {r4, pc} -10001328: 10004734 .word 0x10004734 -1000132c: 200006b4 .word 0x200006b4 +100013b4 : +100013b4: b510 push {r4, lr} +100013b6: 4b0c ldr r3, [pc, #48] @ (100013e8 ) +100013b8: 685b ldr r3, [r3, #4] +100013ba: 2b00 cmp r3, #0 +100013bc: d004 beq.n 100013c8 +100013be: 480b ldr r0, [pc, #44] @ (100013ec ) +100013c0: 210a movs r1, #10 +100013c2: f7ff fcbd bl 10000d40 +100013c6: bd10 pop {r4, pc} +100013c8: 4c07 ldr r4, [pc, #28] @ (100013e8 ) +100013ca: 4a09 ldr r2, [pc, #36] @ (100013f0 ) +100013cc: 6820 ldr r0, [r4, #0] +100013ce: 0023 movs r3, r4 +100013d0: 2110 movs r1, #16 +100013d2: f000 fb82 bl 10001ada +100013d6: 2003 movs r0, #3 +100013d8: f000 f9f0 bl 100017bc +100013dc: 2103 movs r1, #3 +100013de: 0020 movs r0, r4 +100013e0: f7ff fe3c bl 1000105c +100013e4: e7eb b.n 100013be +100013e6: 46c0 nop @ (mov r8, r8) +100013e8: 200002fc .word 0x200002fc +100013ec: 20000740 .word 0x20000740 +100013f0: 10000de9 .word 0x10000de9 -10001330 : -10001330: 4b04 ldr r3, [pc, #16] @ (10001344 ) -10001332: 6a5b ldr r3, [r3, #36] @ 0x24 -10001334: 4a03 ldr r2, [pc, #12] @ (10001344 ) -10001336: 6a90 ldr r0, [r2, #40] @ 0x28 -10001338: 0019 movs r1, r3 -1000133a: 6a53 ldr r3, [r2, #36] @ 0x24 -1000133c: 4299 cmp r1, r3 -1000133e: d1f9 bne.n 10001334 -10001340: 4770 bx lr -10001342: 46c0 nop @ (mov r8, r8) -10001344: 40054000 .word 0x40054000 +100013f4 : +100013f4: b510 push {r4, lr} +100013f6: 4b06 ldr r3, [pc, #24] @ (10001410 ) +100013f8: 685b ldr r3, [r3, #4] +100013fa: 2b00 cmp r3, #0 +100013fc: d001 beq.n 10001402 +100013fe: 4804 ldr r0, [pc, #16] @ (10001410 ) +10001400: bd10 pop {r4, pc} +10001402: 4b04 ldr r3, [pc, #16] @ (10001414 ) +10001404: 4a04 ldr r2, [pc, #16] @ (10001418 ) +10001406: 4805 ldr r0, [pc, #20] @ (1000141c ) +10001408: 215e movs r1, #94 @ 0x5e +1000140a: f000 fe97 bl 1000213c <__assert_func> +1000140e: 46c0 nop @ (mov r8, r8) +10001410: 200002fc .word 0x200002fc +10001414: 10004f58 .word 0x10004f58 +10001418: 1000500c .word 0x1000500c +1000141c: 10004db0 .word 0x10004db0 -10001348 : -10001348: 4b08 ldr r3, [pc, #32] @ (1000136c ) -1000134a: 6a5b ldr r3, [r3, #36] @ 0x24 -1000134c: e001 b.n 10001352 -1000134e: 4b07 ldr r3, [pc, #28] @ (1000136c ) -10001350: 6a5b ldr r3, [r3, #36] @ 0x24 -10001352: 428b cmp r3, r1 -10001354: d3fb bcc.n 1000134e -10001356: e001 b.n 1000135c -10001358: 4b04 ldr r3, [pc, #16] @ (1000136c ) -1000135a: 6a5b ldr r3, [r3, #36] @ 0x24 -1000135c: 428b cmp r3, r1 -1000135e: d103 bne.n 10001368 -10001360: 4b02 ldr r3, [pc, #8] @ (1000136c ) -10001362: 6a9b ldr r3, [r3, #40] @ 0x28 -10001364: 4283 cmp r3, r0 -10001366: d3f7 bcc.n 10001358 -10001368: 4770 bx lr -1000136a: 46c0 nop @ (mov r8, r8) -1000136c: 40054000 .word 0x40054000 - -10001370 : -10001370: b570 push {r4, r5, r6, lr} -10001372: 0004 movs r4, r0 -10001374: 000e movs r6, r1 -10001376: f3ef 8510 mrs r5, PRIMASK -1000137a: b672 cpsid i -1000137c: 4b1b ldr r3, [pc, #108] @ (100013ec ) -1000137e: 681b ldr r3, [r3, #0] -10001380: 2b00 cmp r3, #0 -10001382: d0fb beq.n 1000137c -10001384: f3bf 8f5f dmb sy -10001388: 2e00 cmp r6, #0 -1000138a: d01c beq.n 100013c6 -1000138c: 0020 movs r0, r4 -1000138e: f7ff f909 bl 100005a4 -10001392: 4b17 ldr r3, [pc, #92] @ (100013f0 ) -10001394: 4283 cmp r3, r0 -10001396: d00b beq.n 100013b0 -10001398: 0019 movs r1, r3 -1000139a: 0020 movs r0, r4 -1000139c: f7ff f90a bl 100005b4 -100013a0: 2101 movs r1, #1 -100013a2: 0020 movs r0, r4 -100013a4: f7ff f8f6 bl 10000594 -100013a8: 2301 movs r3, #1 -100013aa: 40a3 lsls r3, r4 -100013ac: 4a11 ldr r2, [pc, #68] @ (100013f4 ) -100013ae: 6013 str r3, [r2, #0] -100013b0: 4b11 ldr r3, [pc, #68] @ (100013f8 ) -100013b2: 00a4 lsls r4, r4, #2 -100013b4: 50e6 str r6, [r4, r3] -100013b6: f3bf 8f5f dmb sy -100013ba: 4b0c ldr r3, [pc, #48] @ (100013ec ) -100013bc: 2200 movs r2, #0 -100013be: 601a str r2, [r3, #0] -100013c0: f385 8810 msr PRIMASK, r5 -100013c4: bd70 pop {r4, r5, r6, pc} -100013c6: 4b0c ldr r3, [pc, #48] @ (100013f8 ) -100013c8: 00a2 lsls r2, r4, #2 -100013ca: 2100 movs r1, #0 -100013cc: 50d1 str r1, [r2, r3] -100013ce: 2201 movs r2, #1 -100013d0: 40a2 lsls r2, r4 -100013d2: 490a ldr r1, [pc, #40] @ (100013fc ) -100013d4: 780b ldrb r3, [r1, #0] -100013d6: 4393 bics r3, r2 -100013d8: 700b strb r3, [r1, #0] -100013da: 4905 ldr r1, [pc, #20] @ (100013f0 ) -100013dc: 0020 movs r0, r4 -100013de: f7ff f913 bl 10000608 -100013e2: 2100 movs r1, #0 -100013e4: 0020 movs r0, r4 -100013e6: f7ff f8d5 bl 10000594 -100013ea: e7e4 b.n 100013b6 -100013ec: d0000128 .word 0xd0000128 -100013f0: 1000128d .word 0x1000128d -100013f4: 40056038 .word 0x40056038 -100013f8: 2000040c .word 0x2000040c -100013fc: 200006b6 .word 0x200006b6 - -10001400 : -10001400: b5f0 push {r4, r5, r6, r7, lr} -10001402: 46de mov lr, fp -10001404: b500 push {lr} -10001406: b084 sub sp, #16 -10001408: 0004 movs r4, r0 -1000140a: 0015 movs r5, r2 -1000140c: 9201 str r2, [sp, #4] -1000140e: 001e movs r6, r3 -10001410: 9302 str r3, [sp, #8] -10001412: f7ff ff8d bl 10001330 -10001416: 9503 str r5, [sp, #12] -10001418: 428e cmp r6, r1 -1000141a: d802 bhi.n 10001422 -1000141c: d14e bne.n 100014bc -1000141e: 4285 cmp r5, r0 -10001420: d94c bls.n 100014bc -10001422: f3ef 8b10 mrs fp, PRIMASK -10001426: b672 cpsid i -10001428: 4b27 ldr r3, [pc, #156] @ (100014c8 ) -1000142a: 681b ldr r3, [r3, #0] -1000142c: 2b00 cmp r3, #0 -1000142e: d0fb beq.n 10001428 -10001430: f3bf 8f5f dmb sy -10001434: 4a25 ldr r2, [pc, #148] @ (100014cc ) -10001436: 7817 ldrb r7, [r2, #0] -10001438: 2501 movs r5, #1 -1000143a: 40a5 lsls r5, r4 -1000143c: b2eb uxtb r3, r5 -1000143e: 433b orrs r3, r7 -10001440: 7013 strb r3, [r2, #0] -10001442: 4b23 ldr r3, [pc, #140] @ (100014d0 ) -10001444: 635d str r5, [r3, #52] @ 0x34 -10001446: 1d22 adds r2, r4, #4 -10001448: 0092 lsls r2, r2, #2 -1000144a: 9901 ldr r1, [sp, #4] -1000144c: 50d1 str r1, [r2, r3] -1000144e: 4a21 ldr r2, [pc, #132] @ (100014d4 ) -10001450: 00a1 lsls r1, r4, #2 -10001452: 9802 ldr r0, [sp, #8] -10001454: 5088 str r0, [r1, r2] -10001456: 6a1b ldr r3, [r3, #32] -10001458: 422b tst r3, r5 -1000145a: d112 bne.n 10001482 -1000145c: 4b1c ldr r3, [pc, #112] @ (100014d0 ) -1000145e: 6c1b ldr r3, [r3, #64] @ 0x40 -10001460: 422b tst r3, r5 -10001462: d008 beq.n 10001476 -10001464: 2000 movs r0, #0 -10001466: f3bf 8f5f dmb sy -1000146a: 4b17 ldr r3, [pc, #92] @ (100014c8 ) -1000146c: 2200 movs r2, #0 -1000146e: 601a str r2, [r3, #0] -10001470: f38b 8810 msr PRIMASK, fp -10001474: e023 b.n 100014be -10001476: 4b18 ldr r3, [pc, #96] @ (100014d8 ) -10001478: 4a18 ldr r2, [pc, #96] @ (100014dc ) -1000147a: 4819 ldr r0, [pc, #100] @ (100014e0 ) -1000147c: 21c5 movs r1, #197 @ 0xc5 -1000147e: f000 fb83 bl 10001b88 <__assert_func> -10001482: f7ff ff55 bl 10001330 -10001486: 428e cmp r6, r1 -10001488: d814 bhi.n 100014b4 -1000148a: d102 bne.n 10001492 -1000148c: 9b03 ldr r3, [sp, #12] -1000148e: 4283 cmp r3, r0 -10001490: d810 bhi.n 100014b4 -10001492: 4b0e ldr r3, [pc, #56] @ (100014cc ) -10001494: 781b ldrb r3, [r3, #0] -10001496: 42bb cmp r3, r7 -10001498: d00e beq.n 100014b8 -1000149a: 4b0d ldr r3, [pc, #52] @ (100014d0 ) -1000149c: 621d str r5, [r3, #32] -1000149e: 635d str r5, [r3, #52] @ 0x34 -100014a0: 221f movs r2, #31 -100014a2: 4022 ands r2, r4 -100014a4: 2301 movs r3, #1 -100014a6: 4093 lsls r3, r2 -100014a8: 4a0e ldr r2, [pc, #56] @ (100014e4 ) -100014aa: 6013 str r3, [r2, #0] -100014ac: 4b07 ldr r3, [pc, #28] @ (100014cc ) -100014ae: 701f strb r7, [r3, #0] -100014b0: 2001 movs r0, #1 -100014b2: e7d8 b.n 10001466 -100014b4: 2000 movs r0, #0 -100014b6: e7d6 b.n 10001466 -100014b8: 2001 movs r0, #1 -100014ba: e7d4 b.n 10001466 -100014bc: 2001 movs r0, #1 -100014be: b004 add sp, #16 -100014c0: bc80 pop {r7} -100014c2: 46bb mov fp, r7 -100014c4: bdf0 pop {r4, r5, r6, r7, pc} -100014c6: 46c0 nop @ (mov r8, r8) -100014c8: d0000128 .word 0xd0000128 -100014cc: 200006b6 .word 0x200006b6 -100014d0: 40054000 .word 0x40054000 -100014d4: 200006a4 .word 0x200006a4 -100014d8: 10004758 .word 0x10004758 -100014dc: 100047c8 .word 0x100047c8 -100014e0: 1000477c .word 0x1000477c -100014e4: e000e280 .word 0xe000e280 - -100014e8 : -100014e8: f3ef 8c10 mrs ip, PRIMASK -100014ec: b672 cpsid i -100014ee: 4b0b ldr r3, [pc, #44] @ (1000151c ) -100014f0: 681b ldr r3, [r3, #0] +10001420 : +10001420: b5f0 push {r4, r5, r6, r7, lr} +10001422: 46de mov lr, fp +10001424: 4657 mov r7, sl +10001426: 464e mov r6, r9 +10001428: 4645 mov r5, r8 +1000142a: b5e0 push {r5, r6, r7, lr} +1000142c: b08d sub sp, #52 @ 0x34 +1000142e: 0006 movs r6, r0 +10001430: 4690 mov r8, r2 +10001432: 001f movs r7, r3 +10001434: 9b16 ldr r3, [sp, #88] @ 0x58 +10001436: 469a mov sl, r3 +10001438: 9b17 ldr r3, [sp, #92] @ 0x5c +1000143a: 4699 mov r9, r3 +1000143c: ab18 add r3, sp, #96 @ 0x60 +1000143e: 781b ldrb r3, [r3, #0] +10001440: 9307 str r3, [sp, #28] +10001442: 2327 movs r3, #39 @ 0x27 +10001444: aa02 add r2, sp, #8 +10001446: 4694 mov ip, r2 +10001448: 4463 add r3, ip +1000144a: 2200 movs r2, #0 +1000144c: 701a strb r2, [r3, #0] +1000144e: e021 b.n 10001494 +10001450: 0001 movs r1, r0 +10001452: 0030 movs r0, r6 +10001454: f7ff fdea bl 1000102c +10001458: 7800 ldrb r0, [r0, #0] +1000145a: e03c b.n 100014d6 +1000145c: 9806 ldr r0, [sp, #24] +1000145e: 2b00 cmp r3, #0 +10001460: d05c beq.n 1000151c +10001462: 9b07 ldr r3, [sp, #28] +10001464: 2b00 cmp r3, #0 +10001466: d059 beq.n 1000151c +10001468: 4649 mov r1, r9 +1000146a: 47d0 blx sl +1000146c: 0004 movs r4, r0 +1000146e: 000d movs r5, r1 +10001470: 0003 movs r3, r0 +10001472: 430b orrs r3, r1 +10001474: d059 beq.n 1000152a +10001476: 2900 cmp r1, #0 +10001478: db40 blt.n 100014fc +1000147a: a808 add r0, sp, #32 +1000147c: f7ff fe26 bl 100010cc +10001480: 9a08 ldr r2, [sp, #32] +10001482: 9b09 ldr r3, [sp, #36] @ 0x24 +10001484: 9400 str r4, [sp, #0] +10001486: 9501 str r5, [sp, #4] +10001488: a808 add r0, sp, #32 +1000148a: f7ff fcd7 bl 10000e3c +1000148e: 9b08 ldr r3, [sp, #32] +10001490: 4698 mov r8, r3 +10001492: 9f09 ldr r7, [sp, #36] @ 0x24 +10001494: 6872 ldr r2, [r6, #4] +10001496: f3ef 8b10 mrs fp, PRIMASK +1000149a: b672 cpsid i +1000149c: 6813 ldr r3, [r2, #0] +1000149e: 4259 negs r1, r3 +100014a0: 414b adcs r3, r1 +100014a2: b2d9 uxtb r1, r3 +100014a4: 9106 str r1, [sp, #24] +100014a6: 2b00 cmp r3, #0 +100014a8: d1f8 bne.n 1000149c +100014aa: f3bf 8f5f dmb sy +100014ae: 3327 adds r3, #39 @ 0x27 +100014b0: aa02 add r2, sp, #8 +100014b2: 4694 mov ip, r2 +100014b4: 4463 add r3, ip +100014b6: 9304 str r3, [sp, #16] +100014b8: 2300 movs r3, #0 +100014ba: 9303 str r3, [sp, #12] +100014bc: 9302 str r3, [sp, #8] +100014be: 464b mov r3, r9 +100014c0: 9301 str r3, [sp, #4] +100014c2: 4653 mov r3, sl +100014c4: 9300 str r3, [sp, #0] +100014c6: 4642 mov r2, r8 +100014c8: 003b movs r3, r7 +100014ca: 0030 movs r0, r6 +100014cc: f7ff fe22 bl 10001114 +100014d0: 0004 movs r4, r0 +100014d2: 1e05 subs r5, r0, #0 +100014d4: d1bc bne.n 10001450 +100014d6: 6873 ldr r3, [r6, #4] +100014d8: f3bf 8f5f dmb sy +100014dc: 2100 movs r1, #0 +100014de: 6019 str r1, [r3, #0] +100014e0: f38b 8810 msr PRIMASK, fp +100014e4: 2d00 cmp r5, #0 +100014e6: d017 beq.n 10001518 +100014e8: 2327 movs r3, #39 @ 0x27 +100014ea: aa02 add r2, sp, #8 +100014ec: 4694 mov ip, r2 +100014ee: 4463 add r3, ip +100014f0: 781b ldrb r3, [r3, #0] 100014f2: 2b00 cmp r3, #0 -100014f4: d0fb beq.n 100014ee -100014f6: f3bf 8f5f dmb sy -100014fa: 2301 movs r3, #1 -100014fc: 4083 lsls r3, r0 -100014fe: 4a08 ldr r2, [pc, #32] @ (10001520 ) -10001500: 6213 str r3, [r2, #32] -10001502: 4908 ldr r1, [pc, #32] @ (10001524 ) -10001504: 780a ldrb r2, [r1, #0] -10001506: 439a bics r2, r3 -10001508: 700a strb r2, [r1, #0] -1000150a: f3bf 8f5f dmb sy -1000150e: 4b03 ldr r3, [pc, #12] @ (1000151c ) -10001510: 2200 movs r2, #0 -10001512: 601a str r2, [r3, #0] -10001514: f38c 8810 msr PRIMASK, ip -10001518: 4770 bx lr -1000151a: 46c0 nop @ (mov r8, r8) -1000151c: d0000128 .word 0xd0000128 -10001520: 40054000 .word 0x40054000 -10001524: 200006b6 .word 0x200006b6 +100014f4: d1b2 bne.n 1000145c +100014f6: 0200 lsls r0, r0, #8 +100014f8: 4320 orrs r0, r4 +100014fa: e7b0 b.n 1000145e +100014fc: 2300 movs r3, #0 +100014fe: 4262 negs r2, r4 +10001500: 41ab sbcs r3, r5 +10001502: 9200 str r2, [sp, #0] +10001504: 9301 str r3, [sp, #4] +10001506: 4642 mov r2, r8 +10001508: 003b movs r3, r7 +1000150a: a808 add r0, sp, #32 +1000150c: f7ff fc96 bl 10000e3c +10001510: 9b08 ldr r3, [sp, #32] +10001512: 4698 mov r8, r3 +10001514: 9f09 ldr r7, [sp, #36] @ 0x24 +10001516: e7bd b.n 10001494 +10001518: 2001 movs r0, #1 +1000151a: 4240 negs r0, r0 +1000151c: b00d add sp, #52 @ 0x34 +1000151e: bcf0 pop {r4, r5, r6, r7} +10001520: 46bb mov fp, r7 +10001522: 46b2 mov sl, r6 +10001524: 46a9 mov r9, r5 +10001526: 46a0 mov r8, r4 +10001528: bdf0 pop {r4, r5, r6, r7, pc} +1000152a: 9806 ldr r0, [sp, #24] +1000152c: e7f6 b.n 1000151c -10001528 : -10001528: b510 push {r4, lr} -1000152a: 2900 cmp r1, #0 -1000152c: d008 beq.n 10001540 -1000152e: 7b03 ldrb r3, [r0, #12] -10001530: 428b cmp r3, r1 -10001532: d305 bcc.n 10001540 -10001534: 6800 ldr r0, [r0, #0] -10001536: 004b lsls r3, r1, #1 -10001538: 185b adds r3, r3, r1 -1000153a: 3b03 subs r3, #3 -1000153c: 18c0 adds r0, r0, r3 -1000153e: bd10 pop {r4, pc} -10001540: 4b02 ldr r3, [pc, #8] @ (1000154c ) -10001542: 4a03 ldr r2, [pc, #12] @ (10001550 ) -10001544: 4803 ldr r0, [pc, #12] @ (10001554 ) -10001546: 2168 movs r1, #104 @ 0x68 -10001548: f000 fb1e bl 10001b88 <__assert_func> -1000154c: 10004458 .word 0x10004458 -10001550: 100048dc .word 0x100048dc -10001554: 10004474 .word 0x10004474 +1000152e : +1000152e: b5f0 push {r4, r5, r6, r7, lr} +10001530: 46c6 mov lr, r8 +10001532: b500 push {lr} +10001534: b084 sub sp, #16 +10001536: 0005 movs r5, r0 +10001538: 4688 mov r8, r1 +1000153a: 0016 movs r6, r2 +1000153c: 001f movs r7, r3 +1000153e: ab0a add r3, sp, #40 @ 0x28 +10001540: 781c ldrb r4, [r3, #0] +10001542: f7ff ff57 bl 100013f4 +10001546: 9402 str r4, [sp, #8] +10001548: 9701 str r7, [sp, #4] +1000154a: 9600 str r6, [sp, #0] +1000154c: 002a movs r2, r5 +1000154e: 4643 mov r3, r8 +10001550: f7ff ff66 bl 10001420 +10001554: b004 add sp, #16 +10001556: bc80 pop {r7} +10001558: 46b8 mov r8, r7 +1000155a: bdf0 pop {r4, r5, r6, r7, pc} -10001558 : -10001558: b5f8 push {r3, r4, r5, r6, r7, lr} -1000155a: 0006 movs r6, r0 -1000155c: 000c movs r4, r1 -1000155e: 0015 movs r5, r2 -10001560: f7ff ffe2 bl 10001528 -10001564: 0007 movs r7, r0 -10001566: 2c00 cmp r4, #0 -10001568: d00d beq.n 10001586 -1000156a: 2d00 cmp r5, #0 -1000156c: d011 beq.n 10001592 -1000156e: 42ac cmp r4, r5 -10001570: d015 beq.n 1000159e -10001572: 0029 movs r1, r5 -10001574: 0030 movs r0, r6 -10001576: f7ff ffd7 bl 10001528 -1000157a: 7084 strb r4, [r0, #2] -1000157c: 783b ldrb r3, [r7, #0] -1000157e: 2b00 cmp r3, #0 -10001580: d113 bne.n 100015aa -10001582: 703d strb r5, [r7, #0] -10001584: bdf8 pop {r3, r4, r5, r6, r7, pc} -10001586: 4b0a ldr r3, [pc, #40] @ (100015b0 ) -10001588: 4a0a ldr r2, [pc, #40] @ (100015b4 ) -1000158a: 480b ldr r0, [pc, #44] @ (100015b8 ) -1000158c: 216f movs r1, #111 @ 0x6f -1000158e: f000 fafb bl 10001b88 <__assert_func> -10001592: 4b0a ldr r3, [pc, #40] @ (100015bc ) -10001594: 4a07 ldr r2, [pc, #28] @ (100015b4 ) -10001596: 4808 ldr r0, [pc, #32] @ (100015b8 ) -10001598: 2170 movs r1, #112 @ 0x70 -1000159a: f000 faf5 bl 10001b88 <__assert_func> -1000159e: 4b08 ldr r3, [pc, #32] @ (100015c0 ) -100015a0: 4a04 ldr r2, [pc, #16] @ (100015b4 ) -100015a2: 4805 ldr r0, [pc, #20] @ (100015b8 ) -100015a4: 2171 movs r1, #113 @ 0x71 -100015a6: f000 faef bl 10001b88 <__assert_func> -100015aa: 7043 strb r3, [r0, #1] -100015ac: 703d strb r5, [r7, #0] -100015ae: e7e9 b.n 10001584 -100015b0: 100044c8 .word 0x100044c8 -100015b4: 100048c8 .word 0x100048c8 -100015b8: 10004474 .word 0x10004474 -100015bc: 100044d4 .word 0x100044d4 -100015c0: 100044e0 .word 0x100044e0 +1000155c : +1000155c: b5f0 push {r4, r5, r6, r7, lr} +1000155e: 46c6 mov lr, r8 +10001560: b500 push {lr} +10001562: 0004 movs r4, r0 +10001564: 000d movs r5, r1 +10001566: 6842 ldr r2, [r0, #4] +10001568: f3ef 8710 mrs r7, PRIMASK +1000156c: b672 cpsid i +1000156e: 6813 ldr r3, [r2, #0] +10001570: 2b00 cmp r3, #0 +10001572: d0fc beq.n 1000156e +10001574: f3bf 8f5f dmb sy +10001578: b2ee uxtb r6, r5 +1000157a: 6823 ldr r3, [r4, #0] +1000157c: 4698 mov r8, r3 +1000157e: 0031 movs r1, r6 +10001580: 0018 movs r0, r3 +10001582: f7ff fc8d bl 10000ea0 +10001586: 2800 cmp r0, #0 +10001588: d02a beq.n 100015e0 +1000158a: 6923 ldr r3, [r4, #16] +1000158c: 42ab cmp r3, r5 +1000158e: d013 beq.n 100015b8 +10001590: 0a2d lsrs r5, r5, #8 +10001592: b2ed uxtb r5, r5 +10001594: 0031 movs r1, r6 +10001596: 0020 movs r0, r4 +10001598: f7ff fd48 bl 1000102c +1000159c: 7803 ldrb r3, [r0, #0] +1000159e: 42ab cmp r3, r5 +100015a0: d011 beq.n 100015c6 +100015a2: 2000 movs r0, #0 +100015a4: 6863 ldr r3, [r4, #4] +100015a6: f3bf 8f5f dmb sy +100015aa: 2200 movs r2, #0 +100015ac: 601a str r2, [r3, #0] +100015ae: f387 8810 msr PRIMASK, r7 +100015b2: bc80 pop {r7} +100015b4: 46b8 mov r8, r7 +100015b6: bdf0 pop {r4, r5, r6, r7, pc} +100015b8: 4b0c ldr r3, [pc, #48] @ (100015ec ) +100015ba: 4a0d ldr r2, [pc, #52] @ (100015f0 ) +100015bc: 2195 movs r1, #149 @ 0x95 +100015be: 480d ldr r0, [pc, #52] @ (100015f4 ) +100015c0: 0049 lsls r1, r1, #1 +100015c2: f000 fdbb bl 1000213c <__assert_func> +100015c6: 0031 movs r1, r6 +100015c8: 4640 mov r0, r8 +100015ca: f000 fb25 bl 10001c18 +100015ce: 2800 cmp r0, #0 +100015d0: d1e8 bne.n 100015a4 +100015d2: 4b09 ldr r3, [pc, #36] @ (100015f8 ) +100015d4: 4a06 ldr r2, [pc, #24] @ (100015f0 ) +100015d6: 2132 movs r1, #50 @ 0x32 +100015d8: 4806 ldr r0, [pc, #24] @ (100015f4 ) +100015da: 31ff adds r1, #255 @ 0xff +100015dc: f000 fdae bl 1000213c <__assert_func> +100015e0: 6923 ldr r3, [r4, #16] +100015e2: 42ab cmp r3, r5 +100015e4: d1de bne.n 100015a4 +100015e6: 2300 movs r3, #0 +100015e8: 6123 str r3, [r4, #16] +100015ea: e7db b.n 100015a4 +100015ec: 10004f7c .word 0x10004f7c +100015f0: 10004ff4 .word 0x10004ff4 +100015f4: 10004db0 .word 0x10004db0 +100015f8: 10004fa0 .word 0x10004fa0 -100015c4 : -100015c4: b570 push {r4, r5, r6, lr} -100015c6: 0006 movs r6, r0 -100015c8: 000d movs r5, r1 -100015ca: 0014 movs r4, r2 -100015cc: 2900 cmp r1, #0 -100015ce: d014 beq.n 100015fa -100015d0: 2a00 cmp r2, #0 -100015d2: d014 beq.n 100015fe -100015d4: 6843 ldr r3, [r0, #4] -100015d6: 6880 ldr r0, [r0, #8] -100015d8: 4798 blx r3 -100015da: 2800 cmp r0, #0 -100015dc: d006 beq.n 100015ec -100015de: 0022 movs r2, r4 -100015e0: 0029 movs r1, r5 -100015e2: 0030 movs r0, r6 -100015e4: f7ff ffb8 bl 10001558 -100015e8: 0028 movs r0, r5 -100015ea: e007 b.n 100015fc -100015ec: 002a movs r2, r5 -100015ee: 0021 movs r1, r4 -100015f0: 0030 movs r0, r6 -100015f2: f7ff ffb1 bl 10001558 -100015f6: 0020 movs r0, r4 -100015f8: e000 b.n 100015fc -100015fa: 0010 movs r0, r2 -100015fc: bd70 pop {r4, r5, r6, pc} -100015fe: 0008 movs r0, r1 -10001600: e7fc b.n 100015fc +100015fc : +100015fc: b510 push {r4, lr} +100015fe: 0004 movs r4, r0 +10001600: f7ff fef8 bl 100013f4 +10001604: 0021 movs r1, r4 +10001606: f7ff ffa9 bl 1000155c +1000160a: bd10 pop {r4, pc} -10001602 : -10001602: b570 push {r4, r5, r6, lr} -10001604: 0005 movs r5, r0 -10001606: 2300 movs r3, #0 -10001608: 7343 strb r3, [r0, #13] -1000160a: 3301 adds r3, #1 -1000160c: 7383 strb r3, [r0, #14] -1000160e: 7b03 ldrb r3, [r0, #12] -10001610: 73c3 strb r3, [r0, #15] -10001612: 2401 movs r4, #1 -10001614: e006 b.n 10001624 -10001616: 0021 movs r1, r4 -10001618: 0028 movs r0, r5 -1000161a: f7ff ff85 bl 10001528 -1000161e: 3401 adds r4, #1 -10001620: b2e4 uxtb r4, r4 -10001622: 7044 strb r4, [r0, #1] -10001624: 7b29 ldrb r1, [r5, #12] -10001626: 42a1 cmp r1, r4 -10001628: d8f5 bhi.n 10001616 -1000162a: 0028 movs r0, r5 -1000162c: f7ff ff7c bl 10001528 -10001630: 2300 movs r3, #0 -10001632: 7043 strb r3, [r0, #1] -10001634: bd70 pop {r4, r5, r6, pc} +1000160c : +1000160c: b530 push {r4, r5, lr} +1000160e: b087 sub sp, #28 +10001610: 0004 movs r4, r0 +10001612: 000d movs r5, r1 +10001614: f3ef 8305 mrs r3, IPSR +10001618: 2b00 cmp r3, #0 +1000161a: d120 bne.n 1000165e +1000161c: 2206 movs r2, #6 +1000161e: 4252 negs r2, r2 +10001620: 17d3 asrs r3, r2, #31 +10001622: 1912 adds r2, r2, r4 +10001624: 416b adcs r3, r5 +10001626: 428b cmp r3, r1 +10001628: d802 bhi.n 10001630 +1000162a: d103 bne.n 10001634 +1000162c: 4282 cmp r2, r0 +1000162e: d901 bls.n 10001634 +10001630: 2200 movs r2, #0 +10001632: 2300 movs r3, #0 +10001634: a804 add r0, sp, #16 +10001636: f7ff fbef bl 10000e18 +1000163a: a802 add r0, sp, #8 +1000163c: f7ff fd46 bl 100010cc +10001640: 9802 ldr r0, [sp, #8] +10001642: 9903 ldr r1, [sp, #12] +10001644: 9a04 ldr r2, [sp, #16] +10001646: 9b05 ldr r3, [sp, #20] +10001648: 1a12 subs r2, r2, r0 +1000164a: 418b sbcs r3, r1 +1000164c: 2b00 cmp r3, #0 +1000164e: dc0b bgt.n 10001668 +10001650: d008 beq.n 10001664 +10001652: 0020 movs r0, r4 +10001654: 0029 movs r1, r5 +10001656: f000 f8c9 bl 100017ec +1000165a: b007 add sp, #28 +1000165c: bd30 pop {r4, r5, pc} +1000165e: 4814 ldr r0, [pc, #80] @ (100016b0 ) +10001660: f000 fe04 bl 1000226c +10001664: 2a00 cmp r2, #0 +10001666: d0f4 beq.n 10001652 +10001668: 4a12 ldr r2, [pc, #72] @ (100016b4 ) +1000166a: 9804 ldr r0, [sp, #16] +1000166c: 9905 ldr r1, [sp, #20] +1000166e: 2300 movs r3, #0 +10001670: 9300 str r3, [sp, #0] +10001672: f7ff ff5c bl 1000152e +10001676: 2800 cmp r0, #0 +10001678: da13 bge.n 100016a2 +1000167a: e7ea b.n 10001652 +1000167c: 4b0e ldr r3, [pc, #56] @ (100016b8 ) +1000167e: 681a ldr r2, [r3, #0] +10001680: f3ef 8110 mrs r1, PRIMASK +10001684: b672 cpsid i +10001686: 6813 ldr r3, [r2, #0] +10001688: 2b00 cmp r3, #0 +1000168a: d0fc beq.n 10001686 +1000168c: f3bf 8f5f dmb sy +10001690: 4b09 ldr r3, [pc, #36] @ (100016b8 ) +10001692: 681b ldr r3, [r3, #0] +10001694: f3bf 8f5f dmb sy +10001698: 2200 movs r2, #0 +1000169a: 601a str r2, [r3, #0] +1000169c: f381 8810 msr PRIMASK, r1 +100016a0: bf20 wfe +100016a2: 9804 ldr r0, [sp, #16] +100016a4: 9905 ldr r1, [sp, #20] +100016a6: f7ff fb6f bl 10000d88 +100016aa: 2800 cmp r0, #0 +100016ac: d0e6 beq.n 1000167c +100016ae: e7d0 b.n 10001652 +100016b0: 10004fa4 .word 0x10004fa4 +100016b4: 1000109d .word 0x1000109d +100016b8: 20000740 .word 0x20000740 -10001636 : -10001636: b510 push {r4, lr} -10001638: 7301 strb r1, [r0, #12] -1000163a: 6042 str r2, [r0, #4] -1000163c: 6083 str r3, [r0, #8] -1000163e: f7ff ffe0 bl 10001602 -10001642: bd10 pop {r4, pc} +100016bc : +100016bc: b500 push {lr} +100016be: b083 sub sp, #12 +100016c0: 0002 movs r2, r0 +100016c2: 000b movs r3, r1 +100016c4: 4668 mov r0, sp +100016c6: f7ff fd12 bl 100010ee +100016ca: 9800 ldr r0, [sp, #0] +100016cc: 9901 ldr r1, [sp, #4] +100016ce: f7ff ff9d bl 1000160c +100016d2: b003 add sp, #12 +100016d4: bd00 pop {pc} -10001644 : -10001644: b5f0 push {r4, r5, r6, r7, lr} -10001646: 46c6 mov lr, r8 -10001648: b500 push {lr} -1000164a: 0005 movs r5, r0 -1000164c: 1e0c subs r4, r1, #0 -1000164e: d103 bne.n 10001658 -10001650: 0020 movs r0, r4 -10001652: bc80 pop {r7} -10001654: 46b8 mov r8, r7 -10001656: bdf0 pop {r4, r5, r6, r7, pc} -10001658: f7ff ff66 bl 10001528 -1000165c: 7846 ldrb r6, [r0, #1] -1000165e: 2e00 cmp r6, #0 -10001660: d0f6 beq.n 10001650 -10001662: 0031 movs r1, r6 -10001664: 0028 movs r0, r5 -10001666: f7ff ff5f bl 10001528 -1000166a: 7847 ldrb r7, [r0, #1] -1000166c: 2300 movs r3, #0 -1000166e: 4698 mov r8, r3 -10001670: 7043 strb r3, [r0, #1] -10001672: 0021 movs r1, r4 -10001674: 0028 movs r0, r5 -10001676: f7ff ff57 bl 10001528 -1000167a: 4643 mov r3, r8 -1000167c: 7043 strb r3, [r0, #1] -1000167e: 0032 movs r2, r6 -10001680: 0021 movs r1, r4 -10001682: 0028 movs r0, r5 -10001684: f7ff ff9e bl 100015c4 -10001688: 0004 movs r4, r0 -1000168a: 0039 movs r1, r7 -1000168c: 0028 movs r0, r5 -1000168e: f7ff ffd9 bl 10001644 -10001692: 0002 movs r2, r0 -10001694: 0021 movs r1, r4 -10001696: 0028 movs r0, r5 -10001698: f7ff ff94 bl 100015c4 -1000169c: 0004 movs r4, r0 -1000169e: e7d7 b.n 10001650 - -100016a0 : -100016a0: b5f0 push {r4, r5, r6, r7, lr} -100016a2: 46c6 mov lr, r8 -100016a4: b500 push {lr} -100016a6: 0004 movs r4, r0 -100016a8: 000d movs r5, r1 -100016aa: 0017 movs r7, r2 -100016ac: 2900 cmp r1, #0 -100016ae: d027 beq.n 10001700 -100016b0: f7ff ff3a bl 10001528 -100016b4: 7843 ldrb r3, [r0, #1] -100016b6: 2b00 cmp r3, #0 -100016b8: d128 bne.n 1000170c -100016ba: 7883 ldrb r3, [r0, #2] -100016bc: 2b00 cmp r3, #0 -100016be: d12b bne.n 10001718 -100016c0: 7801 ldrb r1, [r0, #0] -100016c2: 0020 movs r0, r4 -100016c4: f7ff ffbe bl 10001644 -100016c8: 0006 movs r6, r0 -100016ca: 4680 mov r8, r0 -100016cc: 2f00 cmp r7, #0 -100016ce: d00a beq.n 100016e6 -100016d0: 7be1 ldrb r1, [r4, #15] -100016d2: 2900 cmp r1, #0 -100016d4: d126 bne.n 10001724 -100016d6: 7ba3 ldrb r3, [r4, #14] -100016d8: 2b00 cmp r3, #0 -100016da: d103 bne.n 100016e4 -100016dc: 7be3 ldrb r3, [r4, #15] -100016de: 2b00 cmp r3, #0 -100016e0: d125 bne.n 1000172e -100016e2: 73a5 strb r5, [r4, #14] -100016e4: 73e5 strb r5, [r4, #15] -100016e6: 4643 mov r3, r8 -100016e8: 2b00 cmp r3, #0 -100016ea: d126 bne.n 1000173a -100016ec: 0029 movs r1, r5 -100016ee: 0020 movs r0, r4 -100016f0: f7ff ff1a bl 10001528 -100016f4: 2300 movs r3, #0 -100016f6: 7043 strb r3, [r0, #1] -100016f8: 0030 movs r0, r6 -100016fa: bc80 pop {r7} -100016fc: 46b8 mov r8, r7 -100016fe: bdf0 pop {r4, r5, r6, r7, pc} -10001700: 4b11 ldr r3, [pc, #68] @ (10001748 ) -10001702: 4a12 ldr r2, [pc, #72] @ (1000174c ) -10001704: 4812 ldr r0, [pc, #72] @ (10001750 ) -10001706: 2138 movs r1, #56 @ 0x38 -10001708: f000 fa3e bl 10001b88 <__assert_func> -1000170c: 4b11 ldr r3, [pc, #68] @ (10001754 ) -1000170e: 4a0f ldr r2, [pc, #60] @ (1000174c ) -10001710: 480f ldr r0, [pc, #60] @ (10001750 ) -10001712: 213a movs r1, #58 @ 0x3a -10001714: f000 fa38 bl 10001b88 <__assert_func> -10001718: 4b0f ldr r3, [pc, #60] @ (10001758 ) -1000171a: 4a0c ldr r2, [pc, #48] @ (1000174c ) -1000171c: 480c ldr r0, [pc, #48] @ (10001750 ) -1000171e: 213b movs r1, #59 @ 0x3b -10001720: f000 fa32 bl 10001b88 <__assert_func> -10001724: 0020 movs r0, r4 -10001726: f7ff feff bl 10001528 -1000172a: 7045 strb r5, [r0, #1] -1000172c: e7d3 b.n 100016d6 -1000172e: 4b0b ldr r3, [pc, #44] @ (1000175c ) -10001730: 4a06 ldr r2, [pc, #24] @ (1000174c ) -10001732: 4807 ldr r0, [pc, #28] @ (10001750 ) -10001734: 2142 movs r1, #66 @ 0x42 -10001736: f000 fa27 bl 10001b88 <__assert_func> -1000173a: 0031 movs r1, r6 -1000173c: 0020 movs r0, r4 -1000173e: f7ff fef3 bl 10001528 -10001742: 2300 movs r3, #0 -10001744: 7083 strb r3, [r0, #2] -10001746: e7d1 b.n 100016ec -10001748: 100047e4 .word 0x100047e4 -1000174c: 100048b4 .word 0x100048b4 -10001750: 100047ec .word 0x100047ec -10001754: 10004830 .word 0x10004830 -10001758: 10004858 .word 0x10004858 -1000175c: 10004520 .word 0x10004520 - -10001760 : -10001760: b570 push {r4, r5, r6, lr} -10001762: 0004 movs r4, r0 -10001764: 000a movs r2, r1 -10001766: 7b45 ldrb r5, [r0, #13] -10001768: 0029 movs r1, r5 -1000176a: f7ff ff99 bl 100016a0 -1000176e: 7360 strb r0, [r4, #13] -10001770: 0028 movs r0, r5 -10001772: bd70 pop {r4, r5, r6, pc} - -10001774 : -10001774: b570 push {r4, r5, r6, lr} -10001776: 0006 movs r6, r0 -10001778: 1e0c subs r4, r1, #0 -1000177a: d040 beq.n 100017fe -1000177c: 7b43 ldrb r3, [r0, #13] -1000177e: 428b cmp r3, r1 -10001780: d007 beq.n 10001792 -10001782: f7ff fed1 bl 10001528 -10001786: 0005 movs r5, r0 -10001788: 7881 ldrb r1, [r0, #2] -1000178a: 2900 cmp r1, #0 -1000178c: d106 bne.n 1000179c -1000178e: 2000 movs r0, #0 -10001790: e036 b.n 10001800 -10001792: 2101 movs r1, #1 -10001794: f7ff ffe4 bl 10001760 -10001798: 2001 movs r0, #1 -1000179a: e031 b.n 10001800 -1000179c: 0030 movs r0, r6 -1000179e: f7ff fec3 bl 10001528 -100017a2: 7801 ldrb r1, [r0, #0] -100017a4: 42a1 cmp r1, r4 -100017a6: d00d beq.n 100017c4 -100017a8: 0030 movs r0, r6 -100017aa: f7ff febd bl 10001528 -100017ae: 7841 ldrb r1, [r0, #1] -100017b0: 42a1 cmp r1, r4 -100017b2: d00a beq.n 100017ca -100017b4: 2900 cmp r1, #0 -100017b6: d1f7 bne.n 100017a8 -100017b8: 4b12 ldr r3, [pc, #72] @ (10001804 ) -100017ba: 4a13 ldr r2, [pc, #76] @ (10001808 ) -100017bc: 4813 ldr r0, [pc, #76] @ (1000180c ) -100017be: 316b adds r1, #107 @ 0x6b -100017c0: f000 f9e2 bl 10001b88 <__assert_func> -100017c4: 786b ldrb r3, [r5, #1] -100017c6: 7003 strb r3, [r0, #0] -100017c8: e001 b.n 100017ce -100017ca: 786b ldrb r3, [r5, #1] -100017cc: 7043 strb r3, [r0, #1] -100017ce: 2300 movs r3, #0 -100017d0: 70ab strb r3, [r5, #2] -100017d2: 706b strb r3, [r5, #1] -100017d4: 2201 movs r2, #1 -100017d6: 0021 movs r1, r4 -100017d8: 0030 movs r0, r6 -100017da: f7ff ff61 bl 100016a0 -100017de: 0002 movs r2, r0 -100017e0: 7b71 ldrb r1, [r6, #13] -100017e2: 4281 cmp r1, r0 -100017e4: d005 beq.n 100017f2 -100017e6: 0030 movs r0, r6 -100017e8: f7ff feec bl 100015c4 -100017ec: 7370 strb r0, [r6, #13] -100017ee: 2001 movs r0, #1 -100017f0: e006 b.n 10001800 -100017f2: 4b07 ldr r3, [pc, #28] @ (10001810 ) -100017f4: 4a04 ldr r2, [pc, #16] @ (10001808 ) -100017f6: 4805 ldr r0, [pc, #20] @ (1000180c ) -100017f8: 2171 movs r1, #113 @ 0x71 -100017fa: f000 f9c5 bl 10001b88 <__assert_func> -100017fe: 2000 movs r0, #0 -10001800: bd70 pop {r4, r5, r6, pc} -10001802: 46c0 nop @ (mov r8, r8) -10001804: 10004240 .word 0x10004240 -10001808: 1000489c .word 0x1000489c -1000180c: 100047ec .word 0x100047ec -10001810: 1000487c .word 0x1000487c - -10001814 : -10001814: b5f8 push {r3, r4, r5, r6, r7, lr} -10001816: 46de mov lr, fp -10001818: 4657 mov r7, sl -1000181a: 464e mov r6, r9 -1000181c: 4645 mov r5, r8 -1000181e: b5e0 push {r5, r6, r7, lr} -10001820: 0006 movs r6, r0 -10001822: 000f movs r7, r1 -10001824: 0015 movs r5, r2 -10001826: 9a0a ldr r2, [sp, #40] @ 0x28 -10001828: 4293 cmp r3, r2 -1000182a: d34e bcc.n 100018ca -1000182c: 0e1a lsrs r2, r3, #24 -1000182e: 4692 mov sl, r2 -10001830: 021b lsls r3, r3, #8 -10001832: 4698 mov r8, r3 -10001834: 9a0a ldr r2, [sp, #40] @ 0x28 -10001836: 2300 movs r3, #0 -10001838: 4640 mov r0, r8 -1000183a: 4651 mov r1, sl -1000183c: f001 fbca bl 10002fd4 <__wrap___aeabi_uldivmod> -10001840: 4681 mov r9, r0 -10001842: 0074 lsls r4, r6, #1 -10001844: 19a4 adds r4, r4, r6 -10001846: 00a4 lsls r4, r4, #2 -10001848: 4b2e ldr r3, [pc, #184] @ (10001904 ) -1000184a: 469c mov ip, r3 -1000184c: 4464 add r4, ip -1000184e: 6863 ldr r3, [r4, #4] -10001850: 4283 cmp r3, r0 -10001852: d200 bcs.n 10001856 -10001854: 6060 str r0, [r4, #4] -10001856: 1f33 subs r3, r6, #4 -10001858: b2db uxtb r3, r3 -1000185a: 469b mov fp, r3 -1000185c: 2b01 cmp r3, #1 -1000185e: d93a bls.n 100018d6 -10001860: 23c0 movs r3, #192 @ 0xc0 -10001862: 019b lsls r3, r3, #6 -10001864: 4323 orrs r3, r4 -10001866: 2280 movs r2, #128 @ 0x80 -10001868: 0112 lsls r2, r2, #4 -1000186a: 601a str r2, [r3, #0] -1000186c: 4b26 ldr r3, [pc, #152] @ (10001908 ) -1000186e: 00b2 lsls r2, r6, #2 -10001870: 58d1 ldr r1, [r2, r3] -10001872: 2900 cmp r1, #0 -10001874: d005 beq.n 10001882 -10001876: 6958 ldr r0, [r3, #20] -10001878: f001 fb6e bl 10002f58 <__wrap___aeabi_uidiv> -1000187c: 3001 adds r0, #1 -1000187e: 3801 subs r0, #1 -10001880: d1fd bne.n 1000187e -10001882: 016d lsls r5, r5, #5 -10001884: 6823 ldr r3, [r4, #0] -10001886: 405d eors r5, r3 -10001888: 22e0 movs r2, #224 @ 0xe0 -1000188a: 402a ands r2, r5 -1000188c: 2380 movs r3, #128 @ 0x80 -1000188e: 015b lsls r3, r3, #5 -10001890: 4323 orrs r3, r4 -10001892: 601a str r2, [r3, #0] -10001894: 465a mov r2, fp -10001896: 2a01 cmp r2, #1 -10001898: d928 bls.n 100018ec -1000189a: 2380 movs r3, #128 @ 0x80 -1000189c: 019b lsls r3, r3, #6 -1000189e: 4323 orrs r3, r4 -100018a0: 2280 movs r2, #128 @ 0x80 -100018a2: 0112 lsls r2, r2, #4 -100018a4: 601a str r2, [r3, #0] -100018a6: 464b mov r3, r9 -100018a8: 6063 str r3, [r4, #4] -100018aa: 464a mov r2, r9 -100018ac: 2300 movs r3, #0 -100018ae: 4640 mov r0, r8 -100018b0: 4651 mov r1, sl -100018b2: f001 fb8f bl 10002fd4 <__wrap___aeabi_uldivmod> -100018b6: 4b14 ldr r3, [pc, #80] @ (10001908 ) -100018b8: 00b6 lsls r6, r6, #2 -100018ba: 5198 str r0, [r3, r6] -100018bc: 2001 movs r0, #1 -100018be: bcf0 pop {r4, r5, r6, r7} -100018c0: 46bb mov fp, r7 -100018c2: 46b2 mov sl, r6 -100018c4: 46a9 mov r9, r5 -100018c6: 46a0 mov r8, r4 -100018c8: bdf8 pop {r3, r4, r5, r6, r7, pc} -100018ca: 4b10 ldr r3, [pc, #64] @ (1000190c ) -100018cc: 4a10 ldr r2, [pc, #64] @ (10001910 ) -100018ce: 4811 ldr r0, [pc, #68] @ (10001914 ) -100018d0: 212d movs r1, #45 @ 0x2d -100018d2: f000 f959 bl 10001b88 <__assert_func> -100018d6: 2f01 cmp r7, #1 -100018d8: d1c2 bne.n 10001860 -100018da: 23c0 movs r3, #192 @ 0xc0 -100018dc: 019b lsls r3, r3, #6 -100018de: 4323 orrs r3, r4 -100018e0: 2203 movs r2, #3 -100018e2: 601a str r2, [r3, #0] -100018e4: 68a3 ldr r3, [r4, #8] -100018e6: 07db lsls r3, r3, #31 -100018e8: d5fc bpl.n 100018e4 -100018ea: e7ca b.n 10001882 -100018ec: 6821 ldr r1, [r4, #0] -100018ee: 4079 eors r1, r7 -100018f0: 2203 movs r2, #3 -100018f2: 400a ands r2, r1 -100018f4: 601a str r2, [r3, #0] -100018f6: 68a3 ldr r3, [r4, #8] -100018f8: 2501 movs r5, #1 -100018fa: 40bd lsls r5, r7 -100018fc: 421d tst r5, r3 -100018fe: d0fa beq.n 100018f6 -10001900: e7cb b.n 1000189a -10001902: 46c0 nop @ (mov r8, r8) -10001904: 40008000 .word 0x40008000 -10001908: 2000041c .word 0x2000041c -1000190c: 100048e8 .word 0x100048e8 -10001910: 1000494c .word 0x1000494c -10001914: 100048fc .word 0x100048fc - -10001918 : -10001918: b530 push {r4, r5, lr} -1000191a: b083 sub sp, #12 -1000191c: 200c movs r0, #12 -1000191e: f000 f911 bl 10001b44 -10001922: f7fe fd53 bl 100003cc -10001926: 2800 cmp r0, #0 -10001928: d00d beq.n 10001946 -1000192a: 2300 movs r3, #0 -1000192c: e004 b.n 10001938 -1000192e: 4a2e ldr r2, [pc, #184] @ (100019e8 ) -10001930: 0099 lsls r1, r3, #2 -10001932: 482e ldr r0, [pc, #184] @ (100019ec ) -10001934: 5088 str r0, [r1, r2] -10001936: 3301 adds r3, #1 -10001938: 2b09 cmp r3, #9 -1000193a: d9f8 bls.n 1000192e -1000193c: 4b2a ldr r3, [pc, #168] @ (100019e8 ) -1000193e: 4a2c ldr r2, [pc, #176] @ (100019f0 ) -10001940: 625a str r2, [r3, #36] @ 0x24 -10001942: b003 add sp, #12 -10001944: bd30 pop {r4, r5, pc} -10001946: 4b2b ldr r3, [pc, #172] @ (100019f4 ) -10001948: 2200 movs r2, #0 -1000194a: 679a str r2, [r3, #120] @ 0x78 -1000194c: f000 f902 bl 10001b54 -10001950: 4b29 ldr r3, [pc, #164] @ (100019f8 ) -10001952: 2201 movs r2, #1 -10001954: 601a str r2, [r3, #0] -10001956: 4b27 ldr r3, [pc, #156] @ (100019f4 ) -10001958: 6c5b ldr r3, [r3, #68] @ 0x44 -1000195a: 2b01 cmp r3, #1 -1000195c: d1fb bne.n 10001956 -1000195e: 4b27 ldr r3, [pc, #156] @ (100019fc ) -10001960: 2203 movs r2, #3 -10001962: 601a str r2, [r3, #0] -10001964: 4b23 ldr r3, [pc, #140] @ (100019f4 ) -10001966: 6b9b ldr r3, [r3, #56] @ 0x38 -10001968: 2b01 cmp r3, #1 -1000196a: d1fb bne.n 10001964 -1000196c: 3301 adds r3, #1 -1000196e: 9300 str r3, [sp, #0] -10001970: 3304 adds r3, #4 -10001972: 4a23 ldr r2, [pc, #140] @ (10001a00 ) -10001974: 2101 movs r1, #1 -10001976: 4823 ldr r0, [pc, #140] @ (10001a04 ) -10001978: f000 f84e bl 10001a18 -1000197c: 2305 movs r3, #5 -1000197e: 9300 str r3, [sp, #0] -10001980: 4a21 ldr r2, [pc, #132] @ (10001a08 ) -10001982: 2101 movs r1, #1 -10001984: 4821 ldr r0, [pc, #132] @ (10001a0c ) -10001986: f000 f847 bl 10001a18 -1000198a: 4b21 ldr r3, [pc, #132] @ (10001a10 ) -1000198c: 9300 str r3, [sp, #0] -1000198e: 2200 movs r2, #0 -10001990: 2102 movs r1, #2 -10001992: 2004 movs r0, #4 -10001994: f7ff ff3e bl 10001814 -10001998: 4d1e ldr r5, [pc, #120] @ (10001a14 ) -1000199a: 9500 str r5, [sp, #0] -1000199c: 002b movs r3, r5 -1000199e: 2200 movs r2, #0 -100019a0: 2101 movs r1, #1 -100019a2: 2005 movs r0, #5 -100019a4: f7ff ff36 bl 10001814 -100019a8: 4c10 ldr r4, [pc, #64] @ (100019ec ) -100019aa: 9400 str r4, [sp, #0] -100019ac: 0023 movs r3, r4 -100019ae: 2200 movs r2, #0 -100019b0: 2100 movs r1, #0 -100019b2: 2007 movs r0, #7 -100019b4: f7ff ff2e bl 10001814 -100019b8: 9400 str r4, [sp, #0] -100019ba: 0023 movs r3, r4 -100019bc: 2200 movs r2, #0 -100019be: 2100 movs r1, #0 -100019c0: 2008 movs r0, #8 -100019c2: f7ff ff27 bl 10001814 -100019c6: 4b0a ldr r3, [pc, #40] @ (100019f0 ) -100019c8: 9300 str r3, [sp, #0] -100019ca: 0023 movs r3, r4 -100019cc: 2200 movs r2, #0 -100019ce: 2100 movs r1, #0 -100019d0: 2009 movs r0, #9 -100019d2: f7ff ff1f bl 10001814 -100019d6: 9500 str r5, [sp, #0] -100019d8: 002b movs r3, r5 -100019da: 2200 movs r2, #0 -100019dc: 2100 movs r1, #0 -100019de: 2006 movs r0, #6 -100019e0: f7ff ff18 bl 10001814 -100019e4: e7ad b.n 10001942 -100019e6: 46c0 nop @ (mov r8, r8) -100019e8: 2000041c .word 0x2000041c -100019ec: 02dc6c00 .word 0x02dc6c00 -100019f0: 0000b71b .word 0x0000b71b -100019f4: 40008000 .word 0x40008000 -100019f8: 4000b03c .word 0x4000b03c -100019fc: 4000b030 .word 0x4000b030 -10001a00: 59682f00 .word 0x59682f00 -10001a04: 40028000 .word 0x40028000 -10001a08: 47868c00 .word 0x47868c00 -10001a0c: 4002c000 .word 0x4002c000 -10001a10: 00b71b00 .word 0x00b71b00 -10001a14: 07735940 .word 0x07735940 - -10001a18 : -10001a18: b5f0 push {r4, r5, r6, r7, lr} -10001a1a: 46c6 mov lr, r8 -10001a1c: b500 push {lr} -10001a1e: 0004 movs r4, r0 -10001a20: 000d movs r5, r1 -10001a22: 0017 movs r7, r2 -10001a24: 4698 mov r8, r3 -10001a26: 200c movs r0, #12 -10001a28: f001 fa96 bl 10002f58 <__wrap___aeabi_uidiv> -10001a2c: 0006 movs r6, r0 -10001a2e: 4b39 ldr r3, [pc, #228] @ (10001b14 ) -10001a30: 18fa adds r2, r7, r3 -10001a32: 4b39 ldr r3, [pc, #228] @ (10001b18 ) -10001a34: 429a cmp r2, r3 -10001a36: d841 bhi.n 10001abc -10001a38: 0143 lsls r3, r0, #5 -10001a3a: 1a1b subs r3, r3, r0 -10001a3c: 0199 lsls r1, r3, #6 -10001a3e: 1ac9 subs r1, r1, r3 -10001a40: 00c9 lsls r1, r1, #3 -10001a42: 1809 adds r1, r1, r0 -10001a44: 0189 lsls r1, r1, #6 -10001a46: 0038 movs r0, r7 -10001a48: f001 fa86 bl 10002f58 <__wrap___aeabi_uidiv> -10001a4c: 0002 movs r2, r0 -10001a4e: 3a10 subs r2, #16 -10001a50: 2398 movs r3, #152 @ 0x98 -10001a52: 005b lsls r3, r3, #1 -10001a54: 429a cmp r2, r3 -10001a56: d837 bhi.n 10001ac8 -10001a58: 4643 mov r3, r8 -10001a5a: 3b01 subs r3, #1 -10001a5c: 2b06 cmp r3, #6 -10001a5e: d839 bhi.n 10001ad4 -10001a60: 9b06 ldr r3, [sp, #24] -10001a62: 3b01 subs r3, #1 -10001a64: 2b06 cmp r3, #6 -10001a66: d835 bhi.n 10001ad4 -10001a68: 093f lsrs r7, r7, #4 -10001a6a: 42b7 cmp r7, r6 -10001a6c: d338 bcc.n 10001ae0 -10001a6e: 4643 mov r3, r8 -10001a70: 041e lsls r6, r3, #16 -10001a72: 9b06 ldr r3, [sp, #24] -10001a74: 031b lsls r3, r3, #12 -10001a76: 431e orrs r6, r3 -10001a78: 6823 ldr r3, [r4, #0] -10001a7a: 2b00 cmp r3, #0 -10001a7c: db36 blt.n 10001aec -10001a7e: 4b27 ldr r3, [pc, #156] @ (10001b1c ) -10001a80: 429c cmp r4, r3 -10001a82: d044 beq.n 10001b0e -10001a84: 2380 movs r3, #128 @ 0x80 -10001a86: 015b lsls r3, r3, #5 -10001a88: 4a25 ldr r2, [pc, #148] @ (10001b20 ) -10001a8a: 6013 str r3, [r2, #0] -10001a8c: 4a25 ldr r2, [pc, #148] @ (10001b24 ) -10001a8e: 6013 str r3, [r2, #0] -10001a90: 4a25 ldr r2, [pc, #148] @ (10001b28 ) -10001a92: 6892 ldr r2, [r2, #8] -10001a94: 0019 movs r1, r3 -10001a96: 4391 bics r1, r2 -10001a98: d1fa bne.n 10001a90 -10001a9a: 6025 str r5, [r4, #0] -10001a9c: 60a0 str r0, [r4, #8] -10001a9e: 1d22 adds r2, r4, #4 -10001aa0: 23c0 movs r3, #192 @ 0xc0 -10001aa2: 019b lsls r3, r3, #6 -10001aa4: 4313 orrs r3, r2 -10001aa6: 2221 movs r2, #33 @ 0x21 -10001aa8: 601a str r2, [r3, #0] -10001aaa: 6822 ldr r2, [r4, #0] -10001aac: 2a00 cmp r2, #0 -10001aae: dafc bge.n 10001aaa -10001ab0: 60e6 str r6, [r4, #12] -10001ab2: 2208 movs r2, #8 -10001ab4: 601a str r2, [r3, #0] -10001ab6: bc80 pop {r7} -10001ab8: 46b8 mov r8, r7 -10001aba: bdf0 pop {r4, r5, r6, r7, pc} -10001abc: 4b1b ldr r3, [pc, #108] @ (10001b2c ) -10001abe: 4a1c ldr r2, [pc, #112] @ (10001b30 ) -10001ac0: 481c ldr r0, [pc, #112] @ (10001b34 ) -10001ac2: 2111 movs r1, #17 -10001ac4: f000 f860 bl 10001b88 <__assert_func> -10001ac8: 4b1b ldr r3, [pc, #108] @ (10001b38 ) -10001aca: 4a19 ldr r2, [pc, #100] @ (10001b30 ) -10001acc: 4819 ldr r0, [pc, #100] @ (10001b34 ) -10001ace: 2119 movs r1, #25 -10001ad0: f000 f85a bl 10001b88 <__assert_func> -10001ad4: 4b19 ldr r3, [pc, #100] @ (10001b3c ) -10001ad6: 4a16 ldr r2, [pc, #88] @ (10001b30 ) -10001ad8: 4816 ldr r0, [pc, #88] @ (10001b34 ) -10001ada: 211c movs r1, #28 -10001adc: f000 f854 bl 10001b88 <__assert_func> -10001ae0: 4b17 ldr r3, [pc, #92] @ (10001b40 ) -10001ae2: 4a13 ldr r2, [pc, #76] @ (10001b30 ) -10001ae4: 4813 ldr r0, [pc, #76] @ (10001b34 ) -10001ae6: 2123 movs r1, #35 @ 0x23 -10001ae8: f000 f84e bl 10001b88 <__assert_func> -10001aec: 6822 ldr r2, [r4, #0] -10001aee: 233f movs r3, #63 @ 0x3f -10001af0: 4013 ands r3, r2 -10001af2: 42ab cmp r3, r5 -10001af4: d1c3 bne.n 10001a7e -10001af6: 68a3 ldr r3, [r4, #8] -10001af8: 051b lsls r3, r3, #20 -10001afa: 0d1b lsrs r3, r3, #20 -10001afc: 4283 cmp r3, r0 -10001afe: d1be bne.n 10001a7e -10001b00: 68e3 ldr r3, [r4, #12] -10001b02: 22ee movs r2, #238 @ 0xee -10001b04: 02d2 lsls r2, r2, #11 -10001b06: 4013 ands r3, r2 -10001b08: 42b3 cmp r3, r6 -10001b0a: d1b8 bne.n 10001a7e -10001b0c: e7d3 b.n 10001ab6 -10001b0e: 2380 movs r3, #128 @ 0x80 -10001b10: 019b lsls r3, r3, #6 -10001b12: e7b9 b.n 10001a88 -10001b14: d34be880 .word 0xd34be880 -10001b18: 32a9f880 .word 0x32a9f880 -10001b1c: 4002c000 .word 0x4002c000 -10001b20: 4000e000 .word 0x4000e000 -10001b24: 4000f000 .word 0x4000f000 -10001b28: 4000c000 .word 0x4000c000 -10001b2c: 1000495c .word 0x1000495c -10001b30: 10004a88 .word 0x10004a88 -10001b34: 100049bc .word 0x100049bc -10001b38: 10004a04 .word 0x10004a04 -10001b3c: 10004a20 .word 0x10004a20 -10001b40: 10004a6c .word 0x10004a6c - -10001b44 : -10001b44: 2380 movs r3, #128 @ 0x80 -10001b46: 009b lsls r3, r3, #2 -10001b48: 4303 orrs r3, r0 -10001b4a: 4a01 ldr r2, [pc, #4] @ (10001b50 ) -10001b4c: 62d3 str r3, [r2, #44] @ 0x2c -10001b4e: 4770 bx lr -10001b50: 40058000 .word 0x40058000 - -10001b54 : -10001b54: 4b06 ldr r3, [pc, #24] @ (10001b70 ) -10001b56: 22aa movs r2, #170 @ 0xaa -10001b58: 0112 lsls r2, r2, #4 -10001b5a: 601a str r2, [r3, #0] -10001b5c: 222f movs r2, #47 @ 0x2f -10001b5e: 60da str r2, [r3, #12] -10001b60: 4b04 ldr r3, [pc, #16] @ (10001b74 ) -10001b62: 4a05 ldr r2, [pc, #20] @ (10001b78 ) -10001b64: 601a str r2, [r3, #0] -10001b66: 4b02 ldr r3, [pc, #8] @ (10001b70 ) -10001b68: 685b ldr r3, [r3, #4] -10001b6a: 2b00 cmp r3, #0 -10001b6c: dafb bge.n 10001b66 -10001b6e: 4770 bx lr -10001b70: 40024000 .word 0x40024000 -10001b74: 40026000 .word 0x40026000 -10001b78: 00fab000 .word 0x00fab000 - -10001b7c <_exit>: -10001b7c: be00 bkpt 0x0000 -10001b7e: e7fd b.n 10001b7c <_exit> - -10001b80 : -10001b80: b510 push {r4, lr} -10001b82: f7ff fffb bl 10001b7c <_exit> +100016d6 : +100016d6: b510 push {r4, lr} +100016d8: 22fa movs r2, #250 @ 0xfa +100016da: 0092 lsls r2, r2, #2 +100016dc: 2300 movs r3, #0 +100016de: 2100 movs r1, #0 +100016e0: f002 fd52 bl 10004188 <__wrap___aeabi_lmul> +100016e4: f7ff ffea bl 100016bc +100016e8: bd10 pop {r4, pc} ... -10001b88 <__assert_func>: -10001b88: b530 push {r4, r5, lr} -10001b8a: b083 sub sp, #12 -10001b8c: 000d movs r5, r1 -10001b8e: 0019 movs r1, r3 -10001b90: 2a00 cmp r2, #0 -10001b92: d00b beq.n 10001bac <__assert_func+0x24> -10001b94: 4b07 ldr r3, [pc, #28] @ (10001bb4 <__assert_func+0x2c>) -10001b96: 4c08 ldr r4, [pc, #32] @ (10001bb8 <__assert_func+0x30>) -10001b98: 9201 str r2, [sp, #4] -10001b9a: 9300 str r3, [sp, #0] -10001b9c: 002b movs r3, r5 -10001b9e: 0002 movs r2, r0 -10001ba0: 0020 movs r0, r4 -10001ba2: f002 fa4b bl 1000403c <__wrap_printf> -10001ba6: 2001 movs r0, #1 -10001ba8: f7ff ffe8 bl 10001b7c <_exit> -10001bac: 4b03 ldr r3, [pc, #12] @ (10001bbc <__assert_func+0x34>) -10001bae: 001a movs r2, r3 -10001bb0: e7f1 b.n 10001b96 <__assert_func+0xe> -10001bb2: 46c0 nop @ (mov r8, r8) -10001bb4: 10004a94 .word 0x10004a94 -10001bb8: 10004aa4 .word 0x10004aa4 -10001bbc: 10004aa0 .word 0x10004aa0 +100016ec : +100016ec: b530 push {r4, r5, lr} +100016ee: b083 sub sp, #12 +100016f0: 0005 movs r5, r0 +100016f2: 000c movs r4, r1 +100016f4: f3ef 8305 mrs r3, IPSR +100016f8: 2b00 cmp r3, #0 +100016fa: d10f bne.n 1000171c +100016fc: 4a0b ldr r2, [pc, #44] @ (1000172c ) +100016fe: 2300 movs r3, #0 +10001700: 9300 str r3, [sp, #0] +10001702: f7ff ff14 bl 1000152e +10001706: 2800 cmp r0, #0 +10001708: dd0b ble.n 10001722 +1000170a: bf20 wfe +1000170c: f7ff ff76 bl 100015fc +10001710: 0028 movs r0, r5 +10001712: 0021 movs r1, r4 +10001714: f7ff fb38 bl 10000d88 +10001718: b003 add sp, #12 +1000171a: bd30 pop {r4, r5, pc} +1000171c: f7ff fb34 bl 10000d88 +10001720: e7fa b.n 10001718 +10001722: 0028 movs r0, r5 +10001724: 0021 movs r1, r4 +10001726: f7ff fb2f bl 10000d88 +1000172a: e7f5 b.n 10001718 +1000172c: 1000109d .word 0x1000109d -10001bc0 : -10001bc0: b570 push {r4, r5, r6, lr} -10001bc2: 4b2b ldr r3, [pc, #172] @ (10001c70 ) -10001bc4: 4a2b ldr r2, [pc, #172] @ (10001c74 ) -10001bc6: 601a str r2, [r3, #0] -10001bc8: 4b2b ldr r3, [pc, #172] @ (10001c78 ) -10001bca: 4a2c ldr r2, [pc, #176] @ (10001c7c ) -10001bcc: 601a str r2, [r3, #0] -10001bce: 4b2c ldr r3, [pc, #176] @ (10001c80 ) -10001bd0: 689a ldr r2, [r3, #8] -10001bd2: 4b2a ldr r3, [pc, #168] @ (10001c7c ) -10001bd4: 4393 bics r3, r2 -10001bd6: d1fa bne.n 10001bce -10001bd8: 4c2a ldr r4, [pc, #168] @ (10001c84 ) -10001bda: e001 b.n 10001be0 -10001bdc: cc08 ldmia r4!, {r3} -10001bde: 4798 blx r3 -10001be0: 4b29 ldr r3, [pc, #164] @ (10001c88 ) -10001be2: 429c cmp r4, r3 -10001be4: d3fa bcc.n 10001bdc -10001be6: f7ff fe97 bl 10001918 -10001bea: 4b23 ldr r3, [pc, #140] @ (10001c78 ) -10001bec: 4a27 ldr r2, [pc, #156] @ (10001c8c ) -10001bee: 601a str r2, [r3, #0] -10001bf0: 4b23 ldr r3, [pc, #140] @ (10001c80 ) -10001bf2: 689b ldr r3, [r3, #8] -10001bf4: 43db mvns r3, r3 -10001bf6: 01db lsls r3, r3, #7 -10001bf8: d1fa bne.n 10001bf0 -10001bfa: 4b25 ldr r3, [pc, #148] @ (10001c90 ) -10001bfc: 2240 movs r2, #64 @ 0x40 -10001bfe: 679a str r2, [r3, #120] @ 0x78 -10001c00: 675a str r2, [r3, #116] @ 0x74 -10001c02: 671a str r2, [r3, #112] @ 0x70 -10001c04: 66da str r2, [r3, #108] @ 0x6c -10001c06: 4c23 ldr r4, [pc, #140] @ (10001c94 ) -10001c08: e009 b.n 10001c1e -10001c0a: 4b23 ldr r3, [pc, #140] @ (10001c98 ) -10001c0c: 4a23 ldr r2, [pc, #140] @ (10001c9c ) -10001c0e: 4824 ldr r0, [pc, #144] @ (10001ca0 ) -10001c10: 2186 movs r1, #134 @ 0x86 -10001c12: f7ff ffb9 bl 10001b88 <__assert_func> -10001c16: 0020 movs r0, r4 -10001c18: f7fe fe48 bl 100008ac -10001c1c: 3408 adds r4, #8 -10001c1e: 4b21 ldr r3, [pc, #132] @ (10001ca4 ) -10001c20: 429c cmp r4, r3 -10001c22: d209 bcs.n 10001c38 -10001c24: 6823 ldr r3, [r4, #0] -10001c26: 2b00 cmp r3, #0 -10001c28: d0f5 beq.n 10001c16 -10001c2a: 2b01 cmp r3, #1 -10001c2c: d1ed bne.n 10001c0a -10001c2e: 0020 movs r0, r4 -10001c30: f7fe fe49 bl 100008c6 -10001c34: 3408 adds r4, #8 -10001c36: e7f2 b.n 10001c1e -10001c38: 4d1b ldr r5, [pc, #108] @ (10001ca8 ) -10001c3a: 68a9 ldr r1, [r5, #8] -10001c3c: 4c1b ldr r4, [pc, #108] @ (10001cac ) -10001c3e: 22c0 movs r2, #192 @ 0xc0 -10001c40: 0020 movs r0, r4 -10001c42: f002 f881 bl 10003d48 <__wrap___aeabi_memcpy> -10001c46: 60ac str r4, [r5, #8] -10001c48: f3ef 8305 mrs r3, IPSR -10001c4c: 2b00 cmp r3, #0 -10001c4e: d000 beq.n 10001c52 -10001c50: be00 bkpt 0x0000 -10001c52: f7fe fbf5 bl 10000440 -10001c56: f7fe fe13 bl 10000880 -10001c5a: f7ff f959 bl 10000f10 -10001c5e: 4c14 ldr r4, [pc, #80] @ (10001cb0 ) -10001c60: e001 b.n 10001c66 -10001c62: cc08 ldmia r4!, {r3} -10001c64: 4798 blx r3 -10001c66: 4b13 ldr r3, [pc, #76] @ (10001cb4 ) -10001c68: 429c cmp r4, r3 -10001c6a: d3fa bcc.n 10001c62 -10001c6c: bd70 pop {r4, r5, r6, pc} -10001c6e: 46c0 nop @ (mov r8, r8) -10001c70: 4000e000 .word 0x4000e000 -10001c74: fefbcdbf .word 0xfefbcdbf -10001c78: 4000f000 .word 0x4000f000 -10001c7c: 003c7ffe .word 0x003c7ffe -10001c80: 4000c000 .word 0x4000c000 -10001c84: 200002d8 .word 0x200002d8 -10001c88: 200002e8 .word 0x200002e8 -10001c8c: 01ffffff .word 0x01ffffff -10001c90: 4001f000 .word 0x4001f000 -10001c94: 200002d0 .word 0x200002d0 -10001c98: 10004ad4 .word 0x10004ad4 -10001c9c: 10004b54 .word 0x10004b54 -10001ca0: 10004af4 .word 0x10004af4 -10001ca4: 200002d8 .word 0x200002d8 -10001ca8: e000ed00 .word 0xe000ed00 -10001cac: 20000000 .word 0x20000000 -10001cb0: 200002e8 .word 0x200002e8 -10001cb4: 200002ec .word 0x200002ec +10001730 : +10001730: b570 push {r4, r5, r6, lr} +10001732: f3ef 8005 mrs r0, IPSR +10001736: 3810 subs r0, #16 +10001738: f3ef 8c10 mrs ip, PRIMASK +1000173c: b672 cpsid i +1000173e: 4b19 ldr r3, [pc, #100] @ (100017a4 ) +10001740: 681b ldr r3, [r3, #0] +10001742: 2b00 cmp r3, #0 +10001744: d0fb beq.n 1000173e +10001746: f3bf 8f5f dmb sy +1000174a: 2201 movs r2, #1 +1000174c: 0013 movs r3, r2 +1000174e: 4083 lsls r3, r0 +10001750: 4915 ldr r1, [pc, #84] @ (100017a8 ) +10001752: 634b str r3, [r1, #52] @ 0x34 +10001754: 4915 ldr r1, [pc, #84] @ (100017ac ) +10001756: 600b str r3, [r1, #0] +10001758: 4915 ldr r1, [pc, #84] @ (100017b0 ) +1000175a: 7809 ldrb r1, [r1, #0] +1000175c: 000c movs r4, r1 +1000175e: 40c4 lsrs r4, r0 +10001760: 4222 tst r2, r4 +10001762: d013 beq.n 1000178c +10001764: 4a10 ldr r2, [pc, #64] @ (100017a8 ) +10001766: 6a54 ldr r4, [r2, #36] @ 0x24 +10001768: 4a12 ldr r2, [pc, #72] @ (100017b4 ) +1000176a: 0085 lsls r5, r0, #2 +1000176c: 58aa ldr r2, [r5, r2] +1000176e: 4294 cmp r4, r2 +10001770: d305 bcc.n 1000177e +10001772: 4a11 ldr r2, [pc, #68] @ (100017b8 ) +10001774: 58aa ldr r2, [r5, r2] +10001776: 4c0e ldr r4, [pc, #56] @ (100017b0 ) +10001778: 4399 bics r1, r3 +1000177a: 7021 strb r1, [r4, #0] +1000177c: e007 b.n 1000178e +1000177e: 4a0a ldr r2, [pc, #40] @ (100017a8 ) +10001780: 1d03 adds r3, r0, #4 +10001782: 009b lsls r3, r3, #2 +10001784: 5899 ldr r1, [r3, r2] +10001786: 5099 str r1, [r3, r2] +10001788: 2200 movs r2, #0 +1000178a: e000 b.n 1000178e +1000178c: 2200 movs r2, #0 +1000178e: f3bf 8f5f dmb sy +10001792: 4b04 ldr r3, [pc, #16] @ (100017a4 ) +10001794: 2100 movs r1, #0 +10001796: 6019 str r1, [r3, #0] +10001798: f38c 8810 msr PRIMASK, ip +1000179c: 2a00 cmp r2, #0 +1000179e: d000 beq.n 100017a2 +100017a0: 4790 blx r2 +100017a2: bd70 pop {r4, r5, r6, pc} +100017a4: d0000128 .word 0xd0000128 +100017a8: 40054000 .word 0x40054000 +100017ac: 4005703c .word 0x4005703c +100017b0: 2000077f .word 0x2000077f +100017b4: 20000744 .word 0x20000744 +100017b8: 200004a4 .word 0x200004a4 -10001cb8 : -10001cb8: b40f push {r0, r1, r2, r3} -10001cba: b500 push {lr} -10001cbc: b083 sub sp, #12 -10001cbe: 4808 ldr r0, [pc, #32] @ (10001ce0 ) -10001cc0: f002 f98c bl 10003fdc <__wrap_puts> -10001cc4: 9b04 ldr r3, [sp, #16] -10001cc6: 2b00 cmp r3, #0 -10001cc8: d007 beq.n 10001cda -10001cca: a905 add r1, sp, #20 -10001ccc: 9101 str r1, [sp, #4] -10001cce: 0018 movs r0, r3 -10001cd0: f002 f994 bl 10003ffc <__wrap_vprintf> -10001cd4: 4803 ldr r0, [pc, #12] @ (10001ce4 ) -10001cd6: f002 f981 bl 10003fdc <__wrap_puts> -10001cda: 2001 movs r0, #1 -10001cdc: f7ff ff4e bl 10001b7c <_exit> -10001ce0: 10004b40 .word 0x10004b40 -10001ce4: 10004b50 .word 0x10004b50 +100017bc : +100017bc: b510 push {r4, lr} +100017be: 0001 movs r1, r0 +100017c0: 4a02 ldr r2, [pc, #8] @ (100017cc ) +100017c2: 4b03 ldr r3, [pc, #12] @ (100017d0 ) +100017c4: 0018 movs r0, r3 +100017c6: f7ff f873 bl 100008b0 +100017ca: bd10 pop {r4, pc} +100017cc: 100050d0 .word 0x100050d0 +100017d0: 2000077c .word 0x2000077c -10001ce8 <_out_null>: -10001ce8: 4770 bx lr +100017d4 : +100017d4: 4b04 ldr r3, [pc, #16] @ (100017e8 ) +100017d6: 6a5b ldr r3, [r3, #36] @ 0x24 +100017d8: 4a03 ldr r2, [pc, #12] @ (100017e8 ) +100017da: 6a90 ldr r0, [r2, #40] @ 0x28 +100017dc: 0019 movs r1, r3 +100017de: 6a53 ldr r3, [r2, #36] @ 0x24 +100017e0: 4299 cmp r1, r3 +100017e2: d1f9 bne.n 100017d8 +100017e4: 4770 bx lr +100017e6: 46c0 nop @ (mov r8, r8) +100017e8: 40054000 .word 0x40054000 -10001cea <_out_fct>: -10001cea: b510 push {r4, lr} -10001cec: 2800 cmp r0, #0 -10001cee: d002 beq.n 10001cf6 <_out_fct+0xc> -10001cf0: 680b ldr r3, [r1, #0] -10001cf2: 6849 ldr r1, [r1, #4] -10001cf4: 4798 blx r3 -10001cf6: bd10 pop {r4, pc} +100017ec : +100017ec: 4b08 ldr r3, [pc, #32] @ (10001810 ) +100017ee: 6a5b ldr r3, [r3, #36] @ 0x24 +100017f0: e001 b.n 100017f6 +100017f2: 4b07 ldr r3, [pc, #28] @ (10001810 ) +100017f4: 6a5b ldr r3, [r3, #36] @ 0x24 +100017f6: 428b cmp r3, r1 +100017f8: d3fb bcc.n 100017f2 +100017fa: e001 b.n 10001800 +100017fc: 4b04 ldr r3, [pc, #16] @ (10001810 ) +100017fe: 6a5b ldr r3, [r3, #36] @ 0x24 +10001800: 428b cmp r3, r1 +10001802: d103 bne.n 1000180c +10001804: 4b02 ldr r3, [pc, #8] @ (10001810 ) +10001806: 6a9b ldr r3, [r3, #40] @ 0x28 +10001808: 4283 cmp r3, r0 +1000180a: d3f7 bcc.n 100017fc +1000180c: 4770 bx lr +1000180e: 46c0 nop @ (mov r8, r8) +10001810: 40054000 .word 0x40054000 -10001cf8 <_atoi>: -10001cf8: 0001 movs r1, r0 -10001cfa: 2000 movs r0, #0 -10001cfc: e007 b.n 10001d0e <_atoi+0x16> -10001cfe: 0083 lsls r3, r0, #2 -10001d00: 181b adds r3, r3, r0 -10001d02: 005b lsls r3, r3, #1 -10001d04: 1c50 adds r0, r2, #1 -10001d06: 6008 str r0, [r1, #0] -10001d08: 7810 ldrb r0, [r2, #0] -10001d0a: 18c0 adds r0, r0, r3 -10001d0c: 3830 subs r0, #48 @ 0x30 -10001d0e: 680a ldr r2, [r1, #0] -10001d10: 7813 ldrb r3, [r2, #0] -10001d12: 3b30 subs r3, #48 @ 0x30 -10001d14: b2db uxtb r3, r3 -10001d16: 2b09 cmp r3, #9 -10001d18: d9f1 bls.n 10001cfe <_atoi+0x6> -10001d1a: 4770 bx lr +10001814 : +10001814: b570 push {r4, r5, r6, lr} +10001816: 0004 movs r4, r0 +10001818: 000e movs r6, r1 +1000181a: f3ef 8510 mrs r5, PRIMASK +1000181e: b672 cpsid i +10001820: 4b1b ldr r3, [pc, #108] @ (10001890 ) +10001822: 681b ldr r3, [r3, #0] +10001824: 2b00 cmp r3, #0 +10001826: d0fb beq.n 10001820 +10001828: f3bf 8f5f dmb sy +1000182c: 2e00 cmp r6, #0 +1000182e: d01c beq.n 1000186a +10001830: 0020 movs r0, r4 +10001832: f7ff f909 bl 10000a48 +10001836: 4b17 ldr r3, [pc, #92] @ (10001894 ) +10001838: 4283 cmp r3, r0 +1000183a: d00b beq.n 10001854 +1000183c: 0019 movs r1, r3 +1000183e: 0020 movs r0, r4 +10001840: f7ff f90a bl 10000a58 +10001844: 2101 movs r1, #1 +10001846: 0020 movs r0, r4 +10001848: f7ff f8f6 bl 10000a38 +1000184c: 2301 movs r3, #1 +1000184e: 40a3 lsls r3, r4 +10001850: 4a11 ldr r2, [pc, #68] @ (10001898 ) +10001852: 6013 str r3, [r2, #0] +10001854: 4b11 ldr r3, [pc, #68] @ (1000189c ) +10001856: 00a4 lsls r4, r4, #2 +10001858: 50e6 str r6, [r4, r3] +1000185a: f3bf 8f5f dmb sy +1000185e: 4b0c ldr r3, [pc, #48] @ (10001890 ) +10001860: 2200 movs r2, #0 +10001862: 601a str r2, [r3, #0] +10001864: f385 8810 msr PRIMASK, r5 +10001868: bd70 pop {r4, r5, r6, pc} +1000186a: 4b0c ldr r3, [pc, #48] @ (1000189c ) +1000186c: 00a2 lsls r2, r4, #2 +1000186e: 2100 movs r1, #0 +10001870: 50d1 str r1, [r2, r3] +10001872: 2201 movs r2, #1 +10001874: 40a2 lsls r2, r4 +10001876: 490a ldr r1, [pc, #40] @ (100018a0 ) +10001878: 780b ldrb r3, [r1, #0] +1000187a: 4393 bics r3, r2 +1000187c: 700b strb r3, [r1, #0] +1000187e: 4905 ldr r1, [pc, #20] @ (10001894 ) +10001880: 0020 movs r0, r4 +10001882: f7ff f913 bl 10000aac +10001886: 2100 movs r1, #0 +10001888: 0020 movs r0, r4 +1000188a: f7ff f8d5 bl 10000a38 +1000188e: e7e4 b.n 1000185a +10001890: d0000128 .word 0xd0000128 +10001894: 10001731 .word 0x10001731 +10001898: 40056038 .word 0x40056038 +1000189c: 200004a4 .word 0x200004a4 +100018a0: 2000077f .word 0x2000077f -10001d1c <_out_rev>: -10001d1c: b5f0 push {r4, r5, r6, r7, lr} -10001d1e: 46de mov lr, fp -10001d20: 4657 mov r7, sl -10001d22: 464e mov r6, r9 -10001d24: 4645 mov r5, r8 -10001d26: b5e0 push {r5, r6, r7, lr} -10001d28: b083 sub sp, #12 -10001d2a: 4693 mov fp, r2 -10001d2c: 001f movs r7, r3 -10001d2e: 9b0c ldr r3, [sp, #48] @ 0x30 -10001d30: 469a mov sl, r3 -10001d32: 9c0d ldr r4, [sp, #52] @ 0x34 -10001d34: 9b0e ldr r3, [sp, #56] @ 0x38 -10001d36: 4699 mov r9, r3 -10001d38: 9b0f ldr r3, [sp, #60] @ 0x3c -10001d3a: 079b lsls r3, r3, #30 -10001d3c: d003 beq.n 10001d46 <_out_rev+0x2a> -10001d3e: 46b8 mov r8, r7 -10001d40: 000f movs r7, r1 -10001d42: 0006 movs r6, r0 -10001d44: e022 b.n 10001d8c <_out_rev+0x70> -10001d46: 9201 str r2, [sp, #4] -10001d48: 46a3 mov fp, r4 -10001d4a: 4688 mov r8, r1 -10001d4c: 464e mov r6, r9 -10001d4e: 46b9 mov r9, r7 -10001d50: 0007 movs r7, r0 -10001d52: 42b4 cmp r4, r6 -10001d54: d207 bcs.n 10001d66 <_out_rev+0x4a> -10001d56: 1c55 adds r5, r2, #1 -10001d58: 464b mov r3, r9 -10001d5a: 4641 mov r1, r8 -10001d5c: 2020 movs r0, #32 -10001d5e: 47b8 blx r7 -10001d60: 3401 adds r4, #1 -10001d62: 002a movs r2, r5 -10001d64: e7f5 b.n 10001d52 <_out_rev+0x36> -10001d66: 003d movs r5, r7 -10001d68: 464f mov r7, r9 -10001d6a: 465c mov r4, fp -10001d6c: 9b01 ldr r3, [sp, #4] -10001d6e: 469b mov fp, r3 -10001d70: 46b1 mov r9, r6 -10001d72: 4646 mov r6, r8 -10001d74: 46b8 mov r8, r7 -10001d76: 0037 movs r7, r6 -10001d78: 002e movs r6, r5 -10001d7a: e007 b.n 10001d8c <_out_rev+0x70> -10001d7c: 3c01 subs r4, #1 -10001d7e: 1c55 adds r5, r2, #1 -10001d80: 4653 mov r3, sl -10001d82: 5d18 ldrb r0, [r3, r4] -10001d84: 4643 mov r3, r8 -10001d86: 0039 movs r1, r7 -10001d88: 47b0 blx r6 -10001d8a: 002a movs r2, r5 -10001d8c: 2c00 cmp r4, #0 -10001d8e: d1f5 bne.n 10001d7c <_out_rev+0x60> -10001d90: 0035 movs r5, r6 -10001d92: 003e movs r6, r7 -10001d94: 4647 mov r7, r8 -10001d96: 9b0f ldr r3, [sp, #60] @ 0x3c -10001d98: 079b lsls r3, r3, #30 -10001d9a: d407 bmi.n 10001dac <_out_rev+0x90> -10001d9c: 0010 movs r0, r2 -10001d9e: b003 add sp, #12 -10001da0: bcf0 pop {r4, r5, r6, r7} -10001da2: 46bb mov fp, r7 -10001da4: 46b2 mov sl, r6 -10001da6: 46a9 mov r9, r5 -10001da8: 46a0 mov r8, r4 -10001daa: bdf0 pop {r4, r5, r6, r7, pc} -10001dac: 46b0 mov r8, r6 -10001dae: 464e mov r6, r9 -10001db0: 46b9 mov r9, r7 -10001db2: 002f movs r7, r5 -10001db4: 465d mov r5, fp -10001db6: 1b53 subs r3, r2, r5 -10001db8: 42b3 cmp r3, r6 -10001dba: d2ef bcs.n 10001d9c <_out_rev+0x80> -10001dbc: 1c54 adds r4, r2, #1 -10001dbe: 464b mov r3, r9 -10001dc0: 4641 mov r1, r8 -10001dc2: 2020 movs r0, #32 -10001dc4: 47b8 blx r7 -10001dc6: 0022 movs r2, r4 -10001dc8: e7f5 b.n 10001db6 <_out_rev+0x9a> +100018a4 : +100018a4: b5f0 push {r4, r5, r6, r7, lr} +100018a6: 46de mov lr, fp +100018a8: b500 push {lr} +100018aa: b084 sub sp, #16 +100018ac: 0004 movs r4, r0 +100018ae: 0015 movs r5, r2 +100018b0: 9201 str r2, [sp, #4] +100018b2: 001e movs r6, r3 +100018b4: 9302 str r3, [sp, #8] +100018b6: f7ff ff8d bl 100017d4 +100018ba: 9503 str r5, [sp, #12] +100018bc: 428e cmp r6, r1 +100018be: d802 bhi.n 100018c6 +100018c0: d14e bne.n 10001960 +100018c2: 4285 cmp r5, r0 +100018c4: d94c bls.n 10001960 +100018c6: f3ef 8b10 mrs fp, PRIMASK +100018ca: b672 cpsid i +100018cc: 4b27 ldr r3, [pc, #156] @ (1000196c ) +100018ce: 681b ldr r3, [r3, #0] +100018d0: 2b00 cmp r3, #0 +100018d2: d0fb beq.n 100018cc +100018d4: f3bf 8f5f dmb sy +100018d8: 4a25 ldr r2, [pc, #148] @ (10001970 ) +100018da: 7817 ldrb r7, [r2, #0] +100018dc: 2501 movs r5, #1 +100018de: 40a5 lsls r5, r4 +100018e0: b2eb uxtb r3, r5 +100018e2: 433b orrs r3, r7 +100018e4: 7013 strb r3, [r2, #0] +100018e6: 4b23 ldr r3, [pc, #140] @ (10001974 ) +100018e8: 635d str r5, [r3, #52] @ 0x34 +100018ea: 1d22 adds r2, r4, #4 +100018ec: 0092 lsls r2, r2, #2 +100018ee: 9901 ldr r1, [sp, #4] +100018f0: 50d1 str r1, [r2, r3] +100018f2: 4a21 ldr r2, [pc, #132] @ (10001978 ) +100018f4: 00a1 lsls r1, r4, #2 +100018f6: 9802 ldr r0, [sp, #8] +100018f8: 5088 str r0, [r1, r2] +100018fa: 6a1b ldr r3, [r3, #32] +100018fc: 422b tst r3, r5 +100018fe: d112 bne.n 10001926 +10001900: 4b1c ldr r3, [pc, #112] @ (10001974 ) +10001902: 6c1b ldr r3, [r3, #64] @ 0x40 +10001904: 422b tst r3, r5 +10001906: d008 beq.n 1000191a +10001908: 2000 movs r0, #0 +1000190a: f3bf 8f5f dmb sy +1000190e: 4b17 ldr r3, [pc, #92] @ (1000196c ) +10001910: 2200 movs r2, #0 +10001912: 601a str r2, [r3, #0] +10001914: f38b 8810 msr PRIMASK, fp +10001918: e023 b.n 10001962 +1000191a: 4b18 ldr r3, [pc, #96] @ (1000197c ) +1000191c: 4a18 ldr r2, [pc, #96] @ (10001980 ) +1000191e: 4819 ldr r0, [pc, #100] @ (10001984 ) +10001920: 21c5 movs r1, #197 @ 0xc5 +10001922: f000 fc0b bl 1000213c <__assert_func> +10001926: f7ff ff55 bl 100017d4 +1000192a: 428e cmp r6, r1 +1000192c: d814 bhi.n 10001958 +1000192e: d102 bne.n 10001936 +10001930: 9b03 ldr r3, [sp, #12] +10001932: 4283 cmp r3, r0 +10001934: d810 bhi.n 10001958 +10001936: 4b0e ldr r3, [pc, #56] @ (10001970 ) +10001938: 781b ldrb r3, [r3, #0] +1000193a: 42bb cmp r3, r7 +1000193c: d00e beq.n 1000195c +1000193e: 4b0d ldr r3, [pc, #52] @ (10001974 ) +10001940: 621d str r5, [r3, #32] +10001942: 635d str r5, [r3, #52] @ 0x34 +10001944: 221f movs r2, #31 +10001946: 4022 ands r2, r4 +10001948: 2301 movs r3, #1 +1000194a: 4093 lsls r3, r2 +1000194c: 4a0e ldr r2, [pc, #56] @ (10001988 ) +1000194e: 6013 str r3, [r2, #0] +10001950: 4b07 ldr r3, [pc, #28] @ (10001970 ) +10001952: 701f strb r7, [r3, #0] +10001954: 2001 movs r0, #1 +10001956: e7d8 b.n 1000190a +10001958: 2000 movs r0, #0 +1000195a: e7d6 b.n 1000190a +1000195c: 2001 movs r0, #1 +1000195e: e7d4 b.n 1000190a +10001960: 2001 movs r0, #1 +10001962: b004 add sp, #16 +10001964: bc80 pop {r7} +10001966: 46bb mov fp, r7 +10001968: bdf0 pop {r4, r5, r6, r7, pc} +1000196a: 46c0 nop @ (mov r8, r8) +1000196c: d0000128 .word 0xd0000128 +10001970: 2000077f .word 0x2000077f +10001974: 40054000 .word 0x40054000 +10001978: 20000744 .word 0x20000744 +1000197c: 100050f4 .word 0x100050f4 +10001980: 10005164 .word 0x10005164 +10001984: 10005118 .word 0x10005118 +10001988: e000e280 .word 0xe000e280 -10001dca <_ntoa_format>: -10001dca: b5f0 push {r4, r5, r6, r7, lr} -10001dcc: 46ce mov lr, r9 -10001dce: 4647 mov r7, r8 -10001dd0: b580 push {r7, lr} -10001dd2: b085 sub sp, #20 -10001dd4: 4694 mov ip, r2 -10001dd6: 4698 mov r8, r3 -10001dd8: 9d0c ldr r5, [sp, #48] @ 0x30 -10001dda: 9c0d ldr r4, [sp, #52] @ 0x34 -10001ddc: ab0e add r3, sp, #56 @ 0x38 -10001dde: 781b ldrb r3, [r3, #0] -10001de0: 4699 mov r9, r3 -10001de2: 9a10 ldr r2, [sp, #64] @ 0x40 -10001de4: 9b11 ldr r3, [sp, #68] @ 0x44 -10001de6: 9e12 ldr r6, [sp, #72] @ 0x48 -10001de8: 07b7 lsls r7, r6, #30 -10001dea: d41c bmi.n 10001e26 <_ntoa_format+0x5c> -10001dec: 2b00 cmp r3, #0 -10001dee: d00c beq.n 10001e0a <_ntoa_format+0x40> -10001df0: 07f7 lsls r7, r6, #31 -10001df2: d50a bpl.n 10001e0a <_ntoa_format+0x40> -10001df4: 464f mov r7, r9 -10001df6: 2f00 cmp r7, #0 -10001df8: d102 bne.n 10001e00 <_ntoa_format+0x36> -10001dfa: 370c adds r7, #12 -10001dfc: 4237 tst r7, r6 -10001dfe: d004 beq.n 10001e0a <_ntoa_format+0x40> -10001e00: 3b01 subs r3, #1 -10001e02: e002 b.n 10001e0a <_ntoa_format+0x40> -10001e04: 2730 movs r7, #48 @ 0x30 -10001e06: 552f strb r7, [r5, r4] -10001e08: 3401 adds r4, #1 -10001e0a: 4294 cmp r4, r2 -10001e0c: d201 bcs.n 10001e12 <_ntoa_format+0x48> -10001e0e: 2c1f cmp r4, #31 -10001e10: d9f8 bls.n 10001e04 <_ntoa_format+0x3a> -10001e12: 07f7 lsls r7, r6, #31 -10001e14: d507 bpl.n 10001e26 <_ntoa_format+0x5c> -10001e16: 429c cmp r4, r3 -10001e18: d205 bcs.n 10001e26 <_ntoa_format+0x5c> -10001e1a: 2c1f cmp r4, #31 -10001e1c: d803 bhi.n 10001e26 <_ntoa_format+0x5c> -10001e1e: 2730 movs r7, #48 @ 0x30 -10001e20: 552f strb r7, [r5, r4] -10001e22: 3401 adds r4, #1 -10001e24: e7f5 b.n 10001e12 <_ntoa_format+0x48> -10001e26: 06f7 lsls r7, r6, #27 -10001e28: d512 bpl.n 10001e50 <_ntoa_format+0x86> -10001e2a: 0577 lsls r7, r6, #21 -10001e2c: d405 bmi.n 10001e3a <_ntoa_format+0x70> -10001e2e: 2c00 cmp r4, #0 -10001e30: d003 beq.n 10001e3a <_ntoa_format+0x70> -10001e32: 4294 cmp r4, r2 -10001e34: d021 beq.n 10001e7a <_ntoa_format+0xb0> -10001e36: 429c cmp r4, r3 -10001e38: d01f beq.n 10001e7a <_ntoa_format+0xb0> -10001e3a: 9a0f ldr r2, [sp, #60] @ 0x3c -10001e3c: 2a10 cmp r2, #16 -10001e3e: d032 beq.n 10001ea6 <_ntoa_format+0xdc> -10001e40: 9a0f ldr r2, [sp, #60] @ 0x3c -10001e42: 2a02 cmp r2, #2 -10001e44: d037 beq.n 10001eb6 <_ntoa_format+0xec> -10001e46: 2c1f cmp r4, #31 -10001e48: d80a bhi.n 10001e60 <_ntoa_format+0x96> -10001e4a: 2230 movs r2, #48 @ 0x30 -10001e4c: 552a strb r2, [r5, r4] -10001e4e: 3401 adds r4, #1 -10001e50: 2c1f cmp r4, #31 -10001e52: d805 bhi.n 10001e60 <_ntoa_format+0x96> -10001e54: 464a mov r2, r9 -10001e56: 2a00 cmp r2, #0 -10001e58: d033 beq.n 10001ec2 <_ntoa_format+0xf8> -10001e5a: 222d movs r2, #45 @ 0x2d -10001e5c: 552a strb r2, [r5, r4] -10001e5e: 3401 adds r4, #1 -10001e60: 9603 str r6, [sp, #12] -10001e62: 9302 str r3, [sp, #8] -10001e64: 9401 str r4, [sp, #4] -10001e66: 9500 str r5, [sp, #0] -10001e68: 4643 mov r3, r8 -10001e6a: 4662 mov r2, ip -10001e6c: f7ff ff56 bl 10001d1c <_out_rev> -10001e70: b005 add sp, #20 -10001e72: bcc0 pop {r6, r7} -10001e74: 46b9 mov r9, r7 -10001e76: 46b0 mov r8, r6 -10001e78: bdf0 pop {r4, r5, r6, r7, pc} -10001e7a: 1e62 subs r2, r4, #1 -10001e7c: 2c01 cmp r4, #1 -10001e7e: d010 beq.n 10001ea2 <_ntoa_format+0xd8> -10001e80: 9f0f ldr r7, [sp, #60] @ 0x3c -10001e82: 2f10 cmp r7, #16 -10001e84: d00b beq.n 10001e9e <_ntoa_format+0xd4> -10001e86: 0014 movs r4, r2 -10001e88: 9a0f ldr r2, [sp, #60] @ 0x3c -10001e8a: 2a10 cmp r2, #16 -10001e8c: d1d8 bne.n 10001e40 <_ntoa_format+0x76> -10001e8e: 06b2 lsls r2, r6, #26 -10001e90: d5d6 bpl.n 10001e40 <_ntoa_format+0x76> -10001e92: 2c1f cmp r4, #31 -10001e94: d8d4 bhi.n 10001e40 <_ntoa_format+0x76> -10001e96: 2258 movs r2, #88 @ 0x58 -10001e98: 552a strb r2, [r5, r4] -10001e9a: 3401 adds r4, #1 -10001e9c: e7d3 b.n 10001e46 <_ntoa_format+0x7c> -10001e9e: 3c02 subs r4, #2 -10001ea0: e7cb b.n 10001e3a <_ntoa_format+0x70> -10001ea2: 0014 movs r4, r2 -10001ea4: e7c9 b.n 10001e3a <_ntoa_format+0x70> -10001ea6: 06b2 lsls r2, r6, #26 -10001ea8: d4ee bmi.n 10001e88 <_ntoa_format+0xbe> -10001eaa: 2c1f cmp r4, #31 -10001eac: d8ec bhi.n 10001e88 <_ntoa_format+0xbe> -10001eae: 2278 movs r2, #120 @ 0x78 -10001eb0: 552a strb r2, [r5, r4] -10001eb2: 3401 adds r4, #1 -10001eb4: e7c7 b.n 10001e46 <_ntoa_format+0x7c> -10001eb6: 2c1f cmp r4, #31 -10001eb8: d8d2 bhi.n 10001e60 <_ntoa_format+0x96> -10001eba: 3260 adds r2, #96 @ 0x60 -10001ebc: 552a strb r2, [r5, r4] -10001ebe: 3401 adds r4, #1 -10001ec0: e7c1 b.n 10001e46 <_ntoa_format+0x7c> -10001ec2: 0772 lsls r2, r6, #29 -10001ec4: d503 bpl.n 10001ece <_ntoa_format+0x104> -10001ec6: 222b movs r2, #43 @ 0x2b -10001ec8: 552a strb r2, [r5, r4] -10001eca: 3401 adds r4, #1 -10001ecc: e7c8 b.n 10001e60 <_ntoa_format+0x96> -10001ece: 0732 lsls r2, r6, #28 -10001ed0: d5c6 bpl.n 10001e60 <_ntoa_format+0x96> -10001ed2: 2220 movs r2, #32 -10001ed4: 552a strb r2, [r5, r4] -10001ed6: 3401 adds r4, #1 -10001ed8: e7c2 b.n 10001e60 <_ntoa_format+0x96> +1000198c : +1000198c: f3ef 8c10 mrs ip, PRIMASK +10001990: b672 cpsid i +10001992: 4b0b ldr r3, [pc, #44] @ (100019c0 ) +10001994: 681b ldr r3, [r3, #0] +10001996: 2b00 cmp r3, #0 +10001998: d0fb beq.n 10001992 +1000199a: f3bf 8f5f dmb sy +1000199e: 2301 movs r3, #1 +100019a0: 4083 lsls r3, r0 +100019a2: 4a08 ldr r2, [pc, #32] @ (100019c4 ) +100019a4: 6213 str r3, [r2, #32] +100019a6: 4908 ldr r1, [pc, #32] @ (100019c8 ) +100019a8: 780a ldrb r2, [r1, #0] +100019aa: 439a bics r2, r3 +100019ac: 700a strb r2, [r1, #0] +100019ae: f3bf 8f5f dmb sy +100019b2: 4b03 ldr r3, [pc, #12] @ (100019c0 ) +100019b4: 2200 movs r2, #0 +100019b6: 601a str r2, [r3, #0] +100019b8: f38c 8810 msr PRIMASK, ip +100019bc: 4770 bx lr +100019be: 46c0 nop @ (mov r8, r8) +100019c0: d0000128 .word 0xd0000128 +100019c4: 40054000 .word 0x40054000 +100019c8: 2000077f .word 0x2000077f -10001eda <_ntoa_long>: -10001eda: b5f0 push {r4, r5, r6, r7, lr} -10001edc: 46de mov lr, fp -10001ede: 4657 mov r7, sl -10001ee0: 464e mov r6, r9 -10001ee2: 4645 mov r5, r8 -10001ee4: b5e0 push {r5, r6, r7, lr} -10001ee6: b093 sub sp, #76 @ 0x4c -10001ee8: 4681 mov r9, r0 -10001eea: 468a mov sl, r1 -10001eec: 9208 str r2, [sp, #32] -10001eee: 9309 str r3, [sp, #36] @ 0x24 -10001ef0: ab1c add r3, sp, #112 @ 0x70 -10001ef2: cb10 ldmia r3!, {r4} -10001ef4: 781b ldrb r3, [r3, #0] -10001ef6: 469b mov fp, r3 -10001ef8: 9d1e ldr r5, [sp, #120] @ 0x78 -10001efa: 9b21 ldr r3, [sp, #132] @ 0x84 -10001efc: 4698 mov r8, r3 -10001efe: 2c00 cmp r4, #0 -10001f00: d103 bne.n 10001f0a <_ntoa_long+0x30> -10001f02: 2310 movs r3, #16 -10001f04: 4642 mov r2, r8 -10001f06: 439a bics r2, r3 -10001f08: 4690 mov r8, r2 -10001f0a: 2380 movs r3, #128 @ 0x80 -10001f0c: 00db lsls r3, r3, #3 -10001f0e: 4646 mov r6, r8 -10001f10: 401e ands r6, r3 -10001f12: 4642 mov r2, r8 -10001f14: 421a tst r2, r3 -10001f16: d012 beq.n 10001f3e <_ntoa_long+0x64> -10001f18: 2c00 cmp r4, #0 -10001f1a: d022 beq.n 10001f62 <_ntoa_long+0x88> -10001f1c: 2600 movs r6, #0 -10001f1e: e00e b.n 10001f3e <_ntoa_long+0x64> -10001f20: 3330 adds r3, #48 @ 0x30 -10001f22: b2d9 uxtb r1, r3 -10001f24: 1c77 adds r7, r6, #1 -10001f26: ab0a add r3, sp, #40 @ 0x28 -10001f28: 5599 strb r1, [r3, r6] -10001f2a: 0029 movs r1, r5 -10001f2c: 0020 movs r0, r4 -10001f2e: f001 f813 bl 10002f58 <__wrap___aeabi_uidiv> -10001f32: 42ac cmp r4, r5 -10001f34: d316 bcc.n 10001f64 <_ntoa_long+0x8a> -10001f36: 2f1f cmp r7, #31 -10001f38: d814 bhi.n 10001f64 <_ntoa_long+0x8a> -10001f3a: 003e movs r6, r7 -10001f3c: 0004 movs r4, r0 -10001f3e: 0029 movs r1, r5 -10001f40: 0020 movs r0, r4 -10001f42: f001 f809 bl 10002f58 <__wrap___aeabi_uidiv> -10001f46: b2cb uxtb r3, r1 -10001f48: 2b09 cmp r3, #9 -10001f4a: d9e9 bls.n 10001f20 <_ntoa_long+0x46> -10001f4c: 4642 mov r2, r8 -10001f4e: 0692 lsls r2, r2, #26 -10001f50: d505 bpl.n 10001f5e <_ntoa_long+0x84> -10001f52: 2141 movs r1, #65 @ 0x41 -10001f54: 18c9 adds r1, r1, r3 -10001f56: b2c9 uxtb r1, r1 -10001f58: 390a subs r1, #10 -10001f5a: b2c9 uxtb r1, r1 -10001f5c: e7e2 b.n 10001f24 <_ntoa_long+0x4a> -10001f5e: 2161 movs r1, #97 @ 0x61 -10001f60: e7f8 b.n 10001f54 <_ntoa_long+0x7a> -10001f62: 0027 movs r7, r4 -10001f64: 4643 mov r3, r8 -10001f66: 9306 str r3, [sp, #24] -10001f68: 9b20 ldr r3, [sp, #128] @ 0x80 -10001f6a: 9305 str r3, [sp, #20] -10001f6c: 9b1f ldr r3, [sp, #124] @ 0x7c -10001f6e: 9304 str r3, [sp, #16] -10001f70: 9503 str r5, [sp, #12] -10001f72: 465b mov r3, fp -10001f74: 9302 str r3, [sp, #8] -10001f76: 9701 str r7, [sp, #4] -10001f78: ab0a add r3, sp, #40 @ 0x28 -10001f7a: 9300 str r3, [sp, #0] -10001f7c: 9b09 ldr r3, [sp, #36] @ 0x24 -10001f7e: 9a08 ldr r2, [sp, #32] -10001f80: 4651 mov r1, sl -10001f82: 4648 mov r0, r9 -10001f84: f7ff ff21 bl 10001dca <_ntoa_format> -10001f88: b013 add sp, #76 @ 0x4c -10001f8a: bcf0 pop {r4, r5, r6, r7} -10001f8c: 46bb mov fp, r7 -10001f8e: 46b2 mov sl, r6 -10001f90: 46a9 mov r9, r5 -10001f92: 46a0 mov r8, r4 -10001f94: bdf0 pop {r4, r5, r6, r7, pc} +100019cc : +100019cc: b510 push {r4, lr} +100019ce: 2900 cmp r1, #0 +100019d0: d008 beq.n 100019e4 +100019d2: 7b03 ldrb r3, [r0, #12] +100019d4: 428b cmp r3, r1 +100019d6: d305 bcc.n 100019e4 +100019d8: 6800 ldr r0, [r0, #0] +100019da: 004b lsls r3, r1, #1 +100019dc: 185b adds r3, r3, r1 +100019de: 3b03 subs r3, #3 +100019e0: 18c0 adds r0, r0, r3 +100019e2: bd10 pop {r4, pc} +100019e4: 4b02 ldr r3, [pc, #8] @ (100019f0 ) +100019e6: 4a03 ldr r2, [pc, #12] @ (100019f4 ) +100019e8: 4803 ldr r0, [pc, #12] @ (100019f8 ) +100019ea: 2168 movs r1, #104 @ 0x68 +100019ec: f000 fba6 bl 1000213c <__assert_func> +100019f0: 10004df4 .word 0x10004df4 +100019f4: 10005278 .word 0x10005278 +100019f8: 10004e10 .word 0x10004e10 -10001f96 <_ntoa_long_long>: -10001f96: b5f0 push {r4, r5, r6, r7, lr} -10001f98: 46de mov lr, fp -10001f9a: 4657 mov r7, sl -10001f9c: 464e mov r6, r9 -10001f9e: 4645 mov r5, r8 -10001fa0: b5e0 push {r5, r6, r7, lr} -10001fa2: b097 sub sp, #92 @ 0x5c -10001fa4: 900a str r0, [sp, #40] @ 0x28 -10001fa6: 910b str r1, [sp, #44] @ 0x2c -10001fa8: 920c str r2, [sp, #48] @ 0x30 -10001faa: 469a mov sl, r3 -10001fac: 9b20 ldr r3, [sp, #128] @ 0x80 -10001fae: 4699 mov r9, r3 -10001fb0: 9f21 ldr r7, [sp, #132] @ 0x84 -10001fb2: aa22 add r2, sp, #136 @ 0x88 -10001fb4: 7813 ldrb r3, [r2, #0] -10001fb6: 469b mov fp, r3 -10001fb8: 9b24 ldr r3, [sp, #144] @ 0x90 -10001fba: 9309 str r3, [sp, #36] @ 0x24 -10001fbc: 9c25 ldr r4, [sp, #148] @ 0x94 -10001fbe: 9b28 ldr r3, [sp, #160] @ 0xa0 -10001fc0: 4698 mov r8, r3 -10001fc2: 464a mov r2, r9 -10001fc4: 433a orrs r2, r7 -10001fc6: d102 bne.n 10001fce <_ntoa_long_long+0x38> -10001fc8: 3210 adds r2, #16 -10001fca: 4393 bics r3, r2 -10001fcc: 4698 mov r8, r3 -10001fce: 2280 movs r2, #128 @ 0x80 -10001fd0: 00d2 lsls r2, r2, #3 -10001fd2: 4645 mov r5, r8 -10001fd4: 4015 ands r5, r2 -10001fd6: 4643 mov r3, r8 -10001fd8: 4213 tst r3, r2 -10001fda: d00a beq.n 10001ff2 <_ntoa_long_long+0x5c> -10001fdc: 464a mov r2, r9 -10001fde: 433a orrs r2, r7 -10001fe0: d041 beq.n 10002066 <_ntoa_long_long+0xd0> -10001fe2: 2500 movs r5, #0 -10001fe4: 002e movs r6, r5 -10001fe6: 4653 mov r3, sl -10001fe8: 930d str r3, [sp, #52] @ 0x34 -10001fea: 464d mov r5, r9 -10001fec: 9b09 ldr r3, [sp, #36] @ 0x24 -10001fee: 469a mov sl, r3 -10001ff0: e01b b.n 1000202a <_ntoa_long_long+0x94> -10001ff2: 002e movs r6, r5 -10001ff4: 4653 mov r3, sl -10001ff6: 930d str r3, [sp, #52] @ 0x34 -10001ff8: 464d mov r5, r9 -10001ffa: 9b09 ldr r3, [sp, #36] @ 0x24 -10001ffc: 469a mov sl, r3 -10001ffe: e014 b.n 1000202a <_ntoa_long_long+0x94> -10002000: 3330 adds r3, #48 @ 0x30 -10002002: b2da uxtb r2, r3 -10002004: 1c73 adds r3, r6, #1 -10002006: 4699 mov r9, r3 -10002008: ab0e add r3, sp, #56 @ 0x38 -1000200a: 559a strb r2, [r3, r6] -1000200c: 4652 mov r2, sl -1000200e: 0023 movs r3, r4 -10002010: 0028 movs r0, r5 -10002012: 0039 movs r1, r7 -10002014: f000 ffde bl 10002fd4 <__wrap___aeabi_uldivmod> -10002018: 42bc cmp r4, r7 -1000201a: d826 bhi.n 1000206a <_ntoa_long_long+0xd4> -1000201c: d019 beq.n 10002052 <_ntoa_long_long+0xbc> -1000201e: 464b mov r3, r9 -10002020: 2b1f cmp r3, #31 -10002022: d81c bhi.n 1000205e <_ntoa_long_long+0xc8> -10002024: 464e mov r6, r9 -10002026: 0005 movs r5, r0 -10002028: 000f movs r7, r1 -1000202a: 4652 mov r2, sl -1000202c: 0023 movs r3, r4 -1000202e: 0028 movs r0, r5 -10002030: 0039 movs r1, r7 -10002032: f000 ffcf bl 10002fd4 <__wrap___aeabi_uldivmod> -10002036: b2d3 uxtb r3, r2 -10002038: 2b09 cmp r3, #9 -1000203a: d9e1 bls.n 10002000 <_ntoa_long_long+0x6a> -1000203c: 4642 mov r2, r8 -1000203e: 0692 lsls r2, r2, #26 -10002040: d505 bpl.n 1000204e <_ntoa_long_long+0xb8> -10002042: 2241 movs r2, #65 @ 0x41 -10002044: 18d2 adds r2, r2, r3 -10002046: b2d2 uxtb r2, r2 -10002048: 3a0a subs r2, #10 -1000204a: b2d2 uxtb r2, r2 -1000204c: e7da b.n 10002004 <_ntoa_long_long+0x6e> -1000204e: 2261 movs r2, #97 @ 0x61 -10002050: e7f8 b.n 10002044 <_ntoa_long_long+0xae> -10002052: 45aa cmp sl, r5 -10002054: d9e3 bls.n 1000201e <_ntoa_long_long+0x88> -10002056: 464e mov r6, r9 -10002058: 9b0d ldr r3, [sp, #52] @ 0x34 -1000205a: 469a mov sl, r3 -1000205c: e008 b.n 10002070 <_ntoa_long_long+0xda> -1000205e: 464e mov r6, r9 -10002060: 9b0d ldr r3, [sp, #52] @ 0x34 -10002062: 469a mov sl, r3 -10002064: e004 b.n 10002070 <_ntoa_long_long+0xda> -10002066: 2600 movs r6, #0 -10002068: e002 b.n 10002070 <_ntoa_long_long+0xda> -1000206a: 464e mov r6, r9 -1000206c: 9b0d ldr r3, [sp, #52] @ 0x34 -1000206e: 469a mov sl, r3 -10002070: 4643 mov r3, r8 -10002072: 9306 str r3, [sp, #24] -10002074: 9b27 ldr r3, [sp, #156] @ 0x9c -10002076: 9305 str r3, [sp, #20] -10002078: 9b26 ldr r3, [sp, #152] @ 0x98 -1000207a: 9304 str r3, [sp, #16] -1000207c: 9b09 ldr r3, [sp, #36] @ 0x24 -1000207e: 9303 str r3, [sp, #12] -10002080: 465b mov r3, fp -10002082: 9302 str r3, [sp, #8] -10002084: 9601 str r6, [sp, #4] -10002086: ab0e add r3, sp, #56 @ 0x38 -10002088: 9300 str r3, [sp, #0] -1000208a: 4653 mov r3, sl -1000208c: 9a0c ldr r2, [sp, #48] @ 0x30 -1000208e: 990b ldr r1, [sp, #44] @ 0x2c -10002090: 980a ldr r0, [sp, #40] @ 0x28 -10002092: f7ff fe9a bl 10001dca <_ntoa_format> -10002096: b017 add sp, #92 @ 0x5c -10002098: bcf0 pop {r4, r5, r6, r7} -1000209a: 46bb mov fp, r7 -1000209c: 46b2 mov sl, r6 -1000209e: 46a9 mov r9, r5 -100020a0: 46a0 mov r8, r4 -100020a2: bdf0 pop {r4, r5, r6, r7, pc} +100019fc : +100019fc: b5f8 push {r3, r4, r5, r6, r7, lr} +100019fe: 0006 movs r6, r0 +10001a00: 000c movs r4, r1 +10001a02: 0015 movs r5, r2 +10001a04: f7ff ffe2 bl 100019cc +10001a08: 0007 movs r7, r0 +10001a0a: 2c00 cmp r4, #0 +10001a0c: d00d beq.n 10001a2a +10001a0e: 2d00 cmp r5, #0 +10001a10: d011 beq.n 10001a36 +10001a12: 42ac cmp r4, r5 +10001a14: d015 beq.n 10001a42 +10001a16: 0029 movs r1, r5 +10001a18: 0030 movs r0, r6 +10001a1a: f7ff ffd7 bl 100019cc +10001a1e: 7084 strb r4, [r0, #2] +10001a20: 783b ldrb r3, [r7, #0] +10001a22: 2b00 cmp r3, #0 +10001a24: d113 bne.n 10001a4e +10001a26: 703d strb r5, [r7, #0] +10001a28: bdf8 pop {r3, r4, r5, r6, r7, pc} +10001a2a: 4b0a ldr r3, [pc, #40] @ (10001a54 ) +10001a2c: 4a0a ldr r2, [pc, #40] @ (10001a58 ) +10001a2e: 480b ldr r0, [pc, #44] @ (10001a5c ) +10001a30: 216f movs r1, #111 @ 0x6f +10001a32: f000 fb83 bl 1000213c <__assert_func> +10001a36: 4b0a ldr r3, [pc, #40] @ (10001a60 ) +10001a38: 4a07 ldr r2, [pc, #28] @ (10001a58 ) +10001a3a: 4808 ldr r0, [pc, #32] @ (10001a5c ) +10001a3c: 2170 movs r1, #112 @ 0x70 +10001a3e: f000 fb7d bl 1000213c <__assert_func> +10001a42: 4b08 ldr r3, [pc, #32] @ (10001a64 ) +10001a44: 4a04 ldr r2, [pc, #16] @ (10001a58 ) +10001a46: 4805 ldr r0, [pc, #20] @ (10001a5c ) +10001a48: 2171 movs r1, #113 @ 0x71 +10001a4a: f000 fb77 bl 1000213c <__assert_func> +10001a4e: 7043 strb r3, [r0, #1] +10001a50: 703d strb r5, [r7, #0] +10001a52: e7e9 b.n 10001a28 +10001a54: 10004e64 .word 0x10004e64 +10001a58: 10005264 .word 0x10005264 +10001a5c: 10004e10 .word 0x10004e10 +10001a60: 10004e70 .word 0x10004e70 +10001a64: 10004e7c .word 0x10004e7c -100020a4 <_etoa>: -100020a4: b5f0 push {r4, r5, r6, r7, lr} -100020a6: 46de mov lr, fp -100020a8: 4657 mov r7, sl -100020aa: 464e mov r6, r9 -100020ac: 4645 mov r5, r8 -100020ae: b5e0 push {r5, r6, r7, lr} -100020b0: b091 sub sp, #68 @ 0x44 -100020b2: 4680 mov r8, r0 -100020b4: 4689 mov r9, r1 -100020b6: 920c str r2, [sp, #48] @ 0x30 -100020b8: 469a mov sl, r3 -100020ba: 9c1a ldr r4, [sp, #104] @ 0x68 -100020bc: 9d1b ldr r5, [sp, #108] @ 0x6c -100020be: 0022 movs r2, r4 -100020c0: 002b movs r3, r5 -100020c2: 0020 movs r0, r4 -100020c4: 0029 movs r1, r5 -100020c6: f001 fa10 bl 100034ea <__wrap___aeabi_dcmpun> -100020ca: 2800 cmp r0, #0 -100020cc: d000 beq.n 100020d0 <_etoa+0x2c> -100020ce: e0ec b.n 100022aa <_etoa+0x206> -100020d0: 2201 movs r2, #1 -100020d2: 4252 negs r2, r2 -100020d4: 4bd4 ldr r3, [pc, #848] @ (10002428 <_etoa+0x384>) -100020d6: 0020 movs r0, r4 -100020d8: 0029 movs r1, r5 -100020da: f001 fa01 bl 100034e0 <__wrap___aeabi_dcmpgt> -100020de: 2800 cmp r0, #0 -100020e0: d000 beq.n 100020e4 <_etoa+0x40> -100020e2: e0e2 b.n 100022aa <_etoa+0x206> -100020e4: 2201 movs r2, #1 -100020e6: 4252 negs r2, r2 -100020e8: 4bd0 ldr r3, [pc, #832] @ (1000242c <_etoa+0x388>) -100020ea: 0020 movs r0, r4 -100020ec: 0029 movs r1, r5 -100020ee: f001 f9e1 bl 100034b4 <__wrap___aeabi_dcmplt> -100020f2: 2800 cmp r0, #0 -100020f4: d000 beq.n 100020f8 <_etoa+0x54> -100020f6: e0d8 b.n 100022aa <_etoa+0x206> -100020f8: 2200 movs r2, #0 -100020fa: 2300 movs r3, #0 -100020fc: 0020 movs r0, r4 -100020fe: 0029 movs r1, r5 -10002100: f001 f9d8 bl 100034b4 <__wrap___aeabi_dcmplt> -10002104: 2800 cmp r0, #0 -10002106: d000 beq.n 1000210a <_etoa+0x66> -10002108: e0e4 b.n 100022d4 <_etoa+0x230> -1000210a: 9406 str r4, [sp, #24] -1000210c: 9507 str r5, [sp, #28] -1000210e: 2380 movs r3, #128 @ 0x80 -10002110: 00db lsls r3, r3, #3 -10002112: 9a1e ldr r2, [sp, #120] @ 0x78 -10002114: 401a ands r2, r3 -10002116: 920d str r2, [sp, #52] @ 0x34 -10002118: 9a1e ldr r2, [sp, #120] @ 0x78 -1000211a: 421a tst r2, r3 -1000211c: d101 bne.n 10002122 <_etoa+0x7e> -1000211e: 2306 movs r3, #6 -10002120: 931c str r3, [sp, #112] @ 0x70 -10002122: 9806 ldr r0, [sp, #24] -10002124: 9907 ldr r1, [sp, #28] -10002126: 0002 movs r2, r0 -10002128: 000b movs r3, r1 -1000212a: 9208 str r2, [sp, #32] -1000212c: 9309 str r3, [sp, #36] @ 0x24 -1000212e: 0003 movs r3, r0 -10002130: 000a movs r2, r1 -10002132: 4302 orrs r2, r0 -10002134: d100 bne.n 10002138 <_etoa+0x94> -10002136: e0d9 b.n 100022ec <_etoa+0x248> -10002138: 0d08 lsrs r0, r1, #20 -1000213a: 0540 lsls r0, r0, #21 -1000213c: 0d40 lsrs r0, r0, #21 -1000213e: 4ebc ldr r6, [pc, #752] @ (10002430 <_etoa+0x38c>) -10002140: 46b4 mov ip, r6 -10002142: 4460 add r0, ip -10002144: 030a lsls r2, r1, #12 -10002146: 0b12 lsrs r2, r2, #12 -10002148: 001e movs r6, r3 -1000214a: 4bba ldr r3, [pc, #744] @ (10002434 <_etoa+0x390>) -1000214c: 4313 orrs r3, r2 -1000214e: 001f movs r7, r3 -10002150: f001 f9de bl 10003510 <__wrap___aeabi_i2d> -10002154: 4ab8 ldr r2, [pc, #736] @ (10002438 <_etoa+0x394>) -10002156: 4bb9 ldr r3, [pc, #740] @ (1000243c <_etoa+0x398>) -10002158: f001 f969 bl 1000342e <__wrap___aeabi_dmul> -1000215c: 4ab8 ldr r2, [pc, #736] @ (10002440 <_etoa+0x39c>) -1000215e: 4bb9 ldr r3, [pc, #740] @ (10002444 <_etoa+0x3a0>) -10002160: f001 f93e bl 100033e0 <__wrap___aeabi_dadd> -10002164: 9008 str r0, [sp, #32] -10002166: 9109 str r1, [sp, #36] @ 0x24 -10002168: 2200 movs r2, #0 -1000216a: 4bb7 ldr r3, [pc, #732] @ (10002448 <_etoa+0x3a4>) -1000216c: 0030 movs r0, r6 -1000216e: 0039 movs r1, r7 -10002170: f001 f92d bl 100033ce <__wrap___aeabi_dsub> -10002174: 4ab5 ldr r2, [pc, #724] @ (1000244c <_etoa+0x3a8>) -10002176: 4bb6 ldr r3, [pc, #728] @ (10002450 <_etoa+0x3ac>) -10002178: f001 f959 bl 1000342e <__wrap___aeabi_dmul> -1000217c: 0002 movs r2, r0 -1000217e: 000b movs r3, r1 -10002180: 9808 ldr r0, [sp, #32] -10002182: 9909 ldr r1, [sp, #36] @ 0x24 -10002184: f001 f92c bl 100033e0 <__wrap___aeabi_dadd> -10002188: f001 f9da bl 10003540 <__wrap___aeabi_d2iz> -1000218c: 4683 mov fp, r0 -1000218e: f001 f9bf bl 10003510 <__wrap___aeabi_i2d> -10002192: 0006 movs r6, r0 -10002194: 000f movs r7, r1 -10002196: 4aaf ldr r2, [pc, #700] @ (10002454 <_etoa+0x3b0>) -10002198: 4baf ldr r3, [pc, #700] @ (10002458 <_etoa+0x3b4>) -1000219a: f001 f948 bl 1000342e <__wrap___aeabi_dmul> -1000219e: 2200 movs r2, #0 -100021a0: 4bae ldr r3, [pc, #696] @ (1000245c <_etoa+0x3b8>) -100021a2: f001 f91d bl 100033e0 <__wrap___aeabi_dadd> -100021a6: f001 f9cb bl 10003540 <__wrap___aeabi_d2iz> -100021aa: 9008 str r0, [sp, #32] -100021ac: 4aac ldr r2, [pc, #688] @ (10002460 <_etoa+0x3bc>) -100021ae: 4bad ldr r3, [pc, #692] @ (10002464 <_etoa+0x3c0>) -100021b0: 0030 movs r0, r6 -100021b2: 0039 movs r1, r7 -100021b4: f001 f93b bl 1000342e <__wrap___aeabi_dmul> -100021b8: 0006 movs r6, r0 -100021ba: 000f movs r7, r1 -100021bc: 9808 ldr r0, [sp, #32] -100021be: f001 f9a7 bl 10003510 <__wrap___aeabi_i2d> -100021c2: 4aa9 ldr r2, [pc, #676] @ (10002468 <_etoa+0x3c4>) -100021c4: 4ba9 ldr r3, [pc, #676] @ (1000246c <_etoa+0x3c8>) -100021c6: f001 f932 bl 1000342e <__wrap___aeabi_dmul> -100021ca: 0002 movs r2, r0 -100021cc: 000b movs r3, r1 -100021ce: 0030 movs r0, r6 -100021d0: 0039 movs r1, r7 -100021d2: f001 f8fc bl 100033ce <__wrap___aeabi_dsub> -100021d6: 0006 movs r6, r0 -100021d8: 000f movs r7, r1 -100021da: 0002 movs r2, r0 -100021dc: 000b movs r3, r1 -100021de: f001 f926 bl 1000342e <__wrap___aeabi_dmul> -100021e2: 900a str r0, [sp, #40] @ 0x28 -100021e4: 910b str r1, [sp, #44] @ 0x2c -100021e6: 9b08 ldr r3, [sp, #32] -100021e8: 4aa1 ldr r2, [pc, #644] @ (10002470 <_etoa+0x3cc>) -100021ea: 4694 mov ip, r2 -100021ec: 4463 add r3, ip -100021ee: 2100 movs r1, #0 -100021f0: 2200 movs r2, #0 -100021f2: 9108 str r1, [sp, #32] -100021f4: 9209 str r2, [sp, #36] @ 0x24 -100021f6: 051b lsls r3, r3, #20 -100021f8: 9309 str r3, [sp, #36] @ 0x24 -100021fa: 2300 movs r3, #0 -100021fc: 9308 str r3, [sp, #32] -100021fe: 0032 movs r2, r6 -10002200: 003b movs r3, r7 -10002202: 0030 movs r0, r6 -10002204: 0039 movs r1, r7 -10002206: f001 f8eb bl 100033e0 <__wrap___aeabi_dadd> -1000220a: 900e str r0, [sp, #56] @ 0x38 -1000220c: 910f str r1, [sp, #60] @ 0x3c -1000220e: 0032 movs r2, r6 -10002210: 003b movs r3, r7 -10002212: 2000 movs r0, #0 -10002214: 2180 movs r1, #128 @ 0x80 -10002216: 05c9 lsls r1, r1, #23 -10002218: f001 f8d9 bl 100033ce <__wrap___aeabi_dsub> -1000221c: 0006 movs r6, r0 -1000221e: 000f movs r7, r1 -10002220: 2200 movs r2, #0 -10002222: 4b94 ldr r3, [pc, #592] @ (10002474 <_etoa+0x3d0>) -10002224: 980a ldr r0, [sp, #40] @ 0x28 -10002226: 990b ldr r1, [sp, #44] @ 0x2c -10002228: f001 f8e3 bl 100033f2 <__wrap___aeabi_ddiv> -1000222c: 2200 movs r2, #0 -1000222e: 4b92 ldr r3, [pc, #584] @ (10002478 <_etoa+0x3d4>) -10002230: f001 f8d6 bl 100033e0 <__wrap___aeabi_dadd> -10002234: 0002 movs r2, r0 -10002236: 000b movs r3, r1 -10002238: 980a ldr r0, [sp, #40] @ 0x28 -1000223a: 990b ldr r1, [sp, #44] @ 0x2c -1000223c: f001 f8d9 bl 100033f2 <__wrap___aeabi_ddiv> -10002240: 2200 movs r2, #0 -10002242: 4b8e ldr r3, [pc, #568] @ (1000247c <_etoa+0x3d8>) -10002244: f001 f8cc bl 100033e0 <__wrap___aeabi_dadd> -10002248: 0002 movs r2, r0 -1000224a: 000b movs r3, r1 -1000224c: 980a ldr r0, [sp, #40] @ 0x28 -1000224e: 990b ldr r1, [sp, #44] @ 0x2c -10002250: f001 f8cf bl 100033f2 <__wrap___aeabi_ddiv> -10002254: 0002 movs r2, r0 -10002256: 000b movs r3, r1 -10002258: 0030 movs r0, r6 -1000225a: 0039 movs r1, r7 -1000225c: f001 f8c0 bl 100033e0 <__wrap___aeabi_dadd> -10002260: 0002 movs r2, r0 -10002262: 000b movs r3, r1 -10002264: 980e ldr r0, [sp, #56] @ 0x38 -10002266: 990f ldr r1, [sp, #60] @ 0x3c -10002268: f001 f8c3 bl 100033f2 <__wrap___aeabi_ddiv> -1000226c: 2200 movs r2, #0 -1000226e: 4b71 ldr r3, [pc, #452] @ (10002434 <_etoa+0x390>) -10002270: f001 f8b6 bl 100033e0 <__wrap___aeabi_dadd> -10002274: 9a08 ldr r2, [sp, #32] -10002276: 9b09 ldr r3, [sp, #36] @ 0x24 -10002278: f001 f8d9 bl 1000342e <__wrap___aeabi_dmul> -1000227c: 0006 movs r6, r0 -1000227e: 000f movs r7, r1 -10002280: 9608 str r6, [sp, #32] -10002282: 9709 str r7, [sp, #36] @ 0x24 -10002284: 9a06 ldr r2, [sp, #24] -10002286: 9b07 ldr r3, [sp, #28] -10002288: f001 f92a bl 100034e0 <__wrap___aeabi_dcmpgt> -1000228c: 2800 cmp r0, #0 -1000228e: d02f beq.n 100022f0 <_etoa+0x24c> -10002290: 2301 movs r3, #1 -10002292: 425b negs r3, r3 -10002294: 469c mov ip, r3 -10002296: 44e3 add fp, ip -10002298: 2200 movs r2, #0 -1000229a: 4b77 ldr r3, [pc, #476] @ (10002478 <_etoa+0x3d4>) -1000229c: 0030 movs r0, r6 -1000229e: 0039 movs r1, r7 -100022a0: f001 f8a7 bl 100033f2 <__wrap___aeabi_ddiv> -100022a4: 9008 str r0, [sp, #32] -100022a6: 9109 str r1, [sp, #36] @ 0x24 -100022a8: e022 b.n 100022f0 <_etoa+0x24c> -100022aa: 9b1e ldr r3, [sp, #120] @ 0x78 -100022ac: 9304 str r3, [sp, #16] -100022ae: 9b1d ldr r3, [sp, #116] @ 0x74 -100022b0: 9303 str r3, [sp, #12] -100022b2: 9b1c ldr r3, [sp, #112] @ 0x70 -100022b4: 9302 str r3, [sp, #8] -100022b6: 9400 str r4, [sp, #0] -100022b8: 9501 str r5, [sp, #4] -100022ba: 4653 mov r3, sl -100022bc: 9a0c ldr r2, [sp, #48] @ 0x30 -100022be: 4649 mov r1, r9 -100022c0: 4640 mov r0, r8 -100022c2: f000 f8ff bl 100024c4 <_ftoa> -100022c6: b011 add sp, #68 @ 0x44 -100022c8: bcf0 pop {r4, r5, r6, r7} -100022ca: 46bb mov fp, r7 -100022cc: 46b2 mov sl, r6 -100022ce: 46a9 mov r9, r5 -100022d0: 46a0 mov r8, r4 -100022d2: bdf0 pop {r4, r5, r6, r7, pc} -100022d4: 2100 movs r1, #0 -100022d6: 2200 movs r2, #0 -100022d8: 9106 str r1, [sp, #24] -100022da: 9207 str r2, [sp, #28] -100022dc: 9406 str r4, [sp, #24] -100022de: 2380 movs r3, #128 @ 0x80 -100022e0: 061b lsls r3, r3, #24 -100022e2: 469c mov ip, r3 -100022e4: 44ac add ip, r5 -100022e6: 4663 mov r3, ip -100022e8: 9307 str r3, [sp, #28] -100022ea: e710 b.n 1000210e <_etoa+0x6a> -100022ec: 2300 movs r3, #0 -100022ee: 469b mov fp, r3 -100022f0: 465b mov r3, fp -100022f2: 3363 adds r3, #99 @ 0x63 -100022f4: 2bc6 cmp r3, #198 @ 0xc6 -100022f6: d820 bhi.n 1000233a <_etoa+0x296> -100022f8: 2604 movs r6, #4 -100022fa: 9b1e ldr r3, [sp, #120] @ 0x78 -100022fc: 051b lsls r3, r3, #20 -100022fe: d528 bpl.n 10002352 <_etoa+0x2ae> -10002300: 9a08 ldr r2, [sp, #32] -10002302: 9b09 ldr r3, [sp, #36] @ 0x24 -10002304: 0019 movs r1, r3 -10002306: 4311 orrs r1, r2 -10002308: d00f beq.n 1000232a <_etoa+0x286> -1000230a: 4a5d ldr r2, [pc, #372] @ (10002480 <_etoa+0x3dc>) -1000230c: 4b5d ldr r3, [pc, #372] @ (10002484 <_etoa+0x3e0>) -1000230e: 9806 ldr r0, [sp, #24] -10002310: 9907 ldr r1, [sp, #28] -10002312: f001 f8dd bl 100034d0 <__wrap___aeabi_dcmpge> -10002316: 2800 cmp r0, #0 -10002318: d07a beq.n 10002410 <_etoa+0x36c> -1000231a: 2200 movs r2, #0 -1000231c: 4b5a ldr r3, [pc, #360] @ (10002488 <_etoa+0x3e4>) -1000231e: 9806 ldr r0, [sp, #24] -10002320: 9907 ldr r1, [sp, #28] -10002322: f001 f8c7 bl 100034b4 <__wrap___aeabi_dcmplt> -10002326: 2800 cmp r0, #0 -10002328: d072 beq.n 10002410 <_etoa+0x36c> -1000232a: 9b1c ldr r3, [sp, #112] @ 0x70 -1000232c: 455b cmp r3, fp -1000232e: dd06 ble.n 1000233e <_etoa+0x29a> -10002330: 465a mov r2, fp -10002332: 1a9b subs r3, r3, r2 -10002334: 3b01 subs r3, #1 -10002336: 931c str r3, [sp, #112] @ 0x70 -10002338: e003 b.n 10002342 <_etoa+0x29e> -1000233a: 2605 movs r6, #5 -1000233c: e7dd b.n 100022fa <_etoa+0x256> -1000233e: 2300 movs r3, #0 -10002340: 931c str r3, [sp, #112] @ 0x70 -10002342: 2380 movs r3, #128 @ 0x80 -10002344: 00db lsls r3, r3, #3 -10002346: 9a1e ldr r2, [sp, #120] @ 0x78 -10002348: 431a orrs r2, r3 -1000234a: 921e str r2, [sp, #120] @ 0x78 -1000234c: 2600 movs r6, #0 -1000234e: 2300 movs r3, #0 -10002350: 469b mov fp, r3 -10002352: 9b1d ldr r3, [sp, #116] @ 0x74 -10002354: 429e cmp r6, r3 -10002356: d265 bcs.n 10002424 <_etoa+0x380> -10002358: 1b9f subs r7, r3, r6 -1000235a: 2302 movs r3, #2 -1000235c: 9a1e ldr r2, [sp, #120] @ 0x78 -1000235e: 401a ands r2, r3 -10002360: 920a str r2, [sp, #40] @ 0x28 -10002362: 9a1e ldr r2, [sp, #120] @ 0x78 -10002364: 4213 tst r3, r2 -10002366: d002 beq.n 1000236e <_etoa+0x2ca> -10002368: 2e00 cmp r6, #0 -1000236a: d000 beq.n 1000236e <_etoa+0x2ca> -1000236c: 2700 movs r7, #0 -1000236e: 465b mov r3, fp -10002370: 2b00 cmp r3, #0 -10002372: d007 beq.n 10002384 <_etoa+0x2e0> -10002374: 9a08 ldr r2, [sp, #32] -10002376: 9b09 ldr r3, [sp, #36] @ 0x24 -10002378: 9806 ldr r0, [sp, #24] -1000237a: 9907 ldr r1, [sp, #28] -1000237c: f001 f839 bl 100033f2 <__wrap___aeabi_ddiv> -10002380: 9006 str r0, [sp, #24] -10002382: 9107 str r1, [sp, #28] -10002384: 2200 movs r2, #0 -10002386: 2300 movs r3, #0 -10002388: 0020 movs r0, r4 -1000238a: 0029 movs r1, r5 -1000238c: f001 f892 bl 100034b4 <__wrap___aeabi_dcmplt> -10002390: 2800 cmp r0, #0 -10002392: d000 beq.n 10002396 <_etoa+0x2f2> -10002394: e07c b.n 10002490 <_etoa+0x3ec> -10002396: 4b3d ldr r3, [pc, #244] @ (1000248c <_etoa+0x3e8>) -10002398: 9a1e ldr r2, [sp, #120] @ 0x78 -1000239a: 4013 ands r3, r2 -1000239c: 9304 str r3, [sp, #16] -1000239e: 9703 str r7, [sp, #12] -100023a0: 9b1c ldr r3, [sp, #112] @ 0x70 -100023a2: 9302 str r3, [sp, #8] -100023a4: 9b06 ldr r3, [sp, #24] -100023a6: 9c07 ldr r4, [sp, #28] -100023a8: 9300 str r3, [sp, #0] -100023aa: 9401 str r4, [sp, #4] -100023ac: 4653 mov r3, sl -100023ae: 9a0c ldr r2, [sp, #48] @ 0x30 -100023b0: 4649 mov r1, r9 -100023b2: 4640 mov r0, r8 -100023b4: f000 f886 bl 100024c4 <_ftoa> -100023b8: 2e00 cmp r6, #0 -100023ba: d100 bne.n 100023be <_etoa+0x31a> -100023bc: e783 b.n 100022c6 <_etoa+0x222> -100023be: 9b1e ldr r3, [sp, #120] @ 0x78 -100023c0: 069b lsls r3, r3, #26 -100023c2: d571 bpl.n 100024a8 <_etoa+0x404> -100023c4: 2545 movs r5, #69 @ 0x45 -100023c6: 1c44 adds r4, r0, #1 -100023c8: 4653 mov r3, sl -100023ca: 0002 movs r2, r0 -100023cc: 4649 mov r1, r9 -100023ce: 0028 movs r0, r5 -100023d0: 47c0 blx r8 -100023d2: 465a mov r2, fp -100023d4: 17d3 asrs r3, r2, #31 -100023d6: 18d2 adds r2, r2, r3 -100023d8: 405a eors r2, r3 -100023da: 2305 movs r3, #5 -100023dc: 9305 str r3, [sp, #20] -100023de: 3e01 subs r6, #1 -100023e0: 9604 str r6, [sp, #16] -100023e2: 2300 movs r3, #0 -100023e4: 9303 str r3, [sp, #12] -100023e6: 330a adds r3, #10 -100023e8: 9302 str r3, [sp, #8] -100023ea: 465b mov r3, fp -100023ec: 0fdb lsrs r3, r3, #31 -100023ee: 9301 str r3, [sp, #4] -100023f0: 9200 str r2, [sp, #0] -100023f2: 4653 mov r3, sl -100023f4: 0022 movs r2, r4 -100023f6: 4649 mov r1, r9 -100023f8: 4640 mov r0, r8 -100023fa: f7ff fd6e bl 10001eda <_ntoa_long> -100023fe: 9b0a ldr r3, [sp, #40] @ 0x28 -10002400: 2b00 cmp r3, #0 -10002402: d100 bne.n 10002406 <_etoa+0x362> -10002404: e75f b.n 100022c6 <_etoa+0x222> -10002406: 0002 movs r2, r0 -10002408: 4647 mov r7, r8 -1000240a: 9e0c ldr r6, [sp, #48] @ 0x30 -1000240c: 9d1d ldr r5, [sp, #116] @ 0x74 -1000240e: e053 b.n 100024b8 <_etoa+0x414> -10002410: 9b1c ldr r3, [sp, #112] @ 0x70 -10002412: 2b00 cmp r3, #0 -10002414: d09d beq.n 10002352 <_etoa+0x2ae> -10002416: 9b0d ldr r3, [sp, #52] @ 0x34 -10002418: 2b00 cmp r3, #0 -1000241a: d09a beq.n 10002352 <_etoa+0x2ae> -1000241c: 9b1c ldr r3, [sp, #112] @ 0x70 -1000241e: 3b01 subs r3, #1 -10002420: 931c str r3, [sp, #112] @ 0x70 -10002422: e796 b.n 10002352 <_etoa+0x2ae> -10002424: 2700 movs r7, #0 -10002426: e798 b.n 1000235a <_etoa+0x2b6> -10002428: 7fefffff .word 0x7fefffff -1000242c: ffefffff .word 0xffefffff -10002430: fffffc01 .word 0xfffffc01 -10002434: 3ff00000 .word 0x3ff00000 -10002438: 509f79fb .word 0x509f79fb -1000243c: 3fd34413 .word 0x3fd34413 -10002440: 8b60c8b3 .word 0x8b60c8b3 -10002444: 3fc68a28 .word 0x3fc68a28 -10002448: 3ff80000 .word 0x3ff80000 -1000244c: 636f4361 .word 0x636f4361 -10002450: 3fd287a7 .word 0x3fd287a7 -10002454: 0979a371 .word 0x0979a371 -10002458: 400a934f .word 0x400a934f -1000245c: 3fe00000 .word 0x3fe00000 -10002460: bbb55516 .word 0xbbb55516 -10002464: 40026bb1 .word 0x40026bb1 -10002468: fefa39ef .word 0xfefa39ef -1000246c: 3fe62e42 .word 0x3fe62e42 -10002470: 000003ff .word 0x000003ff -10002474: 402c0000 .word 0x402c0000 -10002478: 40240000 .word 0x40240000 -1000247c: 40180000 .word 0x40180000 -10002480: eb1c432d .word 0xeb1c432d -10002484: 3f1a36e2 .word 0x3f1a36e2 -10002488: 412e8480 .word 0x412e8480 -1000248c: fffff7ff .word 0xfffff7ff -10002490: 9c06 ldr r4, [sp, #24] -10002492: 9d07 ldr r5, [sp, #28] -10002494: 0022 movs r2, r4 -10002496: 0029 movs r1, r5 -10002498: 2080 movs r0, #128 @ 0x80 -1000249a: 0600 lsls r0, r0, #24 -1000249c: 4684 mov ip, r0 -1000249e: 4461 add r1, ip -100024a0: 000b movs r3, r1 -100024a2: 9206 str r2, [sp, #24] -100024a4: 9307 str r3, [sp, #28] -100024a6: e776 b.n 10002396 <_etoa+0x2f2> -100024a8: 2565 movs r5, #101 @ 0x65 -100024aa: e78c b.n 100023c6 <_etoa+0x322> -100024ac: 1c54 adds r4, r2, #1 -100024ae: 4653 mov r3, sl -100024b0: 4649 mov r1, r9 -100024b2: 2020 movs r0, #32 -100024b4: 47b8 blx r7 -100024b6: 0022 movs r2, r4 -100024b8: 1b93 subs r3, r2, r6 -100024ba: 42ab cmp r3, r5 -100024bc: d3f6 bcc.n 100024ac <_etoa+0x408> -100024be: 0010 movs r0, r2 -100024c0: e701 b.n 100022c6 <_etoa+0x222> -100024c2: 46c0 nop @ (mov r8, r8) +10001a68 : +10001a68: b570 push {r4, r5, r6, lr} +10001a6a: 0006 movs r6, r0 +10001a6c: 000d movs r5, r1 +10001a6e: 0014 movs r4, r2 +10001a70: 2900 cmp r1, #0 +10001a72: d014 beq.n 10001a9e +10001a74: 2a00 cmp r2, #0 +10001a76: d014 beq.n 10001aa2 +10001a78: 6843 ldr r3, [r0, #4] +10001a7a: 6880 ldr r0, [r0, #8] +10001a7c: 4798 blx r3 +10001a7e: 2800 cmp r0, #0 +10001a80: d006 beq.n 10001a90 +10001a82: 0022 movs r2, r4 +10001a84: 0029 movs r1, r5 +10001a86: 0030 movs r0, r6 +10001a88: f7ff ffb8 bl 100019fc +10001a8c: 0028 movs r0, r5 +10001a8e: e007 b.n 10001aa0 +10001a90: 002a movs r2, r5 +10001a92: 0021 movs r1, r4 +10001a94: 0030 movs r0, r6 +10001a96: f7ff ffb1 bl 100019fc +10001a9a: 0020 movs r0, r4 +10001a9c: e000 b.n 10001aa0 +10001a9e: 0010 movs r0, r2 +10001aa0: bd70 pop {r4, r5, r6, pc} +10001aa2: 0008 movs r0, r1 +10001aa4: e7fc b.n 10001aa0 -100024c4 <_ftoa>: -100024c4: b5f0 push {r4, r5, r6, r7, lr} -100024c6: 46de mov lr, fp -100024c8: 4657 mov r7, sl -100024ca: 464e mov r6, r9 -100024cc: 4645 mov r5, r8 -100024ce: b5e0 push {r5, r6, r7, lr} -100024d0: b095 sub sp, #84 @ 0x54 -100024d2: 9006 str r0, [sp, #24] -100024d4: 9107 str r1, [sp, #28] -100024d6: 4693 mov fp, r2 -100024d8: 4699 mov r9, r3 -100024da: 9f20 ldr r7, [sp, #128] @ 0x80 -100024dc: 9a1e ldr r2, [sp, #120] @ 0x78 -100024de: 9b1f ldr r3, [sp, #124] @ 0x7c -100024e0: 0010 movs r0, r2 -100024e2: 0019 movs r1, r3 -100024e4: f001 f801 bl 100034ea <__wrap___aeabi_dcmpun> -100024e8: 2800 cmp r0, #0 -100024ea: d131 bne.n 10002550 <_ftoa+0x8c> -100024ec: 2201 movs r2, #1 -100024ee: 4252 negs r2, r2 -100024f0: 4bbf ldr r3, [pc, #764] @ (100027f0 <_ftoa+0x32c>) -100024f2: 981e ldr r0, [sp, #120] @ 0x78 -100024f4: 991f ldr r1, [sp, #124] @ 0x7c -100024f6: f000 ffdd bl 100034b4 <__wrap___aeabi_dcmplt> -100024fa: 2800 cmp r0, #0 -100024fc: d137 bne.n 1000256e <_ftoa+0xaa> -100024fe: 2201 movs r2, #1 -10002500: 4252 negs r2, r2 -10002502: 4bbc ldr r3, [pc, #752] @ (100027f4 <_ftoa+0x330>) -10002504: 981e ldr r0, [sp, #120] @ 0x78 -10002506: 991f ldr r1, [sp, #124] @ 0x7c -10002508: f000 ffea bl 100034e0 <__wrap___aeabi_dcmpgt> -1000250c: 2800 cmp r0, #0 -1000250e: d13d bne.n 1000258c <_ftoa+0xc8> -10002510: 2200 movs r2, #0 -10002512: 4bb9 ldr r3, [pc, #740] @ (100027f8 <_ftoa+0x334>) -10002514: 981e ldr r0, [sp, #120] @ 0x78 -10002516: 991f ldr r1, [sp, #124] @ 0x7c -10002518: f000 ffe2 bl 100034e0 <__wrap___aeabi_dcmpgt> -1000251c: 2800 cmp r0, #0 -1000251e: d150 bne.n 100025c2 <_ftoa+0xfe> -10002520: 2200 movs r2, #0 -10002522: 4bb6 ldr r3, [pc, #728] @ (100027fc <_ftoa+0x338>) -10002524: 981e ldr r0, [sp, #120] @ 0x78 -10002526: 991f ldr r1, [sp, #124] @ 0x7c -10002528: f000 ffc4 bl 100034b4 <__wrap___aeabi_dcmplt> -1000252c: 2800 cmp r0, #0 -1000252e: d148 bne.n 100025c2 <_ftoa+0xfe> -10002530: 2200 movs r2, #0 -10002532: 2300 movs r3, #0 -10002534: 981e ldr r0, [sp, #120] @ 0x78 -10002536: 991f ldr r1, [sp, #124] @ 0x7c -10002538: f000 ffbc bl 100034b4 <__wrap___aeabi_dcmplt> -1000253c: 2800 cmp r0, #0 -1000253e: d150 bne.n 100025e2 <_ftoa+0x11e> -10002540: 2300 movs r3, #0 -10002542: 4698 mov r8, r3 -10002544: 9b22 ldr r3, [sp, #136] @ 0x88 -10002546: 055b lsls r3, r3, #21 -10002548: d400 bmi.n 1000254c <_ftoa+0x88> -1000254a: e0b6 b.n 100026ba <_ftoa+0x1f6> -1000254c: 2400 movs r4, #0 -1000254e: e058 b.n 10002602 <_ftoa+0x13e> -10002550: 9b22 ldr r3, [sp, #136] @ 0x88 -10002552: 9303 str r3, [sp, #12] -10002554: 9b21 ldr r3, [sp, #132] @ 0x84 -10002556: 9302 str r3, [sp, #8] -10002558: 2303 movs r3, #3 -1000255a: 9301 str r3, [sp, #4] -1000255c: 4ba8 ldr r3, [pc, #672] @ (10002800 <_ftoa+0x33c>) -1000255e: 9300 str r3, [sp, #0] -10002560: 464b mov r3, r9 -10002562: 465a mov r2, fp -10002564: 9907 ldr r1, [sp, #28] -10002566: 9806 ldr r0, [sp, #24] -10002568: f7ff fbd8 bl 10001d1c <_out_rev> -1000256c: e10e b.n 1000278c <_ftoa+0x2c8> -1000256e: 9b22 ldr r3, [sp, #136] @ 0x88 -10002570: 9303 str r3, [sp, #12] -10002572: 9b21 ldr r3, [sp, #132] @ 0x84 -10002574: 9302 str r3, [sp, #8] -10002576: 2304 movs r3, #4 -10002578: 9301 str r3, [sp, #4] -1000257a: 4ba2 ldr r3, [pc, #648] @ (10002804 <_ftoa+0x340>) -1000257c: 9300 str r3, [sp, #0] -1000257e: 464b mov r3, r9 -10002580: 465a mov r2, fp -10002582: 9907 ldr r1, [sp, #28] -10002584: 9806 ldr r0, [sp, #24] -10002586: f7ff fbc9 bl 10001d1c <_out_rev> -1000258a: e0ff b.n 1000278c <_ftoa+0x2c8> -1000258c: 2304 movs r3, #4 -1000258e: 9a22 ldr r2, [sp, #136] @ 0x88 -10002590: 401a ands r2, r3 -10002592: 9922 ldr r1, [sp, #136] @ 0x88 -10002594: 420b tst r3, r1 -10002596: d010 beq.n 100025ba <_ftoa+0xf6> -10002598: 4b9b ldr r3, [pc, #620] @ (10002808 <_ftoa+0x344>) -1000259a: 2a00 cmp r2, #0 -1000259c: d00f beq.n 100025be <_ftoa+0xfa> -1000259e: 2204 movs r2, #4 -100025a0: 9922 ldr r1, [sp, #136] @ 0x88 -100025a2: 9103 str r1, [sp, #12] -100025a4: 9921 ldr r1, [sp, #132] @ 0x84 -100025a6: 9102 str r1, [sp, #8] -100025a8: 9201 str r2, [sp, #4] -100025aa: 9300 str r3, [sp, #0] -100025ac: 464b mov r3, r9 -100025ae: 465a mov r2, fp -100025b0: 9907 ldr r1, [sp, #28] -100025b2: 9806 ldr r0, [sp, #24] -100025b4: f7ff fbb2 bl 10001d1c <_out_rev> -100025b8: e0e8 b.n 1000278c <_ftoa+0x2c8> -100025ba: 4b94 ldr r3, [pc, #592] @ (1000280c <_ftoa+0x348>) -100025bc: e7ed b.n 1000259a <_ftoa+0xd6> -100025be: 2203 movs r2, #3 -100025c0: e7ee b.n 100025a0 <_ftoa+0xdc> -100025c2: 9b22 ldr r3, [sp, #136] @ 0x88 -100025c4: 9304 str r3, [sp, #16] -100025c6: 9b21 ldr r3, [sp, #132] @ 0x84 -100025c8: 9303 str r3, [sp, #12] -100025ca: 9702 str r7, [sp, #8] -100025cc: 9b1e ldr r3, [sp, #120] @ 0x78 -100025ce: 9c1f ldr r4, [sp, #124] @ 0x7c -100025d0: 9300 str r3, [sp, #0] -100025d2: 9401 str r4, [sp, #4] -100025d4: 464b mov r3, r9 -100025d6: 465a mov r2, fp -100025d8: 9907 ldr r1, [sp, #28] -100025da: 9806 ldr r0, [sp, #24] -100025dc: f7ff fd62 bl 100020a4 <_etoa> -100025e0: e0d4 b.n 1000278c <_ftoa+0x2c8> -100025e2: 9a1e ldr r2, [sp, #120] @ 0x78 -100025e4: 9b1f ldr r3, [sp, #124] @ 0x7c -100025e6: 2000 movs r0, #0 -100025e8: 2100 movs r1, #0 -100025ea: f000 fef0 bl 100033ce <__wrap___aeabi_dsub> -100025ee: 901e str r0, [sp, #120] @ 0x78 -100025f0: 911f str r1, [sp, #124] @ 0x7c -100025f2: 2301 movs r3, #1 -100025f4: 4698 mov r8, r3 -100025f6: e7a5 b.n 10002544 <_ftoa+0x80> -100025f8: ab0c add r3, sp, #48 @ 0x30 -100025fa: 2230 movs r2, #48 @ 0x30 -100025fc: 551a strb r2, [r3, r4] -100025fe: 3f01 subs r7, #1 -10002600: 3401 adds r4, #1 -10002602: 2c1f cmp r4, #31 -10002604: d801 bhi.n 1000260a <_ftoa+0x146> -10002606: 2f09 cmp r7, #9 -10002608: d8f6 bhi.n 100025f8 <_ftoa+0x134> -1000260a: 981e ldr r0, [sp, #120] @ 0x78 -1000260c: 991f ldr r1, [sp, #124] @ 0x7c -1000260e: f000 ff97 bl 10003540 <__wrap___aeabi_d2iz> -10002612: 0005 movs r5, r0 -10002614: f000 ff7c bl 10003510 <__wrap___aeabi_i2d> -10002618: 0002 movs r2, r0 -1000261a: 000b movs r3, r1 -1000261c: 981e ldr r0, [sp, #120] @ 0x78 -1000261e: 991f ldr r1, [sp, #124] @ 0x7c -10002620: f000 fed5 bl 100033ce <__wrap___aeabi_dsub> -10002624: 4b7a ldr r3, [pc, #488] @ (10002810 <_ftoa+0x34c>) -10002626: 00fa lsls r2, r7, #3 -10002628: 189b adds r3, r3, r2 -1000262a: 681a ldr r2, [r3, #0] -1000262c: 685b ldr r3, [r3, #4] -1000262e: 920a str r2, [sp, #40] @ 0x28 -10002630: 930b str r3, [sp, #44] @ 0x2c -10002632: f000 fefc bl 1000342e <__wrap___aeabi_dmul> -10002636: 9008 str r0, [sp, #32] -10002638: 9109 str r1, [sp, #36] @ 0x24 -1000263a: f000 ffa5 bl 10003588 <__wrap___aeabi_d2uiz> -1000263e: 0006 movs r6, r0 -10002640: f000 ff62 bl 10003508 <__wrap___aeabi_ui2d> -10002644: 0002 movs r2, r0 -10002646: 000b movs r3, r1 -10002648: 9808 ldr r0, [sp, #32] -1000264a: 9909 ldr r1, [sp, #36] @ 0x24 -1000264c: f000 febf bl 100033ce <__wrap___aeabi_dsub> -10002650: 9008 str r0, [sp, #32] -10002652: 9109 str r1, [sp, #36] @ 0x24 -10002654: 2200 movs r2, #0 -10002656: 4b6f ldr r3, [pc, #444] @ (10002814 <_ftoa+0x350>) -10002658: f000 ff42 bl 100034e0 <__wrap___aeabi_dcmpgt> -1000265c: 2800 cmp r0, #0 -1000265e: d02e beq.n 100026be <_ftoa+0x1fa> -10002660: 3601 adds r6, #1 -10002662: 0030 movs r0, r6 -10002664: f000 ff50 bl 10003508 <__wrap___aeabi_ui2d> -10002668: 0002 movs r2, r0 -1000266a: 000b movs r3, r1 -1000266c: 980a ldr r0, [sp, #40] @ 0x28 -1000266e: 990b ldr r1, [sp, #44] @ 0x2c -10002670: f000 ff26 bl 100034c0 <__wrap___aeabi_dcmple> -10002674: 2800 cmp r0, #0 -10002676: d001 beq.n 1000267c <_ftoa+0x1b8> -10002678: 3501 adds r5, #1 -1000267a: 2600 movs r6, #0 -1000267c: 2f00 cmp r7, #0 -1000267e: d12c bne.n 100026da <_ftoa+0x216> -10002680: 0028 movs r0, r5 -10002682: f000 ff45 bl 10003510 <__wrap___aeabi_i2d> -10002686: 0002 movs r2, r0 -10002688: 000b movs r3, r1 -1000268a: 981e ldr r0, [sp, #120] @ 0x78 -1000268c: 991f ldr r1, [sp, #124] @ 0x7c -1000268e: f000 fe9e bl 100033ce <__wrap___aeabi_dsub> -10002692: 0006 movs r6, r0 -10002694: 000f movs r7, r1 -10002696: 2200 movs r2, #0 -10002698: 4b5e ldr r3, [pc, #376] @ (10002814 <_ftoa+0x350>) -1000269a: f000 ff0b bl 100034b4 <__wrap___aeabi_dcmplt> -1000269e: 2800 cmp r0, #0 -100026a0: d146 bne.n 10002730 <_ftoa+0x26c> -100026a2: 2200 movs r2, #0 -100026a4: 4b5b ldr r3, [pc, #364] @ (10002814 <_ftoa+0x350>) -100026a6: 0030 movs r0, r6 -100026a8: 0039 movs r1, r7 -100026aa: f000 ff19 bl 100034e0 <__wrap___aeabi_dcmpgt> -100026ae: 2800 cmp r0, #0 -100026b0: d13e bne.n 10002730 <_ftoa+0x26c> -100026b2: 07eb lsls r3, r5, #31 -100026b4: d53c bpl.n 10002730 <_ftoa+0x26c> -100026b6: 3501 adds r5, #1 -100026b8: e03a b.n 10002730 <_ftoa+0x26c> -100026ba: 2706 movs r7, #6 -100026bc: e746 b.n 1000254c <_ftoa+0x88> -100026be: 2200 movs r2, #0 -100026c0: 4b54 ldr r3, [pc, #336] @ (10002814 <_ftoa+0x350>) -100026c2: 9808 ldr r0, [sp, #32] -100026c4: 9909 ldr r1, [sp, #36] @ 0x24 -100026c6: f000 fef5 bl 100034b4 <__wrap___aeabi_dcmplt> -100026ca: 2800 cmp r0, #0 -100026cc: d1d6 bne.n 1000267c <_ftoa+0x1b8> -100026ce: 2e00 cmp r6, #0 -100026d0: d001 beq.n 100026d6 <_ftoa+0x212> -100026d2: 07f3 lsls r3, r6, #31 -100026d4: d5d2 bpl.n 1000267c <_ftoa+0x1b8> -100026d6: 3601 adds r6, #1 -100026d8: e7d0 b.n 1000267c <_ftoa+0x1b8> -100026da: 46aa mov sl, r5 -100026dc: 2c1f cmp r4, #31 -100026de: d811 bhi.n 10002704 <_ftoa+0x240> -100026e0: 3f01 subs r7, #1 -100026e2: 210a movs r1, #10 -100026e4: 0030 movs r0, r6 -100026e6: f000 fc37 bl 10002f58 <__wrap___aeabi_uidiv> -100026ea: 1c65 adds r5, r4, #1 -100026ec: 3130 adds r1, #48 @ 0x30 -100026ee: ab0c add r3, sp, #48 @ 0x30 -100026f0: 5519 strb r1, [r3, r4] -100026f2: 210a movs r1, #10 -100026f4: 0030 movs r0, r6 -100026f6: f000 fc2f bl 10002f58 <__wrap___aeabi_uidiv> -100026fa: 2e09 cmp r6, #9 -100026fc: d90e bls.n 1000271c <_ftoa+0x258> -100026fe: 0006 movs r6, r0 -10002700: 002c movs r4, r5 -10002702: e7eb b.n 100026dc <_ftoa+0x218> -10002704: 4655 mov r5, sl -10002706: 2c1f cmp r4, #31 -10002708: d80c bhi.n 10002724 <_ftoa+0x260> -1000270a: 1e7b subs r3, r7, #1 -1000270c: 2f00 cmp r7, #0 -1000270e: d009 beq.n 10002724 <_ftoa+0x260> -10002710: aa0c add r2, sp, #48 @ 0x30 -10002712: 2130 movs r1, #48 @ 0x30 -10002714: 5511 strb r1, [r2, r4] -10002716: 001f movs r7, r3 -10002718: 3401 adds r4, #1 -1000271a: e7f4 b.n 10002706 <_ftoa+0x242> -1000271c: 002b movs r3, r5 -1000271e: 4655 mov r5, sl -10002720: 001c movs r4, r3 -10002722: e7f0 b.n 10002706 <_ftoa+0x242> -10002724: 2c1f cmp r4, #31 -10002726: d803 bhi.n 10002730 <_ftoa+0x26c> -10002728: ab0c add r3, sp, #48 @ 0x30 -1000272a: 222e movs r2, #46 @ 0x2e -1000272c: 551a strb r2, [r3, r4] -1000272e: 3401 adds r4, #1 -10002730: 2c1f cmp r4, #31 -10002732: d810 bhi.n 10002756 <_ftoa+0x292> -10002734: 210a movs r1, #10 -10002736: 0028 movs r0, r5 -10002738: f000 fbe6 bl 10002f08 <__wrap___aeabi_idiv> -1000273c: 1c66 adds r6, r4, #1 -1000273e: 3130 adds r1, #48 @ 0x30 -10002740: ab0c add r3, sp, #48 @ 0x30 -10002742: 5519 strb r1, [r3, r4] -10002744: 210a movs r1, #10 -10002746: 0028 movs r0, r5 -10002748: f000 fbde bl 10002f08 <__wrap___aeabi_idiv> -1000274c: 1e05 subs r5, r0, #0 -1000274e: d001 beq.n 10002754 <_ftoa+0x290> -10002750: 0034 movs r4, r6 -10002752: e7ed b.n 10002730 <_ftoa+0x26c> -10002754: 0034 movs r4, r6 -10002756: 2303 movs r3, #3 -10002758: 9a22 ldr r2, [sp, #136] @ 0x88 -1000275a: 4013 ands r3, r2 -1000275c: 2b01 cmp r3, #1 -1000275e: d01c beq.n 1000279a <_ftoa+0x2d6> -10002760: 2c1f cmp r4, #31 -10002762: d806 bhi.n 10002772 <_ftoa+0x2ae> -10002764: 4643 mov r3, r8 -10002766: 2b00 cmp r3, #0 -10002768: d032 beq.n 100027d0 <_ftoa+0x30c> -1000276a: ab0c add r3, sp, #48 @ 0x30 -1000276c: 222d movs r2, #45 @ 0x2d -1000276e: 551a strb r2, [r3, r4] -10002770: 3401 adds r4, #1 -10002772: 9b22 ldr r3, [sp, #136] @ 0x88 -10002774: 9303 str r3, [sp, #12] -10002776: 9b21 ldr r3, [sp, #132] @ 0x84 -10002778: 9302 str r3, [sp, #8] -1000277a: 9401 str r4, [sp, #4] -1000277c: ab0c add r3, sp, #48 @ 0x30 -1000277e: 9300 str r3, [sp, #0] -10002780: 464b mov r3, r9 -10002782: 465a mov r2, fp -10002784: 9907 ldr r1, [sp, #28] -10002786: 9806 ldr r0, [sp, #24] -10002788: f7ff fac8 bl 10001d1c <_out_rev> -1000278c: b015 add sp, #84 @ 0x54 -1000278e: bcf0 pop {r4, r5, r6, r7} -10002790: 46bb mov fp, r7 -10002792: 46b2 mov sl, r6 -10002794: 46a9 mov r9, r5 -10002796: 46a0 mov r8, r4 -10002798: bdf0 pop {r4, r5, r6, r7, pc} -1000279a: 9b21 ldr r3, [sp, #132] @ 0x84 -1000279c: 2b00 cmp r3, #0 -1000279e: d013 beq.n 100027c8 <_ftoa+0x304> -100027a0: 4643 mov r3, r8 -100027a2: 2b00 cmp r3, #0 -100027a4: d102 bne.n 100027ac <_ftoa+0x2e8> -100027a6: 330c adds r3, #12 -100027a8: 4213 tst r3, r2 -100027aa: d00f beq.n 100027cc <_ftoa+0x308> -100027ac: 9b21 ldr r3, [sp, #132] @ 0x84 -100027ae: 3b01 subs r3, #1 -100027b0: 9321 str r3, [sp, #132] @ 0x84 -100027b2: 0019 movs r1, r3 -100027b4: e003 b.n 100027be <_ftoa+0x2fa> -100027b6: ab0c add r3, sp, #48 @ 0x30 -100027b8: 2230 movs r2, #48 @ 0x30 -100027ba: 551a strb r2, [r3, r4] -100027bc: 3401 adds r4, #1 -100027be: 428c cmp r4, r1 -100027c0: d2ce bcs.n 10002760 <_ftoa+0x29c> -100027c2: 2c1f cmp r4, #31 -100027c4: d9f7 bls.n 100027b6 <_ftoa+0x2f2> -100027c6: e7cb b.n 10002760 <_ftoa+0x29c> -100027c8: 9921 ldr r1, [sp, #132] @ 0x84 -100027ca: e7f8 b.n 100027be <_ftoa+0x2fa> -100027cc: 9921 ldr r1, [sp, #132] @ 0x84 -100027ce: e7f6 b.n 100027be <_ftoa+0x2fa> -100027d0: 9b22 ldr r3, [sp, #136] @ 0x88 -100027d2: 075b lsls r3, r3, #29 -100027d4: d504 bpl.n 100027e0 <_ftoa+0x31c> -100027d6: ab0c add r3, sp, #48 @ 0x30 -100027d8: 222b movs r2, #43 @ 0x2b -100027da: 551a strb r2, [r3, r4] -100027dc: 3401 adds r4, #1 -100027de: e7c8 b.n 10002772 <_ftoa+0x2ae> -100027e0: 9b22 ldr r3, [sp, #136] @ 0x88 -100027e2: 071b lsls r3, r3, #28 -100027e4: d5c5 bpl.n 10002772 <_ftoa+0x2ae> -100027e6: ab0c add r3, sp, #48 @ 0x30 -100027e8: 2220 movs r2, #32 -100027ea: 551a strb r2, [r3, r4] -100027ec: 3401 adds r4, #1 -100027ee: e7c0 b.n 10002772 <_ftoa+0x2ae> -100027f0: ffefffff .word 0xffefffff -100027f4: 7fefffff .word 0x7fefffff -100027f8: 41cdcd65 .word 0x41cdcd65 -100027fc: c1cdcd65 .word 0xc1cdcd65 -10002800: 10004b70 .word 0x10004b70 -10002804: 10004b74 .word 0x10004b74 -10002808: 10004b64 .word 0x10004b64 -1000280c: 10004b6c .word 0x10004b6c -10002810: 10004d18 .word 0x10004d18 -10002814: 3fe00000 .word 0x3fe00000 +10001aa6 : +10001aa6: b570 push {r4, r5, r6, lr} +10001aa8: 0005 movs r5, r0 +10001aaa: 2300 movs r3, #0 +10001aac: 7343 strb r3, [r0, #13] +10001aae: 3301 adds r3, #1 +10001ab0: 7383 strb r3, [r0, #14] +10001ab2: 7b03 ldrb r3, [r0, #12] +10001ab4: 73c3 strb r3, [r0, #15] +10001ab6: 2401 movs r4, #1 +10001ab8: e006 b.n 10001ac8 +10001aba: 0021 movs r1, r4 +10001abc: 0028 movs r0, r5 +10001abe: f7ff ff85 bl 100019cc +10001ac2: 3401 adds r4, #1 +10001ac4: b2e4 uxtb r4, r4 +10001ac6: 7044 strb r4, [r0, #1] +10001ac8: 7b29 ldrb r1, [r5, #12] +10001aca: 42a1 cmp r1, r4 +10001acc: d8f5 bhi.n 10001aba +10001ace: 0028 movs r0, r5 +10001ad0: f7ff ff7c bl 100019cc +10001ad4: 2300 movs r3, #0 +10001ad6: 7043 strb r3, [r0, #1] +10001ad8: bd70 pop {r4, r5, r6, pc} -10002818 <_vsnprintf>: -10002818: b5f0 push {r4, r5, r6, r7, lr} -1000281a: 46de mov lr, fp -1000281c: 4657 mov r7, sl -1000281e: 464e mov r6, r9 -10002820: 4645 mov r5, r8 -10002822: b5e0 push {r5, r6, r7, lr} -10002824: b093 sub sp, #76 @ 0x4c -10002826: 4682 mov sl, r0 -10002828: 4688 mov r8, r1 -1000282a: 4693 mov fp, r2 -1000282c: 9311 str r3, [sp, #68] @ 0x44 -1000282e: 2900 cmp r1, #0 -10002830: d100 bne.n 10002834 <_vsnprintf+0x1c> -10002832: e30d b.n 10002e50 <_vsnprintf+0x638> -10002834: 2500 movs r5, #0 -10002836: 4656 mov r6, sl -10002838: 9b11 ldr r3, [sp, #68] @ 0x44 -1000283a: 7818 ldrb r0, [r3, #0] -1000283c: 2800 cmp r0, #0 -1000283e: d100 bne.n 10002842 <_vsnprintf+0x2a> -10002840: e309 b.n 10002e56 <_vsnprintf+0x63e> -10002842: 2825 cmp r0, #37 @ 0x25 -10002844: d009 beq.n 1000285a <_vsnprintf+0x42> -10002846: 1c6c adds r4, r5, #1 -10002848: 465b mov r3, fp -1000284a: 002a movs r2, r5 -1000284c: 4641 mov r1, r8 -1000284e: 47b0 blx r6 -10002850: 9b11 ldr r3, [sp, #68] @ 0x44 -10002852: 3301 adds r3, #1 -10002854: 9311 str r3, [sp, #68] @ 0x44 -10002856: 0025 movs r5, r4 -10002858: e7ee b.n 10002838 <_vsnprintf+0x20> -1000285a: 3301 adds r3, #1 -1000285c: 9311 str r3, [sp, #68] @ 0x44 -1000285e: 2700 movs r7, #0 -10002860: e020 b.n 100028a4 <_vsnprintf+0x8c> -10002862: 2301 movs r3, #1 -10002864: 431f orrs r7, r3 -10002866: 3201 adds r2, #1 -10002868: 9211 str r2, [sp, #68] @ 0x44 -1000286a: 2401 movs r4, #1 -1000286c: e018 b.n 100028a0 <_vsnprintf+0x88> -1000286e: 2302 movs r3, #2 -10002870: 431f orrs r7, r3 -10002872: 3201 adds r2, #1 -10002874: 9211 str r2, [sp, #68] @ 0x44 -10002876: 2401 movs r4, #1 -10002878: e012 b.n 100028a0 <_vsnprintf+0x88> -1000287a: 2304 movs r3, #4 -1000287c: 431f orrs r7, r3 -1000287e: 3201 adds r2, #1 -10002880: 9211 str r2, [sp, #68] @ 0x44 -10002882: 2401 movs r4, #1 -10002884: e00c b.n 100028a0 <_vsnprintf+0x88> -10002886: 2308 movs r3, #8 -10002888: 431f orrs r7, r3 -1000288a: 3201 adds r2, #1 -1000288c: 9211 str r2, [sp, #68] @ 0x44 -1000288e: 2401 movs r4, #1 -10002890: e006 b.n 100028a0 <_vsnprintf+0x88> -10002892: 2310 movs r3, #16 -10002894: 431f orrs r7, r3 -10002896: 3201 adds r2, #1 -10002898: 9211 str r2, [sp, #68] @ 0x44 -1000289a: 2401 movs r4, #1 -1000289c: e000 b.n 100028a0 <_vsnprintf+0x88> -1000289e: 2400 movs r4, #0 -100028a0: 2c00 cmp r4, #0 -100028a2: d009 beq.n 100028b8 <_vsnprintf+0xa0> -100028a4: 9a11 ldr r2, [sp, #68] @ 0x44 -100028a6: 7813 ldrb r3, [r2, #0] -100028a8: 3b20 subs r3, #32 -100028aa: b2d9 uxtb r1, r3 -100028ac: 2910 cmp r1, #16 -100028ae: d8f6 bhi.n 1000289e <_vsnprintf+0x86> -100028b0: 008b lsls r3, r1, #2 -100028b2: 49c8 ldr r1, [pc, #800] @ (10002bd4 <_vsnprintf+0x3bc>) -100028b4: 58cb ldr r3, [r1, r3] -100028b6: 469f mov pc, r3 -100028b8: 9b11 ldr r3, [sp, #68] @ 0x44 -100028ba: 781a ldrb r2, [r3, #0] -100028bc: 0013 movs r3, r2 -100028be: 3b30 subs r3, #48 @ 0x30 -100028c0: b2db uxtb r3, r3 -100028c2: 2b09 cmp r3, #9 -100028c4: d910 bls.n 100028e8 <_vsnprintf+0xd0> -100028c6: 2a2a cmp r2, #42 @ 0x2a -100028c8: d013 beq.n 100028f2 <_vsnprintf+0xda> -100028ca: 940b str r4, [sp, #44] @ 0x2c -100028cc: 9b11 ldr r3, [sp, #68] @ 0x44 -100028ce: 781a ldrb r2, [r3, #0] -100028d0: 2a2e cmp r2, #46 @ 0x2e -100028d2: d01e beq.n 10002912 <_vsnprintf+0xfa> -100028d4: 9a11 ldr r2, [sp, #68] @ 0x44 -100028d6: 7813 ldrb r3, [r2, #0] -100028d8: 3b68 subs r3, #104 @ 0x68 -100028da: b2d9 uxtb r1, r3 -100028dc: 2912 cmp r1, #18 -100028de: d859 bhi.n 10002994 <_vsnprintf+0x17c> -100028e0: 008b lsls r3, r1, #2 -100028e2: 49bd ldr r1, [pc, #756] @ (10002bd8 <_vsnprintf+0x3c0>) -100028e4: 58cb ldr r3, [r1, r3] -100028e6: 469f mov pc, r3 -100028e8: a811 add r0, sp, #68 @ 0x44 -100028ea: f7ff fa05 bl 10001cf8 <_atoi> -100028ee: 900b str r0, [sp, #44] @ 0x2c -100028f0: e7ec b.n 100028cc <_vsnprintf+0xb4> -100028f2: 9b1c ldr r3, [sp, #112] @ 0x70 -100028f4: 1d1a adds r2, r3, #4 -100028f6: 921c str r2, [sp, #112] @ 0x70 -100028f8: 681b ldr r3, [r3, #0] -100028fa: 2b00 cmp r3, #0 -100028fc: db04 blt.n 10002908 <_vsnprintf+0xf0> -100028fe: 930b str r3, [sp, #44] @ 0x2c -10002900: 9b11 ldr r3, [sp, #68] @ 0x44 -10002902: 3301 adds r3, #1 -10002904: 9311 str r3, [sp, #68] @ 0x44 -10002906: e7e1 b.n 100028cc <_vsnprintf+0xb4> -10002908: 2202 movs r2, #2 -1000290a: 4317 orrs r7, r2 -1000290c: 425b negs r3, r3 -1000290e: 930b str r3, [sp, #44] @ 0x2c -10002910: e7f6 b.n 10002900 <_vsnprintf+0xe8> -10002912: 2280 movs r2, #128 @ 0x80 -10002914: 00d2 lsls r2, r2, #3 -10002916: 4317 orrs r7, r2 -10002918: 1c5a adds r2, r3, #1 -1000291a: 9211 str r2, [sp, #68] @ 0x44 -1000291c: 785a ldrb r2, [r3, #1] -1000291e: 0013 movs r3, r2 -10002920: 3b30 subs r3, #48 @ 0x30 -10002922: b2db uxtb r3, r3 -10002924: 2b09 cmp r3, #9 -10002926: d90b bls.n 10002940 <_vsnprintf+0x128> -10002928: 2a2a cmp r2, #42 @ 0x2a -1000292a: d1d3 bne.n 100028d4 <_vsnprintf+0xbc> -1000292c: 9b1c ldr r3, [sp, #112] @ 0x70 -1000292e: 1d1a adds r2, r3, #4 -10002930: 921c str r2, [sp, #112] @ 0x70 -10002932: 681c ldr r4, [r3, #0] -10002934: 2c00 cmp r4, #0 -10002936: db08 blt.n 1000294a <_vsnprintf+0x132> -10002938: 9b11 ldr r3, [sp, #68] @ 0x44 -1000293a: 3301 adds r3, #1 -1000293c: 9311 str r3, [sp, #68] @ 0x44 -1000293e: e7c9 b.n 100028d4 <_vsnprintf+0xbc> -10002940: a811 add r0, sp, #68 @ 0x44 -10002942: f7ff f9d9 bl 10001cf8 <_atoi> -10002946: 0004 movs r4, r0 -10002948: e7c4 b.n 100028d4 <_vsnprintf+0xbc> -1000294a: 2400 movs r4, #0 -1000294c: e7f4 b.n 10002938 <_vsnprintf+0x120> -1000294e: 2380 movs r3, #128 @ 0x80 -10002950: 005b lsls r3, r3, #1 -10002952: 433b orrs r3, r7 -10002954: 1c51 adds r1, r2, #1 -10002956: 9111 str r1, [sp, #68] @ 0x44 -10002958: 7851 ldrb r1, [r2, #1] -1000295a: 296c cmp r1, #108 @ 0x6c -1000295c: d001 beq.n 10002962 <_vsnprintf+0x14a> -1000295e: 001f movs r7, r3 -10002960: e018 b.n 10002994 <_vsnprintf+0x17c> -10002962: 23c0 movs r3, #192 @ 0xc0 -10002964: 009b lsls r3, r3, #2 -10002966: 431f orrs r7, r3 -10002968: 3202 adds r2, #2 -1000296a: 9211 str r2, [sp, #68] @ 0x44 -1000296c: e012 b.n 10002994 <_vsnprintf+0x17c> -1000296e: 2380 movs r3, #128 @ 0x80 -10002970: 433b orrs r3, r7 -10002972: 1c51 adds r1, r2, #1 -10002974: 9111 str r1, [sp, #68] @ 0x44 -10002976: 7851 ldrb r1, [r2, #1] -10002978: 2968 cmp r1, #104 @ 0x68 -1000297a: d001 beq.n 10002980 <_vsnprintf+0x168> -1000297c: 001f movs r7, r3 -1000297e: e009 b.n 10002994 <_vsnprintf+0x17c> -10002980: 23c0 movs r3, #192 @ 0xc0 -10002982: 431f orrs r7, r3 -10002984: 3202 adds r2, #2 -10002986: 9211 str r2, [sp, #68] @ 0x44 -10002988: e004 b.n 10002994 <_vsnprintf+0x17c> -1000298a: 2380 movs r3, #128 @ 0x80 -1000298c: 005b lsls r3, r3, #1 -1000298e: 431f orrs r7, r3 -10002990: 3201 adds r2, #1 -10002992: 9211 str r2, [sp, #68] @ 0x44 -10002994: 9b11 ldr r3, [sp, #68] @ 0x44 -10002996: 7818 ldrb r0, [r3, #0] -10002998: 2867 cmp r0, #103 @ 0x67 -1000299a: d818 bhi.n 100029ce <_vsnprintf+0x1b6> -1000299c: 2825 cmp r0, #37 @ 0x25 -1000299e: d200 bcs.n 100029a2 <_vsnprintf+0x18a> -100029a0: e24c b.n 10002e3c <_vsnprintf+0x624> -100029a2: 0003 movs r3, r0 -100029a4: 3b25 subs r3, #37 @ 0x25 -100029a6: b2da uxtb r2, r3 -100029a8: 2a42 cmp r2, #66 @ 0x42 -100029aa: d900 bls.n 100029ae <_vsnprintf+0x196> -100029ac: e246 b.n 10002e3c <_vsnprintf+0x624> -100029ae: 0093 lsls r3, r2, #2 -100029b0: 4a8a ldr r2, [pc, #552] @ (10002bdc <_vsnprintf+0x3c4>) -100029b2: 58d3 ldr r3, [r2, r3] -100029b4: 469f mov pc, r3 -100029b6: 2380 movs r3, #128 @ 0x80 -100029b8: 009b lsls r3, r3, #2 -100029ba: 431f orrs r7, r3 -100029bc: 3201 adds r2, #1 -100029be: 9211 str r2, [sp, #68] @ 0x44 -100029c0: e7e8 b.n 10002994 <_vsnprintf+0x17c> -100029c2: 2380 movs r3, #128 @ 0x80 -100029c4: 005b lsls r3, r3, #1 -100029c6: 431f orrs r7, r3 -100029c8: 3201 adds r2, #1 -100029ca: 9211 str r2, [sp, #68] @ 0x44 -100029cc: e7e2 b.n 10002994 <_vsnprintf+0x17c> -100029ce: 2878 cmp r0, #120 @ 0x78 -100029d0: d900 bls.n 100029d4 <_vsnprintf+0x1bc> -100029d2: e233 b.n 10002e3c <_vsnprintf+0x624> -100029d4: 2869 cmp r0, #105 @ 0x69 -100029d6: d200 bcs.n 100029da <_vsnprintf+0x1c2> -100029d8: e230 b.n 10002e3c <_vsnprintf+0x624> -100029da: 0002 movs r2, r0 -100029dc: 3a69 subs r2, #105 @ 0x69 -100029de: b2d2 uxtb r2, r2 -100029e0: 2301 movs r3, #1 -100029e2: 4093 lsls r3, r2 -100029e4: 4a7e ldr r2, [pc, #504] @ (10002be0 <_vsnprintf+0x3c8>) -100029e6: 4213 tst r3, r2 -100029e8: d111 bne.n 10002a0e <_vsnprintf+0x1f6> -100029ea: 061a lsls r2, r3, #24 -100029ec: d500 bpl.n 100029f0 <_vsnprintf+0x1d8> -100029ee: e200 b.n 10002df2 <_vsnprintf+0x5da> -100029f0: 055b lsls r3, r3, #21 -100029f2: d400 bmi.n 100029f6 <_vsnprintf+0x1de> -100029f4: e222 b.n 10002e3c <_vsnprintf+0x624> -100029f6: 9b1c ldr r3, [sp, #112] @ 0x70 -100029f8: 1d1a adds r2, r3, #4 -100029fa: 921c str r2, [sp, #112] @ 0x70 -100029fc: 681b ldr r3, [r3, #0] -100029fe: 469a mov sl, r3 -10002a00: 2c00 cmp r4, #0 -10002a02: d000 beq.n 10002a06 <_vsnprintf+0x1ee> -10002a04: e1b2 b.n 10002d6c <_vsnprintf+0x554> -10002a06: 2201 movs r2, #1 -10002a08: 4252 negs r2, r2 -10002a0a: 4653 mov r3, sl -10002a0c: e18e b.n 10002d2c <_vsnprintf+0x514> -10002a0e: 286f cmp r0, #111 @ 0x6f -10002a10: d00e beq.n 10002a30 <_vsnprintf+0x218> -10002a12: d806 bhi.n 10002a22 <_vsnprintf+0x20a> -10002a14: 2858 cmp r0, #88 @ 0x58 -10002a16: d03d beq.n 10002a94 <_vsnprintf+0x27c> -10002a18: 2862 cmp r0, #98 @ 0x62 -10002a1a: d104 bne.n 10002a26 <_vsnprintf+0x20e> -10002a1c: 2302 movs r3, #2 -10002a1e: 469c mov ip, r3 -10002a20: e008 b.n 10002a34 <_vsnprintf+0x21c> -10002a22: 2878 cmp r0, #120 @ 0x78 -10002a24: d039 beq.n 10002a9a <_vsnprintf+0x282> -10002a26: 2310 movs r3, #16 -10002a28: 439f bics r7, r3 -10002a2a: 3b06 subs r3, #6 -10002a2c: 469c mov ip, r3 -10002a2e: e001 b.n 10002a34 <_vsnprintf+0x21c> -10002a30: 2308 movs r3, #8 -10002a32: 469c mov ip, r3 -10002a34: 2858 cmp r0, #88 @ 0x58 -10002a36: d033 beq.n 10002aa0 <_vsnprintf+0x288> -10002a38: 2869 cmp r0, #105 @ 0x69 -10002a3a: d003 beq.n 10002a44 <_vsnprintf+0x22c> -10002a3c: 2864 cmp r0, #100 @ 0x64 -10002a3e: d001 beq.n 10002a44 <_vsnprintf+0x22c> -10002a40: 220c movs r2, #12 -10002a42: 4397 bics r7, r2 -10002a44: 057a lsls r2, r7, #21 -10002a46: d501 bpl.n 10002a4c <_vsnprintf+0x234> -10002a48: 2201 movs r2, #1 -10002a4a: 4397 bics r7, r2 -10002a4c: 2869 cmp r0, #105 @ 0x69 -10002a4e: d02a beq.n 10002aa6 <_vsnprintf+0x28e> -10002a50: 2864 cmp r0, #100 @ 0x64 -10002a52: d028 beq.n 10002aa6 <_vsnprintf+0x28e> -10002a54: 05ba lsls r2, r7, #22 -10002a56: d500 bpl.n 10002a5a <_vsnprintf+0x242> -10002a58: e09f b.n 10002b9a <_vsnprintf+0x382> -10002a5a: 05fa lsls r2, r7, #23 -10002a5c: d500 bpl.n 10002a60 <_vsnprintf+0x248> -10002a5e: e0c1 b.n 10002be4 <_vsnprintf+0x3cc> -10002a60: 067a lsls r2, r7, #25 -10002a62: d400 bmi.n 10002a66 <_vsnprintf+0x24e> -10002a64: e0d3 b.n 10002c0e <_vsnprintf+0x3f6> -10002a66: 9a1c ldr r2, [sp, #112] @ 0x70 -10002a68: 1d11 adds r1, r2, #4 -10002a6a: 911c str r1, [sp, #112] @ 0x70 -10002a6c: 6811 ldr r1, [r2, #0] -10002a6e: 22ff movs r2, #255 @ 0xff -10002a70: 400a ands r2, r1 -10002a72: 9705 str r7, [sp, #20] -10002a74: 9b0b ldr r3, [sp, #44] @ 0x2c -10002a76: 9304 str r3, [sp, #16] -10002a78: 9403 str r4, [sp, #12] -10002a7a: 4663 mov r3, ip -10002a7c: 9302 str r3, [sp, #8] -10002a7e: 2300 movs r3, #0 -10002a80: 9301 str r3, [sp, #4] -10002a82: 9200 str r2, [sp, #0] -10002a84: 465b mov r3, fp -10002a86: 002a movs r2, r5 -10002a88: 4641 mov r1, r8 -10002a8a: 0030 movs r0, r6 -10002a8c: f7ff fa25 bl 10001eda <_ntoa_long> -10002a90: 0005 movs r5, r0 -10002a92: e027 b.n 10002ae4 <_vsnprintf+0x2cc> -10002a94: 2310 movs r3, #16 -10002a96: 469c mov ip, r3 -10002a98: e7cc b.n 10002a34 <_vsnprintf+0x21c> -10002a9a: 2310 movs r3, #16 -10002a9c: 469c mov ip, r3 -10002a9e: e7c9 b.n 10002a34 <_vsnprintf+0x21c> -10002aa0: 2220 movs r2, #32 -10002aa2: 4317 orrs r7, r2 -10002aa4: e7c8 b.n 10002a38 <_vsnprintf+0x220> -10002aa6: 05ba lsls r2, r7, #22 -10002aa8: d420 bmi.n 10002aec <_vsnprintf+0x2d4> -10002aaa: 05fa lsls r2, r7, #23 -10002aac: d450 bmi.n 10002b50 <_vsnprintf+0x338> -10002aae: 067a lsls r2, r7, #25 -10002ab0: d566 bpl.n 10002b80 <_vsnprintf+0x368> -10002ab2: 9a1c ldr r2, [sp, #112] @ 0x70 -10002ab4: 1d11 adds r1, r2, #4 -10002ab6: 911c str r1, [sp, #112] @ 0x70 -10002ab8: 6811 ldr r1, [r2, #0] -10002aba: 22ff movs r2, #255 @ 0xff -10002abc: 400a ands r2, r1 -10002abe: 17d0 asrs r0, r2, #31 -10002ac0: 1811 adds r1, r2, r0 -10002ac2: 4041 eors r1, r0 -10002ac4: 9705 str r7, [sp, #20] -10002ac6: 9b0b ldr r3, [sp, #44] @ 0x2c -10002ac8: 9304 str r3, [sp, #16] -10002aca: 9403 str r4, [sp, #12] -10002acc: 4663 mov r3, ip -10002ace: 9302 str r3, [sp, #8] -10002ad0: 0fd2 lsrs r2, r2, #31 -10002ad2: 9201 str r2, [sp, #4] -10002ad4: 9100 str r1, [sp, #0] -10002ad6: 465b mov r3, fp -10002ad8: 002a movs r2, r5 -10002ada: 4641 mov r1, r8 -10002adc: 0030 movs r0, r6 -10002ade: f7ff f9fc bl 10001eda <_ntoa_long> -10002ae2: 0005 movs r5, r0 -10002ae4: 9b11 ldr r3, [sp, #68] @ 0x44 -10002ae6: 3301 adds r3, #1 -10002ae8: 9311 str r3, [sp, #68] @ 0x44 -10002aea: e6a5 b.n 10002838 <_vsnprintf+0x20> -10002aec: 9a1c ldr r2, [sp, #112] @ 0x70 -10002aee: 3207 adds r2, #7 -10002af0: 2107 movs r1, #7 -10002af2: 438a bics r2, r1 -10002af4: 0011 movs r1, r2 -10002af6: 3108 adds r1, #8 -10002af8: 911c str r1, [sp, #112] @ 0x70 -10002afa: 6811 ldr r1, [r2, #0] -10002afc: 6853 ldr r3, [r2, #4] -10002afe: 4699 mov r9, r3 -10002b00: 17db asrs r3, r3, #31 -10002b02: 930c str r3, [sp, #48] @ 0x30 -10002b04: 930d str r3, [sp, #52] @ 0x34 -10002b06: 9a0c ldr r2, [sp, #48] @ 0x30 -10002b08: 9b0d ldr r3, [sp, #52] @ 0x34 -10002b0a: 0010 movs r0, r2 -10002b0c: 4048 eors r0, r1 -10002b0e: 900e str r0, [sp, #56] @ 0x38 -10002b10: 464a mov r2, r9 -10002b12: 4053 eors r3, r2 -10002b14: 930f str r3, [sp, #60] @ 0x3c -10002b16: 980e ldr r0, [sp, #56] @ 0x38 -10002b18: 990f ldr r1, [sp, #60] @ 0x3c -10002b1a: 9a0c ldr r2, [sp, #48] @ 0x30 -10002b1c: 9b0d ldr r3, [sp, #52] @ 0x34 -10002b1e: 1a80 subs r0, r0, r2 -10002b20: 4199 sbcs r1, r3 -10002b22: 900e str r0, [sp, #56] @ 0x38 -10002b24: 910f str r1, [sp, #60] @ 0x3c -10002b26: 9708 str r7, [sp, #32] -10002b28: 9b0b ldr r3, [sp, #44] @ 0x2c -10002b2a: 9307 str r3, [sp, #28] -10002b2c: 9406 str r4, [sp, #24] -10002b2e: 4663 mov r3, ip -10002b30: 9304 str r3, [sp, #16] -10002b32: 2300 movs r3, #0 -10002b34: 9305 str r3, [sp, #20] -10002b36: 464b mov r3, r9 -10002b38: 0fda lsrs r2, r3, #31 -10002b3a: 9202 str r2, [sp, #8] -10002b3c: 9000 str r0, [sp, #0] -10002b3e: 9101 str r1, [sp, #4] -10002b40: 465b mov r3, fp -10002b42: 002a movs r2, r5 -10002b44: 4641 mov r1, r8 -10002b46: 0030 movs r0, r6 -10002b48: f7ff fa25 bl 10001f96 <_ntoa_long_long> -10002b4c: 0005 movs r5, r0 -10002b4e: e7c9 b.n 10002ae4 <_vsnprintf+0x2cc> -10002b50: 9a1c ldr r2, [sp, #112] @ 0x70 -10002b52: 1d11 adds r1, r2, #4 -10002b54: 911c str r1, [sp, #112] @ 0x70 -10002b56: 6812 ldr r2, [r2, #0] -10002b58: 17d0 asrs r0, r2, #31 -10002b5a: 1811 adds r1, r2, r0 -10002b5c: 4041 eors r1, r0 -10002b5e: 9705 str r7, [sp, #20] -10002b60: 9b0b ldr r3, [sp, #44] @ 0x2c -10002b62: 9304 str r3, [sp, #16] -10002b64: 9403 str r4, [sp, #12] -10002b66: 4663 mov r3, ip -10002b68: 9302 str r3, [sp, #8] -10002b6a: 0fd2 lsrs r2, r2, #31 -10002b6c: 9201 str r2, [sp, #4] -10002b6e: 9100 str r1, [sp, #0] -10002b70: 465b mov r3, fp -10002b72: 002a movs r2, r5 -10002b74: 4641 mov r1, r8 -10002b76: 0030 movs r0, r6 -10002b78: f7ff f9af bl 10001eda <_ntoa_long> -10002b7c: 0005 movs r5, r0 -10002b7e: e7b1 b.n 10002ae4 <_vsnprintf+0x2cc> -10002b80: 063a lsls r2, r7, #24 -10002b82: d505 bpl.n 10002b90 <_vsnprintf+0x378> -10002b84: 9a1c ldr r2, [sp, #112] @ 0x70 -10002b86: 1d11 adds r1, r2, #4 -10002b88: 911c str r1, [sp, #112] @ 0x70 -10002b8a: 2300 movs r3, #0 -10002b8c: 5ed2 ldrsh r2, [r2, r3] -10002b8e: e796 b.n 10002abe <_vsnprintf+0x2a6> -10002b90: 9a1c ldr r2, [sp, #112] @ 0x70 -10002b92: 1d11 adds r1, r2, #4 -10002b94: 911c str r1, [sp, #112] @ 0x70 -10002b96: 6812 ldr r2, [r2, #0] -10002b98: e791 b.n 10002abe <_vsnprintf+0x2a6> -10002b9a: 9a1c ldr r2, [sp, #112] @ 0x70 -10002b9c: 3207 adds r2, #7 -10002b9e: 2107 movs r1, #7 -10002ba0: 438a bics r2, r1 -10002ba2: 0011 movs r1, r2 -10002ba4: 3108 adds r1, #8 -10002ba6: 911c str r1, [sp, #112] @ 0x70 -10002ba8: 9708 str r7, [sp, #32] -10002baa: 9b0b ldr r3, [sp, #44] @ 0x2c -10002bac: 9307 str r3, [sp, #28] -10002bae: 9406 str r4, [sp, #24] -10002bb0: 4663 mov r3, ip -10002bb2: 9304 str r3, [sp, #16] -10002bb4: 2300 movs r3, #0 -10002bb6: 9305 str r3, [sp, #20] -10002bb8: 9302 str r3, [sp, #8] -10002bba: 6853 ldr r3, [r2, #4] -10002bbc: 6812 ldr r2, [r2, #0] -10002bbe: 9200 str r2, [sp, #0] -10002bc0: 9301 str r3, [sp, #4] -10002bc2: 465b mov r3, fp -10002bc4: 002a movs r2, r5 -10002bc6: 4641 mov r1, r8 -10002bc8: 0030 movs r0, r6 -10002bca: f7ff f9e4 bl 10001f96 <_ntoa_long_long> -10002bce: 0005 movs r5, r0 -10002bd0: e788 b.n 10002ae4 <_vsnprintf+0x2cc> -10002bd2: 46c0 nop @ (mov r8, r8) -10002bd4: 10004b7c .word 0x10004b7c -10002bd8: 10004bc0 .word 0x10004bc0 -10002bdc: 10004c0c .word 0x10004c0c -10002be0: 00009041 .word 0x00009041 -10002be4: 9a1c ldr r2, [sp, #112] @ 0x70 -10002be6: 1d11 adds r1, r2, #4 -10002be8: 911c str r1, [sp, #112] @ 0x70 -10002bea: 9705 str r7, [sp, #20] -10002bec: 9b0b ldr r3, [sp, #44] @ 0x2c -10002bee: 9304 str r3, [sp, #16] -10002bf0: 9403 str r4, [sp, #12] -10002bf2: 4663 mov r3, ip -10002bf4: 9302 str r3, [sp, #8] -10002bf6: 2300 movs r3, #0 -10002bf8: 9301 str r3, [sp, #4] -10002bfa: 6813 ldr r3, [r2, #0] -10002bfc: 9300 str r3, [sp, #0] -10002bfe: 465b mov r3, fp -10002c00: 002a movs r2, r5 -10002c02: 4641 mov r1, r8 -10002c04: 0030 movs r0, r6 -10002c06: f7ff f968 bl 10001eda <_ntoa_long> -10002c0a: 0005 movs r5, r0 -10002c0c: e76a b.n 10002ae4 <_vsnprintf+0x2cc> -10002c0e: 063a lsls r2, r7, #24 -10002c10: d506 bpl.n 10002c20 <_vsnprintf+0x408> -10002c12: 9a1c ldr r2, [sp, #112] @ 0x70 -10002c14: 1d11 adds r1, r2, #4 -10002c16: 911c str r1, [sp, #112] @ 0x70 -10002c18: 6812 ldr r2, [r2, #0] -10002c1a: 0412 lsls r2, r2, #16 -10002c1c: 0c12 lsrs r2, r2, #16 -10002c1e: e728 b.n 10002a72 <_vsnprintf+0x25a> -10002c20: 9a1c ldr r2, [sp, #112] @ 0x70 -10002c22: 1d11 adds r1, r2, #4 -10002c24: 911c str r1, [sp, #112] @ 0x70 -10002c26: 6812 ldr r2, [r2, #0] -10002c28: e723 b.n 10002a72 <_vsnprintf+0x25a> -10002c2a: 2846 cmp r0, #70 @ 0x46 -10002c2c: d019 beq.n 10002c62 <_vsnprintf+0x44a> -10002c2e: 9b1c ldr r3, [sp, #112] @ 0x70 -10002c30: 3307 adds r3, #7 -10002c32: 2207 movs r2, #7 -10002c34: 4393 bics r3, r2 -10002c36: 001a movs r2, r3 -10002c38: 3208 adds r2, #8 -10002c3a: 921c str r2, [sp, #112] @ 0x70 -10002c3c: 9704 str r7, [sp, #16] -10002c3e: 9a0b ldr r2, [sp, #44] @ 0x2c -10002c40: 9203 str r2, [sp, #12] -10002c42: 9402 str r4, [sp, #8] -10002c44: 681a ldr r2, [r3, #0] -10002c46: 685b ldr r3, [r3, #4] -10002c48: 9200 str r2, [sp, #0] -10002c4a: 9301 str r3, [sp, #4] -10002c4c: 465b mov r3, fp -10002c4e: 002a movs r2, r5 -10002c50: 4641 mov r1, r8 -10002c52: 0030 movs r0, r6 -10002c54: f7ff fc36 bl 100024c4 <_ftoa> -10002c58: 0005 movs r5, r0 -10002c5a: 9b11 ldr r3, [sp, #68] @ 0x44 -10002c5c: 3301 adds r3, #1 -10002c5e: 9311 str r3, [sp, #68] @ 0x44 -10002c60: e5ea b.n 10002838 <_vsnprintf+0x20> -10002c62: 2320 movs r3, #32 -10002c64: 431f orrs r7, r3 -10002c66: e7e2 b.n 10002c2e <_vsnprintf+0x416> -10002c68: 2867 cmp r0, #103 @ 0x67 -10002c6a: d001 beq.n 10002c70 <_vsnprintf+0x458> -10002c6c: 2847 cmp r0, #71 @ 0x47 -10002c6e: d102 bne.n 10002c76 <_vsnprintf+0x45e> -10002c70: 2380 movs r3, #128 @ 0x80 -10002c72: 011b lsls r3, r3, #4 -10002c74: 431f orrs r7, r3 -10002c76: 2845 cmp r0, #69 @ 0x45 -10002c78: d001 beq.n 10002c7e <_vsnprintf+0x466> -10002c7a: 2847 cmp r0, #71 @ 0x47 -10002c7c: d101 bne.n 10002c82 <_vsnprintf+0x46a> -10002c7e: 2320 movs r3, #32 -10002c80: 431f orrs r7, r3 -10002c82: 9b1c ldr r3, [sp, #112] @ 0x70 -10002c84: 3307 adds r3, #7 -10002c86: 2207 movs r2, #7 -10002c88: 4393 bics r3, r2 -10002c8a: 001a movs r2, r3 -10002c8c: 3208 adds r2, #8 -10002c8e: 921c str r2, [sp, #112] @ 0x70 -10002c90: 9704 str r7, [sp, #16] -10002c92: 9a0b ldr r2, [sp, #44] @ 0x2c -10002c94: 9203 str r2, [sp, #12] -10002c96: 9402 str r4, [sp, #8] -10002c98: 681a ldr r2, [r3, #0] -10002c9a: 685b ldr r3, [r3, #4] -10002c9c: 9200 str r2, [sp, #0] -10002c9e: 9301 str r3, [sp, #4] -10002ca0: 465b mov r3, fp -10002ca2: 002a movs r2, r5 -10002ca4: 4641 mov r1, r8 -10002ca6: 0030 movs r0, r6 -10002ca8: f7ff f9fc bl 100020a4 <_etoa> -10002cac: 0005 movs r5, r0 -10002cae: 9b11 ldr r3, [sp, #68] @ 0x44 -10002cb0: 3301 adds r3, #1 -10002cb2: 9311 str r3, [sp, #68] @ 0x44 -10002cb4: e5c0 b.n 10002838 <_vsnprintf+0x20> -10002cb6: 2302 movs r3, #2 -10002cb8: 001a movs r2, r3 -10002cba: 403a ands r2, r7 -10002cbc: 4691 mov r9, r2 -10002cbe: 423b tst r3, r7 -10002cc0: d01d beq.n 10002cfe <_vsnprintf+0x4e6> -10002cc2: 2401 movs r4, #1 -10002cc4: 9b1c ldr r3, [sp, #112] @ 0x70 -10002cc6: 1d1a adds r2, r3, #4 -10002cc8: 921c str r2, [sp, #112] @ 0x70 -10002cca: 1c6f adds r7, r5, #1 -10002ccc: 7818 ldrb r0, [r3, #0] -10002cce: 465b mov r3, fp -10002cd0: 002a movs r2, r5 -10002cd2: 4641 mov r1, r8 -10002cd4: 47b0 blx r6 -10002cd6: 464b mov r3, r9 -10002cd8: 2b00 cmp r3, #0 -10002cda: d114 bne.n 10002d06 <_vsnprintf+0x4ee> -10002cdc: 9b11 ldr r3, [sp, #68] @ 0x44 -10002cde: 3301 adds r3, #1 -10002ce0: 9311 str r3, [sp, #68] @ 0x44 -10002ce2: 003d movs r5, r7 -10002ce4: e5a8 b.n 10002838 <_vsnprintf+0x20> -10002ce6: 1c57 adds r7, r2, #1 -10002ce8: 465b mov r3, fp -10002cea: 4641 mov r1, r8 -10002cec: 2020 movs r0, #32 -10002cee: 47b0 blx r6 -10002cf0: 0023 movs r3, r4 -10002cf2: 003a movs r2, r7 -10002cf4: 1c5c adds r4, r3, #1 -10002cf6: 429d cmp r5, r3 -10002cf8: d8f5 bhi.n 10002ce6 <_vsnprintf+0x4ce> -10002cfa: 0015 movs r5, r2 -10002cfc: e7e2 b.n 10002cc4 <_vsnprintf+0x4ac> -10002cfe: 2301 movs r3, #1 -10002d00: 002a movs r2, r5 -10002d02: 9d0b ldr r5, [sp, #44] @ 0x2c -10002d04: e7f6 b.n 10002cf4 <_vsnprintf+0x4dc> -10002d06: 003a movs r2, r7 -10002d08: 46b1 mov r9, r6 -10002d0a: 9e0b ldr r6, [sp, #44] @ 0x2c -10002d0c: e006 b.n 10002d1c <_vsnprintf+0x504> -10002d0e: 1c57 adds r7, r2, #1 -10002d10: 465b mov r3, fp -10002d12: 4641 mov r1, r8 -10002d14: 2020 movs r0, #32 -10002d16: 47c8 blx r9 -10002d18: 002c movs r4, r5 -10002d1a: 003a movs r2, r7 -10002d1c: 1c65 adds r5, r4, #1 -10002d1e: 42a6 cmp r6, r4 -10002d20: d8f5 bhi.n 10002d0e <_vsnprintf+0x4f6> -10002d22: 0017 movs r7, r2 -10002d24: 464e mov r6, r9 -10002d26: e7d9 b.n 10002cdc <_vsnprintf+0x4c4> -10002d28: 3301 adds r3, #1 -10002d2a: 000a movs r2, r1 -10002d2c: 7819 ldrb r1, [r3, #0] -10002d2e: 2900 cmp r1, #0 -10002d30: d002 beq.n 10002d38 <_vsnprintf+0x520> -10002d32: 1e51 subs r1, r2, #1 -10002d34: 2a00 cmp r2, #0 -10002d36: d1f7 bne.n 10002d28 <_vsnprintf+0x510> -10002d38: 4652 mov r2, sl -10002d3a: 1a9b subs r3, r3, r2 -10002d3c: 2280 movs r2, #128 @ 0x80 -10002d3e: 00d2 lsls r2, r2, #3 -10002d40: 0039 movs r1, r7 -10002d42: 4011 ands r1, r2 -10002d44: 4689 mov r9, r1 -10002d46: 4217 tst r7, r2 -10002d48: d002 beq.n 10002d50 <_vsnprintf+0x538> -10002d4a: 42a3 cmp r3, r4 -10002d4c: d900 bls.n 10002d50 <_vsnprintf+0x538> -10002d4e: 0023 movs r3, r4 -10002d50: 2202 movs r2, #2 -10002d52: 0011 movs r1, r2 -10002d54: 4039 ands r1, r7 -10002d56: 9110 str r1, [sp, #64] @ 0x40 -10002d58: 423a tst r2, r7 -10002d5a: d009 beq.n 10002d70 <_vsnprintf+0x558> -10002d5c: 002a movs r2, r5 -10002d5e: 0025 movs r5, r4 -10002d60: 4657 mov r7, sl -10002d62: 469a mov sl, r3 -10002d64: 0033 movs r3, r6 -10002d66: 464e mov r6, r9 -10002d68: 4699 mov r9, r3 -10002d6a: e021 b.n 10002db0 <_vsnprintf+0x598> -10002d6c: 0022 movs r2, r4 -10002d6e: e64c b.n 10002a0a <_vsnprintf+0x1f2> -10002d70: 002a movs r2, r5 -10002d72: 4645 mov r5, r8 -10002d74: 46a0 mov r8, r4 -10002d76: e006 b.n 10002d86 <_vsnprintf+0x56e> -10002d78: 1c54 adds r4, r2, #1 -10002d7a: 465b mov r3, fp -10002d7c: 0029 movs r1, r5 -10002d7e: 2020 movs r0, #32 -10002d80: 47b0 blx r6 -10002d82: 003b movs r3, r7 -10002d84: 0022 movs r2, r4 -10002d86: 1c5f adds r7, r3, #1 -10002d88: 990b ldr r1, [sp, #44] @ 0x2c -10002d8a: 4299 cmp r1, r3 -10002d8c: d8f4 bhi.n 10002d78 <_vsnprintf+0x560> -10002d8e: 4644 mov r4, r8 -10002d90: 46a8 mov r8, r5 -10002d92: 003b movs r3, r7 -10002d94: 0025 movs r5, r4 -10002d96: 4657 mov r7, sl -10002d98: 469a mov sl, r3 -10002d9a: 0033 movs r3, r6 -10002d9c: 464e mov r6, r9 -10002d9e: 4699 mov r9, r3 -10002da0: e006 b.n 10002db0 <_vsnprintf+0x598> -10002da2: 001d movs r5, r3 -10002da4: 3701 adds r7, #1 -10002da6: 1c54 adds r4, r2, #1 -10002da8: 465b mov r3, fp -10002daa: 4641 mov r1, r8 -10002dac: 47c8 blx r9 -10002dae: 0022 movs r2, r4 -10002db0: 7838 ldrb r0, [r7, #0] -10002db2: 2800 cmp r0, #0 -10002db4: d004 beq.n 10002dc0 <_vsnprintf+0x5a8> -10002db6: 2e00 cmp r6, #0 -10002db8: d0f4 beq.n 10002da4 <_vsnprintf+0x58c> -10002dba: 1e6b subs r3, r5, #1 -10002dbc: 2d00 cmp r5, #0 -10002dbe: d1f0 bne.n 10002da2 <_vsnprintf+0x58a> -10002dc0: 0015 movs r5, r2 -10002dc2: 4653 mov r3, sl -10002dc4: 464e mov r6, r9 -10002dc6: 9a10 ldr r2, [sp, #64] @ 0x40 -10002dc8: 2a00 cmp r2, #0 -10002dca: d103 bne.n 10002dd4 <_vsnprintf+0x5bc> -10002dcc: 9b11 ldr r3, [sp, #68] @ 0x44 -10002dce: 3301 adds r3, #1 -10002dd0: 9311 str r3, [sp, #68] @ 0x44 -10002dd2: e531 b.n 10002838 <_vsnprintf+0x20> -10002dd4: 9f0b ldr r7, [sp, #44] @ 0x2c -10002dd6: 002a movs r2, r5 -10002dd8: e006 b.n 10002de8 <_vsnprintf+0x5d0> -10002dda: 1c55 adds r5, r2, #1 -10002ddc: 465b mov r3, fp -10002dde: 4641 mov r1, r8 -10002de0: 2020 movs r0, #32 -10002de2: 47b0 blx r6 -10002de4: 0023 movs r3, r4 -10002de6: 002a movs r2, r5 -10002de8: 1c5c adds r4, r3, #1 -10002dea: 429f cmp r7, r3 -10002dec: d8f5 bhi.n 10002dda <_vsnprintf+0x5c2> -10002dee: 0015 movs r5, r2 -10002df0: e7ec b.n 10002dcc <_vsnprintf+0x5b4> -10002df2: 2321 movs r3, #33 @ 0x21 -10002df4: 433b orrs r3, r7 -10002df6: 9a1c ldr r2, [sp, #112] @ 0x70 -10002df8: 1d11 adds r1, r2, #4 -10002dfa: 911c str r1, [sp, #112] @ 0x70 -10002dfc: 6812 ldr r2, [r2, #0] -10002dfe: 9305 str r3, [sp, #20] -10002e00: 2308 movs r3, #8 -10002e02: 9304 str r3, [sp, #16] -10002e04: 9403 str r4, [sp, #12] -10002e06: 3308 adds r3, #8 -10002e08: 9302 str r3, [sp, #8] -10002e0a: 2300 movs r3, #0 -10002e0c: 9301 str r3, [sp, #4] -10002e0e: 9200 str r2, [sp, #0] -10002e10: 465b mov r3, fp -10002e12: 002a movs r2, r5 -10002e14: 4641 mov r1, r8 -10002e16: 0030 movs r0, r6 -10002e18: f7ff f85f bl 10001eda <_ntoa_long> -10002e1c: 0005 movs r5, r0 -10002e1e: 9b11 ldr r3, [sp, #68] @ 0x44 -10002e20: 3301 adds r3, #1 -10002e22: 9311 str r3, [sp, #68] @ 0x44 -10002e24: e508 b.n 10002838 <_vsnprintf+0x20> -10002e26: 1c6c adds r4, r5, #1 -10002e28: 465b mov r3, fp -10002e2a: 002a movs r2, r5 -10002e2c: 4641 mov r1, r8 -10002e2e: 2025 movs r0, #37 @ 0x25 -10002e30: 47b0 blx r6 -10002e32: 9b11 ldr r3, [sp, #68] @ 0x44 -10002e34: 3301 adds r3, #1 -10002e36: 9311 str r3, [sp, #68] @ 0x44 -10002e38: 0025 movs r5, r4 -10002e3a: e4fd b.n 10002838 <_vsnprintf+0x20> -10002e3c: 1c6c adds r4, r5, #1 -10002e3e: 465b mov r3, fp -10002e40: 002a movs r2, r5 -10002e42: 4641 mov r1, r8 -10002e44: 47b0 blx r6 -10002e46: 9b11 ldr r3, [sp, #68] @ 0x44 -10002e48: 3301 adds r3, #1 -10002e4a: 9311 str r3, [sp, #68] @ 0x44 -10002e4c: 0025 movs r5, r4 -10002e4e: e4f3 b.n 10002838 <_vsnprintf+0x20> -10002e50: 4b0a ldr r3, [pc, #40] @ (10002e7c <_vsnprintf+0x664>) -10002e52: 469a mov sl, r3 -10002e54: e4ee b.n 10002834 <_vsnprintf+0x1c> -10002e56: 46b2 mov sl, r6 -10002e58: 455d cmp r5, fp -10002e5a: d30d bcc.n 10002e78 <_vsnprintf+0x660> -10002e5c: 465b mov r3, fp -10002e5e: 1e5a subs r2, r3, #1 -10002e60: 465b mov r3, fp -10002e62: 4641 mov r1, r8 -10002e64: 2000 movs r0, #0 -10002e66: 47d0 blx sl -10002e68: 0028 movs r0, r5 -10002e6a: b013 add sp, #76 @ 0x4c -10002e6c: bcf0 pop {r4, r5, r6, r7} -10002e6e: 46bb mov fp, r7 -10002e70: 46b2 mov sl, r6 -10002e72: 46a9 mov r9, r5 -10002e74: 46a0 mov r8, r4 -10002e76: bdf0 pop {r4, r5, r6, r7, pc} -10002e78: 002a movs r2, r5 -10002e7a: e7f1 b.n 10002e60 <_vsnprintf+0x648> -10002e7c: 10001ce9 .word 0x10001ce9 +10001ada : +10001ada: b510 push {r4, lr} +10001adc: 7301 strb r1, [r0, #12] +10001ade: 6042 str r2, [r0, #4] +10001ae0: 6083 str r3, [r0, #8] +10001ae2: f7ff ffe0 bl 10001aa6 +10001ae6: bd10 pop {r4, pc} -10002e80 : -10002e80: b500 push {lr} -10002e82: b085 sub sp, #20 -10002e84: 9002 str r0, [sp, #8] -10002e86: 9103 str r1, [sp, #12] -10002e88: 2101 movs r1, #1 -10002e8a: 4804 ldr r0, [pc, #16] @ (10002e9c ) -10002e8c: 9300 str r3, [sp, #0] -10002e8e: 0013 movs r3, r2 -10002e90: 424a negs r2, r1 -10002e92: a902 add r1, sp, #8 -10002e94: f7ff fcc0 bl 10002818 <_vsnprintf> -10002e98: b005 add sp, #20 -10002e9a: bd00 pop {pc} -10002e9c: 10001ceb .word 0x10001ceb +10001ae8 : +10001ae8: b5f0 push {r4, r5, r6, r7, lr} +10001aea: 46c6 mov lr, r8 +10001aec: b500 push {lr} +10001aee: 0005 movs r5, r0 +10001af0: 1e0c subs r4, r1, #0 +10001af2: d103 bne.n 10001afc +10001af4: 0020 movs r0, r4 +10001af6: bc80 pop {r7} +10001af8: 46b8 mov r8, r7 +10001afa: bdf0 pop {r4, r5, r6, r7, pc} +10001afc: f7ff ff66 bl 100019cc +10001b00: 7846 ldrb r6, [r0, #1] +10001b02: 2e00 cmp r6, #0 +10001b04: d0f6 beq.n 10001af4 +10001b06: 0031 movs r1, r6 +10001b08: 0028 movs r0, r5 +10001b0a: f7ff ff5f bl 100019cc +10001b0e: 7847 ldrb r7, [r0, #1] +10001b10: 2300 movs r3, #0 +10001b12: 4698 mov r8, r3 +10001b14: 7043 strb r3, [r0, #1] +10001b16: 0021 movs r1, r4 +10001b18: 0028 movs r0, r5 +10001b1a: f7ff ff57 bl 100019cc +10001b1e: 4643 mov r3, r8 +10001b20: 7043 strb r3, [r0, #1] +10001b22: 0032 movs r2, r6 +10001b24: 0021 movs r1, r4 +10001b26: 0028 movs r0, r5 +10001b28: f7ff ff9e bl 10001a68 +10001b2c: 0004 movs r4, r0 +10001b2e: 0039 movs r1, r7 +10001b30: 0028 movs r0, r5 +10001b32: f7ff ffd9 bl 10001ae8 +10001b36: 0002 movs r2, r0 +10001b38: 0021 movs r1, r4 +10001b3a: 0028 movs r0, r5 +10001b3c: f7ff ff94 bl 10001a68 +10001b40: 0004 movs r4, r0 +10001b42: e7d7 b.n 10001af4 -10002ea0 <__aeabi_bits_init>: -10002ea0: 4801 ldr r0, [pc, #4] @ (10002ea8 <__aeabi_bits_init+0x8>) -10002ea2: 2104 movs r1, #4 -10002ea4: 4b01 ldr r3, [pc, #4] @ (10002eac <__aeabi_bits_init+0xc>) -10002ea6: 4718 bx r3 -10002ea8: 200002b0 .word 0x200002b0 -10002eac: 10002ed1 .word 0x10002ed1 +10001b44 : +10001b44: b5f0 push {r4, r5, r6, r7, lr} +10001b46: 46c6 mov lr, r8 +10001b48: b500 push {lr} +10001b4a: 0004 movs r4, r0 +10001b4c: 000d movs r5, r1 +10001b4e: 0017 movs r7, r2 +10001b50: 2900 cmp r1, #0 +10001b52: d027 beq.n 10001ba4 +10001b54: f7ff ff3a bl 100019cc +10001b58: 7843 ldrb r3, [r0, #1] +10001b5a: 2b00 cmp r3, #0 +10001b5c: d128 bne.n 10001bb0 +10001b5e: 7883 ldrb r3, [r0, #2] +10001b60: 2b00 cmp r3, #0 +10001b62: d12b bne.n 10001bbc +10001b64: 7801 ldrb r1, [r0, #0] +10001b66: 0020 movs r0, r4 +10001b68: f7ff ffbe bl 10001ae8 +10001b6c: 0006 movs r6, r0 +10001b6e: 4680 mov r8, r0 +10001b70: 2f00 cmp r7, #0 +10001b72: d00a beq.n 10001b8a +10001b74: 7be1 ldrb r1, [r4, #15] +10001b76: 2900 cmp r1, #0 +10001b78: d126 bne.n 10001bc8 +10001b7a: 7ba3 ldrb r3, [r4, #14] +10001b7c: 2b00 cmp r3, #0 +10001b7e: d103 bne.n 10001b88 +10001b80: 7be3 ldrb r3, [r4, #15] +10001b82: 2b00 cmp r3, #0 +10001b84: d125 bne.n 10001bd2 +10001b86: 73a5 strb r5, [r4, #14] +10001b88: 73e5 strb r5, [r4, #15] +10001b8a: 4643 mov r3, r8 +10001b8c: 2b00 cmp r3, #0 +10001b8e: d126 bne.n 10001bde +10001b90: 0029 movs r1, r5 +10001b92: 0020 movs r0, r4 +10001b94: f7ff ff1a bl 100019cc +10001b98: 2300 movs r3, #0 +10001b9a: 7043 strb r3, [r0, #1] +10001b9c: 0030 movs r0, r6 +10001b9e: bc80 pop {r7} +10001ba0: 46b8 mov r8, r7 +10001ba2: bdf0 pop {r4, r5, r6, r7, pc} +10001ba4: 4b11 ldr r3, [pc, #68] @ (10001bec ) +10001ba6: 4a12 ldr r2, [pc, #72] @ (10001bf0 ) +10001ba8: 4812 ldr r0, [pc, #72] @ (10001bf4 ) +10001baa: 2138 movs r1, #56 @ 0x38 +10001bac: f000 fac6 bl 1000213c <__assert_func> +10001bb0: 4b11 ldr r3, [pc, #68] @ (10001bf8 ) +10001bb2: 4a0f ldr r2, [pc, #60] @ (10001bf0 ) +10001bb4: 480f ldr r0, [pc, #60] @ (10001bf4 ) +10001bb6: 213a movs r1, #58 @ 0x3a +10001bb8: f000 fac0 bl 1000213c <__assert_func> +10001bbc: 4b0f ldr r3, [pc, #60] @ (10001bfc ) +10001bbe: 4a0c ldr r2, [pc, #48] @ (10001bf0 ) +10001bc0: 480c ldr r0, [pc, #48] @ (10001bf4 ) +10001bc2: 213b movs r1, #59 @ 0x3b +10001bc4: f000 faba bl 1000213c <__assert_func> +10001bc8: 0020 movs r0, r4 +10001bca: f7ff feff bl 100019cc +10001bce: 7045 strb r5, [r0, #1] +10001bd0: e7d3 b.n 10001b7a +10001bd2: 4b0b ldr r3, [pc, #44] @ (10001c00 ) +10001bd4: 4a06 ldr r2, [pc, #24] @ (10001bf0 ) +10001bd6: 4807 ldr r0, [pc, #28] @ (10001bf4 ) +10001bd8: 2142 movs r1, #66 @ 0x42 +10001bda: f000 faaf bl 1000213c <__assert_func> +10001bde: 0031 movs r1, r6 +10001be0: 0020 movs r0, r4 +10001be2: f7ff fef3 bl 100019cc +10001be6: 2300 movs r3, #0 +10001be8: 7083 strb r3, [r0, #2] +10001bea: e7d1 b.n 10001b90 +10001bec: 10005180 .word 0x10005180 +10001bf0: 10005250 .word 0x10005250 +10001bf4: 10005188 .word 0x10005188 +10001bf8: 100051cc .word 0x100051cc +10001bfc: 100051f4 .word 0x100051f4 +10001c00: 10004ebc .word 0x10004ebc -10002eb0 : -10002eb0: b510 push {r4, lr} -10002eb2: 0001 movs r1, r0 -10002eb4: 2318 movs r3, #24 -10002eb6: 881b ldrh r3, [r3, #0] -10002eb8: 2214 movs r2, #20 -10002eba: 8810 ldrh r0, [r2, #0] -10002ebc: 4798 blx r3 -10002ebe: bd10 pop {r4, pc} +10001c04 : +10001c04: b570 push {r4, r5, r6, lr} +10001c06: 0004 movs r4, r0 +10001c08: 000a movs r2, r1 +10001c0a: 7b45 ldrb r5, [r0, #13] +10001c0c: 0029 movs r1, r5 +10001c0e: f7ff ff99 bl 10001b44 +10001c12: 7360 strb r0, [r4, #13] +10001c14: 0028 movs r0, r5 +10001c16: bd70 pop {r4, r5, r6, pc} -10002ec0 : -10002ec0: b510 push {r4, lr} -10002ec2: 0001 movs r1, r0 -10002ec4: 2318 movs r3, #24 -10002ec6: 881b ldrh r3, [r3, #0] -10002ec8: 2216 movs r2, #22 -10002eca: 8810 ldrh r0, [r2, #0] -10002ecc: 4798 blx r3 -10002ece: bd10 pop {r4, pc} +10001c18 : +10001c18: b570 push {r4, r5, r6, lr} +10001c1a: 0006 movs r6, r0 +10001c1c: 1e0c subs r4, r1, #0 +10001c1e: d040 beq.n 10001ca2 +10001c20: 7b43 ldrb r3, [r0, #13] +10001c22: 428b cmp r3, r1 +10001c24: d007 beq.n 10001c36 +10001c26: f7ff fed1 bl 100019cc +10001c2a: 0005 movs r5, r0 +10001c2c: 7881 ldrb r1, [r0, #2] +10001c2e: 2900 cmp r1, #0 +10001c30: d106 bne.n 10001c40 +10001c32: 2000 movs r0, #0 +10001c34: e036 b.n 10001ca4 +10001c36: 2101 movs r1, #1 +10001c38: f7ff ffe4 bl 10001c04 +10001c3c: 2001 movs r0, #1 +10001c3e: e031 b.n 10001ca4 +10001c40: 0030 movs r0, r6 +10001c42: f7ff fec3 bl 100019cc +10001c46: 7801 ldrb r1, [r0, #0] +10001c48: 42a1 cmp r1, r4 +10001c4a: d00d beq.n 10001c68 +10001c4c: 0030 movs r0, r6 +10001c4e: f7ff febd bl 100019cc +10001c52: 7841 ldrb r1, [r0, #1] +10001c54: 42a1 cmp r1, r4 +10001c56: d00a beq.n 10001c6e +10001c58: 2900 cmp r1, #0 +10001c5a: d1f7 bne.n 10001c4c +10001c5c: 4b12 ldr r3, [pc, #72] @ (10001ca8 ) +10001c5e: 4a13 ldr r2, [pc, #76] @ (10001cac ) +10001c60: 4813 ldr r0, [pc, #76] @ (10001cb0 ) +10001c62: 316b adds r1, #107 @ 0x6b +10001c64: f000 fa6a bl 1000213c <__assert_func> +10001c68: 786b ldrb r3, [r5, #1] +10001c6a: 7003 strb r3, [r0, #0] +10001c6c: e001 b.n 10001c72 +10001c6e: 786b ldrb r3, [r5, #1] +10001c70: 7043 strb r3, [r0, #1] +10001c72: 2300 movs r3, #0 +10001c74: 70ab strb r3, [r5, #2] +10001c76: 706b strb r3, [r5, #1] +10001c78: 2201 movs r2, #1 +10001c7a: 0021 movs r1, r4 +10001c7c: 0030 movs r0, r6 +10001c7e: f7ff ff61 bl 10001b44 +10001c82: 0002 movs r2, r0 +10001c84: 7b71 ldrb r1, [r6, #13] +10001c86: 4281 cmp r1, r0 +10001c88: d005 beq.n 10001c96 +10001c8a: 0030 movs r0, r6 +10001c8c: f7ff feec bl 10001a68 +10001c90: 7370 strb r0, [r6, #13] +10001c92: 2001 movs r0, #1 +10001c94: e006 b.n 10001ca4 +10001c96: 4b07 ldr r3, [pc, #28] @ (10001cb4 ) +10001c98: 4a04 ldr r2, [pc, #16] @ (10001cac ) +10001c9a: 4805 ldr r0, [pc, #20] @ (10001cb0 ) +10001c9c: 2171 movs r1, #113 @ 0x71 +10001c9e: f000 fa4d bl 1000213c <__assert_func> +10001ca2: 2000 movs r0, #0 +10001ca4: bd70 pop {r4, r5, r6, pc} +10001ca6: 46c0 nop @ (mov r8, r8) +10001ca8: 10004c48 .word 0x10004c48 +10001cac: 10005238 .word 0x10005238 +10001cb0: 10005188 .word 0x10005188 +10001cb4: 10005218 .word 0x10005218 -10002ed0 : -10002ed0: b5f0 push {r4, r5, r6, r7, lr} -10002ed2: 46c6 mov lr, r8 -10002ed4: b500 push {lr} -10002ed6: 0007 movs r7, r0 -10002ed8: 000e movs r6, r1 -10002eda: 2500 movs r5, #0 -10002edc: 2301 movs r3, #1 -10002ede: 4698 mov r8, r3 -10002ee0: e000 b.n 10002ee4 -10002ee2: 3501 adds r5, #1 -10002ee4: 42b5 cmp r5, r6 -10002ee6: d20a bcs.n 10002efe -10002ee8: 00ac lsls r4, r5, #2 -10002eea: 193c adds r4, r7, r4 -10002eec: 6820 ldr r0, [r4, #0] -10002eee: f7ff ffdf bl 10002eb0 -10002ef2: 6020 str r0, [r4, #0] -10002ef4: 2800 cmp r0, #0 -10002ef6: d1f4 bne.n 10002ee2 -10002ef8: 2300 movs r3, #0 -10002efa: 4698 mov r8, r3 -10002efc: e7f1 b.n 10002ee2 -10002efe: 4640 mov r0, r8 -10002f00: bc80 pop {r7} -10002f02: 46b8 mov r8, r7 -10002f04: bdf0 pop {r4, r5, r6, r7, pc} +10001cb8 : +10001cb8: b570 push {r4, r5, r6, lr} +10001cba: 0004 movs r4, r0 +10001cbc: 000d movs r5, r1 +10001cbe: 2006 movs r0, #6 +10001cc0: f000 f97e bl 10001fc0 +10001cc4: 00c0 lsls r0, r0, #3 +10001cc6: 0029 movs r1, r5 +10001cc8: f001 fc20 bl 1000350c <__wrap___aeabi_uidiv> +10001ccc: 09c6 lsrs r6, r0, #7 +10001cce: d008 beq.n 10001ce2 +10001cd0: 4b0e ldr r3, [pc, #56] @ (10001d0c ) +10001cd2: 429e cmp r6, r3 +10001cd4: d817 bhi.n 10001d06 +10001cd6: 237f movs r3, #127 @ 0x7f +10001cd8: 4003 ands r3, r0 +10001cda: 3301 adds r3, #1 +10001cdc: 0035 movs r5, r6 +10001cde: 085e lsrs r6, r3, #1 +10001ce0: e000 b.n 10001ce4 +10001ce2: 2501 movs r5, #1 +10001ce4: 6265 str r5, [r4, #36] @ 0x24 +10001ce6: 62a6 str r6, [r4, #40] @ 0x28 +10001ce8: 342c adds r4, #44 @ 0x2c +10001cea: 2380 movs r3, #128 @ 0x80 +10001cec: 019b lsls r3, r3, #6 +10001cee: 4323 orrs r3, r4 +10001cf0: 2200 movs r2, #0 +10001cf2: 601a str r2, [r3, #0] +10001cf4: 2006 movs r0, #6 +10001cf6: f000 f963 bl 10001fc0 +10001cfa: 0080 lsls r0, r0, #2 +10001cfc: 01a9 lsls r1, r5, #6 +10001cfe: 1989 adds r1, r1, r6 +10001d00: f001 fc04 bl 1000350c <__wrap___aeabi_uidiv> +10001d04: bd70 pop {r4, r5, r6, pc} +10001d06: 2600 movs r6, #0 +10001d08: 4d01 ldr r5, [pc, #4] @ (10001d10 ) +10001d0a: e7eb b.n 10001ce4 +10001d0c: 0000fffe .word 0x0000fffe +10001d10: 0000ffff .word 0x0000ffff + +10001d14 : +10001d14: 2900 cmp r1, #0 +10001d16: d009 beq.n 10001d2c +10001d18: 220a movs r2, #10 +10001d1a: 4b06 ldr r3, [pc, #24] @ (10001d34 ) +10001d1c: 469c mov ip, r3 +10001d1e: 4460 add r0, ip +10001d20: 4243 negs r3, r0 +10001d22: 4158 adcs r0, r3 +10001d24: 4b04 ldr r3, [pc, #16] @ (10001d38 ) +10001d26: 0040 lsls r0, r0, #1 +10001d28: 52c2 strh r2, [r0, r3] +10001d2a: 4770 bx lr +10001d2c: 2280 movs r2, #128 @ 0x80 +10001d2e: 0052 lsls r2, r2, #1 +10001d30: e7f3 b.n 10001d1a +10001d32: 46c0 nop @ (mov r8, r8) +10001d34: bffc8000 .word 0xbffc8000 +10001d38: 20000774 .word 0x20000774 + +10001d3c : +10001d3c: b570 push {r4, r5, r6, lr} +10001d3e: 0005 movs r5, r0 +10001d40: 000c movs r4, r1 +10001d42: 2006 movs r0, #6 +10001d44: f000 f93c bl 10001fc0 +10001d48: 2800 cmp r0, #0 +10001d4a: d029 beq.n 10001da0 +10001d4c: 4b16 ldr r3, [pc, #88] @ (10001da8 ) +10001d4e: 429d cmp r5, r3 +10001d50: d027 beq.n 10001da2 +10001d52: 2280 movs r2, #128 @ 0x80 +10001d54: 03d2 lsls r2, r2, #15 +10001d56: 4b15 ldr r3, [pc, #84] @ (10001dac ) +10001d58: 601a str r2, [r3, #0] +10001d5a: 4b15 ldr r3, [pc, #84] @ (10001db0 ) +10001d5c: 601a str r2, [r3, #0] +10001d5e: 4b15 ldr r3, [pc, #84] @ (10001db4 ) +10001d60: 689b ldr r3, [r3, #8] +10001d62: 0011 movs r1, r2 +10001d64: 4399 bics r1, r3 +10001d66: d1fa bne.n 10001d5e +10001d68: 2100 movs r1, #0 +10001d6a: 0028 movs r0, r5 +10001d6c: f7ff ffd2 bl 10001d14 +10001d70: 0021 movs r1, r4 +10001d72: 0028 movs r0, r5 +10001d74: f7ff ffa0 bl 10001cb8 +10001d78: 0029 movs r1, r5 +10001d7a: 312c adds r1, #44 @ 0x2c +10001d7c: 6aeb ldr r3, [r5, #44] @ 0x2c +10001d7e: 2260 movs r2, #96 @ 0x60 +10001d80: 4053 eors r3, r2 +10001d82: 320e adds r2, #14 +10001d84: 401a ands r2, r3 +10001d86: 2380 movs r3, #128 @ 0x80 +10001d88: 015b lsls r3, r3, #5 +10001d8a: 430b orrs r3, r1 +10001d8c: 601a str r2, [r3, #0] +10001d8e: 4b0a ldr r3, [pc, #40] @ (10001db8 ) +10001d90: 632b str r3, [r5, #48] @ 0x30 +10001d92: 2380 movs r3, #128 @ 0x80 +10001d94: 019b lsls r3, r3, #6 +10001d96: 430b orrs r3, r1 +10001d98: 2210 movs r2, #16 +10001d9a: 601a str r2, [r3, #0] +10001d9c: 2303 movs r3, #3 +10001d9e: 64ab str r3, [r5, #72] @ 0x48 +10001da0: bd70 pop {r4, r5, r6, pc} +10001da2: 2280 movs r2, #128 @ 0x80 +10001da4: 0412 lsls r2, r2, #16 +10001da6: e7d6 b.n 10001d56 +10001da8: 40038000 .word 0x40038000 +10001dac: 4000e000 .word 0x4000e000 +10001db0: 4000f000 .word 0x4000f000 +10001db4: 4000c000 .word 0x4000c000 +10001db8: 00000301 .word 0x00000301 + +10001dbc : +10001dbc: b5f8 push {r3, r4, r5, r6, r7, lr} +10001dbe: 46de mov lr, fp +10001dc0: 4657 mov r7, sl +10001dc2: 464e mov r6, r9 +10001dc4: 4645 mov r5, r8 +10001dc6: b5e0 push {r5, r6, r7, lr} +10001dc8: 0006 movs r6, r0 +10001dca: 000f movs r7, r1 +10001dcc: 0015 movs r5, r2 +10001dce: 9a0a ldr r2, [sp, #40] @ 0x28 +10001dd0: 4293 cmp r3, r2 +10001dd2: d34e bcc.n 10001e72 +10001dd4: 0e1a lsrs r2, r3, #24 +10001dd6: 4692 mov sl, r2 +10001dd8: 021b lsls r3, r3, #8 +10001dda: 4698 mov r8, r3 +10001ddc: 9a0a ldr r2, [sp, #40] @ 0x28 +10001dde: 2300 movs r3, #0 +10001de0: 4640 mov r0, r8 +10001de2: 4651 mov r1, sl +10001de4: f001 fbd0 bl 10003588 <__wrap___aeabi_uldivmod> +10001de8: 4681 mov r9, r0 +10001dea: 0074 lsls r4, r6, #1 +10001dec: 19a4 adds r4, r4, r6 +10001dee: 00a4 lsls r4, r4, #2 +10001df0: 4b2e ldr r3, [pc, #184] @ (10001eac ) +10001df2: 469c mov ip, r3 +10001df4: 4464 add r4, ip +10001df6: 6863 ldr r3, [r4, #4] +10001df8: 4283 cmp r3, r0 +10001dfa: d200 bcs.n 10001dfe +10001dfc: 6060 str r0, [r4, #4] +10001dfe: 1f33 subs r3, r6, #4 +10001e00: b2db uxtb r3, r3 +10001e02: 469b mov fp, r3 +10001e04: 2b01 cmp r3, #1 +10001e06: d93a bls.n 10001e7e +10001e08: 23c0 movs r3, #192 @ 0xc0 +10001e0a: 019b lsls r3, r3, #6 +10001e0c: 4323 orrs r3, r4 +10001e0e: 2280 movs r2, #128 @ 0x80 +10001e10: 0112 lsls r2, r2, #4 +10001e12: 601a str r2, [r3, #0] +10001e14: 4b26 ldr r3, [pc, #152] @ (10001eb0 ) +10001e16: 00b2 lsls r2, r6, #2 +10001e18: 58d1 ldr r1, [r2, r3] +10001e1a: 2900 cmp r1, #0 +10001e1c: d005 beq.n 10001e2a +10001e1e: 6958 ldr r0, [r3, #20] +10001e20: f001 fb74 bl 1000350c <__wrap___aeabi_uidiv> +10001e24: 3001 adds r0, #1 +10001e26: 3801 subs r0, #1 +10001e28: d1fd bne.n 10001e26 +10001e2a: 016d lsls r5, r5, #5 +10001e2c: 6823 ldr r3, [r4, #0] +10001e2e: 405d eors r5, r3 +10001e30: 22e0 movs r2, #224 @ 0xe0 +10001e32: 402a ands r2, r5 +10001e34: 2380 movs r3, #128 @ 0x80 +10001e36: 015b lsls r3, r3, #5 +10001e38: 4323 orrs r3, r4 +10001e3a: 601a str r2, [r3, #0] +10001e3c: 465a mov r2, fp +10001e3e: 2a01 cmp r2, #1 +10001e40: d928 bls.n 10001e94 +10001e42: 2380 movs r3, #128 @ 0x80 +10001e44: 019b lsls r3, r3, #6 +10001e46: 4323 orrs r3, r4 +10001e48: 2280 movs r2, #128 @ 0x80 +10001e4a: 0112 lsls r2, r2, #4 +10001e4c: 601a str r2, [r3, #0] +10001e4e: 464b mov r3, r9 +10001e50: 6063 str r3, [r4, #4] +10001e52: 464a mov r2, r9 +10001e54: 2300 movs r3, #0 +10001e56: 4640 mov r0, r8 +10001e58: 4651 mov r1, sl +10001e5a: f001 fb95 bl 10003588 <__wrap___aeabi_uldivmod> +10001e5e: 4b14 ldr r3, [pc, #80] @ (10001eb0 ) +10001e60: 00b6 lsls r6, r6, #2 +10001e62: 5198 str r0, [r3, r6] +10001e64: 2001 movs r0, #1 +10001e66: bcf0 pop {r4, r5, r6, r7} +10001e68: 46bb mov fp, r7 +10001e6a: 46b2 mov sl, r6 +10001e6c: 46a9 mov r9, r5 +10001e6e: 46a0 mov r8, r4 +10001e70: bdf8 pop {r3, r4, r5, r6, r7, pc} +10001e72: 4b10 ldr r3, [pc, #64] @ (10001eb4 ) +10001e74: 4a10 ldr r2, [pc, #64] @ (10001eb8 ) +10001e76: 4811 ldr r0, [pc, #68] @ (10001ebc ) +10001e78: 212d movs r1, #45 @ 0x2d +10001e7a: f000 f95f bl 1000213c <__assert_func> +10001e7e: 2f01 cmp r7, #1 +10001e80: d1c2 bne.n 10001e08 +10001e82: 23c0 movs r3, #192 @ 0xc0 +10001e84: 019b lsls r3, r3, #6 +10001e86: 4323 orrs r3, r4 +10001e88: 2203 movs r2, #3 +10001e8a: 601a str r2, [r3, #0] +10001e8c: 68a3 ldr r3, [r4, #8] +10001e8e: 07db lsls r3, r3, #31 +10001e90: d5fc bpl.n 10001e8c +10001e92: e7ca b.n 10001e2a +10001e94: 6821 ldr r1, [r4, #0] +10001e96: 4079 eors r1, r7 +10001e98: 2203 movs r2, #3 +10001e9a: 400a ands r2, r1 +10001e9c: 601a str r2, [r3, #0] +10001e9e: 68a3 ldr r3, [r4, #8] +10001ea0: 2501 movs r5, #1 +10001ea2: 40bd lsls r5, r7 +10001ea4: 421d tst r5, r3 +10001ea6: d0fa beq.n 10001e9e +10001ea8: e7cb b.n 10001e42 +10001eaa: 46c0 nop @ (mov r8, r8) +10001eac: 40008000 .word 0x40008000 +10001eb0: 200004bc .word 0x200004bc +10001eb4: 10005284 .word 0x10005284 +10001eb8: 100052e8 .word 0x100052e8 +10001ebc: 10005298 .word 0x10005298 + +10001ec0 : +10001ec0: b530 push {r4, r5, lr} +10001ec2: b083 sub sp, #12 +10001ec4: 200c movs r0, #12 +10001ec6: f000 f917 bl 100020f8 +10001eca: f7fe fcd1 bl 10000870 +10001ece: 2800 cmp r0, #0 +10001ed0: d00d beq.n 10001eee +10001ed2: 2300 movs r3, #0 +10001ed4: e004 b.n 10001ee0 +10001ed6: 4a2e ldr r2, [pc, #184] @ (10001f90 ) +10001ed8: 0099 lsls r1, r3, #2 +10001eda: 482e ldr r0, [pc, #184] @ (10001f94 ) +10001edc: 5088 str r0, [r1, r2] +10001ede: 3301 adds r3, #1 +10001ee0: 2b09 cmp r3, #9 +10001ee2: d9f8 bls.n 10001ed6 +10001ee4: 4b2a ldr r3, [pc, #168] @ (10001f90 ) +10001ee6: 4a2c ldr r2, [pc, #176] @ (10001f98 ) +10001ee8: 625a str r2, [r3, #36] @ 0x24 +10001eea: b003 add sp, #12 +10001eec: bd30 pop {r4, r5, pc} +10001eee: 4b2b ldr r3, [pc, #172] @ (10001f9c ) +10001ef0: 2200 movs r2, #0 +10001ef2: 679a str r2, [r3, #120] @ 0x78 +10001ef4: f000 f908 bl 10002108 +10001ef8: 4b29 ldr r3, [pc, #164] @ (10001fa0 ) +10001efa: 2201 movs r2, #1 +10001efc: 601a str r2, [r3, #0] +10001efe: 4b27 ldr r3, [pc, #156] @ (10001f9c ) +10001f00: 6c5b ldr r3, [r3, #68] @ 0x44 +10001f02: 2b01 cmp r3, #1 +10001f04: d1fb bne.n 10001efe +10001f06: 4b27 ldr r3, [pc, #156] @ (10001fa4 ) +10001f08: 2203 movs r2, #3 +10001f0a: 601a str r2, [r3, #0] +10001f0c: 4b23 ldr r3, [pc, #140] @ (10001f9c ) +10001f0e: 6b9b ldr r3, [r3, #56] @ 0x38 +10001f10: 2b01 cmp r3, #1 +10001f12: d1fb bne.n 10001f0c +10001f14: 3301 adds r3, #1 +10001f16: 9300 str r3, [sp, #0] +10001f18: 3304 adds r3, #4 +10001f1a: 4a23 ldr r2, [pc, #140] @ (10001fa8 ) +10001f1c: 2101 movs r1, #1 +10001f1e: 4823 ldr r0, [pc, #140] @ (10001fac ) +10001f20: f000 f854 bl 10001fcc +10001f24: 2305 movs r3, #5 +10001f26: 9300 str r3, [sp, #0] +10001f28: 4a21 ldr r2, [pc, #132] @ (10001fb0 ) +10001f2a: 2101 movs r1, #1 +10001f2c: 4821 ldr r0, [pc, #132] @ (10001fb4 ) +10001f2e: f000 f84d bl 10001fcc +10001f32: 4b21 ldr r3, [pc, #132] @ (10001fb8 ) +10001f34: 9300 str r3, [sp, #0] +10001f36: 2200 movs r2, #0 +10001f38: 2102 movs r1, #2 +10001f3a: 2004 movs r0, #4 +10001f3c: f7ff ff3e bl 10001dbc +10001f40: 4d1e ldr r5, [pc, #120] @ (10001fbc ) +10001f42: 9500 str r5, [sp, #0] +10001f44: 002b movs r3, r5 +10001f46: 2200 movs r2, #0 +10001f48: 2101 movs r1, #1 +10001f4a: 2005 movs r0, #5 +10001f4c: f7ff ff36 bl 10001dbc +10001f50: 4c10 ldr r4, [pc, #64] @ (10001f94 ) +10001f52: 9400 str r4, [sp, #0] +10001f54: 0023 movs r3, r4 +10001f56: 2200 movs r2, #0 +10001f58: 2100 movs r1, #0 +10001f5a: 2007 movs r0, #7 +10001f5c: f7ff ff2e bl 10001dbc +10001f60: 9400 str r4, [sp, #0] +10001f62: 0023 movs r3, r4 +10001f64: 2200 movs r2, #0 +10001f66: 2100 movs r1, #0 +10001f68: 2008 movs r0, #8 +10001f6a: f7ff ff27 bl 10001dbc +10001f6e: 4b0a ldr r3, [pc, #40] @ (10001f98 ) +10001f70: 9300 str r3, [sp, #0] +10001f72: 0023 movs r3, r4 +10001f74: 2200 movs r2, #0 +10001f76: 2100 movs r1, #0 +10001f78: 2009 movs r0, #9 +10001f7a: f7ff ff1f bl 10001dbc +10001f7e: 9500 str r5, [sp, #0] +10001f80: 002b movs r3, r5 +10001f82: 2200 movs r2, #0 +10001f84: 2100 movs r1, #0 +10001f86: 2006 movs r0, #6 +10001f88: f7ff ff18 bl 10001dbc +10001f8c: e7ad b.n 10001eea +10001f8e: 46c0 nop @ (mov r8, r8) +10001f90: 200004bc .word 0x200004bc +10001f94: 02dc6c00 .word 0x02dc6c00 +10001f98: 0000b71b .word 0x0000b71b +10001f9c: 40008000 .word 0x40008000 +10001fa0: 4000b03c .word 0x4000b03c +10001fa4: 4000b030 .word 0x4000b030 +10001fa8: 59682f00 .word 0x59682f00 +10001fac: 40028000 .word 0x40028000 +10001fb0: 47868c00 .word 0x47868c00 +10001fb4: 4002c000 .word 0x4002c000 +10001fb8: 00b71b00 .word 0x00b71b00 +10001fbc: 07735940 .word 0x07735940 + +10001fc0 : +10001fc0: 4b01 ldr r3, [pc, #4] @ (10001fc8 ) +10001fc2: 0080 lsls r0, r0, #2 +10001fc4: 58c0 ldr r0, [r0, r3] +10001fc6: 4770 bx lr +10001fc8: 200004bc .word 0x200004bc + +10001fcc : +10001fcc: b5f0 push {r4, r5, r6, r7, lr} +10001fce: 46c6 mov lr, r8 +10001fd0: b500 push {lr} +10001fd2: 0004 movs r4, r0 +10001fd4: 000d movs r5, r1 +10001fd6: 0017 movs r7, r2 +10001fd8: 4698 mov r8, r3 +10001fda: 200c movs r0, #12 +10001fdc: f001 fa96 bl 1000350c <__wrap___aeabi_uidiv> +10001fe0: 0006 movs r6, r0 +10001fe2: 4b39 ldr r3, [pc, #228] @ (100020c8 ) +10001fe4: 18fa adds r2, r7, r3 +10001fe6: 4b39 ldr r3, [pc, #228] @ (100020cc ) +10001fe8: 429a cmp r2, r3 +10001fea: d841 bhi.n 10002070 +10001fec: 0143 lsls r3, r0, #5 +10001fee: 1a1b subs r3, r3, r0 +10001ff0: 0199 lsls r1, r3, #6 +10001ff2: 1ac9 subs r1, r1, r3 +10001ff4: 00c9 lsls r1, r1, #3 +10001ff6: 1809 adds r1, r1, r0 +10001ff8: 0189 lsls r1, r1, #6 +10001ffa: 0038 movs r0, r7 +10001ffc: f001 fa86 bl 1000350c <__wrap___aeabi_uidiv> +10002000: 0002 movs r2, r0 +10002002: 3a10 subs r2, #16 +10002004: 2398 movs r3, #152 @ 0x98 +10002006: 005b lsls r3, r3, #1 +10002008: 429a cmp r2, r3 +1000200a: d837 bhi.n 1000207c +1000200c: 4643 mov r3, r8 +1000200e: 3b01 subs r3, #1 +10002010: 2b06 cmp r3, #6 +10002012: d839 bhi.n 10002088 +10002014: 9b06 ldr r3, [sp, #24] +10002016: 3b01 subs r3, #1 +10002018: 2b06 cmp r3, #6 +1000201a: d835 bhi.n 10002088 +1000201c: 093f lsrs r7, r7, #4 +1000201e: 42b7 cmp r7, r6 +10002020: d338 bcc.n 10002094 +10002022: 4643 mov r3, r8 +10002024: 041e lsls r6, r3, #16 +10002026: 9b06 ldr r3, [sp, #24] +10002028: 031b lsls r3, r3, #12 +1000202a: 431e orrs r6, r3 +1000202c: 6823 ldr r3, [r4, #0] +1000202e: 2b00 cmp r3, #0 +10002030: db36 blt.n 100020a0 +10002032: 4b27 ldr r3, [pc, #156] @ (100020d0 ) +10002034: 429c cmp r4, r3 +10002036: d044 beq.n 100020c2 +10002038: 2380 movs r3, #128 @ 0x80 +1000203a: 015b lsls r3, r3, #5 +1000203c: 4a25 ldr r2, [pc, #148] @ (100020d4 ) +1000203e: 6013 str r3, [r2, #0] +10002040: 4a25 ldr r2, [pc, #148] @ (100020d8 ) +10002042: 6013 str r3, [r2, #0] +10002044: 4a25 ldr r2, [pc, #148] @ (100020dc ) +10002046: 6892 ldr r2, [r2, #8] +10002048: 0019 movs r1, r3 +1000204a: 4391 bics r1, r2 +1000204c: d1fa bne.n 10002044 +1000204e: 6025 str r5, [r4, #0] +10002050: 60a0 str r0, [r4, #8] +10002052: 1d22 adds r2, r4, #4 +10002054: 23c0 movs r3, #192 @ 0xc0 +10002056: 019b lsls r3, r3, #6 +10002058: 4313 orrs r3, r2 +1000205a: 2221 movs r2, #33 @ 0x21 +1000205c: 601a str r2, [r3, #0] +1000205e: 6822 ldr r2, [r4, #0] +10002060: 2a00 cmp r2, #0 +10002062: dafc bge.n 1000205e +10002064: 60e6 str r6, [r4, #12] +10002066: 2208 movs r2, #8 +10002068: 601a str r2, [r3, #0] +1000206a: bc80 pop {r7} +1000206c: 46b8 mov r8, r7 +1000206e: bdf0 pop {r4, r5, r6, r7, pc} +10002070: 4b1b ldr r3, [pc, #108] @ (100020e0 ) +10002072: 4a1c ldr r2, [pc, #112] @ (100020e4 ) +10002074: 481c ldr r0, [pc, #112] @ (100020e8 ) +10002076: 2111 movs r1, #17 +10002078: f000 f860 bl 1000213c <__assert_func> +1000207c: 4b1b ldr r3, [pc, #108] @ (100020ec ) +1000207e: 4a19 ldr r2, [pc, #100] @ (100020e4 ) +10002080: 4819 ldr r0, [pc, #100] @ (100020e8 ) +10002082: 2119 movs r1, #25 +10002084: f000 f85a bl 1000213c <__assert_func> +10002088: 4b19 ldr r3, [pc, #100] @ (100020f0 ) +1000208a: 4a16 ldr r2, [pc, #88] @ (100020e4 ) +1000208c: 4816 ldr r0, [pc, #88] @ (100020e8 ) +1000208e: 211c movs r1, #28 +10002090: f000 f854 bl 1000213c <__assert_func> +10002094: 4b17 ldr r3, [pc, #92] @ (100020f4 ) +10002096: 4a13 ldr r2, [pc, #76] @ (100020e4 ) +10002098: 4813 ldr r0, [pc, #76] @ (100020e8 ) +1000209a: 2123 movs r1, #35 @ 0x23 +1000209c: f000 f84e bl 1000213c <__assert_func> +100020a0: 6822 ldr r2, [r4, #0] +100020a2: 233f movs r3, #63 @ 0x3f +100020a4: 4013 ands r3, r2 +100020a6: 42ab cmp r3, r5 +100020a8: d1c3 bne.n 10002032 +100020aa: 68a3 ldr r3, [r4, #8] +100020ac: 051b lsls r3, r3, #20 +100020ae: 0d1b lsrs r3, r3, #20 +100020b0: 4283 cmp r3, r0 +100020b2: d1be bne.n 10002032 +100020b4: 68e3 ldr r3, [r4, #12] +100020b6: 22ee movs r2, #238 @ 0xee +100020b8: 02d2 lsls r2, r2, #11 +100020ba: 4013 ands r3, r2 +100020bc: 42b3 cmp r3, r6 +100020be: d1b8 bne.n 10002032 +100020c0: e7d3 b.n 1000206a +100020c2: 2380 movs r3, #128 @ 0x80 +100020c4: 019b lsls r3, r3, #6 +100020c6: e7b9 b.n 1000203c +100020c8: d34be880 .word 0xd34be880 +100020cc: 32a9f880 .word 0x32a9f880 +100020d0: 4002c000 .word 0x4002c000 +100020d4: 4000e000 .word 0x4000e000 +100020d8: 4000f000 .word 0x4000f000 +100020dc: 4000c000 .word 0x4000c000 +100020e0: 100052f8 .word 0x100052f8 +100020e4: 10005424 .word 0x10005424 +100020e8: 10005358 .word 0x10005358 +100020ec: 100053a0 .word 0x100053a0 +100020f0: 100053bc .word 0x100053bc +100020f4: 10005408 .word 0x10005408 + +100020f8 : +100020f8: 2380 movs r3, #128 @ 0x80 +100020fa: 009b lsls r3, r3, #2 +100020fc: 4303 orrs r3, r0 +100020fe: 4a01 ldr r2, [pc, #4] @ (10002104 ) +10002100: 62d3 str r3, [r2, #44] @ 0x2c +10002102: 4770 bx lr +10002104: 40058000 .word 0x40058000 + +10002108 : +10002108: 4b06 ldr r3, [pc, #24] @ (10002124 ) +1000210a: 22aa movs r2, #170 @ 0xaa +1000210c: 0112 lsls r2, r2, #4 +1000210e: 601a str r2, [r3, #0] +10002110: 222f movs r2, #47 @ 0x2f +10002112: 60da str r2, [r3, #12] +10002114: 4b04 ldr r3, [pc, #16] @ (10002128 ) +10002116: 4a05 ldr r2, [pc, #20] @ (1000212c ) +10002118: 601a str r2, [r3, #0] +1000211a: 4b02 ldr r3, [pc, #8] @ (10002124 ) +1000211c: 685b ldr r3, [r3, #4] +1000211e: 2b00 cmp r3, #0 +10002120: dafb bge.n 1000211a +10002122: 4770 bx lr +10002124: 40024000 .word 0x40024000 +10002128: 40026000 .word 0x40026000 +1000212c: 00fab000 .word 0x00fab000 + +10002130 <_exit>: +10002130: be00 bkpt 0x0000 +10002132: e7fd b.n 10002130 <_exit> + +10002134 : +10002134: b510 push {r4, lr} +10002136: f7ff fffb bl 10002130 <_exit> ... -10002f08 <__wrap___aeabi_idiv>: -10002f08: 4a12 ldr r2, [pc, #72] @ (10002f54 ) -10002f0a: 6f93 ldr r3, [r2, #120] @ 0x78 -10002f0c: 089b lsrs r3, r3, #2 -10002f0e: d215 bcs.n 10002f3c +1000213c <__assert_func>: +1000213c: b530 push {r4, r5, lr} +1000213e: b083 sub sp, #12 +10002140: 000d movs r5, r1 +10002142: 0019 movs r1, r3 +10002144: 2a00 cmp r2, #0 +10002146: d00b beq.n 10002160 <__assert_func+0x24> +10002148: 4b07 ldr r3, [pc, #28] @ (10002168 <__assert_func+0x2c>) +1000214a: 4c08 ldr r4, [pc, #32] @ (1000216c <__assert_func+0x30>) +1000214c: 9201 str r2, [sp, #4] +1000214e: 9300 str r3, [sp, #0] +10002150: 002b movs r3, r5 +10002152: 0002 movs r2, r0 +10002154: 0020 movs r0, r4 +10002156: f002 fa61 bl 1000461c <__wrap_printf> +1000215a: 2001 movs r0, #1 +1000215c: f7ff ffe8 bl 10002130 <_exit> +10002160: 4b03 ldr r3, [pc, #12] @ (10002170 <__assert_func+0x34>) +10002162: 001a movs r2, r3 +10002164: e7f1 b.n 1000214a <__assert_func+0xe> +10002166: 46c0 nop @ (mov r8, r8) +10002168: 10005430 .word 0x10005430 +1000216c: 10005440 .word 0x10005440 +10002170: 1000543c .word 0x1000543c -10002f10 : -10002f10: 6690 str r0, [r2, #104] @ 0x68 -10002f12: 66d1 str r1, [r2, #108] @ 0x6c -10002f14: 2900 cmp r1, #0 -10002f16: d005 beq.n 10002f24 -10002f18: e7ff b.n 10002f1a -10002f1a: e7ff b.n 10002f1c -10002f1c: e7ff b.n 10002f1e -10002f1e: 6f51 ldr r1, [r2, #116] @ 0x74 -10002f20: 6f10 ldr r0, [r2, #112] @ 0x70 -10002f22: 4770 bx lr -10002f24: b504 push {r2, lr} -10002f26: 2180 movs r1, #128 @ 0x80 -10002f28: 0609 lsls r1, r1, #24 -10002f2a: 17c2 asrs r2, r0, #31 -10002f2c: 4051 eors r1, r2 -10002f2e: 2800 cmp r0, #0 -10002f30: d000 beq.n 10002f34 -10002f32: 43c8 mvns r0, r1 -10002f34: f001 f8d0 bl 100040d8 <____aeabi_idiv0_veneer> -10002f38: 2100 movs r1, #0 -10002f3a: bd04 pop {r2, pc} +10002174 : +10002174: b570 push {r4, r5, r6, lr} +10002176: 4b2b ldr r3, [pc, #172] @ (10002224 ) +10002178: 4a2b ldr r2, [pc, #172] @ (10002228 ) +1000217a: 601a str r2, [r3, #0] +1000217c: 4b2b ldr r3, [pc, #172] @ (1000222c ) +1000217e: 4a2c ldr r2, [pc, #176] @ (10002230 ) +10002180: 601a str r2, [r3, #0] +10002182: 4b2c ldr r3, [pc, #176] @ (10002234 ) +10002184: 689a ldr r2, [r3, #8] +10002186: 4b2a ldr r3, [pc, #168] @ (10002230 ) +10002188: 4393 bics r3, r2 +1000218a: d1fa bne.n 10002182 +1000218c: 4c2a ldr r4, [pc, #168] @ (10002238 ) +1000218e: e001 b.n 10002194 +10002190: cc08 ldmia r4!, {r3} +10002192: 4798 blx r3 +10002194: 4b29 ldr r3, [pc, #164] @ (1000223c ) +10002196: 429c cmp r4, r3 +10002198: d3fa bcc.n 10002190 +1000219a: f7ff fe91 bl 10001ec0 +1000219e: 4b23 ldr r3, [pc, #140] @ (1000222c ) +100021a0: 4a27 ldr r2, [pc, #156] @ (10002240 ) +100021a2: 601a str r2, [r3, #0] +100021a4: 4b23 ldr r3, [pc, #140] @ (10002234 ) +100021a6: 689b ldr r3, [r3, #8] +100021a8: 43db mvns r3, r3 +100021aa: 01db lsls r3, r3, #7 +100021ac: d1fa bne.n 100021a4 +100021ae: 4b25 ldr r3, [pc, #148] @ (10002244 ) +100021b0: 2240 movs r2, #64 @ 0x40 +100021b2: 679a str r2, [r3, #120] @ 0x78 +100021b4: 675a str r2, [r3, #116] @ 0x74 +100021b6: 671a str r2, [r3, #112] @ 0x70 +100021b8: 66da str r2, [r3, #108] @ 0x6c +100021ba: 4c23 ldr r4, [pc, #140] @ (10002248 ) +100021bc: e009 b.n 100021d2 +100021be: 4b23 ldr r3, [pc, #140] @ (1000224c ) +100021c0: 4a23 ldr r2, [pc, #140] @ (10002250 ) +100021c2: 4824 ldr r0, [pc, #144] @ (10002254 ) +100021c4: 2186 movs r1, #134 @ 0x86 +100021c6: f7ff ffb9 bl 1000213c <__assert_func> +100021ca: 0020 movs r0, r4 +100021cc: f7fe fdc0 bl 10000d50 +100021d0: 3408 adds r4, #8 +100021d2: 4b21 ldr r3, [pc, #132] @ (10002258 ) +100021d4: 429c cmp r4, r3 +100021d6: d209 bcs.n 100021ec +100021d8: 6823 ldr r3, [r4, #0] +100021da: 2b00 cmp r3, #0 +100021dc: d0f5 beq.n 100021ca +100021de: 2b01 cmp r3, #1 +100021e0: d1ed bne.n 100021be +100021e2: 0020 movs r0, r4 +100021e4: f7fe fdc1 bl 10000d6a +100021e8: 3408 adds r4, #8 +100021ea: e7f2 b.n 100021d2 +100021ec: 4d1b ldr r5, [pc, #108] @ (1000225c ) +100021ee: 68a9 ldr r1, [r5, #8] +100021f0: 4c1b ldr r4, [pc, #108] @ (10002260 ) +100021f2: 22c0 movs r2, #192 @ 0xc0 +100021f4: 0020 movs r0, r4 +100021f6: f002 f881 bl 100042fc <__wrap___aeabi_memcpy> +100021fa: 60ac str r4, [r5, #8] +100021fc: f3ef 8305 mrs r3, IPSR +10002200: 2b00 cmp r3, #0 +10002202: d000 beq.n 10002206 +10002204: be00 bkpt 0x0000 +10002206: f7fe fb6d bl 100008e4 +1000220a: f7fe fd8b bl 10000d24 +1000220e: f7ff f8d1 bl 100013b4 +10002212: 4c14 ldr r4, [pc, #80] @ (10002264 ) +10002214: e001 b.n 1000221a +10002216: cc08 ldmia r4!, {r3} +10002218: 4798 blx r3 +1000221a: 4b13 ldr r3, [pc, #76] @ (10002268 ) +1000221c: 429c cmp r4, r3 +1000221e: d3fa bcc.n 10002216 +10002220: bd70 pop {r4, r5, r6, pc} +10002222: 46c0 nop @ (mov r8, r8) +10002224: 4000e000 .word 0x4000e000 +10002228: fefbcdbf .word 0xfefbcdbf +1000222c: 4000f000 .word 0x4000f000 +10002230: 003c7ffe .word 0x003c7ffe +10002234: 4000c000 .word 0x4000c000 +10002238: 20000370 .word 0x20000370 +1000223c: 20000380 .word 0x20000380 +10002240: 01ffffff .word 0x01ffffff +10002244: 4001f000 .word 0x4001f000 +10002248: 20000368 .word 0x20000368 +1000224c: 10005470 .word 0x10005470 +10002250: 100054f0 .word 0x100054f0 +10002254: 10005490 .word 0x10005490 +10002258: 20000370 .word 0x20000370 +1000225c: e000ed00 .word 0xe000ed00 +10002260: 20000000 .word 0x20000000 +10002264: 20000380 .word 0x20000380 +10002268: 20000384 .word 0x20000384 -10002f3c : -10002f3c: b5f0 push {r4, r5, r6, r7, lr} -10002f3e: 6e14 ldr r4, [r2, #96] @ 0x60 -10002f40: 6e55 ldr r5, [r2, #100] @ 0x64 -10002f42: 6f57 ldr r7, [r2, #116] @ 0x74 -10002f44: 6f16 ldr r6, [r2, #112] @ 0x70 -10002f46: f7ff ffe3 bl 10002f10 -10002f4a: 6614 str r4, [r2, #96] @ 0x60 -10002f4c: 6655 str r5, [r2, #100] @ 0x64 -10002f4e: 6757 str r7, [r2, #116] @ 0x74 -10002f50: 6716 str r6, [r2, #112] @ 0x70 -10002f52: bdf0 pop {r4, r5, r6, r7, pc} -10002f54: d0000000 .word 0xd0000000 +1000226c : +1000226c: b40f push {r0, r1, r2, r3} +1000226e: b500 push {lr} +10002270: b083 sub sp, #12 +10002272: 4808 ldr r0, [pc, #32] @ (10002294 ) +10002274: f002 f9a2 bl 100045bc <__wrap_puts> +10002278: 9b04 ldr r3, [sp, #16] +1000227a: 2b00 cmp r3, #0 +1000227c: d007 beq.n 1000228e +1000227e: a905 add r1, sp, #20 +10002280: 9101 str r1, [sp, #4] +10002282: 0018 movs r0, r3 +10002284: f002 f9aa bl 100045dc <__wrap_vprintf> +10002288: 4803 ldr r0, [pc, #12] @ (10002298 ) +1000228a: f002 f997 bl 100045bc <__wrap_puts> +1000228e: 2001 movs r0, #1 +10002290: f7ff ff4e bl 10002130 <_exit> +10002294: 100054dc .word 0x100054dc +10002298: 100054ec .word 0x100054ec -10002f58 <__wrap___aeabi_uidiv>: -10002f58: 4a11 ldr r2, [pc, #68] @ (10002fa0 ) -10002f5a: 6f93 ldr r3, [r2, #120] @ 0x78 -10002f5c: 089b lsrs r3, r3, #2 -10002f5e: d213 bcs.n 10002f88 +1000229c <_out_null>: +1000229c: 4770 bx lr -10002f60 : -10002f60: 6610 str r0, [r2, #96] @ 0x60 -10002f62: 6651 str r1, [r2, #100] @ 0x64 -10002f64: 2900 cmp r1, #0 -10002f66: d005 beq.n 10002f74 -10002f68: e7ff b.n 10002f6a -10002f6a: e7ff b.n 10002f6c -10002f6c: e7ff b.n 10002f6e -10002f6e: 6f51 ldr r1, [r2, #116] @ 0x74 -10002f70: 6f10 ldr r0, [r2, #112] @ 0x70 -10002f72: 4770 bx lr -10002f74: b504 push {r2, lr} -10002f76: 2800 cmp r0, #0 -10002f78: d001 beq.n 10002f7e -10002f7a: 2000 movs r0, #0 -10002f7c: 43c0 mvns r0, r0 -10002f7e: f001 f8ab bl 100040d8 <____aeabi_idiv0_veneer> -10002f82: 2100 movs r1, #0 -10002f84: bd04 pop {r2, pc} -10002f86: 46c0 nop @ (mov r8, r8) +1000229e <_out_fct>: +1000229e: b510 push {r4, lr} +100022a0: 2800 cmp r0, #0 +100022a2: d002 beq.n 100022aa <_out_fct+0xc> +100022a4: 680b ldr r3, [r1, #0] +100022a6: 6849 ldr r1, [r1, #4] +100022a8: 4798 blx r3 +100022aa: bd10 pop {r4, pc} -10002f88 : -10002f88: b5f0 push {r4, r5, r6, r7, lr} -10002f8a: 6e14 ldr r4, [r2, #96] @ 0x60 -10002f8c: 6e55 ldr r5, [r2, #100] @ 0x64 -10002f8e: 6f57 ldr r7, [r2, #116] @ 0x74 -10002f90: 6f16 ldr r6, [r2, #112] @ 0x70 -10002f92: f7ff ffe5 bl 10002f60 -10002f96: 6614 str r4, [r2, #96] @ 0x60 -10002f98: 6655 str r5, [r2, #100] @ 0x64 -10002f9a: 6757 str r7, [r2, #116] @ 0x74 -10002f9c: 6716 str r6, [r2, #112] @ 0x70 -10002f9e: bdf0 pop {r4, r5, r6, r7, pc} -10002fa0: d0000000 .word 0xd0000000 +100022ac <_atoi>: +100022ac: 0001 movs r1, r0 +100022ae: 2000 movs r0, #0 +100022b0: e007 b.n 100022c2 <_atoi+0x16> +100022b2: 0083 lsls r3, r0, #2 +100022b4: 181b adds r3, r3, r0 +100022b6: 005b lsls r3, r3, #1 +100022b8: 1c50 adds r0, r2, #1 +100022ba: 6008 str r0, [r1, #0] +100022bc: 7810 ldrb r0, [r2, #0] +100022be: 18c0 adds r0, r0, r3 +100022c0: 3830 subs r0, #48 @ 0x30 +100022c2: 680a ldr r2, [r1, #0] +100022c4: 7813 ldrb r3, [r2, #0] +100022c6: 3b30 subs r3, #48 @ 0x30 +100022c8: b2db uxtb r3, r3 +100022ca: 2b09 cmp r3, #9 +100022cc: d9f1 bls.n 100022b2 <_atoi+0x6> +100022ce: 4770 bx lr -10002fa4 <__wrap___aeabi_ldivmod>: -10002fa4: 4694 mov ip, r2 -10002fa6: 4a4a ldr r2, [pc, #296] @ (100030d0 ) -10002fa8: 6f92 ldr r2, [r2, #120] @ 0x78 -10002faa: 0892 lsrs r2, r2, #2 -10002fac: 4662 mov r2, ip -10002fae: d201 bcs.n 10002fb4 -10002fb0: e028 b.n 10003004 -10002fb2: 46c0 nop @ (mov r8, r8) +100022d0 <_out_rev>: +100022d0: b5f0 push {r4, r5, r6, r7, lr} +100022d2: 46de mov lr, fp +100022d4: 4657 mov r7, sl +100022d6: 464e mov r6, r9 +100022d8: 4645 mov r5, r8 +100022da: b5e0 push {r5, r6, r7, lr} +100022dc: b083 sub sp, #12 +100022de: 4693 mov fp, r2 +100022e0: 001f movs r7, r3 +100022e2: 9b0c ldr r3, [sp, #48] @ 0x30 +100022e4: 469a mov sl, r3 +100022e6: 9c0d ldr r4, [sp, #52] @ 0x34 +100022e8: 9b0e ldr r3, [sp, #56] @ 0x38 +100022ea: 4699 mov r9, r3 +100022ec: 9b0f ldr r3, [sp, #60] @ 0x3c +100022ee: 079b lsls r3, r3, #30 +100022f0: d003 beq.n 100022fa <_out_rev+0x2a> +100022f2: 46b8 mov r8, r7 +100022f4: 000f movs r7, r1 +100022f6: 0006 movs r6, r0 +100022f8: e022 b.n 10002340 <_out_rev+0x70> +100022fa: 9201 str r2, [sp, #4] +100022fc: 46a3 mov fp, r4 +100022fe: 4688 mov r8, r1 +10002300: 464e mov r6, r9 +10002302: 46b9 mov r9, r7 +10002304: 0007 movs r7, r0 +10002306: 42b4 cmp r4, r6 +10002308: d207 bcs.n 1000231a <_out_rev+0x4a> +1000230a: 1c55 adds r5, r2, #1 +1000230c: 464b mov r3, r9 +1000230e: 4641 mov r1, r8 +10002310: 2020 movs r0, #32 +10002312: 47b8 blx r7 +10002314: 3401 adds r4, #1 +10002316: 002a movs r2, r5 +10002318: e7f5 b.n 10002306 <_out_rev+0x36> +1000231a: 003d movs r5, r7 +1000231c: 464f mov r7, r9 +1000231e: 465c mov r4, fp +10002320: 9b01 ldr r3, [sp, #4] +10002322: 469b mov fp, r3 +10002324: 46b1 mov r9, r6 +10002326: 4646 mov r6, r8 +10002328: 46b8 mov r8, r7 +1000232a: 0037 movs r7, r6 +1000232c: 002e movs r6, r5 +1000232e: e007 b.n 10002340 <_out_rev+0x70> +10002330: 3c01 subs r4, #1 +10002332: 1c55 adds r5, r2, #1 +10002334: 4653 mov r3, sl +10002336: 5d18 ldrb r0, [r3, r4] +10002338: 4643 mov r3, r8 +1000233a: 0039 movs r1, r7 +1000233c: 47b0 blx r6 +1000233e: 002a movs r2, r5 +10002340: 2c00 cmp r4, #0 +10002342: d1f5 bne.n 10002330 <_out_rev+0x60> +10002344: 0035 movs r5, r6 +10002346: 003e movs r6, r7 +10002348: 4647 mov r7, r8 +1000234a: 9b0f ldr r3, [sp, #60] @ 0x3c +1000234c: 079b lsls r3, r3, #30 +1000234e: d407 bmi.n 10002360 <_out_rev+0x90> +10002350: 0010 movs r0, r2 +10002352: b003 add sp, #12 +10002354: bcf0 pop {r4, r5, r6, r7} +10002356: 46bb mov fp, r7 +10002358: 46b2 mov sl, r6 +1000235a: 46a9 mov r9, r5 +1000235c: 46a0 mov r8, r4 +1000235e: bdf0 pop {r4, r5, r6, r7, pc} +10002360: 46b0 mov r8, r6 +10002362: 464e mov r6, r9 +10002364: 46b9 mov r9, r7 +10002366: 002f movs r7, r5 +10002368: 465d mov r5, fp +1000236a: 1b53 subs r3, r2, r5 +1000236c: 42b3 cmp r3, r6 +1000236e: d2ef bcs.n 10002350 <_out_rev+0x80> +10002370: 1c54 adds r4, r2, #1 +10002372: 464b mov r3, r9 +10002374: 4641 mov r1, r8 +10002376: 2020 movs r0, #32 +10002378: 47b8 blx r7 +1000237a: 0022 movs r2, r4 +1000237c: e7f5 b.n 1000236a <_out_rev+0x9a> -10002fb4 : -10002fb4: b5f0 push {r4, r5, r6, r7, lr} -10002fb6: 4e46 ldr r6, [pc, #280] @ (100030d0 ) -10002fb8: 6e34 ldr r4, [r6, #96] @ 0x60 -10002fba: 6e75 ldr r5, [r6, #100] @ 0x64 -10002fbc: 6f77 ldr r7, [r6, #116] @ 0x74 -10002fbe: 6f36 ldr r6, [r6, #112] @ 0x70 -10002fc0: f000 f820 bl 10003004 -10002fc4: 4694 mov ip, r2 -10002fc6: 4a42 ldr r2, [pc, #264] @ (100030d0 ) -10002fc8: 6614 str r4, [r2, #96] @ 0x60 -10002fca: 6655 str r5, [r2, #100] @ 0x64 -10002fcc: 6757 str r7, [r2, #116] @ 0x74 -10002fce: 6716 str r6, [r2, #112] @ 0x70 -10002fd0: 4662 mov r2, ip -10002fd2: bdf0 pop {r4, r5, r6, r7, pc} +1000237e <_ntoa_format>: +1000237e: b5f0 push {r4, r5, r6, r7, lr} +10002380: 46ce mov lr, r9 +10002382: 4647 mov r7, r8 +10002384: b580 push {r7, lr} +10002386: b085 sub sp, #20 +10002388: 4694 mov ip, r2 +1000238a: 4698 mov r8, r3 +1000238c: 9d0c ldr r5, [sp, #48] @ 0x30 +1000238e: 9c0d ldr r4, [sp, #52] @ 0x34 +10002390: ab0e add r3, sp, #56 @ 0x38 +10002392: 781b ldrb r3, [r3, #0] +10002394: 4699 mov r9, r3 +10002396: 9a10 ldr r2, [sp, #64] @ 0x40 +10002398: 9b11 ldr r3, [sp, #68] @ 0x44 +1000239a: 9e12 ldr r6, [sp, #72] @ 0x48 +1000239c: 07b7 lsls r7, r6, #30 +1000239e: d41c bmi.n 100023da <_ntoa_format+0x5c> +100023a0: 2b00 cmp r3, #0 +100023a2: d00c beq.n 100023be <_ntoa_format+0x40> +100023a4: 07f7 lsls r7, r6, #31 +100023a6: d50a bpl.n 100023be <_ntoa_format+0x40> +100023a8: 464f mov r7, r9 +100023aa: 2f00 cmp r7, #0 +100023ac: d102 bne.n 100023b4 <_ntoa_format+0x36> +100023ae: 370c adds r7, #12 +100023b0: 4237 tst r7, r6 +100023b2: d004 beq.n 100023be <_ntoa_format+0x40> +100023b4: 3b01 subs r3, #1 +100023b6: e002 b.n 100023be <_ntoa_format+0x40> +100023b8: 2730 movs r7, #48 @ 0x30 +100023ba: 552f strb r7, [r5, r4] +100023bc: 3401 adds r4, #1 +100023be: 4294 cmp r4, r2 +100023c0: d201 bcs.n 100023c6 <_ntoa_format+0x48> +100023c2: 2c1f cmp r4, #31 +100023c4: d9f8 bls.n 100023b8 <_ntoa_format+0x3a> +100023c6: 07f7 lsls r7, r6, #31 +100023c8: d507 bpl.n 100023da <_ntoa_format+0x5c> +100023ca: 429c cmp r4, r3 +100023cc: d205 bcs.n 100023da <_ntoa_format+0x5c> +100023ce: 2c1f cmp r4, #31 +100023d0: d803 bhi.n 100023da <_ntoa_format+0x5c> +100023d2: 2730 movs r7, #48 @ 0x30 +100023d4: 552f strb r7, [r5, r4] +100023d6: 3401 adds r4, #1 +100023d8: e7f5 b.n 100023c6 <_ntoa_format+0x48> +100023da: 06f7 lsls r7, r6, #27 +100023dc: d512 bpl.n 10002404 <_ntoa_format+0x86> +100023de: 0577 lsls r7, r6, #21 +100023e0: d405 bmi.n 100023ee <_ntoa_format+0x70> +100023e2: 2c00 cmp r4, #0 +100023e4: d003 beq.n 100023ee <_ntoa_format+0x70> +100023e6: 4294 cmp r4, r2 +100023e8: d021 beq.n 1000242e <_ntoa_format+0xb0> +100023ea: 429c cmp r4, r3 +100023ec: d01f beq.n 1000242e <_ntoa_format+0xb0> +100023ee: 9a0f ldr r2, [sp, #60] @ 0x3c +100023f0: 2a10 cmp r2, #16 +100023f2: d032 beq.n 1000245a <_ntoa_format+0xdc> +100023f4: 9a0f ldr r2, [sp, #60] @ 0x3c +100023f6: 2a02 cmp r2, #2 +100023f8: d037 beq.n 1000246a <_ntoa_format+0xec> +100023fa: 2c1f cmp r4, #31 +100023fc: d80a bhi.n 10002414 <_ntoa_format+0x96> +100023fe: 2230 movs r2, #48 @ 0x30 +10002400: 552a strb r2, [r5, r4] +10002402: 3401 adds r4, #1 +10002404: 2c1f cmp r4, #31 +10002406: d805 bhi.n 10002414 <_ntoa_format+0x96> +10002408: 464a mov r2, r9 +1000240a: 2a00 cmp r2, #0 +1000240c: d033 beq.n 10002476 <_ntoa_format+0xf8> +1000240e: 222d movs r2, #45 @ 0x2d +10002410: 552a strb r2, [r5, r4] +10002412: 3401 adds r4, #1 +10002414: 9603 str r6, [sp, #12] +10002416: 9302 str r3, [sp, #8] +10002418: 9401 str r4, [sp, #4] +1000241a: 9500 str r5, [sp, #0] +1000241c: 4643 mov r3, r8 +1000241e: 4662 mov r2, ip +10002420: f7ff ff56 bl 100022d0 <_out_rev> +10002424: b005 add sp, #20 +10002426: bcc0 pop {r6, r7} +10002428: 46b9 mov r9, r7 +1000242a: 46b0 mov r8, r6 +1000242c: bdf0 pop {r4, r5, r6, r7, pc} +1000242e: 1e62 subs r2, r4, #1 +10002430: 2c01 cmp r4, #1 +10002432: d010 beq.n 10002456 <_ntoa_format+0xd8> +10002434: 9f0f ldr r7, [sp, #60] @ 0x3c +10002436: 2f10 cmp r7, #16 +10002438: d00b beq.n 10002452 <_ntoa_format+0xd4> +1000243a: 0014 movs r4, r2 +1000243c: 9a0f ldr r2, [sp, #60] @ 0x3c +1000243e: 2a10 cmp r2, #16 +10002440: d1d8 bne.n 100023f4 <_ntoa_format+0x76> +10002442: 06b2 lsls r2, r6, #26 +10002444: d5d6 bpl.n 100023f4 <_ntoa_format+0x76> +10002446: 2c1f cmp r4, #31 +10002448: d8d4 bhi.n 100023f4 <_ntoa_format+0x76> +1000244a: 2258 movs r2, #88 @ 0x58 +1000244c: 552a strb r2, [r5, r4] +1000244e: 3401 adds r4, #1 +10002450: e7d3 b.n 100023fa <_ntoa_format+0x7c> +10002452: 3c02 subs r4, #2 +10002454: e7cb b.n 100023ee <_ntoa_format+0x70> +10002456: 0014 movs r4, r2 +10002458: e7c9 b.n 100023ee <_ntoa_format+0x70> +1000245a: 06b2 lsls r2, r6, #26 +1000245c: d4ee bmi.n 1000243c <_ntoa_format+0xbe> +1000245e: 2c1f cmp r4, #31 +10002460: d8ec bhi.n 1000243c <_ntoa_format+0xbe> +10002462: 2278 movs r2, #120 @ 0x78 +10002464: 552a strb r2, [r5, r4] +10002466: 3401 adds r4, #1 +10002468: e7c7 b.n 100023fa <_ntoa_format+0x7c> +1000246a: 2c1f cmp r4, #31 +1000246c: d8d2 bhi.n 10002414 <_ntoa_format+0x96> +1000246e: 3260 adds r2, #96 @ 0x60 +10002470: 552a strb r2, [r5, r4] +10002472: 3401 adds r4, #1 +10002474: e7c1 b.n 100023fa <_ntoa_format+0x7c> +10002476: 0772 lsls r2, r6, #29 +10002478: d503 bpl.n 10002482 <_ntoa_format+0x104> +1000247a: 222b movs r2, #43 @ 0x2b +1000247c: 552a strb r2, [r5, r4] +1000247e: 3401 adds r4, #1 +10002480: e7c8 b.n 10002414 <_ntoa_format+0x96> +10002482: 0732 lsls r2, r6, #28 +10002484: d5c6 bpl.n 10002414 <_ntoa_format+0x96> +10002486: 2220 movs r2, #32 +10002488: 552a strb r2, [r5, r4] +1000248a: 3401 adds r4, #1 +1000248c: e7c2 b.n 10002414 <_ntoa_format+0x96> -10002fd4 <__wrap___aeabi_uldivmod>: -10002fd4: 4694 mov ip, r2 -10002fd6: 4a3e ldr r2, [pc, #248] @ (100030d0 ) -10002fd8: 6f92 ldr r2, [r2, #120] @ 0x78 -10002fda: 0892 lsrs r2, r2, #2 -10002fdc: 4662 mov r2, ip -10002fde: d201 bcs.n 10002fe4 -10002fe0: e054 b.n 1000308c -10002fe2: 46c0 nop @ (mov r8, r8) +1000248e <_ntoa_long>: +1000248e: b5f0 push {r4, r5, r6, r7, lr} +10002490: 46de mov lr, fp +10002492: 4657 mov r7, sl +10002494: 464e mov r6, r9 +10002496: 4645 mov r5, r8 +10002498: b5e0 push {r5, r6, r7, lr} +1000249a: b093 sub sp, #76 @ 0x4c +1000249c: 4681 mov r9, r0 +1000249e: 468a mov sl, r1 +100024a0: 9208 str r2, [sp, #32] +100024a2: 9309 str r3, [sp, #36] @ 0x24 +100024a4: ab1c add r3, sp, #112 @ 0x70 +100024a6: cb10 ldmia r3!, {r4} +100024a8: 781b ldrb r3, [r3, #0] +100024aa: 469b mov fp, r3 +100024ac: 9d1e ldr r5, [sp, #120] @ 0x78 +100024ae: 9b21 ldr r3, [sp, #132] @ 0x84 +100024b0: 4698 mov r8, r3 +100024b2: 2c00 cmp r4, #0 +100024b4: d103 bne.n 100024be <_ntoa_long+0x30> +100024b6: 2310 movs r3, #16 +100024b8: 4642 mov r2, r8 +100024ba: 439a bics r2, r3 +100024bc: 4690 mov r8, r2 +100024be: 2380 movs r3, #128 @ 0x80 +100024c0: 00db lsls r3, r3, #3 +100024c2: 4646 mov r6, r8 +100024c4: 401e ands r6, r3 +100024c6: 4642 mov r2, r8 +100024c8: 421a tst r2, r3 +100024ca: d012 beq.n 100024f2 <_ntoa_long+0x64> +100024cc: 2c00 cmp r4, #0 +100024ce: d022 beq.n 10002516 <_ntoa_long+0x88> +100024d0: 2600 movs r6, #0 +100024d2: e00e b.n 100024f2 <_ntoa_long+0x64> +100024d4: 3330 adds r3, #48 @ 0x30 +100024d6: b2d9 uxtb r1, r3 +100024d8: 1c77 adds r7, r6, #1 +100024da: ab0a add r3, sp, #40 @ 0x28 +100024dc: 5599 strb r1, [r3, r6] +100024de: 0029 movs r1, r5 +100024e0: 0020 movs r0, r4 +100024e2: f001 f813 bl 1000350c <__wrap___aeabi_uidiv> +100024e6: 42ac cmp r4, r5 +100024e8: d316 bcc.n 10002518 <_ntoa_long+0x8a> +100024ea: 2f1f cmp r7, #31 +100024ec: d814 bhi.n 10002518 <_ntoa_long+0x8a> +100024ee: 003e movs r6, r7 +100024f0: 0004 movs r4, r0 +100024f2: 0029 movs r1, r5 +100024f4: 0020 movs r0, r4 +100024f6: f001 f809 bl 1000350c <__wrap___aeabi_uidiv> +100024fa: b2cb uxtb r3, r1 +100024fc: 2b09 cmp r3, #9 +100024fe: d9e9 bls.n 100024d4 <_ntoa_long+0x46> +10002500: 4642 mov r2, r8 +10002502: 0692 lsls r2, r2, #26 +10002504: d505 bpl.n 10002512 <_ntoa_long+0x84> +10002506: 2141 movs r1, #65 @ 0x41 +10002508: 18c9 adds r1, r1, r3 +1000250a: b2c9 uxtb r1, r1 +1000250c: 390a subs r1, #10 +1000250e: b2c9 uxtb r1, r1 +10002510: e7e2 b.n 100024d8 <_ntoa_long+0x4a> +10002512: 2161 movs r1, #97 @ 0x61 +10002514: e7f8 b.n 10002508 <_ntoa_long+0x7a> +10002516: 0027 movs r7, r4 +10002518: 4643 mov r3, r8 +1000251a: 9306 str r3, [sp, #24] +1000251c: 9b20 ldr r3, [sp, #128] @ 0x80 +1000251e: 9305 str r3, [sp, #20] +10002520: 9b1f ldr r3, [sp, #124] @ 0x7c +10002522: 9304 str r3, [sp, #16] +10002524: 9503 str r5, [sp, #12] +10002526: 465b mov r3, fp +10002528: 9302 str r3, [sp, #8] +1000252a: 9701 str r7, [sp, #4] +1000252c: ab0a add r3, sp, #40 @ 0x28 +1000252e: 9300 str r3, [sp, #0] +10002530: 9b09 ldr r3, [sp, #36] @ 0x24 +10002532: 9a08 ldr r2, [sp, #32] +10002534: 4651 mov r1, sl +10002536: 4648 mov r0, r9 +10002538: f7ff ff21 bl 1000237e <_ntoa_format> +1000253c: b013 add sp, #76 @ 0x4c +1000253e: bcf0 pop {r4, r5, r6, r7} +10002540: 46bb mov fp, r7 +10002542: 46b2 mov sl, r6 +10002544: 46a9 mov r9, r5 +10002546: 46a0 mov r8, r4 +10002548: bdf0 pop {r4, r5, r6, r7, pc} -10002fe4 : -10002fe4: b5f0 push {r4, r5, r6, r7, lr} -10002fe6: 4e3a ldr r6, [pc, #232] @ (100030d0 ) -10002fe8: 6e34 ldr r4, [r6, #96] @ 0x60 -10002fea: 6e75 ldr r5, [r6, #100] @ 0x64 -10002fec: 6f77 ldr r7, [r6, #116] @ 0x74 -10002fee: 6f36 ldr r6, [r6, #112] @ 0x70 -10002ff0: f000 f84c bl 1000308c -10002ff4: 4694 mov ip, r2 -10002ff6: 4a36 ldr r2, [pc, #216] @ (100030d0 ) -10002ff8: 6614 str r4, [r2, #96] @ 0x60 -10002ffa: 6655 str r5, [r2, #100] @ 0x64 -10002ffc: 6757 str r7, [r2, #116] @ 0x74 -10002ffe: 6716 str r6, [r2, #112] @ 0x70 -10003000: 4662 mov r2, ip -10003002: bdf0 pop {r4, r5, r6, r7, pc} +1000254a <_ntoa_long_long>: +1000254a: b5f0 push {r4, r5, r6, r7, lr} +1000254c: 46de mov lr, fp +1000254e: 4657 mov r7, sl +10002550: 464e mov r6, r9 +10002552: 4645 mov r5, r8 +10002554: b5e0 push {r5, r6, r7, lr} +10002556: b097 sub sp, #92 @ 0x5c +10002558: 900a str r0, [sp, #40] @ 0x28 +1000255a: 910b str r1, [sp, #44] @ 0x2c +1000255c: 920c str r2, [sp, #48] @ 0x30 +1000255e: 469a mov sl, r3 +10002560: 9b20 ldr r3, [sp, #128] @ 0x80 +10002562: 4699 mov r9, r3 +10002564: 9f21 ldr r7, [sp, #132] @ 0x84 +10002566: aa22 add r2, sp, #136 @ 0x88 +10002568: 7813 ldrb r3, [r2, #0] +1000256a: 469b mov fp, r3 +1000256c: 9b24 ldr r3, [sp, #144] @ 0x90 +1000256e: 9309 str r3, [sp, #36] @ 0x24 +10002570: 9c25 ldr r4, [sp, #148] @ 0x94 +10002572: 9b28 ldr r3, [sp, #160] @ 0xa0 +10002574: 4698 mov r8, r3 +10002576: 464a mov r2, r9 +10002578: 433a orrs r2, r7 +1000257a: d102 bne.n 10002582 <_ntoa_long_long+0x38> +1000257c: 3210 adds r2, #16 +1000257e: 4393 bics r3, r2 +10002580: 4698 mov r8, r3 +10002582: 2280 movs r2, #128 @ 0x80 +10002584: 00d2 lsls r2, r2, #3 +10002586: 4645 mov r5, r8 +10002588: 4015 ands r5, r2 +1000258a: 4643 mov r3, r8 +1000258c: 4213 tst r3, r2 +1000258e: d00a beq.n 100025a6 <_ntoa_long_long+0x5c> +10002590: 464a mov r2, r9 +10002592: 433a orrs r2, r7 +10002594: d041 beq.n 1000261a <_ntoa_long_long+0xd0> +10002596: 2500 movs r5, #0 +10002598: 002e movs r6, r5 +1000259a: 4653 mov r3, sl +1000259c: 930d str r3, [sp, #52] @ 0x34 +1000259e: 464d mov r5, r9 +100025a0: 9b09 ldr r3, [sp, #36] @ 0x24 +100025a2: 469a mov sl, r3 +100025a4: e01b b.n 100025de <_ntoa_long_long+0x94> +100025a6: 002e movs r6, r5 +100025a8: 4653 mov r3, sl +100025aa: 930d str r3, [sp, #52] @ 0x34 +100025ac: 464d mov r5, r9 +100025ae: 9b09 ldr r3, [sp, #36] @ 0x24 +100025b0: 469a mov sl, r3 +100025b2: e014 b.n 100025de <_ntoa_long_long+0x94> +100025b4: 3330 adds r3, #48 @ 0x30 +100025b6: b2da uxtb r2, r3 +100025b8: 1c73 adds r3, r6, #1 +100025ba: 4699 mov r9, r3 +100025bc: ab0e add r3, sp, #56 @ 0x38 +100025be: 559a strb r2, [r3, r6] +100025c0: 4652 mov r2, sl +100025c2: 0023 movs r3, r4 +100025c4: 0028 movs r0, r5 +100025c6: 0039 movs r1, r7 +100025c8: f000 ffde bl 10003588 <__wrap___aeabi_uldivmod> +100025cc: 42bc cmp r4, r7 +100025ce: d826 bhi.n 1000261e <_ntoa_long_long+0xd4> +100025d0: d019 beq.n 10002606 <_ntoa_long_long+0xbc> +100025d2: 464b mov r3, r9 +100025d4: 2b1f cmp r3, #31 +100025d6: d81c bhi.n 10002612 <_ntoa_long_long+0xc8> +100025d8: 464e mov r6, r9 +100025da: 0005 movs r5, r0 +100025dc: 000f movs r7, r1 +100025de: 4652 mov r2, sl +100025e0: 0023 movs r3, r4 +100025e2: 0028 movs r0, r5 +100025e4: 0039 movs r1, r7 +100025e6: f000 ffcf bl 10003588 <__wrap___aeabi_uldivmod> +100025ea: b2d3 uxtb r3, r2 +100025ec: 2b09 cmp r3, #9 +100025ee: d9e1 bls.n 100025b4 <_ntoa_long_long+0x6a> +100025f0: 4642 mov r2, r8 +100025f2: 0692 lsls r2, r2, #26 +100025f4: d505 bpl.n 10002602 <_ntoa_long_long+0xb8> +100025f6: 2241 movs r2, #65 @ 0x41 +100025f8: 18d2 adds r2, r2, r3 +100025fa: b2d2 uxtb r2, r2 +100025fc: 3a0a subs r2, #10 +100025fe: b2d2 uxtb r2, r2 +10002600: e7da b.n 100025b8 <_ntoa_long_long+0x6e> +10002602: 2261 movs r2, #97 @ 0x61 +10002604: e7f8 b.n 100025f8 <_ntoa_long_long+0xae> +10002606: 45aa cmp sl, r5 +10002608: d9e3 bls.n 100025d2 <_ntoa_long_long+0x88> +1000260a: 464e mov r6, r9 +1000260c: 9b0d ldr r3, [sp, #52] @ 0x34 +1000260e: 469a mov sl, r3 +10002610: e008 b.n 10002624 <_ntoa_long_long+0xda> +10002612: 464e mov r6, r9 +10002614: 9b0d ldr r3, [sp, #52] @ 0x34 +10002616: 469a mov sl, r3 +10002618: e004 b.n 10002624 <_ntoa_long_long+0xda> +1000261a: 2600 movs r6, #0 +1000261c: e002 b.n 10002624 <_ntoa_long_long+0xda> +1000261e: 464e mov r6, r9 +10002620: 9b0d ldr r3, [sp, #52] @ 0x34 +10002622: 469a mov sl, r3 +10002624: 4643 mov r3, r8 +10002626: 9306 str r3, [sp, #24] +10002628: 9b27 ldr r3, [sp, #156] @ 0x9c +1000262a: 9305 str r3, [sp, #20] +1000262c: 9b26 ldr r3, [sp, #152] @ 0x98 +1000262e: 9304 str r3, [sp, #16] +10002630: 9b09 ldr r3, [sp, #36] @ 0x24 +10002632: 9303 str r3, [sp, #12] +10002634: 465b mov r3, fp +10002636: 9302 str r3, [sp, #8] +10002638: 9601 str r6, [sp, #4] +1000263a: ab0e add r3, sp, #56 @ 0x38 +1000263c: 9300 str r3, [sp, #0] +1000263e: 4653 mov r3, sl +10002640: 9a0c ldr r2, [sp, #48] @ 0x30 +10002642: 990b ldr r1, [sp, #44] @ 0x2c +10002644: 980a ldr r0, [sp, #40] @ 0x28 +10002646: f7ff fe9a bl 1000237e <_ntoa_format> +1000264a: b017 add sp, #92 @ 0x5c +1000264c: bcf0 pop {r4, r5, r6, r7} +1000264e: 46bb mov fp, r7 +10002650: 46b2 mov sl, r6 +10002652: 46a9 mov r9, r5 +10002654: 46a0 mov r8, r4 +10002656: bdf0 pop {r4, r5, r6, r7, pc} -10003004 : -10003004: 2b00 cmp r3, #0 -10003006: db24 blt.n 10003052 -10003008: d011 beq.n 1000302e -1000300a: 2900 cmp r1, #0 -1000300c: da3e bge.n 1000308c -1000300e: b500 push {lr} -10003010: 43c9 mvns r1, r1 -10003012: 4240 negs r0, r0 -10003014: d100 bne.n 10003018 -10003016: 3101 adds r1, #1 +10002658 <_etoa>: +10002658: b5f0 push {r4, r5, r6, r7, lr} +1000265a: 46de mov lr, fp +1000265c: 4657 mov r7, sl +1000265e: 464e mov r6, r9 +10002660: 4645 mov r5, r8 +10002662: b5e0 push {r5, r6, r7, lr} +10002664: b091 sub sp, #68 @ 0x44 +10002666: 4680 mov r8, r0 +10002668: 4689 mov r9, r1 +1000266a: 920c str r2, [sp, #48] @ 0x30 +1000266c: 469a mov sl, r3 +1000266e: 9c1a ldr r4, [sp, #104] @ 0x68 +10002670: 9d1b ldr r5, [sp, #108] @ 0x6c +10002672: 0022 movs r2, r4 +10002674: 002b movs r3, r5 +10002676: 0020 movs r0, r4 +10002678: 0029 movs r1, r5 +1000267a: f001 fa10 bl 10003a9e <__wrap___aeabi_dcmpun> +1000267e: 2800 cmp r0, #0 +10002680: d000 beq.n 10002684 <_etoa+0x2c> +10002682: e0ec b.n 1000285e <_etoa+0x206> +10002684: 2201 movs r2, #1 +10002686: 4252 negs r2, r2 +10002688: 4bd4 ldr r3, [pc, #848] @ (100029dc <_etoa+0x384>) +1000268a: 0020 movs r0, r4 +1000268c: 0029 movs r1, r5 +1000268e: f001 fa01 bl 10003a94 <__wrap___aeabi_dcmpgt> +10002692: 2800 cmp r0, #0 +10002694: d000 beq.n 10002698 <_etoa+0x40> +10002696: e0e2 b.n 1000285e <_etoa+0x206> +10002698: 2201 movs r2, #1 +1000269a: 4252 negs r2, r2 +1000269c: 4bd0 ldr r3, [pc, #832] @ (100029e0 <_etoa+0x388>) +1000269e: 0020 movs r0, r4 +100026a0: 0029 movs r1, r5 +100026a2: f001 f9e1 bl 10003a68 <__wrap___aeabi_dcmplt> +100026a6: 2800 cmp r0, #0 +100026a8: d000 beq.n 100026ac <_etoa+0x54> +100026aa: e0d8 b.n 1000285e <_etoa+0x206> +100026ac: 2200 movs r2, #0 +100026ae: 2300 movs r3, #0 +100026b0: 0020 movs r0, r4 +100026b2: 0029 movs r1, r5 +100026b4: f001 f9d8 bl 10003a68 <__wrap___aeabi_dcmplt> +100026b8: 2800 cmp r0, #0 +100026ba: d000 beq.n 100026be <_etoa+0x66> +100026bc: e0e4 b.n 10002888 <_etoa+0x230> +100026be: 9406 str r4, [sp, #24] +100026c0: 9507 str r5, [sp, #28] +100026c2: 2380 movs r3, #128 @ 0x80 +100026c4: 00db lsls r3, r3, #3 +100026c6: 9a1e ldr r2, [sp, #120] @ 0x78 +100026c8: 401a ands r2, r3 +100026ca: 920d str r2, [sp, #52] @ 0x34 +100026cc: 9a1e ldr r2, [sp, #120] @ 0x78 +100026ce: 421a tst r2, r3 +100026d0: d101 bne.n 100026d6 <_etoa+0x7e> +100026d2: 2306 movs r3, #6 +100026d4: 931c str r3, [sp, #112] @ 0x70 +100026d6: 9806 ldr r0, [sp, #24] +100026d8: 9907 ldr r1, [sp, #28] +100026da: 0002 movs r2, r0 +100026dc: 000b movs r3, r1 +100026de: 9208 str r2, [sp, #32] +100026e0: 9309 str r3, [sp, #36] @ 0x24 +100026e2: 0003 movs r3, r0 +100026e4: 000a movs r2, r1 +100026e6: 4302 orrs r2, r0 +100026e8: d100 bne.n 100026ec <_etoa+0x94> +100026ea: e0d9 b.n 100028a0 <_etoa+0x248> +100026ec: 0d08 lsrs r0, r1, #20 +100026ee: 0540 lsls r0, r0, #21 +100026f0: 0d40 lsrs r0, r0, #21 +100026f2: 4ebc ldr r6, [pc, #752] @ (100029e4 <_etoa+0x38c>) +100026f4: 46b4 mov ip, r6 +100026f6: 4460 add r0, ip +100026f8: 030a lsls r2, r1, #12 +100026fa: 0b12 lsrs r2, r2, #12 +100026fc: 001e movs r6, r3 +100026fe: 4bba ldr r3, [pc, #744] @ (100029e8 <_etoa+0x390>) +10002700: 4313 orrs r3, r2 +10002702: 001f movs r7, r3 +10002704: f001 f9de bl 10003ac4 <__wrap___aeabi_i2d> +10002708: 4ab8 ldr r2, [pc, #736] @ (100029ec <_etoa+0x394>) +1000270a: 4bb9 ldr r3, [pc, #740] @ (100029f0 <_etoa+0x398>) +1000270c: f001 f969 bl 100039e2 <__wrap___aeabi_dmul> +10002710: 4ab8 ldr r2, [pc, #736] @ (100029f4 <_etoa+0x39c>) +10002712: 4bb9 ldr r3, [pc, #740] @ (100029f8 <_etoa+0x3a0>) +10002714: f001 f93e bl 10003994 <__wrap___aeabi_dadd> +10002718: 9008 str r0, [sp, #32] +1000271a: 9109 str r1, [sp, #36] @ 0x24 +1000271c: 2200 movs r2, #0 +1000271e: 4bb7 ldr r3, [pc, #732] @ (100029fc <_etoa+0x3a4>) +10002720: 0030 movs r0, r6 +10002722: 0039 movs r1, r7 +10002724: f001 f92d bl 10003982 <__wrap___aeabi_dsub> +10002728: 4ab5 ldr r2, [pc, #724] @ (10002a00 <_etoa+0x3a8>) +1000272a: 4bb6 ldr r3, [pc, #728] @ (10002a04 <_etoa+0x3ac>) +1000272c: f001 f959 bl 100039e2 <__wrap___aeabi_dmul> +10002730: 0002 movs r2, r0 +10002732: 000b movs r3, r1 +10002734: 9808 ldr r0, [sp, #32] +10002736: 9909 ldr r1, [sp, #36] @ 0x24 +10002738: f001 f92c bl 10003994 <__wrap___aeabi_dadd> +1000273c: f001 f9da bl 10003af4 <__wrap___aeabi_d2iz> +10002740: 4683 mov fp, r0 +10002742: f001 f9bf bl 10003ac4 <__wrap___aeabi_i2d> +10002746: 0006 movs r6, r0 +10002748: 000f movs r7, r1 +1000274a: 4aaf ldr r2, [pc, #700] @ (10002a08 <_etoa+0x3b0>) +1000274c: 4baf ldr r3, [pc, #700] @ (10002a0c <_etoa+0x3b4>) +1000274e: f001 f948 bl 100039e2 <__wrap___aeabi_dmul> +10002752: 2200 movs r2, #0 +10002754: 4bae ldr r3, [pc, #696] @ (10002a10 <_etoa+0x3b8>) +10002756: f001 f91d bl 10003994 <__wrap___aeabi_dadd> +1000275a: f001 f9cb bl 10003af4 <__wrap___aeabi_d2iz> +1000275e: 9008 str r0, [sp, #32] +10002760: 4aac ldr r2, [pc, #688] @ (10002a14 <_etoa+0x3bc>) +10002762: 4bad ldr r3, [pc, #692] @ (10002a18 <_etoa+0x3c0>) +10002764: 0030 movs r0, r6 +10002766: 0039 movs r1, r7 +10002768: f001 f93b bl 100039e2 <__wrap___aeabi_dmul> +1000276c: 0006 movs r6, r0 +1000276e: 000f movs r7, r1 +10002770: 9808 ldr r0, [sp, #32] +10002772: f001 f9a7 bl 10003ac4 <__wrap___aeabi_i2d> +10002776: 4aa9 ldr r2, [pc, #676] @ (10002a1c <_etoa+0x3c4>) +10002778: 4ba9 ldr r3, [pc, #676] @ (10002a20 <_etoa+0x3c8>) +1000277a: f001 f932 bl 100039e2 <__wrap___aeabi_dmul> +1000277e: 0002 movs r2, r0 +10002780: 000b movs r3, r1 +10002782: 0030 movs r0, r6 +10002784: 0039 movs r1, r7 +10002786: f001 f8fc bl 10003982 <__wrap___aeabi_dsub> +1000278a: 0006 movs r6, r0 +1000278c: 000f movs r7, r1 +1000278e: 0002 movs r2, r0 +10002790: 000b movs r3, r1 +10002792: f001 f926 bl 100039e2 <__wrap___aeabi_dmul> +10002796: 900a str r0, [sp, #40] @ 0x28 +10002798: 910b str r1, [sp, #44] @ 0x2c +1000279a: 9b08 ldr r3, [sp, #32] +1000279c: 4aa1 ldr r2, [pc, #644] @ (10002a24 <_etoa+0x3cc>) +1000279e: 4694 mov ip, r2 +100027a0: 4463 add r3, ip +100027a2: 2100 movs r1, #0 +100027a4: 2200 movs r2, #0 +100027a6: 9108 str r1, [sp, #32] +100027a8: 9209 str r2, [sp, #36] @ 0x24 +100027aa: 051b lsls r3, r3, #20 +100027ac: 9309 str r3, [sp, #36] @ 0x24 +100027ae: 2300 movs r3, #0 +100027b0: 9308 str r3, [sp, #32] +100027b2: 0032 movs r2, r6 +100027b4: 003b movs r3, r7 +100027b6: 0030 movs r0, r6 +100027b8: 0039 movs r1, r7 +100027ba: f001 f8eb bl 10003994 <__wrap___aeabi_dadd> +100027be: 900e str r0, [sp, #56] @ 0x38 +100027c0: 910f str r1, [sp, #60] @ 0x3c +100027c2: 0032 movs r2, r6 +100027c4: 003b movs r3, r7 +100027c6: 2000 movs r0, #0 +100027c8: 2180 movs r1, #128 @ 0x80 +100027ca: 05c9 lsls r1, r1, #23 +100027cc: f001 f8d9 bl 10003982 <__wrap___aeabi_dsub> +100027d0: 0006 movs r6, r0 +100027d2: 000f movs r7, r1 +100027d4: 2200 movs r2, #0 +100027d6: 4b94 ldr r3, [pc, #592] @ (10002a28 <_etoa+0x3d0>) +100027d8: 980a ldr r0, [sp, #40] @ 0x28 +100027da: 990b ldr r1, [sp, #44] @ 0x2c +100027dc: f001 f8e3 bl 100039a6 <__wrap___aeabi_ddiv> +100027e0: 2200 movs r2, #0 +100027e2: 4b92 ldr r3, [pc, #584] @ (10002a2c <_etoa+0x3d4>) +100027e4: f001 f8d6 bl 10003994 <__wrap___aeabi_dadd> +100027e8: 0002 movs r2, r0 +100027ea: 000b movs r3, r1 +100027ec: 980a ldr r0, [sp, #40] @ 0x28 +100027ee: 990b ldr r1, [sp, #44] @ 0x2c +100027f0: f001 f8d9 bl 100039a6 <__wrap___aeabi_ddiv> +100027f4: 2200 movs r2, #0 +100027f6: 4b8e ldr r3, [pc, #568] @ (10002a30 <_etoa+0x3d8>) +100027f8: f001 f8cc bl 10003994 <__wrap___aeabi_dadd> +100027fc: 0002 movs r2, r0 +100027fe: 000b movs r3, r1 +10002800: 980a ldr r0, [sp, #40] @ 0x28 +10002802: 990b ldr r1, [sp, #44] @ 0x2c +10002804: f001 f8cf bl 100039a6 <__wrap___aeabi_ddiv> +10002808: 0002 movs r2, r0 +1000280a: 000b movs r3, r1 +1000280c: 0030 movs r0, r6 +1000280e: 0039 movs r1, r7 +10002810: f001 f8c0 bl 10003994 <__wrap___aeabi_dadd> +10002814: 0002 movs r2, r0 +10002816: 000b movs r3, r1 +10002818: 980e ldr r0, [sp, #56] @ 0x38 +1000281a: 990f ldr r1, [sp, #60] @ 0x3c +1000281c: f001 f8c3 bl 100039a6 <__wrap___aeabi_ddiv> +10002820: 2200 movs r2, #0 +10002822: 4b71 ldr r3, [pc, #452] @ (100029e8 <_etoa+0x390>) +10002824: f001 f8b6 bl 10003994 <__wrap___aeabi_dadd> +10002828: 9a08 ldr r2, [sp, #32] +1000282a: 9b09 ldr r3, [sp, #36] @ 0x24 +1000282c: f001 f8d9 bl 100039e2 <__wrap___aeabi_dmul> +10002830: 0006 movs r6, r0 +10002832: 000f movs r7, r1 +10002834: 9608 str r6, [sp, #32] +10002836: 9709 str r7, [sp, #36] @ 0x24 +10002838: 9a06 ldr r2, [sp, #24] +1000283a: 9b07 ldr r3, [sp, #28] +1000283c: f001 f92a bl 10003a94 <__wrap___aeabi_dcmpgt> +10002840: 2800 cmp r0, #0 +10002842: d02f beq.n 100028a4 <_etoa+0x24c> +10002844: 2301 movs r3, #1 +10002846: 425b negs r3, r3 +10002848: 469c mov ip, r3 +1000284a: 44e3 add fp, ip +1000284c: 2200 movs r2, #0 +1000284e: 4b77 ldr r3, [pc, #476] @ (10002a2c <_etoa+0x3d4>) +10002850: 0030 movs r0, r6 +10002852: 0039 movs r1, r7 +10002854: f001 f8a7 bl 100039a6 <__wrap___aeabi_ddiv> +10002858: 9008 str r0, [sp, #32] +1000285a: 9109 str r1, [sp, #36] @ 0x24 +1000285c: e022 b.n 100028a4 <_etoa+0x24c> +1000285e: 9b1e ldr r3, [sp, #120] @ 0x78 +10002860: 9304 str r3, [sp, #16] +10002862: 9b1d ldr r3, [sp, #116] @ 0x74 +10002864: 9303 str r3, [sp, #12] +10002866: 9b1c ldr r3, [sp, #112] @ 0x70 +10002868: 9302 str r3, [sp, #8] +1000286a: 9400 str r4, [sp, #0] +1000286c: 9501 str r5, [sp, #4] +1000286e: 4653 mov r3, sl +10002870: 9a0c ldr r2, [sp, #48] @ 0x30 +10002872: 4649 mov r1, r9 +10002874: 4640 mov r0, r8 +10002876: f000 f8ff bl 10002a78 <_ftoa> +1000287a: b011 add sp, #68 @ 0x44 +1000287c: bcf0 pop {r4, r5, r6, r7} +1000287e: 46bb mov fp, r7 +10002880: 46b2 mov sl, r6 +10002882: 46a9 mov r9, r5 +10002884: 46a0 mov r8, r4 +10002886: bdf0 pop {r4, r5, r6, r7, pc} +10002888: 2100 movs r1, #0 +1000288a: 2200 movs r2, #0 +1000288c: 9106 str r1, [sp, #24] +1000288e: 9207 str r2, [sp, #28] +10002890: 9406 str r4, [sp, #24] +10002892: 2380 movs r3, #128 @ 0x80 +10002894: 061b lsls r3, r3, #24 +10002896: 469c mov ip, r3 +10002898: 44ac add ip, r5 +1000289a: 4663 mov r3, ip +1000289c: 9307 str r3, [sp, #28] +1000289e: e710 b.n 100026c2 <_etoa+0x6a> +100028a0: 2300 movs r3, #0 +100028a2: 469b mov fp, r3 +100028a4: 465b mov r3, fp +100028a6: 3363 adds r3, #99 @ 0x63 +100028a8: 2bc6 cmp r3, #198 @ 0xc6 +100028aa: d820 bhi.n 100028ee <_etoa+0x296> +100028ac: 2604 movs r6, #4 +100028ae: 9b1e ldr r3, [sp, #120] @ 0x78 +100028b0: 051b lsls r3, r3, #20 +100028b2: d528 bpl.n 10002906 <_etoa+0x2ae> +100028b4: 9a08 ldr r2, [sp, #32] +100028b6: 9b09 ldr r3, [sp, #36] @ 0x24 +100028b8: 0019 movs r1, r3 +100028ba: 4311 orrs r1, r2 +100028bc: d00f beq.n 100028de <_etoa+0x286> +100028be: 4a5d ldr r2, [pc, #372] @ (10002a34 <_etoa+0x3dc>) +100028c0: 4b5d ldr r3, [pc, #372] @ (10002a38 <_etoa+0x3e0>) +100028c2: 9806 ldr r0, [sp, #24] +100028c4: 9907 ldr r1, [sp, #28] +100028c6: f001 f8dd bl 10003a84 <__wrap___aeabi_dcmpge> +100028ca: 2800 cmp r0, #0 +100028cc: d07a beq.n 100029c4 <_etoa+0x36c> +100028ce: 2200 movs r2, #0 +100028d0: 4b5a ldr r3, [pc, #360] @ (10002a3c <_etoa+0x3e4>) +100028d2: 9806 ldr r0, [sp, #24] +100028d4: 9907 ldr r1, [sp, #28] +100028d6: f001 f8c7 bl 10003a68 <__wrap___aeabi_dcmplt> +100028da: 2800 cmp r0, #0 +100028dc: d072 beq.n 100029c4 <_etoa+0x36c> +100028de: 9b1c ldr r3, [sp, #112] @ 0x70 +100028e0: 455b cmp r3, fp +100028e2: dd06 ble.n 100028f2 <_etoa+0x29a> +100028e4: 465a mov r2, fp +100028e6: 1a9b subs r3, r3, r2 +100028e8: 3b01 subs r3, #1 +100028ea: 931c str r3, [sp, #112] @ 0x70 +100028ec: e003 b.n 100028f6 <_etoa+0x29e> +100028ee: 2605 movs r6, #5 +100028f0: e7dd b.n 100028ae <_etoa+0x256> +100028f2: 2300 movs r3, #0 +100028f4: 931c str r3, [sp, #112] @ 0x70 +100028f6: 2380 movs r3, #128 @ 0x80 +100028f8: 00db lsls r3, r3, #3 +100028fa: 9a1e ldr r2, [sp, #120] @ 0x78 +100028fc: 431a orrs r2, r3 +100028fe: 921e str r2, [sp, #120] @ 0x78 +10002900: 2600 movs r6, #0 +10002902: 2300 movs r3, #0 +10002904: 469b mov fp, r3 +10002906: 9b1d ldr r3, [sp, #116] @ 0x74 +10002908: 429e cmp r6, r3 +1000290a: d265 bcs.n 100029d8 <_etoa+0x380> +1000290c: 1b9f subs r7, r3, r6 +1000290e: 2302 movs r3, #2 +10002910: 9a1e ldr r2, [sp, #120] @ 0x78 +10002912: 401a ands r2, r3 +10002914: 920a str r2, [sp, #40] @ 0x28 +10002916: 9a1e ldr r2, [sp, #120] @ 0x78 +10002918: 4213 tst r3, r2 +1000291a: d002 beq.n 10002922 <_etoa+0x2ca> +1000291c: 2e00 cmp r6, #0 +1000291e: d000 beq.n 10002922 <_etoa+0x2ca> +10002920: 2700 movs r7, #0 +10002922: 465b mov r3, fp +10002924: 2b00 cmp r3, #0 +10002926: d007 beq.n 10002938 <_etoa+0x2e0> +10002928: 9a08 ldr r2, [sp, #32] +1000292a: 9b09 ldr r3, [sp, #36] @ 0x24 +1000292c: 9806 ldr r0, [sp, #24] +1000292e: 9907 ldr r1, [sp, #28] +10002930: f001 f839 bl 100039a6 <__wrap___aeabi_ddiv> +10002934: 9006 str r0, [sp, #24] +10002936: 9107 str r1, [sp, #28] +10002938: 2200 movs r2, #0 +1000293a: 2300 movs r3, #0 +1000293c: 0020 movs r0, r4 +1000293e: 0029 movs r1, r5 +10002940: f001 f892 bl 10003a68 <__wrap___aeabi_dcmplt> +10002944: 2800 cmp r0, #0 +10002946: d000 beq.n 1000294a <_etoa+0x2f2> +10002948: e07c b.n 10002a44 <_etoa+0x3ec> +1000294a: 4b3d ldr r3, [pc, #244] @ (10002a40 <_etoa+0x3e8>) +1000294c: 9a1e ldr r2, [sp, #120] @ 0x78 +1000294e: 4013 ands r3, r2 +10002950: 9304 str r3, [sp, #16] +10002952: 9703 str r7, [sp, #12] +10002954: 9b1c ldr r3, [sp, #112] @ 0x70 +10002956: 9302 str r3, [sp, #8] +10002958: 9b06 ldr r3, [sp, #24] +1000295a: 9c07 ldr r4, [sp, #28] +1000295c: 9300 str r3, [sp, #0] +1000295e: 9401 str r4, [sp, #4] +10002960: 4653 mov r3, sl +10002962: 9a0c ldr r2, [sp, #48] @ 0x30 +10002964: 4649 mov r1, r9 +10002966: 4640 mov r0, r8 +10002968: f000 f886 bl 10002a78 <_ftoa> +1000296c: 2e00 cmp r6, #0 +1000296e: d100 bne.n 10002972 <_etoa+0x31a> +10002970: e783 b.n 1000287a <_etoa+0x222> +10002972: 9b1e ldr r3, [sp, #120] @ 0x78 +10002974: 069b lsls r3, r3, #26 +10002976: d571 bpl.n 10002a5c <_etoa+0x404> +10002978: 2545 movs r5, #69 @ 0x45 +1000297a: 1c44 adds r4, r0, #1 +1000297c: 4653 mov r3, sl +1000297e: 0002 movs r2, r0 +10002980: 4649 mov r1, r9 +10002982: 0028 movs r0, r5 +10002984: 47c0 blx r8 +10002986: 465a mov r2, fp +10002988: 17d3 asrs r3, r2, #31 +1000298a: 18d2 adds r2, r2, r3 +1000298c: 405a eors r2, r3 +1000298e: 2305 movs r3, #5 +10002990: 9305 str r3, [sp, #20] +10002992: 3e01 subs r6, #1 +10002994: 9604 str r6, [sp, #16] +10002996: 2300 movs r3, #0 +10002998: 9303 str r3, [sp, #12] +1000299a: 330a adds r3, #10 +1000299c: 9302 str r3, [sp, #8] +1000299e: 465b mov r3, fp +100029a0: 0fdb lsrs r3, r3, #31 +100029a2: 9301 str r3, [sp, #4] +100029a4: 9200 str r2, [sp, #0] +100029a6: 4653 mov r3, sl +100029a8: 0022 movs r2, r4 +100029aa: 4649 mov r1, r9 +100029ac: 4640 mov r0, r8 +100029ae: f7ff fd6e bl 1000248e <_ntoa_long> +100029b2: 9b0a ldr r3, [sp, #40] @ 0x28 +100029b4: 2b00 cmp r3, #0 +100029b6: d100 bne.n 100029ba <_etoa+0x362> +100029b8: e75f b.n 1000287a <_etoa+0x222> +100029ba: 0002 movs r2, r0 +100029bc: 4647 mov r7, r8 +100029be: 9e0c ldr r6, [sp, #48] @ 0x30 +100029c0: 9d1d ldr r5, [sp, #116] @ 0x74 +100029c2: e053 b.n 10002a6c <_etoa+0x414> +100029c4: 9b1c ldr r3, [sp, #112] @ 0x70 +100029c6: 2b00 cmp r3, #0 +100029c8: d09d beq.n 10002906 <_etoa+0x2ae> +100029ca: 9b0d ldr r3, [sp, #52] @ 0x34 +100029cc: 2b00 cmp r3, #0 +100029ce: d09a beq.n 10002906 <_etoa+0x2ae> +100029d0: 9b1c ldr r3, [sp, #112] @ 0x70 +100029d2: 3b01 subs r3, #1 +100029d4: 931c str r3, [sp, #112] @ 0x70 +100029d6: e796 b.n 10002906 <_etoa+0x2ae> +100029d8: 2700 movs r7, #0 +100029da: e798 b.n 1000290e <_etoa+0x2b6> +100029dc: 7fefffff .word 0x7fefffff +100029e0: ffefffff .word 0xffefffff +100029e4: fffffc01 .word 0xfffffc01 +100029e8: 3ff00000 .word 0x3ff00000 +100029ec: 509f79fb .word 0x509f79fb +100029f0: 3fd34413 .word 0x3fd34413 +100029f4: 8b60c8b3 .word 0x8b60c8b3 +100029f8: 3fc68a28 .word 0x3fc68a28 +100029fc: 3ff80000 .word 0x3ff80000 +10002a00: 636f4361 .word 0x636f4361 +10002a04: 3fd287a7 .word 0x3fd287a7 +10002a08: 0979a371 .word 0x0979a371 +10002a0c: 400a934f .word 0x400a934f +10002a10: 3fe00000 .word 0x3fe00000 +10002a14: bbb55516 .word 0xbbb55516 +10002a18: 40026bb1 .word 0x40026bb1 +10002a1c: fefa39ef .word 0xfefa39ef +10002a20: 3fe62e42 .word 0x3fe62e42 +10002a24: 000003ff .word 0x000003ff +10002a28: 402c0000 .word 0x402c0000 +10002a2c: 40240000 .word 0x40240000 +10002a30: 40180000 .word 0x40180000 +10002a34: eb1c432d .word 0xeb1c432d +10002a38: 3f1a36e2 .word 0x3f1a36e2 +10002a3c: 412e8480 .word 0x412e8480 +10002a40: fffff7ff .word 0xfffff7ff +10002a44: 9c06 ldr r4, [sp, #24] +10002a46: 9d07 ldr r5, [sp, #28] +10002a48: 0022 movs r2, r4 +10002a4a: 0029 movs r1, r5 +10002a4c: 2080 movs r0, #128 @ 0x80 +10002a4e: 0600 lsls r0, r0, #24 +10002a50: 4684 mov ip, r0 +10002a52: 4461 add r1, ip +10002a54: 000b movs r3, r1 +10002a56: 9206 str r2, [sp, #24] +10002a58: 9307 str r3, [sp, #28] +10002a5a: e776 b.n 1000294a <_etoa+0x2f2> +10002a5c: 2565 movs r5, #101 @ 0x65 +10002a5e: e78c b.n 1000297a <_etoa+0x322> +10002a60: 1c54 adds r4, r2, #1 +10002a62: 4653 mov r3, sl +10002a64: 4649 mov r1, r9 +10002a66: 2020 movs r0, #32 +10002a68: 47b8 blx r7 +10002a6a: 0022 movs r2, r4 +10002a6c: 1b93 subs r3, r2, r6 +10002a6e: 42ab cmp r3, r5 +10002a70: d3f6 bcc.n 10002a60 <_etoa+0x408> +10002a72: 0010 movs r0, r2 +10002a74: e701 b.n 1000287a <_etoa+0x222> +10002a76: 46c0 nop @ (mov r8, r8) -10003018 : -10003018: f000 f838 bl 1000308c -1000301c: 43c9 mvns r1, r1 -1000301e: 4240 negs r0, r0 -10003020: d100 bne.n 10003024 -10003022: 3101 adds r1, #1 +10002a78 <_ftoa>: +10002a78: b5f0 push {r4, r5, r6, r7, lr} +10002a7a: 46de mov lr, fp +10002a7c: 4657 mov r7, sl +10002a7e: 464e mov r6, r9 +10002a80: 4645 mov r5, r8 +10002a82: b5e0 push {r5, r6, r7, lr} +10002a84: b095 sub sp, #84 @ 0x54 +10002a86: 9006 str r0, [sp, #24] +10002a88: 9107 str r1, [sp, #28] +10002a8a: 4693 mov fp, r2 +10002a8c: 4699 mov r9, r3 +10002a8e: 9f20 ldr r7, [sp, #128] @ 0x80 +10002a90: 9a1e ldr r2, [sp, #120] @ 0x78 +10002a92: 9b1f ldr r3, [sp, #124] @ 0x7c +10002a94: 0010 movs r0, r2 +10002a96: 0019 movs r1, r3 +10002a98: f001 f801 bl 10003a9e <__wrap___aeabi_dcmpun> +10002a9c: 2800 cmp r0, #0 +10002a9e: d131 bne.n 10002b04 <_ftoa+0x8c> +10002aa0: 2201 movs r2, #1 +10002aa2: 4252 negs r2, r2 +10002aa4: 4bbf ldr r3, [pc, #764] @ (10002da4 <_ftoa+0x32c>) +10002aa6: 981e ldr r0, [sp, #120] @ 0x78 +10002aa8: 991f ldr r1, [sp, #124] @ 0x7c +10002aaa: f000 ffdd bl 10003a68 <__wrap___aeabi_dcmplt> +10002aae: 2800 cmp r0, #0 +10002ab0: d137 bne.n 10002b22 <_ftoa+0xaa> +10002ab2: 2201 movs r2, #1 +10002ab4: 4252 negs r2, r2 +10002ab6: 4bbc ldr r3, [pc, #752] @ (10002da8 <_ftoa+0x330>) +10002ab8: 981e ldr r0, [sp, #120] @ 0x78 +10002aba: 991f ldr r1, [sp, #124] @ 0x7c +10002abc: f000 ffea bl 10003a94 <__wrap___aeabi_dcmpgt> +10002ac0: 2800 cmp r0, #0 +10002ac2: d13d bne.n 10002b40 <_ftoa+0xc8> +10002ac4: 2200 movs r2, #0 +10002ac6: 4bb9 ldr r3, [pc, #740] @ (10002dac <_ftoa+0x334>) +10002ac8: 981e ldr r0, [sp, #120] @ 0x78 +10002aca: 991f ldr r1, [sp, #124] @ 0x7c +10002acc: f000 ffe2 bl 10003a94 <__wrap___aeabi_dcmpgt> +10002ad0: 2800 cmp r0, #0 +10002ad2: d150 bne.n 10002b76 <_ftoa+0xfe> +10002ad4: 2200 movs r2, #0 +10002ad6: 4bb6 ldr r3, [pc, #728] @ (10002db0 <_ftoa+0x338>) +10002ad8: 981e ldr r0, [sp, #120] @ 0x78 +10002ada: 991f ldr r1, [sp, #124] @ 0x7c +10002adc: f000 ffc4 bl 10003a68 <__wrap___aeabi_dcmplt> +10002ae0: 2800 cmp r0, #0 +10002ae2: d148 bne.n 10002b76 <_ftoa+0xfe> +10002ae4: 2200 movs r2, #0 +10002ae6: 2300 movs r3, #0 +10002ae8: 981e ldr r0, [sp, #120] @ 0x78 +10002aea: 991f ldr r1, [sp, #124] @ 0x7c +10002aec: f000 ffbc bl 10003a68 <__wrap___aeabi_dcmplt> +10002af0: 2800 cmp r0, #0 +10002af2: d150 bne.n 10002b96 <_ftoa+0x11e> +10002af4: 2300 movs r3, #0 +10002af6: 4698 mov r8, r3 +10002af8: 9b22 ldr r3, [sp, #136] @ 0x88 +10002afa: 055b lsls r3, r3, #21 +10002afc: d400 bmi.n 10002b00 <_ftoa+0x88> +10002afe: e0b6 b.n 10002c6e <_ftoa+0x1f6> +10002b00: 2400 movs r4, #0 +10002b02: e058 b.n 10002bb6 <_ftoa+0x13e> +10002b04: 9b22 ldr r3, [sp, #136] @ 0x88 +10002b06: 9303 str r3, [sp, #12] +10002b08: 9b21 ldr r3, [sp, #132] @ 0x84 +10002b0a: 9302 str r3, [sp, #8] +10002b0c: 2303 movs r3, #3 +10002b0e: 9301 str r3, [sp, #4] +10002b10: 4ba8 ldr r3, [pc, #672] @ (10002db4 <_ftoa+0x33c>) +10002b12: 9300 str r3, [sp, #0] +10002b14: 464b mov r3, r9 +10002b16: 465a mov r2, fp +10002b18: 9907 ldr r1, [sp, #28] +10002b1a: 9806 ldr r0, [sp, #24] +10002b1c: f7ff fbd8 bl 100022d0 <_out_rev> +10002b20: e10e b.n 10002d40 <_ftoa+0x2c8> +10002b22: 9b22 ldr r3, [sp, #136] @ 0x88 +10002b24: 9303 str r3, [sp, #12] +10002b26: 9b21 ldr r3, [sp, #132] @ 0x84 +10002b28: 9302 str r3, [sp, #8] +10002b2a: 2304 movs r3, #4 +10002b2c: 9301 str r3, [sp, #4] +10002b2e: 4ba2 ldr r3, [pc, #648] @ (10002db8 <_ftoa+0x340>) +10002b30: 9300 str r3, [sp, #0] +10002b32: 464b mov r3, r9 +10002b34: 465a mov r2, fp +10002b36: 9907 ldr r1, [sp, #28] +10002b38: 9806 ldr r0, [sp, #24] +10002b3a: f7ff fbc9 bl 100022d0 <_out_rev> +10002b3e: e0ff b.n 10002d40 <_ftoa+0x2c8> +10002b40: 2304 movs r3, #4 +10002b42: 9a22 ldr r2, [sp, #136] @ 0x88 +10002b44: 401a ands r2, r3 +10002b46: 9922 ldr r1, [sp, #136] @ 0x88 +10002b48: 420b tst r3, r1 +10002b4a: d010 beq.n 10002b6e <_ftoa+0xf6> +10002b4c: 4b9b ldr r3, [pc, #620] @ (10002dbc <_ftoa+0x344>) +10002b4e: 2a00 cmp r2, #0 +10002b50: d00f beq.n 10002b72 <_ftoa+0xfa> +10002b52: 2204 movs r2, #4 +10002b54: 9922 ldr r1, [sp, #136] @ 0x88 +10002b56: 9103 str r1, [sp, #12] +10002b58: 9921 ldr r1, [sp, #132] @ 0x84 +10002b5a: 9102 str r1, [sp, #8] +10002b5c: 9201 str r2, [sp, #4] +10002b5e: 9300 str r3, [sp, #0] +10002b60: 464b mov r3, r9 +10002b62: 465a mov r2, fp +10002b64: 9907 ldr r1, [sp, #28] +10002b66: 9806 ldr r0, [sp, #24] +10002b68: f7ff fbb2 bl 100022d0 <_out_rev> +10002b6c: e0e8 b.n 10002d40 <_ftoa+0x2c8> +10002b6e: 4b94 ldr r3, [pc, #592] @ (10002dc0 <_ftoa+0x348>) +10002b70: e7ed b.n 10002b4e <_ftoa+0xd6> +10002b72: 2203 movs r2, #3 +10002b74: e7ee b.n 10002b54 <_ftoa+0xdc> +10002b76: 9b22 ldr r3, [sp, #136] @ 0x88 +10002b78: 9304 str r3, [sp, #16] +10002b7a: 9b21 ldr r3, [sp, #132] @ 0x84 +10002b7c: 9303 str r3, [sp, #12] +10002b7e: 9702 str r7, [sp, #8] +10002b80: 9b1e ldr r3, [sp, #120] @ 0x78 +10002b82: 9c1f ldr r4, [sp, #124] @ 0x7c +10002b84: 9300 str r3, [sp, #0] +10002b86: 9401 str r4, [sp, #4] +10002b88: 464b mov r3, r9 +10002b8a: 465a mov r2, fp +10002b8c: 9907 ldr r1, [sp, #28] +10002b8e: 9806 ldr r0, [sp, #24] +10002b90: f7ff fd62 bl 10002658 <_etoa> +10002b94: e0d4 b.n 10002d40 <_ftoa+0x2c8> +10002b96: 9a1e ldr r2, [sp, #120] @ 0x78 +10002b98: 9b1f ldr r3, [sp, #124] @ 0x7c +10002b9a: 2000 movs r0, #0 +10002b9c: 2100 movs r1, #0 +10002b9e: f000 fef0 bl 10003982 <__wrap___aeabi_dsub> +10002ba2: 901e str r0, [sp, #120] @ 0x78 +10002ba4: 911f str r1, [sp, #124] @ 0x7c +10002ba6: 2301 movs r3, #1 +10002ba8: 4698 mov r8, r3 +10002baa: e7a5 b.n 10002af8 <_ftoa+0x80> +10002bac: ab0c add r3, sp, #48 @ 0x30 +10002bae: 2230 movs r2, #48 @ 0x30 +10002bb0: 551a strb r2, [r3, r4] +10002bb2: 3f01 subs r7, #1 +10002bb4: 3401 adds r4, #1 +10002bb6: 2c1f cmp r4, #31 +10002bb8: d801 bhi.n 10002bbe <_ftoa+0x146> +10002bba: 2f09 cmp r7, #9 +10002bbc: d8f6 bhi.n 10002bac <_ftoa+0x134> +10002bbe: 981e ldr r0, [sp, #120] @ 0x78 +10002bc0: 991f ldr r1, [sp, #124] @ 0x7c +10002bc2: f000 ff97 bl 10003af4 <__wrap___aeabi_d2iz> +10002bc6: 0005 movs r5, r0 +10002bc8: f000 ff7c bl 10003ac4 <__wrap___aeabi_i2d> +10002bcc: 0002 movs r2, r0 +10002bce: 000b movs r3, r1 +10002bd0: 981e ldr r0, [sp, #120] @ 0x78 +10002bd2: 991f ldr r1, [sp, #124] @ 0x7c +10002bd4: f000 fed5 bl 10003982 <__wrap___aeabi_dsub> +10002bd8: 4b7a ldr r3, [pc, #488] @ (10002dc4 <_ftoa+0x34c>) +10002bda: 00fa lsls r2, r7, #3 +10002bdc: 189b adds r3, r3, r2 +10002bde: 681a ldr r2, [r3, #0] +10002be0: 685b ldr r3, [r3, #4] +10002be2: 920a str r2, [sp, #40] @ 0x28 +10002be4: 930b str r3, [sp, #44] @ 0x2c +10002be6: f000 fefc bl 100039e2 <__wrap___aeabi_dmul> +10002bea: 9008 str r0, [sp, #32] +10002bec: 9109 str r1, [sp, #36] @ 0x24 +10002bee: f000 ffa5 bl 10003b3c <__wrap___aeabi_d2uiz> +10002bf2: 0006 movs r6, r0 +10002bf4: f000 ff62 bl 10003abc <__wrap___aeabi_ui2d> +10002bf8: 0002 movs r2, r0 +10002bfa: 000b movs r3, r1 +10002bfc: 9808 ldr r0, [sp, #32] +10002bfe: 9909 ldr r1, [sp, #36] @ 0x24 +10002c00: f000 febf bl 10003982 <__wrap___aeabi_dsub> +10002c04: 9008 str r0, [sp, #32] +10002c06: 9109 str r1, [sp, #36] @ 0x24 +10002c08: 2200 movs r2, #0 +10002c0a: 4b6f ldr r3, [pc, #444] @ (10002dc8 <_ftoa+0x350>) +10002c0c: f000 ff42 bl 10003a94 <__wrap___aeabi_dcmpgt> +10002c10: 2800 cmp r0, #0 +10002c12: d02e beq.n 10002c72 <_ftoa+0x1fa> +10002c14: 3601 adds r6, #1 +10002c16: 0030 movs r0, r6 +10002c18: f000 ff50 bl 10003abc <__wrap___aeabi_ui2d> +10002c1c: 0002 movs r2, r0 +10002c1e: 000b movs r3, r1 +10002c20: 980a ldr r0, [sp, #40] @ 0x28 +10002c22: 990b ldr r1, [sp, #44] @ 0x2c +10002c24: f000 ff26 bl 10003a74 <__wrap___aeabi_dcmple> +10002c28: 2800 cmp r0, #0 +10002c2a: d001 beq.n 10002c30 <_ftoa+0x1b8> +10002c2c: 3501 adds r5, #1 +10002c2e: 2600 movs r6, #0 +10002c30: 2f00 cmp r7, #0 +10002c32: d12c bne.n 10002c8e <_ftoa+0x216> +10002c34: 0028 movs r0, r5 +10002c36: f000 ff45 bl 10003ac4 <__wrap___aeabi_i2d> +10002c3a: 0002 movs r2, r0 +10002c3c: 000b movs r3, r1 +10002c3e: 981e ldr r0, [sp, #120] @ 0x78 +10002c40: 991f ldr r1, [sp, #124] @ 0x7c +10002c42: f000 fe9e bl 10003982 <__wrap___aeabi_dsub> +10002c46: 0006 movs r6, r0 +10002c48: 000f movs r7, r1 +10002c4a: 2200 movs r2, #0 +10002c4c: 4b5e ldr r3, [pc, #376] @ (10002dc8 <_ftoa+0x350>) +10002c4e: f000 ff0b bl 10003a68 <__wrap___aeabi_dcmplt> +10002c52: 2800 cmp r0, #0 +10002c54: d146 bne.n 10002ce4 <_ftoa+0x26c> +10002c56: 2200 movs r2, #0 +10002c58: 4b5b ldr r3, [pc, #364] @ (10002dc8 <_ftoa+0x350>) +10002c5a: 0030 movs r0, r6 +10002c5c: 0039 movs r1, r7 +10002c5e: f000 ff19 bl 10003a94 <__wrap___aeabi_dcmpgt> +10002c62: 2800 cmp r0, #0 +10002c64: d13e bne.n 10002ce4 <_ftoa+0x26c> +10002c66: 07eb lsls r3, r5, #31 +10002c68: d53c bpl.n 10002ce4 <_ftoa+0x26c> +10002c6a: 3501 adds r5, #1 +10002c6c: e03a b.n 10002ce4 <_ftoa+0x26c> +10002c6e: 2706 movs r7, #6 +10002c70: e746 b.n 10002b00 <_ftoa+0x88> +10002c72: 2200 movs r2, #0 +10002c74: 4b54 ldr r3, [pc, #336] @ (10002dc8 <_ftoa+0x350>) +10002c76: 9808 ldr r0, [sp, #32] +10002c78: 9909 ldr r1, [sp, #36] @ 0x24 +10002c7a: f000 fef5 bl 10003a68 <__wrap___aeabi_dcmplt> +10002c7e: 2800 cmp r0, #0 +10002c80: d1d6 bne.n 10002c30 <_ftoa+0x1b8> +10002c82: 2e00 cmp r6, #0 +10002c84: d001 beq.n 10002c8a <_ftoa+0x212> +10002c86: 07f3 lsls r3, r6, #31 +10002c88: d5d2 bpl.n 10002c30 <_ftoa+0x1b8> +10002c8a: 3601 adds r6, #1 +10002c8c: e7d0 b.n 10002c30 <_ftoa+0x1b8> +10002c8e: 46aa mov sl, r5 +10002c90: 2c1f cmp r4, #31 +10002c92: d811 bhi.n 10002cb8 <_ftoa+0x240> +10002c94: 3f01 subs r7, #1 +10002c96: 210a movs r1, #10 +10002c98: 0030 movs r0, r6 +10002c9a: f000 fc37 bl 1000350c <__wrap___aeabi_uidiv> +10002c9e: 1c65 adds r5, r4, #1 +10002ca0: 3130 adds r1, #48 @ 0x30 +10002ca2: ab0c add r3, sp, #48 @ 0x30 +10002ca4: 5519 strb r1, [r3, r4] +10002ca6: 210a movs r1, #10 +10002ca8: 0030 movs r0, r6 +10002caa: f000 fc2f bl 1000350c <__wrap___aeabi_uidiv> +10002cae: 2e09 cmp r6, #9 +10002cb0: d90e bls.n 10002cd0 <_ftoa+0x258> +10002cb2: 0006 movs r6, r0 +10002cb4: 002c movs r4, r5 +10002cb6: e7eb b.n 10002c90 <_ftoa+0x218> +10002cb8: 4655 mov r5, sl +10002cba: 2c1f cmp r4, #31 +10002cbc: d80c bhi.n 10002cd8 <_ftoa+0x260> +10002cbe: 1e7b subs r3, r7, #1 +10002cc0: 2f00 cmp r7, #0 +10002cc2: d009 beq.n 10002cd8 <_ftoa+0x260> +10002cc4: aa0c add r2, sp, #48 @ 0x30 +10002cc6: 2130 movs r1, #48 @ 0x30 +10002cc8: 5511 strb r1, [r2, r4] +10002cca: 001f movs r7, r3 +10002ccc: 3401 adds r4, #1 +10002cce: e7f4 b.n 10002cba <_ftoa+0x242> +10002cd0: 002b movs r3, r5 +10002cd2: 4655 mov r5, sl +10002cd4: 001c movs r4, r3 +10002cd6: e7f0 b.n 10002cba <_ftoa+0x242> +10002cd8: 2c1f cmp r4, #31 +10002cda: d803 bhi.n 10002ce4 <_ftoa+0x26c> +10002cdc: ab0c add r3, sp, #48 @ 0x30 +10002cde: 222e movs r2, #46 @ 0x2e +10002ce0: 551a strb r2, [r3, r4] +10002ce2: 3401 adds r4, #1 +10002ce4: 2c1f cmp r4, #31 +10002ce6: d810 bhi.n 10002d0a <_ftoa+0x292> +10002ce8: 210a movs r1, #10 +10002cea: 0028 movs r0, r5 +10002cec: f000 fbe6 bl 100034bc <__wrap___aeabi_idiv> +10002cf0: 1c66 adds r6, r4, #1 +10002cf2: 3130 adds r1, #48 @ 0x30 +10002cf4: ab0c add r3, sp, #48 @ 0x30 +10002cf6: 5519 strb r1, [r3, r4] +10002cf8: 210a movs r1, #10 +10002cfa: 0028 movs r0, r5 +10002cfc: f000 fbde bl 100034bc <__wrap___aeabi_idiv> +10002d00: 1e05 subs r5, r0, #0 +10002d02: d001 beq.n 10002d08 <_ftoa+0x290> +10002d04: 0034 movs r4, r6 +10002d06: e7ed b.n 10002ce4 <_ftoa+0x26c> +10002d08: 0034 movs r4, r6 +10002d0a: 2303 movs r3, #3 +10002d0c: 9a22 ldr r2, [sp, #136] @ 0x88 +10002d0e: 4013 ands r3, r2 +10002d10: 2b01 cmp r3, #1 +10002d12: d01c beq.n 10002d4e <_ftoa+0x2d6> +10002d14: 2c1f cmp r4, #31 +10002d16: d806 bhi.n 10002d26 <_ftoa+0x2ae> +10002d18: 4643 mov r3, r8 +10002d1a: 2b00 cmp r3, #0 +10002d1c: d032 beq.n 10002d84 <_ftoa+0x30c> +10002d1e: ab0c add r3, sp, #48 @ 0x30 +10002d20: 222d movs r2, #45 @ 0x2d +10002d22: 551a strb r2, [r3, r4] +10002d24: 3401 adds r4, #1 +10002d26: 9b22 ldr r3, [sp, #136] @ 0x88 +10002d28: 9303 str r3, [sp, #12] +10002d2a: 9b21 ldr r3, [sp, #132] @ 0x84 +10002d2c: 9302 str r3, [sp, #8] +10002d2e: 9401 str r4, [sp, #4] +10002d30: ab0c add r3, sp, #48 @ 0x30 +10002d32: 9300 str r3, [sp, #0] +10002d34: 464b mov r3, r9 +10002d36: 465a mov r2, fp +10002d38: 9907 ldr r1, [sp, #28] +10002d3a: 9806 ldr r0, [sp, #24] +10002d3c: f7ff fac8 bl 100022d0 <_out_rev> +10002d40: b015 add sp, #84 @ 0x54 +10002d42: bcf0 pop {r4, r5, r6, r7} +10002d44: 46bb mov fp, r7 +10002d46: 46b2 mov sl, r6 +10002d48: 46a9 mov r9, r5 +10002d4a: 46a0 mov r8, r4 +10002d4c: bdf0 pop {r4, r5, r6, r7, pc} +10002d4e: 9b21 ldr r3, [sp, #132] @ 0x84 +10002d50: 2b00 cmp r3, #0 +10002d52: d013 beq.n 10002d7c <_ftoa+0x304> +10002d54: 4643 mov r3, r8 +10002d56: 2b00 cmp r3, #0 +10002d58: d102 bne.n 10002d60 <_ftoa+0x2e8> +10002d5a: 330c adds r3, #12 +10002d5c: 4213 tst r3, r2 +10002d5e: d00f beq.n 10002d80 <_ftoa+0x308> +10002d60: 9b21 ldr r3, [sp, #132] @ 0x84 +10002d62: 3b01 subs r3, #1 +10002d64: 9321 str r3, [sp, #132] @ 0x84 +10002d66: 0019 movs r1, r3 +10002d68: e003 b.n 10002d72 <_ftoa+0x2fa> +10002d6a: ab0c add r3, sp, #48 @ 0x30 +10002d6c: 2230 movs r2, #48 @ 0x30 +10002d6e: 551a strb r2, [r3, r4] +10002d70: 3401 adds r4, #1 +10002d72: 428c cmp r4, r1 +10002d74: d2ce bcs.n 10002d14 <_ftoa+0x29c> +10002d76: 2c1f cmp r4, #31 +10002d78: d9f7 bls.n 10002d6a <_ftoa+0x2f2> +10002d7a: e7cb b.n 10002d14 <_ftoa+0x29c> +10002d7c: 9921 ldr r1, [sp, #132] @ 0x84 +10002d7e: e7f8 b.n 10002d72 <_ftoa+0x2fa> +10002d80: 9921 ldr r1, [sp, #132] @ 0x84 +10002d82: e7f6 b.n 10002d72 <_ftoa+0x2fa> +10002d84: 9b22 ldr r3, [sp, #136] @ 0x88 +10002d86: 075b lsls r3, r3, #29 +10002d88: d504 bpl.n 10002d94 <_ftoa+0x31c> +10002d8a: ab0c add r3, sp, #48 @ 0x30 +10002d8c: 222b movs r2, #43 @ 0x2b +10002d8e: 551a strb r2, [r3, r4] +10002d90: 3401 adds r4, #1 +10002d92: e7c8 b.n 10002d26 <_ftoa+0x2ae> +10002d94: 9b22 ldr r3, [sp, #136] @ 0x88 +10002d96: 071b lsls r3, r3, #28 +10002d98: d5c5 bpl.n 10002d26 <_ftoa+0x2ae> +10002d9a: ab0c add r3, sp, #48 @ 0x30 +10002d9c: 2220 movs r2, #32 +10002d9e: 551a strb r2, [r3, r4] +10002da0: 3401 adds r4, #1 +10002da2: e7c0 b.n 10002d26 <_ftoa+0x2ae> +10002da4: ffefffff .word 0xffefffff +10002da8: 7fefffff .word 0x7fefffff +10002dac: 41cdcd65 .word 0x41cdcd65 +10002db0: c1cdcd65 .word 0xc1cdcd65 +10002db4: 1000550c .word 0x1000550c +10002db8: 10005510 .word 0x10005510 +10002dbc: 10005500 .word 0x10005500 +10002dc0: 10005508 .word 0x10005508 +10002dc4: 100056b8 .word 0x100056b8 +10002dc8: 3fe00000 .word 0x3fe00000 -10003024 : -10003024: 43db mvns r3, r3 -10003026: 4252 negs r2, r2 -10003028: d100 bne.n 1000302c -1000302a: 3301 adds r3, #1 +10002dcc <_vsnprintf>: +10002dcc: b5f0 push {r4, r5, r6, r7, lr} +10002dce: 46de mov lr, fp +10002dd0: 4657 mov r7, sl +10002dd2: 464e mov r6, r9 +10002dd4: 4645 mov r5, r8 +10002dd6: b5e0 push {r5, r6, r7, lr} +10002dd8: b093 sub sp, #76 @ 0x4c +10002dda: 4682 mov sl, r0 +10002ddc: 4688 mov r8, r1 +10002dde: 4693 mov fp, r2 +10002de0: 9311 str r3, [sp, #68] @ 0x44 +10002de2: 2900 cmp r1, #0 +10002de4: d100 bne.n 10002de8 <_vsnprintf+0x1c> +10002de6: e30d b.n 10003404 <_vsnprintf+0x638> +10002de8: 2500 movs r5, #0 +10002dea: 4656 mov r6, sl +10002dec: 9b11 ldr r3, [sp, #68] @ 0x44 +10002dee: 7818 ldrb r0, [r3, #0] +10002df0: 2800 cmp r0, #0 +10002df2: d100 bne.n 10002df6 <_vsnprintf+0x2a> +10002df4: e309 b.n 1000340a <_vsnprintf+0x63e> +10002df6: 2825 cmp r0, #37 @ 0x25 +10002df8: d009 beq.n 10002e0e <_vsnprintf+0x42> +10002dfa: 1c6c adds r4, r5, #1 +10002dfc: 465b mov r3, fp +10002dfe: 002a movs r2, r5 +10002e00: 4641 mov r1, r8 +10002e02: 47b0 blx r6 +10002e04: 9b11 ldr r3, [sp, #68] @ 0x44 +10002e06: 3301 adds r3, #1 +10002e08: 9311 str r3, [sp, #68] @ 0x44 +10002e0a: 0025 movs r5, r4 +10002e0c: e7ee b.n 10002dec <_vsnprintf+0x20> +10002e0e: 3301 adds r3, #1 +10002e10: 9311 str r3, [sp, #68] @ 0x44 +10002e12: 2700 movs r7, #0 +10002e14: e020 b.n 10002e58 <_vsnprintf+0x8c> +10002e16: 2301 movs r3, #1 +10002e18: 431f orrs r7, r3 +10002e1a: 3201 adds r2, #1 +10002e1c: 9211 str r2, [sp, #68] @ 0x44 +10002e1e: 2401 movs r4, #1 +10002e20: e018 b.n 10002e54 <_vsnprintf+0x88> +10002e22: 2302 movs r3, #2 +10002e24: 431f orrs r7, r3 +10002e26: 3201 adds r2, #1 +10002e28: 9211 str r2, [sp, #68] @ 0x44 +10002e2a: 2401 movs r4, #1 +10002e2c: e012 b.n 10002e54 <_vsnprintf+0x88> +10002e2e: 2304 movs r3, #4 +10002e30: 431f orrs r7, r3 +10002e32: 3201 adds r2, #1 +10002e34: 9211 str r2, [sp, #68] @ 0x44 +10002e36: 2401 movs r4, #1 +10002e38: e00c b.n 10002e54 <_vsnprintf+0x88> +10002e3a: 2308 movs r3, #8 +10002e3c: 431f orrs r7, r3 +10002e3e: 3201 adds r2, #1 +10002e40: 9211 str r2, [sp, #68] @ 0x44 +10002e42: 2401 movs r4, #1 +10002e44: e006 b.n 10002e54 <_vsnprintf+0x88> +10002e46: 2310 movs r3, #16 +10002e48: 431f orrs r7, r3 +10002e4a: 3201 adds r2, #1 +10002e4c: 9211 str r2, [sp, #68] @ 0x44 +10002e4e: 2401 movs r4, #1 +10002e50: e000 b.n 10002e54 <_vsnprintf+0x88> +10002e52: 2400 movs r4, #0 +10002e54: 2c00 cmp r4, #0 +10002e56: d009 beq.n 10002e6c <_vsnprintf+0xa0> +10002e58: 9a11 ldr r2, [sp, #68] @ 0x44 +10002e5a: 7813 ldrb r3, [r2, #0] +10002e5c: 3b20 subs r3, #32 +10002e5e: b2d9 uxtb r1, r3 +10002e60: 2910 cmp r1, #16 +10002e62: d8f6 bhi.n 10002e52 <_vsnprintf+0x86> +10002e64: 008b lsls r3, r1, #2 +10002e66: 49c8 ldr r1, [pc, #800] @ (10003188 <_vsnprintf+0x3bc>) +10002e68: 58cb ldr r3, [r1, r3] +10002e6a: 469f mov pc, r3 +10002e6c: 9b11 ldr r3, [sp, #68] @ 0x44 +10002e6e: 781a ldrb r2, [r3, #0] +10002e70: 0013 movs r3, r2 +10002e72: 3b30 subs r3, #48 @ 0x30 +10002e74: b2db uxtb r3, r3 +10002e76: 2b09 cmp r3, #9 +10002e78: d910 bls.n 10002e9c <_vsnprintf+0xd0> +10002e7a: 2a2a cmp r2, #42 @ 0x2a +10002e7c: d013 beq.n 10002ea6 <_vsnprintf+0xda> +10002e7e: 940b str r4, [sp, #44] @ 0x2c +10002e80: 9b11 ldr r3, [sp, #68] @ 0x44 +10002e82: 781a ldrb r2, [r3, #0] +10002e84: 2a2e cmp r2, #46 @ 0x2e +10002e86: d01e beq.n 10002ec6 <_vsnprintf+0xfa> +10002e88: 9a11 ldr r2, [sp, #68] @ 0x44 +10002e8a: 7813 ldrb r3, [r2, #0] +10002e8c: 3b68 subs r3, #104 @ 0x68 +10002e8e: b2d9 uxtb r1, r3 +10002e90: 2912 cmp r1, #18 +10002e92: d859 bhi.n 10002f48 <_vsnprintf+0x17c> +10002e94: 008b lsls r3, r1, #2 +10002e96: 49bd ldr r1, [pc, #756] @ (1000318c <_vsnprintf+0x3c0>) +10002e98: 58cb ldr r3, [r1, r3] +10002e9a: 469f mov pc, r3 +10002e9c: a811 add r0, sp, #68 @ 0x44 +10002e9e: f7ff fa05 bl 100022ac <_atoi> +10002ea2: 900b str r0, [sp, #44] @ 0x2c +10002ea4: e7ec b.n 10002e80 <_vsnprintf+0xb4> +10002ea6: 9b1c ldr r3, [sp, #112] @ 0x70 +10002ea8: 1d1a adds r2, r3, #4 +10002eaa: 921c str r2, [sp, #112] @ 0x70 +10002eac: 681b ldr r3, [r3, #0] +10002eae: 2b00 cmp r3, #0 +10002eb0: db04 blt.n 10002ebc <_vsnprintf+0xf0> +10002eb2: 930b str r3, [sp, #44] @ 0x2c +10002eb4: 9b11 ldr r3, [sp, #68] @ 0x44 +10002eb6: 3301 adds r3, #1 +10002eb8: 9311 str r3, [sp, #68] @ 0x44 +10002eba: e7e1 b.n 10002e80 <_vsnprintf+0xb4> +10002ebc: 2202 movs r2, #2 +10002ebe: 4317 orrs r7, r2 +10002ec0: 425b negs r3, r3 +10002ec2: 930b str r3, [sp, #44] @ 0x2c +10002ec4: e7f6 b.n 10002eb4 <_vsnprintf+0xe8> +10002ec6: 2280 movs r2, #128 @ 0x80 +10002ec8: 00d2 lsls r2, r2, #3 +10002eca: 4317 orrs r7, r2 +10002ecc: 1c5a adds r2, r3, #1 +10002ece: 9211 str r2, [sp, #68] @ 0x44 +10002ed0: 785a ldrb r2, [r3, #1] +10002ed2: 0013 movs r3, r2 +10002ed4: 3b30 subs r3, #48 @ 0x30 +10002ed6: b2db uxtb r3, r3 +10002ed8: 2b09 cmp r3, #9 +10002eda: d90b bls.n 10002ef4 <_vsnprintf+0x128> +10002edc: 2a2a cmp r2, #42 @ 0x2a +10002ede: d1d3 bne.n 10002e88 <_vsnprintf+0xbc> +10002ee0: 9b1c ldr r3, [sp, #112] @ 0x70 +10002ee2: 1d1a adds r2, r3, #4 +10002ee4: 921c str r2, [sp, #112] @ 0x70 +10002ee6: 681c ldr r4, [r3, #0] +10002ee8: 2c00 cmp r4, #0 +10002eea: db08 blt.n 10002efe <_vsnprintf+0x132> +10002eec: 9b11 ldr r3, [sp, #68] @ 0x44 +10002eee: 3301 adds r3, #1 +10002ef0: 9311 str r3, [sp, #68] @ 0x44 +10002ef2: e7c9 b.n 10002e88 <_vsnprintf+0xbc> +10002ef4: a811 add r0, sp, #68 @ 0x44 +10002ef6: f7ff f9d9 bl 100022ac <_atoi> +10002efa: 0004 movs r4, r0 +10002efc: e7c4 b.n 10002e88 <_vsnprintf+0xbc> +10002efe: 2400 movs r4, #0 +10002f00: e7f4 b.n 10002eec <_vsnprintf+0x120> +10002f02: 2380 movs r3, #128 @ 0x80 +10002f04: 005b lsls r3, r3, #1 +10002f06: 433b orrs r3, r7 +10002f08: 1c51 adds r1, r2, #1 +10002f0a: 9111 str r1, [sp, #68] @ 0x44 +10002f0c: 7851 ldrb r1, [r2, #1] +10002f0e: 296c cmp r1, #108 @ 0x6c +10002f10: d001 beq.n 10002f16 <_vsnprintf+0x14a> +10002f12: 001f movs r7, r3 +10002f14: e018 b.n 10002f48 <_vsnprintf+0x17c> +10002f16: 23c0 movs r3, #192 @ 0xc0 +10002f18: 009b lsls r3, r3, #2 +10002f1a: 431f orrs r7, r3 +10002f1c: 3202 adds r2, #2 +10002f1e: 9211 str r2, [sp, #68] @ 0x44 +10002f20: e012 b.n 10002f48 <_vsnprintf+0x17c> +10002f22: 2380 movs r3, #128 @ 0x80 +10002f24: 433b orrs r3, r7 +10002f26: 1c51 adds r1, r2, #1 +10002f28: 9111 str r1, [sp, #68] @ 0x44 +10002f2a: 7851 ldrb r1, [r2, #1] +10002f2c: 2968 cmp r1, #104 @ 0x68 +10002f2e: d001 beq.n 10002f34 <_vsnprintf+0x168> +10002f30: 001f movs r7, r3 +10002f32: e009 b.n 10002f48 <_vsnprintf+0x17c> +10002f34: 23c0 movs r3, #192 @ 0xc0 +10002f36: 431f orrs r7, r3 +10002f38: 3202 adds r2, #2 +10002f3a: 9211 str r2, [sp, #68] @ 0x44 +10002f3c: e004 b.n 10002f48 <_vsnprintf+0x17c> +10002f3e: 2380 movs r3, #128 @ 0x80 +10002f40: 005b lsls r3, r3, #1 +10002f42: 431f orrs r7, r3 +10002f44: 3201 adds r2, #1 +10002f46: 9211 str r2, [sp, #68] @ 0x44 +10002f48: 9b11 ldr r3, [sp, #68] @ 0x44 +10002f4a: 7818 ldrb r0, [r3, #0] +10002f4c: 2867 cmp r0, #103 @ 0x67 +10002f4e: d818 bhi.n 10002f82 <_vsnprintf+0x1b6> +10002f50: 2825 cmp r0, #37 @ 0x25 +10002f52: d200 bcs.n 10002f56 <_vsnprintf+0x18a> +10002f54: e24c b.n 100033f0 <_vsnprintf+0x624> +10002f56: 0003 movs r3, r0 +10002f58: 3b25 subs r3, #37 @ 0x25 +10002f5a: b2da uxtb r2, r3 +10002f5c: 2a42 cmp r2, #66 @ 0x42 +10002f5e: d900 bls.n 10002f62 <_vsnprintf+0x196> +10002f60: e246 b.n 100033f0 <_vsnprintf+0x624> +10002f62: 0093 lsls r3, r2, #2 +10002f64: 4a8a ldr r2, [pc, #552] @ (10003190 <_vsnprintf+0x3c4>) +10002f66: 58d3 ldr r3, [r2, r3] +10002f68: 469f mov pc, r3 +10002f6a: 2380 movs r3, #128 @ 0x80 +10002f6c: 009b lsls r3, r3, #2 +10002f6e: 431f orrs r7, r3 +10002f70: 3201 adds r2, #1 +10002f72: 9211 str r2, [sp, #68] @ 0x44 +10002f74: e7e8 b.n 10002f48 <_vsnprintf+0x17c> +10002f76: 2380 movs r3, #128 @ 0x80 +10002f78: 005b lsls r3, r3, #1 +10002f7a: 431f orrs r7, r3 +10002f7c: 3201 adds r2, #1 +10002f7e: 9211 str r2, [sp, #68] @ 0x44 +10002f80: e7e2 b.n 10002f48 <_vsnprintf+0x17c> +10002f82: 2878 cmp r0, #120 @ 0x78 +10002f84: d900 bls.n 10002f88 <_vsnprintf+0x1bc> +10002f86: e233 b.n 100033f0 <_vsnprintf+0x624> +10002f88: 2869 cmp r0, #105 @ 0x69 +10002f8a: d200 bcs.n 10002f8e <_vsnprintf+0x1c2> +10002f8c: e230 b.n 100033f0 <_vsnprintf+0x624> +10002f8e: 0002 movs r2, r0 +10002f90: 3a69 subs r2, #105 @ 0x69 +10002f92: b2d2 uxtb r2, r2 +10002f94: 2301 movs r3, #1 +10002f96: 4093 lsls r3, r2 +10002f98: 4a7e ldr r2, [pc, #504] @ (10003194 <_vsnprintf+0x3c8>) +10002f9a: 4213 tst r3, r2 +10002f9c: d111 bne.n 10002fc2 <_vsnprintf+0x1f6> +10002f9e: 061a lsls r2, r3, #24 +10002fa0: d500 bpl.n 10002fa4 <_vsnprintf+0x1d8> +10002fa2: e200 b.n 100033a6 <_vsnprintf+0x5da> +10002fa4: 055b lsls r3, r3, #21 +10002fa6: d400 bmi.n 10002faa <_vsnprintf+0x1de> +10002fa8: e222 b.n 100033f0 <_vsnprintf+0x624> +10002faa: 9b1c ldr r3, [sp, #112] @ 0x70 +10002fac: 1d1a adds r2, r3, #4 +10002fae: 921c str r2, [sp, #112] @ 0x70 +10002fb0: 681b ldr r3, [r3, #0] +10002fb2: 469a mov sl, r3 +10002fb4: 2c00 cmp r4, #0 +10002fb6: d000 beq.n 10002fba <_vsnprintf+0x1ee> +10002fb8: e1b2 b.n 10003320 <_vsnprintf+0x554> +10002fba: 2201 movs r2, #1 +10002fbc: 4252 negs r2, r2 +10002fbe: 4653 mov r3, sl +10002fc0: e18e b.n 100032e0 <_vsnprintf+0x514> +10002fc2: 286f cmp r0, #111 @ 0x6f +10002fc4: d00e beq.n 10002fe4 <_vsnprintf+0x218> +10002fc6: d806 bhi.n 10002fd6 <_vsnprintf+0x20a> +10002fc8: 2858 cmp r0, #88 @ 0x58 +10002fca: d03d beq.n 10003048 <_vsnprintf+0x27c> +10002fcc: 2862 cmp r0, #98 @ 0x62 +10002fce: d104 bne.n 10002fda <_vsnprintf+0x20e> +10002fd0: 2302 movs r3, #2 +10002fd2: 469c mov ip, r3 +10002fd4: e008 b.n 10002fe8 <_vsnprintf+0x21c> +10002fd6: 2878 cmp r0, #120 @ 0x78 +10002fd8: d039 beq.n 1000304e <_vsnprintf+0x282> +10002fda: 2310 movs r3, #16 +10002fdc: 439f bics r7, r3 +10002fde: 3b06 subs r3, #6 +10002fe0: 469c mov ip, r3 +10002fe2: e001 b.n 10002fe8 <_vsnprintf+0x21c> +10002fe4: 2308 movs r3, #8 +10002fe6: 469c mov ip, r3 +10002fe8: 2858 cmp r0, #88 @ 0x58 +10002fea: d033 beq.n 10003054 <_vsnprintf+0x288> +10002fec: 2869 cmp r0, #105 @ 0x69 +10002fee: d003 beq.n 10002ff8 <_vsnprintf+0x22c> +10002ff0: 2864 cmp r0, #100 @ 0x64 +10002ff2: d001 beq.n 10002ff8 <_vsnprintf+0x22c> +10002ff4: 220c movs r2, #12 +10002ff6: 4397 bics r7, r2 +10002ff8: 057a lsls r2, r7, #21 +10002ffa: d501 bpl.n 10003000 <_vsnprintf+0x234> +10002ffc: 2201 movs r2, #1 +10002ffe: 4397 bics r7, r2 +10003000: 2869 cmp r0, #105 @ 0x69 +10003002: d02a beq.n 1000305a <_vsnprintf+0x28e> +10003004: 2864 cmp r0, #100 @ 0x64 +10003006: d028 beq.n 1000305a <_vsnprintf+0x28e> +10003008: 05ba lsls r2, r7, #22 +1000300a: d500 bpl.n 1000300e <_vsnprintf+0x242> +1000300c: e09f b.n 1000314e <_vsnprintf+0x382> +1000300e: 05fa lsls r2, r7, #23 +10003010: d500 bpl.n 10003014 <_vsnprintf+0x248> +10003012: e0c1 b.n 10003198 <_vsnprintf+0x3cc> +10003014: 067a lsls r2, r7, #25 +10003016: d400 bmi.n 1000301a <_vsnprintf+0x24e> +10003018: e0d3 b.n 100031c2 <_vsnprintf+0x3f6> +1000301a: 9a1c ldr r2, [sp, #112] @ 0x70 +1000301c: 1d11 adds r1, r2, #4 +1000301e: 911c str r1, [sp, #112] @ 0x70 +10003020: 6811 ldr r1, [r2, #0] +10003022: 22ff movs r2, #255 @ 0xff +10003024: 400a ands r2, r1 +10003026: 9705 str r7, [sp, #20] +10003028: 9b0b ldr r3, [sp, #44] @ 0x2c +1000302a: 9304 str r3, [sp, #16] +1000302c: 9403 str r4, [sp, #12] +1000302e: 4663 mov r3, ip +10003030: 9302 str r3, [sp, #8] +10003032: 2300 movs r3, #0 +10003034: 9301 str r3, [sp, #4] +10003036: 9200 str r2, [sp, #0] +10003038: 465b mov r3, fp +1000303a: 002a movs r2, r5 +1000303c: 4641 mov r1, r8 +1000303e: 0030 movs r0, r6 +10003040: f7ff fa25 bl 1000248e <_ntoa_long> +10003044: 0005 movs r5, r0 +10003046: e027 b.n 10003098 <_vsnprintf+0x2cc> +10003048: 2310 movs r3, #16 +1000304a: 469c mov ip, r3 +1000304c: e7cc b.n 10002fe8 <_vsnprintf+0x21c> +1000304e: 2310 movs r3, #16 +10003050: 469c mov ip, r3 +10003052: e7c9 b.n 10002fe8 <_vsnprintf+0x21c> +10003054: 2220 movs r2, #32 +10003056: 4317 orrs r7, r2 +10003058: e7c8 b.n 10002fec <_vsnprintf+0x220> +1000305a: 05ba lsls r2, r7, #22 +1000305c: d420 bmi.n 100030a0 <_vsnprintf+0x2d4> +1000305e: 05fa lsls r2, r7, #23 +10003060: d450 bmi.n 10003104 <_vsnprintf+0x338> +10003062: 067a lsls r2, r7, #25 +10003064: d566 bpl.n 10003134 <_vsnprintf+0x368> +10003066: 9a1c ldr r2, [sp, #112] @ 0x70 +10003068: 1d11 adds r1, r2, #4 +1000306a: 911c str r1, [sp, #112] @ 0x70 +1000306c: 6811 ldr r1, [r2, #0] +1000306e: 22ff movs r2, #255 @ 0xff +10003070: 400a ands r2, r1 +10003072: 17d0 asrs r0, r2, #31 +10003074: 1811 adds r1, r2, r0 +10003076: 4041 eors r1, r0 +10003078: 9705 str r7, [sp, #20] +1000307a: 9b0b ldr r3, [sp, #44] @ 0x2c +1000307c: 9304 str r3, [sp, #16] +1000307e: 9403 str r4, [sp, #12] +10003080: 4663 mov r3, ip +10003082: 9302 str r3, [sp, #8] +10003084: 0fd2 lsrs r2, r2, #31 +10003086: 9201 str r2, [sp, #4] +10003088: 9100 str r1, [sp, #0] +1000308a: 465b mov r3, fp +1000308c: 002a movs r2, r5 +1000308e: 4641 mov r1, r8 +10003090: 0030 movs r0, r6 +10003092: f7ff f9fc bl 1000248e <_ntoa_long> +10003096: 0005 movs r5, r0 +10003098: 9b11 ldr r3, [sp, #68] @ 0x44 +1000309a: 3301 adds r3, #1 +1000309c: 9311 str r3, [sp, #68] @ 0x44 +1000309e: e6a5 b.n 10002dec <_vsnprintf+0x20> +100030a0: 9a1c ldr r2, [sp, #112] @ 0x70 +100030a2: 3207 adds r2, #7 +100030a4: 2107 movs r1, #7 +100030a6: 438a bics r2, r1 +100030a8: 0011 movs r1, r2 +100030aa: 3108 adds r1, #8 +100030ac: 911c str r1, [sp, #112] @ 0x70 +100030ae: 6811 ldr r1, [r2, #0] +100030b0: 6853 ldr r3, [r2, #4] +100030b2: 4699 mov r9, r3 +100030b4: 17db asrs r3, r3, #31 +100030b6: 930c str r3, [sp, #48] @ 0x30 +100030b8: 930d str r3, [sp, #52] @ 0x34 +100030ba: 9a0c ldr r2, [sp, #48] @ 0x30 +100030bc: 9b0d ldr r3, [sp, #52] @ 0x34 +100030be: 0010 movs r0, r2 +100030c0: 4048 eors r0, r1 +100030c2: 900e str r0, [sp, #56] @ 0x38 +100030c4: 464a mov r2, r9 +100030c6: 4053 eors r3, r2 +100030c8: 930f str r3, [sp, #60] @ 0x3c +100030ca: 980e ldr r0, [sp, #56] @ 0x38 +100030cc: 990f ldr r1, [sp, #60] @ 0x3c +100030ce: 9a0c ldr r2, [sp, #48] @ 0x30 +100030d0: 9b0d ldr r3, [sp, #52] @ 0x34 +100030d2: 1a80 subs r0, r0, r2 +100030d4: 4199 sbcs r1, r3 +100030d6: 900e str r0, [sp, #56] @ 0x38 +100030d8: 910f str r1, [sp, #60] @ 0x3c +100030da: 9708 str r7, [sp, #32] +100030dc: 9b0b ldr r3, [sp, #44] @ 0x2c +100030de: 9307 str r3, [sp, #28] +100030e0: 9406 str r4, [sp, #24] +100030e2: 4663 mov r3, ip +100030e4: 9304 str r3, [sp, #16] +100030e6: 2300 movs r3, #0 +100030e8: 9305 str r3, [sp, #20] +100030ea: 464b mov r3, r9 +100030ec: 0fda lsrs r2, r3, #31 +100030ee: 9202 str r2, [sp, #8] +100030f0: 9000 str r0, [sp, #0] +100030f2: 9101 str r1, [sp, #4] +100030f4: 465b mov r3, fp +100030f6: 002a movs r2, r5 +100030f8: 4641 mov r1, r8 +100030fa: 0030 movs r0, r6 +100030fc: f7ff fa25 bl 1000254a <_ntoa_long_long> +10003100: 0005 movs r5, r0 +10003102: e7c9 b.n 10003098 <_vsnprintf+0x2cc> +10003104: 9a1c ldr r2, [sp, #112] @ 0x70 +10003106: 1d11 adds r1, r2, #4 +10003108: 911c str r1, [sp, #112] @ 0x70 +1000310a: 6812 ldr r2, [r2, #0] +1000310c: 17d0 asrs r0, r2, #31 +1000310e: 1811 adds r1, r2, r0 +10003110: 4041 eors r1, r0 +10003112: 9705 str r7, [sp, #20] +10003114: 9b0b ldr r3, [sp, #44] @ 0x2c +10003116: 9304 str r3, [sp, #16] +10003118: 9403 str r4, [sp, #12] +1000311a: 4663 mov r3, ip +1000311c: 9302 str r3, [sp, #8] +1000311e: 0fd2 lsrs r2, r2, #31 +10003120: 9201 str r2, [sp, #4] +10003122: 9100 str r1, [sp, #0] +10003124: 465b mov r3, fp +10003126: 002a movs r2, r5 +10003128: 4641 mov r1, r8 +1000312a: 0030 movs r0, r6 +1000312c: f7ff f9af bl 1000248e <_ntoa_long> +10003130: 0005 movs r5, r0 +10003132: e7b1 b.n 10003098 <_vsnprintf+0x2cc> +10003134: 063a lsls r2, r7, #24 +10003136: d505 bpl.n 10003144 <_vsnprintf+0x378> +10003138: 9a1c ldr r2, [sp, #112] @ 0x70 +1000313a: 1d11 adds r1, r2, #4 +1000313c: 911c str r1, [sp, #112] @ 0x70 +1000313e: 2300 movs r3, #0 +10003140: 5ed2 ldrsh r2, [r2, r3] +10003142: e796 b.n 10003072 <_vsnprintf+0x2a6> +10003144: 9a1c ldr r2, [sp, #112] @ 0x70 +10003146: 1d11 adds r1, r2, #4 +10003148: 911c str r1, [sp, #112] @ 0x70 +1000314a: 6812 ldr r2, [r2, #0] +1000314c: e791 b.n 10003072 <_vsnprintf+0x2a6> +1000314e: 9a1c ldr r2, [sp, #112] @ 0x70 +10003150: 3207 adds r2, #7 +10003152: 2107 movs r1, #7 +10003154: 438a bics r2, r1 +10003156: 0011 movs r1, r2 +10003158: 3108 adds r1, #8 +1000315a: 911c str r1, [sp, #112] @ 0x70 +1000315c: 9708 str r7, [sp, #32] +1000315e: 9b0b ldr r3, [sp, #44] @ 0x2c +10003160: 9307 str r3, [sp, #28] +10003162: 9406 str r4, [sp, #24] +10003164: 4663 mov r3, ip +10003166: 9304 str r3, [sp, #16] +10003168: 2300 movs r3, #0 +1000316a: 9305 str r3, [sp, #20] +1000316c: 9302 str r3, [sp, #8] +1000316e: 6853 ldr r3, [r2, #4] +10003170: 6812 ldr r2, [r2, #0] +10003172: 9200 str r2, [sp, #0] +10003174: 9301 str r3, [sp, #4] +10003176: 465b mov r3, fp +10003178: 002a movs r2, r5 +1000317a: 4641 mov r1, r8 +1000317c: 0030 movs r0, r6 +1000317e: f7ff f9e4 bl 1000254a <_ntoa_long_long> +10003182: 0005 movs r5, r0 +10003184: e788 b.n 10003098 <_vsnprintf+0x2cc> +10003186: 46c0 nop @ (mov r8, r8) +10003188: 10005518 .word 0x10005518 +1000318c: 1000555c .word 0x1000555c +10003190: 100055a8 .word 0x100055a8 +10003194: 00009041 .word 0x00009041 +10003198: 9a1c ldr r2, [sp, #112] @ 0x70 +1000319a: 1d11 adds r1, r2, #4 +1000319c: 911c str r1, [sp, #112] @ 0x70 +1000319e: 9705 str r7, [sp, #20] +100031a0: 9b0b ldr r3, [sp, #44] @ 0x2c +100031a2: 9304 str r3, [sp, #16] +100031a4: 9403 str r4, [sp, #12] +100031a6: 4663 mov r3, ip +100031a8: 9302 str r3, [sp, #8] +100031aa: 2300 movs r3, #0 +100031ac: 9301 str r3, [sp, #4] +100031ae: 6813 ldr r3, [r2, #0] +100031b0: 9300 str r3, [sp, #0] +100031b2: 465b mov r3, fp +100031b4: 002a movs r2, r5 +100031b6: 4641 mov r1, r8 +100031b8: 0030 movs r0, r6 +100031ba: f7ff f968 bl 1000248e <_ntoa_long> +100031be: 0005 movs r5, r0 +100031c0: e76a b.n 10003098 <_vsnprintf+0x2cc> +100031c2: 063a lsls r2, r7, #24 +100031c4: d506 bpl.n 100031d4 <_vsnprintf+0x408> +100031c6: 9a1c ldr r2, [sp, #112] @ 0x70 +100031c8: 1d11 adds r1, r2, #4 +100031ca: 911c str r1, [sp, #112] @ 0x70 +100031cc: 6812 ldr r2, [r2, #0] +100031ce: 0412 lsls r2, r2, #16 +100031d0: 0c12 lsrs r2, r2, #16 +100031d2: e728 b.n 10003026 <_vsnprintf+0x25a> +100031d4: 9a1c ldr r2, [sp, #112] @ 0x70 +100031d6: 1d11 adds r1, r2, #4 +100031d8: 911c str r1, [sp, #112] @ 0x70 +100031da: 6812 ldr r2, [r2, #0] +100031dc: e723 b.n 10003026 <_vsnprintf+0x25a> +100031de: 2846 cmp r0, #70 @ 0x46 +100031e0: d019 beq.n 10003216 <_vsnprintf+0x44a> +100031e2: 9b1c ldr r3, [sp, #112] @ 0x70 +100031e4: 3307 adds r3, #7 +100031e6: 2207 movs r2, #7 +100031e8: 4393 bics r3, r2 +100031ea: 001a movs r2, r3 +100031ec: 3208 adds r2, #8 +100031ee: 921c str r2, [sp, #112] @ 0x70 +100031f0: 9704 str r7, [sp, #16] +100031f2: 9a0b ldr r2, [sp, #44] @ 0x2c +100031f4: 9203 str r2, [sp, #12] +100031f6: 9402 str r4, [sp, #8] +100031f8: 681a ldr r2, [r3, #0] +100031fa: 685b ldr r3, [r3, #4] +100031fc: 9200 str r2, [sp, #0] +100031fe: 9301 str r3, [sp, #4] +10003200: 465b mov r3, fp +10003202: 002a movs r2, r5 +10003204: 4641 mov r1, r8 +10003206: 0030 movs r0, r6 +10003208: f7ff fc36 bl 10002a78 <_ftoa> +1000320c: 0005 movs r5, r0 +1000320e: 9b11 ldr r3, [sp, #68] @ 0x44 +10003210: 3301 adds r3, #1 +10003212: 9311 str r3, [sp, #68] @ 0x44 +10003214: e5ea b.n 10002dec <_vsnprintf+0x20> +10003216: 2320 movs r3, #32 +10003218: 431f orrs r7, r3 +1000321a: e7e2 b.n 100031e2 <_vsnprintf+0x416> +1000321c: 2867 cmp r0, #103 @ 0x67 +1000321e: d001 beq.n 10003224 <_vsnprintf+0x458> +10003220: 2847 cmp r0, #71 @ 0x47 +10003222: d102 bne.n 1000322a <_vsnprintf+0x45e> +10003224: 2380 movs r3, #128 @ 0x80 +10003226: 011b lsls r3, r3, #4 +10003228: 431f orrs r7, r3 +1000322a: 2845 cmp r0, #69 @ 0x45 +1000322c: d001 beq.n 10003232 <_vsnprintf+0x466> +1000322e: 2847 cmp r0, #71 @ 0x47 +10003230: d101 bne.n 10003236 <_vsnprintf+0x46a> +10003232: 2320 movs r3, #32 +10003234: 431f orrs r7, r3 +10003236: 9b1c ldr r3, [sp, #112] @ 0x70 +10003238: 3307 adds r3, #7 +1000323a: 2207 movs r2, #7 +1000323c: 4393 bics r3, r2 +1000323e: 001a movs r2, r3 +10003240: 3208 adds r2, #8 +10003242: 921c str r2, [sp, #112] @ 0x70 +10003244: 9704 str r7, [sp, #16] +10003246: 9a0b ldr r2, [sp, #44] @ 0x2c +10003248: 9203 str r2, [sp, #12] +1000324a: 9402 str r4, [sp, #8] +1000324c: 681a ldr r2, [r3, #0] +1000324e: 685b ldr r3, [r3, #4] +10003250: 9200 str r2, [sp, #0] +10003252: 9301 str r3, [sp, #4] +10003254: 465b mov r3, fp +10003256: 002a movs r2, r5 +10003258: 4641 mov r1, r8 +1000325a: 0030 movs r0, r6 +1000325c: f7ff f9fc bl 10002658 <_etoa> +10003260: 0005 movs r5, r0 +10003262: 9b11 ldr r3, [sp, #68] @ 0x44 +10003264: 3301 adds r3, #1 +10003266: 9311 str r3, [sp, #68] @ 0x44 +10003268: e5c0 b.n 10002dec <_vsnprintf+0x20> +1000326a: 2302 movs r3, #2 +1000326c: 001a movs r2, r3 +1000326e: 403a ands r2, r7 +10003270: 4691 mov r9, r2 +10003272: 423b tst r3, r7 +10003274: d01d beq.n 100032b2 <_vsnprintf+0x4e6> +10003276: 2401 movs r4, #1 +10003278: 9b1c ldr r3, [sp, #112] @ 0x70 +1000327a: 1d1a adds r2, r3, #4 +1000327c: 921c str r2, [sp, #112] @ 0x70 +1000327e: 1c6f adds r7, r5, #1 +10003280: 7818 ldrb r0, [r3, #0] +10003282: 465b mov r3, fp +10003284: 002a movs r2, r5 +10003286: 4641 mov r1, r8 +10003288: 47b0 blx r6 +1000328a: 464b mov r3, r9 +1000328c: 2b00 cmp r3, #0 +1000328e: d114 bne.n 100032ba <_vsnprintf+0x4ee> +10003290: 9b11 ldr r3, [sp, #68] @ 0x44 +10003292: 3301 adds r3, #1 +10003294: 9311 str r3, [sp, #68] @ 0x44 +10003296: 003d movs r5, r7 +10003298: e5a8 b.n 10002dec <_vsnprintf+0x20> +1000329a: 1c57 adds r7, r2, #1 +1000329c: 465b mov r3, fp +1000329e: 4641 mov r1, r8 +100032a0: 2020 movs r0, #32 +100032a2: 47b0 blx r6 +100032a4: 0023 movs r3, r4 +100032a6: 003a movs r2, r7 +100032a8: 1c5c adds r4, r3, #1 +100032aa: 429d cmp r5, r3 +100032ac: d8f5 bhi.n 1000329a <_vsnprintf+0x4ce> +100032ae: 0015 movs r5, r2 +100032b0: e7e2 b.n 10003278 <_vsnprintf+0x4ac> +100032b2: 2301 movs r3, #1 +100032b4: 002a movs r2, r5 +100032b6: 9d0b ldr r5, [sp, #44] @ 0x2c +100032b8: e7f6 b.n 100032a8 <_vsnprintf+0x4dc> +100032ba: 003a movs r2, r7 +100032bc: 46b1 mov r9, r6 +100032be: 9e0b ldr r6, [sp, #44] @ 0x2c +100032c0: e006 b.n 100032d0 <_vsnprintf+0x504> +100032c2: 1c57 adds r7, r2, #1 +100032c4: 465b mov r3, fp +100032c6: 4641 mov r1, r8 +100032c8: 2020 movs r0, #32 +100032ca: 47c8 blx r9 +100032cc: 002c movs r4, r5 +100032ce: 003a movs r2, r7 +100032d0: 1c65 adds r5, r4, #1 +100032d2: 42a6 cmp r6, r4 +100032d4: d8f5 bhi.n 100032c2 <_vsnprintf+0x4f6> +100032d6: 0017 movs r7, r2 +100032d8: 464e mov r6, r9 +100032da: e7d9 b.n 10003290 <_vsnprintf+0x4c4> +100032dc: 3301 adds r3, #1 +100032de: 000a movs r2, r1 +100032e0: 7819 ldrb r1, [r3, #0] +100032e2: 2900 cmp r1, #0 +100032e4: d002 beq.n 100032ec <_vsnprintf+0x520> +100032e6: 1e51 subs r1, r2, #1 +100032e8: 2a00 cmp r2, #0 +100032ea: d1f7 bne.n 100032dc <_vsnprintf+0x510> +100032ec: 4652 mov r2, sl +100032ee: 1a9b subs r3, r3, r2 +100032f0: 2280 movs r2, #128 @ 0x80 +100032f2: 00d2 lsls r2, r2, #3 +100032f4: 0039 movs r1, r7 +100032f6: 4011 ands r1, r2 +100032f8: 4689 mov r9, r1 +100032fa: 4217 tst r7, r2 +100032fc: d002 beq.n 10003304 <_vsnprintf+0x538> +100032fe: 42a3 cmp r3, r4 +10003300: d900 bls.n 10003304 <_vsnprintf+0x538> +10003302: 0023 movs r3, r4 +10003304: 2202 movs r2, #2 +10003306: 0011 movs r1, r2 +10003308: 4039 ands r1, r7 +1000330a: 9110 str r1, [sp, #64] @ 0x40 +1000330c: 423a tst r2, r7 +1000330e: d009 beq.n 10003324 <_vsnprintf+0x558> +10003310: 002a movs r2, r5 +10003312: 0025 movs r5, r4 +10003314: 4657 mov r7, sl +10003316: 469a mov sl, r3 +10003318: 0033 movs r3, r6 +1000331a: 464e mov r6, r9 +1000331c: 4699 mov r9, r3 +1000331e: e021 b.n 10003364 <_vsnprintf+0x598> +10003320: 0022 movs r2, r4 +10003322: e64c b.n 10002fbe <_vsnprintf+0x1f2> +10003324: 002a movs r2, r5 +10003326: 4645 mov r5, r8 +10003328: 46a0 mov r8, r4 +1000332a: e006 b.n 1000333a <_vsnprintf+0x56e> +1000332c: 1c54 adds r4, r2, #1 +1000332e: 465b mov r3, fp +10003330: 0029 movs r1, r5 +10003332: 2020 movs r0, #32 +10003334: 47b0 blx r6 +10003336: 003b movs r3, r7 +10003338: 0022 movs r2, r4 +1000333a: 1c5f adds r7, r3, #1 +1000333c: 990b ldr r1, [sp, #44] @ 0x2c +1000333e: 4299 cmp r1, r3 +10003340: d8f4 bhi.n 1000332c <_vsnprintf+0x560> +10003342: 4644 mov r4, r8 +10003344: 46a8 mov r8, r5 +10003346: 003b movs r3, r7 +10003348: 0025 movs r5, r4 +1000334a: 4657 mov r7, sl +1000334c: 469a mov sl, r3 +1000334e: 0033 movs r3, r6 +10003350: 464e mov r6, r9 +10003352: 4699 mov r9, r3 +10003354: e006 b.n 10003364 <_vsnprintf+0x598> +10003356: 001d movs r5, r3 +10003358: 3701 adds r7, #1 +1000335a: 1c54 adds r4, r2, #1 +1000335c: 465b mov r3, fp +1000335e: 4641 mov r1, r8 +10003360: 47c8 blx r9 +10003362: 0022 movs r2, r4 +10003364: 7838 ldrb r0, [r7, #0] +10003366: 2800 cmp r0, #0 +10003368: d004 beq.n 10003374 <_vsnprintf+0x5a8> +1000336a: 2e00 cmp r6, #0 +1000336c: d0f4 beq.n 10003358 <_vsnprintf+0x58c> +1000336e: 1e6b subs r3, r5, #1 +10003370: 2d00 cmp r5, #0 +10003372: d1f0 bne.n 10003356 <_vsnprintf+0x58a> +10003374: 0015 movs r5, r2 +10003376: 4653 mov r3, sl +10003378: 464e mov r6, r9 +1000337a: 9a10 ldr r2, [sp, #64] @ 0x40 +1000337c: 2a00 cmp r2, #0 +1000337e: d103 bne.n 10003388 <_vsnprintf+0x5bc> +10003380: 9b11 ldr r3, [sp, #68] @ 0x44 +10003382: 3301 adds r3, #1 +10003384: 9311 str r3, [sp, #68] @ 0x44 +10003386: e531 b.n 10002dec <_vsnprintf+0x20> +10003388: 9f0b ldr r7, [sp, #44] @ 0x2c +1000338a: 002a movs r2, r5 +1000338c: e006 b.n 1000339c <_vsnprintf+0x5d0> +1000338e: 1c55 adds r5, r2, #1 +10003390: 465b mov r3, fp +10003392: 4641 mov r1, r8 +10003394: 2020 movs r0, #32 +10003396: 47b0 blx r6 +10003398: 0023 movs r3, r4 +1000339a: 002a movs r2, r5 +1000339c: 1c5c adds r4, r3, #1 +1000339e: 429f cmp r7, r3 +100033a0: d8f5 bhi.n 1000338e <_vsnprintf+0x5c2> +100033a2: 0015 movs r5, r2 +100033a4: e7ec b.n 10003380 <_vsnprintf+0x5b4> +100033a6: 2321 movs r3, #33 @ 0x21 +100033a8: 433b orrs r3, r7 +100033aa: 9a1c ldr r2, [sp, #112] @ 0x70 +100033ac: 1d11 adds r1, r2, #4 +100033ae: 911c str r1, [sp, #112] @ 0x70 +100033b0: 6812 ldr r2, [r2, #0] +100033b2: 9305 str r3, [sp, #20] +100033b4: 2308 movs r3, #8 +100033b6: 9304 str r3, [sp, #16] +100033b8: 9403 str r4, [sp, #12] +100033ba: 3308 adds r3, #8 +100033bc: 9302 str r3, [sp, #8] +100033be: 2300 movs r3, #0 +100033c0: 9301 str r3, [sp, #4] +100033c2: 9200 str r2, [sp, #0] +100033c4: 465b mov r3, fp +100033c6: 002a movs r2, r5 +100033c8: 4641 mov r1, r8 +100033ca: 0030 movs r0, r6 +100033cc: f7ff f85f bl 1000248e <_ntoa_long> +100033d0: 0005 movs r5, r0 +100033d2: 9b11 ldr r3, [sp, #68] @ 0x44 +100033d4: 3301 adds r3, #1 +100033d6: 9311 str r3, [sp, #68] @ 0x44 +100033d8: e508 b.n 10002dec <_vsnprintf+0x20> +100033da: 1c6c adds r4, r5, #1 +100033dc: 465b mov r3, fp +100033de: 002a movs r2, r5 +100033e0: 4641 mov r1, r8 +100033e2: 2025 movs r0, #37 @ 0x25 +100033e4: 47b0 blx r6 +100033e6: 9b11 ldr r3, [sp, #68] @ 0x44 +100033e8: 3301 adds r3, #1 +100033ea: 9311 str r3, [sp, #68] @ 0x44 +100033ec: 0025 movs r5, r4 +100033ee: e4fd b.n 10002dec <_vsnprintf+0x20> +100033f0: 1c6c adds r4, r5, #1 +100033f2: 465b mov r3, fp +100033f4: 002a movs r2, r5 +100033f6: 4641 mov r1, r8 +100033f8: 47b0 blx r6 +100033fa: 9b11 ldr r3, [sp, #68] @ 0x44 +100033fc: 3301 adds r3, #1 +100033fe: 9311 str r3, [sp, #68] @ 0x44 +10003400: 0025 movs r5, r4 +10003402: e4f3 b.n 10002dec <_vsnprintf+0x20> +10003404: 4b0a ldr r3, [pc, #40] @ (10003430 <_vsnprintf+0x664>) +10003406: 469a mov sl, r3 +10003408: e4ee b.n 10002de8 <_vsnprintf+0x1c> +1000340a: 46b2 mov sl, r6 +1000340c: 455d cmp r5, fp +1000340e: d30d bcc.n 1000342c <_vsnprintf+0x660> +10003410: 465b mov r3, fp +10003412: 1e5a subs r2, r3, #1 +10003414: 465b mov r3, fp +10003416: 4641 mov r1, r8 +10003418: 2000 movs r0, #0 +1000341a: 47d0 blx sl +1000341c: 0028 movs r0, r5 +1000341e: b013 add sp, #76 @ 0x4c +10003420: bcf0 pop {r4, r5, r6, r7} +10003422: 46bb mov fp, r7 +10003424: 46b2 mov sl, r6 +10003426: 46a9 mov r9, r5 +10003428: 46a0 mov r8, r4 +1000342a: bdf0 pop {r4, r5, r6, r7, pc} +1000342c: 002a movs r2, r5 +1000342e: e7f1 b.n 10003414 <_vsnprintf+0x648> +10003430: 1000229d .word 0x1000229d -1000302c : -1000302c: bd00 pop {pc} -1000302e: 2a00 cmp r2, #0 -10003030: d1eb bne.n 1000300a -10003032: 2800 cmp r0, #0 -10003034: d101 bne.n 1000303a -10003036: 2900 cmp r1, #0 -10003038: d005 beq.n 10003046 -1000303a: 2000 movs r0, #0 -1000303c: 0fc9 lsrs r1, r1, #31 -1000303e: 07c9 lsls r1, r1, #31 -10003040: d101 bne.n 10003046 -10003042: 43c0 mvns r0, r0 -10003044: 0841 lsrs r1, r0, #1 -10003046: b500 push {lr} -10003048: f001 f83e bl 100040c8 <____aeabi_ldiv0_veneer> -1000304c: 2200 movs r2, #0 -1000304e: 2300 movs r3, #0 -10003050: bd00 pop {pc} -10003052: b500 push {lr} -10003054: 2900 cmp r1, #0 -10003056: db0a blt.n 1000306e -10003058: 43db mvns r3, r3 -1000305a: 4252 negs r2, r2 -1000305c: d100 bne.n 10003060 -1000305e: 3301 adds r3, #1 +10003434 : +10003434: b500 push {lr} +10003436: b085 sub sp, #20 +10003438: 9002 str r0, [sp, #8] +1000343a: 9103 str r1, [sp, #12] +1000343c: 2101 movs r1, #1 +1000343e: 4804 ldr r0, [pc, #16] @ (10003450 ) +10003440: 9300 str r3, [sp, #0] +10003442: 0013 movs r3, r2 +10003444: 424a negs r2, r1 +10003446: a902 add r1, sp, #8 +10003448: f7ff fcc0 bl 10002dcc <_vsnprintf> +1000344c: b005 add sp, #20 +1000344e: bd00 pop {pc} +10003450: 1000229f .word 0x1000229f -10003060 : -10003060: f000 f814 bl 1000308c -10003064: 43c9 mvns r1, r1 -10003066: 4240 negs r0, r0 -10003068: d100 bne.n 1000306c -1000306a: 3101 adds r1, #1 +10003454 <__aeabi_bits_init>: +10003454: 4801 ldr r0, [pc, #4] @ (1000345c <__aeabi_bits_init+0x8>) +10003456: 2104 movs r1, #4 +10003458: 4b01 ldr r3, [pc, #4] @ (10003460 <__aeabi_bits_init+0xc>) +1000345a: 4718 bx r3 +1000345c: 20000330 .word 0x20000330 +10003460: 10003485 .word 0x10003485 -1000306c : -1000306c: bd00 pop {pc} -1000306e: 43c9 mvns r1, r1 -10003070: 4240 negs r0, r0 -10003072: d100 bne.n 10003076 -10003074: 3101 adds r1, #1 +10003464 : +10003464: b510 push {r4, lr} +10003466: 0001 movs r1, r0 +10003468: 2318 movs r3, #24 +1000346a: 881b ldrh r3, [r3, #0] +1000346c: 2214 movs r2, #20 +1000346e: 8810 ldrh r0, [r2, #0] +10003470: 4798 blx r3 +10003472: bd10 pop {r4, pc} -10003076 : -10003076: 43db mvns r3, r3 -10003078: 4252 negs r2, r2 -1000307a: d100 bne.n 1000307e -1000307c: 3301 adds r3, #1 +10003474 : +10003474: b510 push {r4, lr} +10003476: 0001 movs r1, r0 +10003478: 2318 movs r3, #24 +1000347a: 881b ldrh r3, [r3, #0] +1000347c: 2216 movs r2, #22 +1000347e: 8810 ldrh r0, [r2, #0] +10003480: 4798 blx r3 +10003482: bd10 pop {r4, pc} -1000307e : -1000307e: f000 f805 bl 1000308c -10003082: 43db mvns r3, r3 -10003084: 4252 negs r2, r2 -10003086: d100 bne.n 1000308a -10003088: 3301 adds r3, #1 - -1000308a : -1000308a: bd00 pop {pc} - -1000308c : -1000308c: 2900 cmp r1, #0 -1000308e: d123 bne.n 100030d8 -10003090: 2b00 cmp r3, #0 -10003092: d118 bne.n 100030c6 -10003094: 2a00 cmp r2, #0 -10003096: d00c beq.n 100030b2 -10003098: 46bc mov ip, r7 -1000309a: 4f0d ldr r7, [pc, #52] @ (100030d0 ) -1000309c: 6638 str r0, [r7, #96] @ 0x60 -1000309e: 667a str r2, [r7, #100] @ 0x64 -100030a0: 2100 movs r1, #0 -100030a2: 2300 movs r3, #0 -100030a4: e7ff b.n 100030a6 -100030a6: e7ff b.n 100030a8 -100030a8: e7ff b.n 100030aa -100030aa: 6f7a ldr r2, [r7, #116] @ 0x74 -100030ac: 6f38 ldr r0, [r7, #112] @ 0x70 -100030ae: 4667 mov r7, ip -100030b0: 4770 bx lr -100030b2: 2800 cmp r0, #0 -100030b4: d001 beq.n 100030ba - -100030b6 : -100030b6: 4807 ldr r0, [pc, #28] @ (100030d4 ) -100030b8: 0001 movs r1, r0 -100030ba: b500 push {lr} -100030bc: f001 f804 bl 100040c8 <____aeabi_ldiv0_veneer> -100030c0: 2200 movs r2, #0 -100030c2: 2300 movs r3, #0 -100030c4: bd00 pop {pc} -100030c6: 0002 movs r2, r0 -100030c8: 000b movs r3, r1 -100030ca: 2000 movs r0, #0 -100030cc: 2100 movs r1, #0 -100030ce: 4770 bx lr -100030d0: d0000000 .word 0xd0000000 -100030d4: ffffffff .word 0xffffffff - -100030d8 : -100030d8: 2b00 cmp r3, #0 -100030da: d000 beq.n 100030de -100030dc: e0bf b.n 1000325e -100030de: 0c13 lsrs r3, r2, #16 -100030e0: d128 bne.n 10003134 -100030e2: 2a00 cmp r2, #0 -100030e4: d0e7 beq.n 100030b6 -100030e6: b480 push {r7} -100030e8: 4f11 ldr r7, [pc, #68] @ (10003130 ) -100030ea: 6639 str r1, [r7, #96] @ 0x60 -100030ec: 667a str r2, [r7, #100] @ 0x64 -100030ee: e7ff b.n 100030f0 -100030f0: e7ff b.n 100030f2 -100030f2: b430 push {r4, r5} -100030f4: 0c04 lsrs r4, r0, #16 -100030f6: 6f7b ldr r3, [r7, #116] @ 0x74 -100030f8: 6f39 ldr r1, [r7, #112] @ 0x70 -100030fa: 041b lsls r3, r3, #16 -100030fc: 4323 orrs r3, r4 -100030fe: 663b str r3, [r7, #96] @ 0x60 -10003100: 667a str r2, [r7, #100] @ 0x64 -10003102: e7ff b.n 10003104 -10003104: e7ff b.n 10003106 -10003106: e7ff b.n 10003108 -10003108: 46c0 nop @ (mov r8, r8) -1000310a: b284 uxth r4, r0 -1000310c: 6f7b ldr r3, [r7, #116] @ 0x74 -1000310e: 6f3d ldr r5, [r7, #112] @ 0x70 -10003110: 041b lsls r3, r3, #16 -10003112: 4323 orrs r3, r4 -10003114: 663b str r3, [r7, #96] @ 0x60 -10003116: 667a str r2, [r7, #100] @ 0x64 -10003118: e7ff b.n 1000311a -1000311a: e7ff b.n 1000311c -1000311c: 46c0 nop @ (mov r8, r8) -1000311e: 2300 movs r3, #0 -10003120: 042c lsls r4, r5, #16 -10003122: 0c2d lsrs r5, r5, #16 -10003124: 6f7a ldr r2, [r7, #116] @ 0x74 -10003126: 6f38 ldr r0, [r7, #112] @ 0x70 -10003128: 1900 adds r0, r0, r4 -1000312a: 4169 adcs r1, r5 -1000312c: bcb0 pop {r4, r5, r7} -1000312e: 4770 bx lr -10003130: d0000000 .word 0xd0000000 - -10003134 : -10003134: b5f0 push {r4, r5, r6, r7, lr} -10003136: 4694 mov ip, r2 -10003138: 2500 movs r5, #0 -1000313a: 0e14 lsrs r4, r2, #24 -1000313c: d101 bne.n 10003142 -1000313e: 0212 lsls r2, r2, #8 -10003140: 3508 adds r5, #8 -10003142: 0f14 lsrs r4, r2, #28 -10003144: d101 bne.n 1000314a -10003146: 0112 lsls r2, r2, #4 -10003148: 3504 adds r5, #4 -1000314a: 0f94 lsrs r4, r2, #30 -1000314c: d101 bne.n 10003152 -1000314e: 0092 lsls r2, r2, #2 -10003150: 3502 adds r5, #2 -10003152: 0fd4 lsrs r4, r2, #31 -10003154: d101 bne.n 1000315a -10003156: 0052 lsls r2, r2, #1 -10003158: 3501 adds r5, #1 -1000315a: 0bd4 lsrs r4, r2, #15 -1000315c: 3401 adds r4, #1 -1000315e: 4f25 ldr r7, [pc, #148] @ (100031f4 ) -10003160: 667c str r4, [r7, #100] @ 0x64 -10003162: 4c25 ldr r4, [pc, #148] @ (100031f8 ) -10003164: 663c str r4, [r7, #96] @ 0x60 -10003166: 0c0e lsrs r6, r1, #16 -10003168: b293 uxth r3, r2 -1000316a: e7ff b.n 1000316c -1000316c: e7ff b.n 1000316e -1000316e: e7ff b.n 10003170 -10003170: 6f3c ldr r4, [r7, #112] @ 0x70 -10003172: 4366 muls r6, r4 -10003174: 0c36 lsrs r6, r6, #16 -10003176: 0377 lsls r7, r6, #13 -10003178: 46be mov lr, r7 -1000317a: 4373 muls r3, r6 -1000317c: 0bdf lsrs r7, r3, #15 -1000317e: 045b lsls r3, r3, #17 -10003180: 1ac0 subs r0, r0, r3 -10003182: 41b9 sbcs r1, r7 -10003184: 0c13 lsrs r3, r2, #16 -10003186: 4373 muls r3, r6 -10003188: 18db adds r3, r3, r3 -1000318a: 1ac9 subs r1, r1, r3 -1000318c: 08ce lsrs r6, r1, #3 -1000318e: 4366 muls r6, r4 -10003190: 0c36 lsrs r6, r6, #16 -10003192: 44b6 add lr, r6 -10003194: b293 uxth r3, r2 -10003196: 4373 muls r3, r6 -10003198: 0f1f lsrs r7, r3, #28 -1000319a: 011b lsls r3, r3, #4 -1000319c: 1ac0 subs r0, r0, r3 -1000319e: 41b9 sbcs r1, r7 -100031a0: 0c13 lsrs r3, r2, #16 -100031a2: 4373 muls r3, r6 -100031a4: 0b1f lsrs r7, r3, #12 -100031a6: 051b lsls r3, r3, #20 -100031a8: 1ac0 subs r0, r0, r3 -100031aa: 41b9 sbcs r1, r7 -100031ac: 0d86 lsrs r6, r0, #22 -100031ae: 028f lsls r7, r1, #10 -100031b0: 433e orrs r6, r7 -100031b2: 4366 muls r6, r4 -100031b4: 0c36 lsrs r6, r6, #16 -100031b6: 2d09 cmp r5, #9 -100031b8: db24 blt.n 10003204 -100031ba: 0a52 lsrs r2, r2, #9 -100031bc: 4372 muls r2, r6 -100031be: 1a80 subs r0, r0, r2 -100031c0: 0377 lsls r7, r6, #13 -100031c2: 0a46 lsrs r6, r0, #9 -100031c4: 4366 muls r6, r4 -100031c6: 0c36 lsrs r6, r6, #16 -100031c8: 2316 movs r3, #22 -100031ca: 1b5b subs r3, r3, r5 -100031cc: 40de lsrs r6, r3 -100031ce: 40df lsrs r7, r3 -100031d0: 19bf adds r7, r7, r6 -100031d2: 4664 mov r4, ip -100031d4: 4366 muls r6, r4 -100031d6: 1b82 subs r2, r0, r6 -100031d8: 4670 mov r0, lr -100031da: 3504 adds r5, #4 -100031dc: 3306 adds r3, #6 -100031de: 0001 movs r1, r0 -100031e0: 40d9 lsrs r1, r3 -100031e2: 40a8 lsls r0, r5 -100031e4: 19c0 adds r0, r0, r7 -100031e6: d300 bcc.n 100031ea -100031e8: 3101 adds r1, #1 -100031ea: 42a2 cmp r2, r4 -100031ec: d206 bcs.n 100031fc -100031ee: 2300 movs r3, #0 -100031f0: bdf0 pop {r4, r5, r6, r7, pc} -100031f2: 0000 .short 0x0000 -100031f4: d0000000 .word 0xd0000000 -100031f8: ffffffff .word 0xffffffff -100031fc: 1b12 subs r2, r2, r4 -100031fe: 3001 adds r0, #1 -10003200: d3f3 bcc.n 100031ea -10003202: e7f1 b.n 100031e8 - -10003204 : -10003204: 2709 movs r7, #9 -10003206: 1b7f subs r7, r7, r5 -10003208: 40fe lsrs r6, r7 -1000320a: 4664 mov r4, ip -1000320c: b2a2 uxth r2, r4 -1000320e: 4372 muls r2, r6 -10003210: 1a80 subs r0, r0, r2 -10003212: d200 bcs.n 10003216 -10003214: 3901 subs r1, #1 -10003216: 0c22 lsrs r2, r4, #16 -10003218: 4372 muls r2, r6 -1000321a: 0c13 lsrs r3, r2, #16 -1000321c: 0412 lsls r2, r2, #16 -1000321e: 1a82 subs r2, r0, r2 -10003220: 4199 sbcs r1, r3 -10003222: 000b movs r3, r1 -10003224: 4670 mov r0, lr -10003226: 3504 adds r5, #4 -10003228: 3713 adds r7, #19 -1000322a: 0001 movs r1, r0 -1000322c: 40f9 lsrs r1, r7 -1000322e: 40a8 lsls r0, r5 -10003230: 1980 adds r0, r0, r6 -10003232: d300 bcc.n 10003236 -10003234: 3101 adds r1, #1 -10003236: 2b00 cmp r3, #0 -10003238: d102 bne.n 10003240 -1000323a: 42a2 cmp r2, r4 -1000323c: d20a bcs.n 10003254 -1000323e: bdf0 pop {r4, r5, r6, r7, pc} -10003240: 3001 adds r0, #1 -10003242: d300 bcc.n 10003246 -10003244: 3101 adds r1, #1 -10003246: 1b12 subs r2, r2, r4 -10003248: d2fa bcs.n 10003240 -1000324a: 3b01 subs r3, #1 -1000324c: d1f8 bne.n 10003240 -1000324e: 42a2 cmp r2, r4 -10003250: d200 bcs.n 10003254 -10003252: bdf0 pop {r4, r5, r6, r7, pc} -10003254: 3001 adds r0, #1 -10003256: d300 bcc.n 1000325a -10003258: 3101 adds r1, #1 -1000325a: 1b12 subs r2, r2, r4 -1000325c: e7f7 b.n 1000324e - -1000325e : -1000325e: b5f0 push {r4, r5, r6, r7, lr} -10003260: 0c1c lsrs r4, r3, #16 -10003262: d000 beq.n 10003266 -10003264: e080 b.n 10003368 -10003266: b40c push {r2, r3} -10003268: 2500 movs r5, #0 -1000326a: 0a1c lsrs r4, r3, #8 -1000326c: d104 bne.n 10003278 -1000326e: 021b lsls r3, r3, #8 -10003270: 0e16 lsrs r6, r2, #24 -10003272: 4333 orrs r3, r6 -10003274: 0212 lsls r2, r2, #8 -10003276: 3508 adds r5, #8 -10003278: 0b1c lsrs r4, r3, #12 -1000327a: d104 bne.n 10003286 -1000327c: 011b lsls r3, r3, #4 -1000327e: 0f16 lsrs r6, r2, #28 -10003280: 4333 orrs r3, r6 -10003282: 0112 lsls r2, r2, #4 -10003284: 3504 adds r5, #4 -10003286: 0b9c lsrs r4, r3, #14 -10003288: d104 bne.n 10003294 -1000328a: 009b lsls r3, r3, #2 -1000328c: 0f96 lsrs r6, r2, #30 -1000328e: 4333 orrs r3, r6 -10003290: 0092 lsls r2, r2, #2 -10003292: 3502 adds r5, #2 -10003294: 0bdc lsrs r4, r3, #15 -10003296: d102 bne.n 1000329e -10003298: 1892 adds r2, r2, r2 -1000329a: 415b adcs r3, r3 -1000329c: 3501 adds r5, #1 -1000329e: 001c movs r4, r3 -100032a0: 1897 adds r7, r2, r2 -100032a2: 4164 adcs r4, r4 -100032a4: 3401 adds r4, #1 -100032a6: 4f46 ldr r7, [pc, #280] @ (100033c0 ) -100032a8: 667c str r4, [r7, #100] @ 0x64 -100032aa: 4c46 ldr r4, [pc, #280] @ (100033c4 ) -100032ac: 663c str r4, [r7, #96] @ 0x60 -100032ae: 0c0e lsrs r6, r1, #16 -100032b0: e7ff b.n 100032b2 -100032b2: e7ff b.n 100032b4 -100032b4: e7ff b.n 100032b6 -100032b6: 46c0 nop @ (mov r8, r8) -100032b8: 6f3c ldr r4, [r7, #112] @ 0x70 -100032ba: 4366 muls r6, r4 -100032bc: 0c36 lsrs r6, r6, #16 -100032be: 0377 lsls r7, r6, #13 -100032c0: 46be mov lr, r7 -100032c2: b297 uxth r7, r2 -100032c4: 4377 muls r7, r6 -100032c6: 1bc0 subs r0, r0, r7 -100032c8: d200 bcs.n 100032cc -100032ca: 3901 subs r1, #1 -100032cc: 1bc0 subs r0, r0, r7 -100032ce: d200 bcs.n 100032d2 -100032d0: 3901 subs r1, #1 -100032d2: b29f uxth r7, r3 -100032d4: 4377 muls r7, r6 -100032d6: 1bc9 subs r1, r1, r7 -100032d8: 1bc9 subs r1, r1, r7 -100032da: 0c17 lsrs r7, r2, #16 -100032dc: 4377 muls r7, r6 -100032de: 047e lsls r6, r7, #17 -100032e0: 0bff lsrs r7, r7, #15 -100032e2: 1b80 subs r0, r0, r6 -100032e4: 41b9 sbcs r1, r7 -100032e6: 08ce lsrs r6, r1, #3 -100032e8: 4366 muls r6, r4 -100032ea: 0c36 lsrs r6, r6, #16 -100032ec: 2d0c cmp r5, #12 -100032ee: db33 blt.n 10003358 -100032f0: 44b6 add lr, r6 -100032f2: 0b12 lsrs r2, r2, #12 -100032f4: 051f lsls r7, r3, #20 -100032f6: 433a orrs r2, r7 -100032f8: 0b1b lsrs r3, r3, #12 -100032fa: b297 uxth r7, r2 -100032fc: 4377 muls r7, r6 -100032fe: 1bc0 subs r0, r0, r7 -10003300: d200 bcs.n 10003304 -10003302: 3901 subs r1, #1 -10003304: b29f uxth r7, r3 -10003306: 4377 muls r7, r6 -10003308: 1bc9 subs r1, r1, r7 -1000330a: 0c17 lsrs r7, r2, #16 -1000330c: 4377 muls r7, r6 -1000330e: 043e lsls r6, r7, #16 -10003310: 0c3f lsrs r7, r7, #16 -10003312: 1b80 subs r0, r0, r6 -10003314: 41b9 sbcs r1, r7 -10003316: 0d86 lsrs r6, r0, #22 -10003318: 028f lsls r7, r1, #10 -1000331a: 433e orrs r6, r7 -1000331c: 4366 muls r6, r4 -1000331e: 2729 movs r7, #41 @ 0x29 -10003320: 1b7f subs r7, r7, r5 -10003322: 40fe lsrs r6, r7 -10003324: 3d0c subs r5, #12 -10003326: 4677 mov r7, lr -10003328: 40af lsls r7, r5 -1000332a: 19bf adds r7, r7, r6 -1000332c: bc30 pop {r4, r5} -1000332e: b2a2 uxth r2, r4 -10003330: b2ab uxth r3, r5 -10003332: 4372 muls r2, r6 -10003334: 4373 muls r3, r6 -10003336: 1a80 subs r0, r0, r2 -10003338: 4199 sbcs r1, r3 -1000333a: 0c22 lsrs r2, r4, #16 -1000333c: 4372 muls r2, r6 -1000333e: 0c13 lsrs r3, r2, #16 -10003340: 0412 lsls r2, r2, #16 -10003342: 1a80 subs r0, r0, r2 -10003344: 4199 sbcs r1, r3 -10003346: 0002 movs r2, r0 -10003348: 000b movs r3, r1 -1000334a: 3701 adds r7, #1 -1000334c: 1b00 subs r0, r0, r4 -1000334e: 41a9 sbcs r1, r5 -10003350: d2f9 bcs.n 10003346 -10003352: 1e78 subs r0, r7, #1 -10003354: 2100 movs r1, #0 -10003356: bdf0 pop {r4, r5, r6, r7, pc} - -10003358 : -10003358: 270c movs r7, #12 -1000335a: 1b7f subs r7, r7, r5 -1000335c: 40fe lsrs r6, r7 -1000335e: 4677 mov r7, lr -10003360: 0b7f lsrs r7, r7, #13 -10003362: 40af lsls r7, r5 -10003364: 19ff adds r7, r7, r7 -10003366: e7e0 b.n 1000332a - -10003368 : -10003368: 2400 movs r4, #0 -1000336a: 1c5d adds r5, r3, #1 -1000336c: d007 beq.n 1000337e -1000336e: 4f14 ldr r7, [pc, #80] @ (100033c0 ) -10003370: 667d str r5, [r7, #100] @ 0x64 -10003372: 6639 str r1, [r7, #96] @ 0x60 -10003374: e7ff b.n 10003376 -10003376: e7ff b.n 10003378 -10003378: e7ff b.n 1000337a -1000337a: e7ff b.n 1000337c -1000337c: 6f3c ldr r4, [r7, #112] @ 0x70 -1000337e: b295 uxth r5, r2 -10003380: b29e uxth r6, r3 -10003382: 4365 muls r5, r4 -10003384: 4366 muls r6, r4 -10003386: 1b40 subs r0, r0, r5 -10003388: 41b1 sbcs r1, r6 -1000338a: 0c15 lsrs r5, r2, #16 -1000338c: 0c1e lsrs r6, r3, #16 -1000338e: 4365 muls r5, r4 -10003390: 4366 muls r6, r4 -10003392: 0436 lsls r6, r6, #16 -10003394: 0c2f lsrs r7, r5, #16 -10003396: 433e orrs r6, r7 -10003398: 042d lsls r5, r5, #16 -1000339a: 1b40 subs r0, r0, r5 -1000339c: 41b1 sbcs r1, r6 -1000339e: 4299 cmp r1, r3 -100033a0: d204 bcs.n 100033ac -100033a2: 0002 movs r2, r0 -100033a4: 000b movs r3, r1 -100033a6: 0020 movs r0, r4 -100033a8: 2100 movs r1, #0 -100033aa: bdf0 pop {r4, r5, r6, r7, pc} -100033ac: d101 bne.n 100033b2 -100033ae: 4290 cmp r0, r2 -100033b0: d3f7 bcc.n 100033a2 -100033b2: 1a80 subs r0, r0, r2 -100033b4: 4199 sbcs r1, r3 -100033b6: 3401 adds r4, #1 -100033b8: 4299 cmp r1, r3 -100033ba: d3f2 bcc.n 100033a2 -100033bc: e7f6 b.n 100033ac -100033be: 0000 .short 0x0000 -100033c0: d0000000 .word 0xd0000000 -100033c4: ffffffff .word 0xffffffff - -100033c8 <__wrap___aeabi_drsub>: -100033c8: 4048 eors r0, r1 -100033ca: 4041 eors r1, r0 -100033cc: 4048 eors r0, r1 - -100033ce <__wrap___aeabi_dsub>: -100033ce: b418 push {r3, r4} -100033d0: 4b1b ldr r3, [pc, #108] @ (10003440 <__wrap___aeabi_dmul+0x12>) -100033d2: 685b ldr r3, [r3, #4] -100033d4: 46fc mov ip, pc -100033d6: 9301 str r3, [sp, #4] -100033d8: bd08 pop {r3, pc} -100033da: df04 .short 0xdf04 -100033dc: 100036a7 .word 0x100036a7 - -100033e0 <__wrap___aeabi_dadd>: -100033e0: b418 push {r3, r4} -100033e2: 4b17 ldr r3, [pc, #92] @ (10003440 <__wrap___aeabi_dmul+0x12>) -100033e4: 681b ldr r3, [r3, #0] -100033e6: 46fc mov ip, pc -100033e8: 9301 str r3, [sp, #4] -100033ea: bd08 pop {r3, pc} -100033ec: 36b1df00 .word 0x36b1df00 -100033f0: 1000 .short 0x1000 - -100033f2 <__wrap___aeabi_ddiv>: -100033f2: 4694 mov ip, r2 -100033f4: 4a13 ldr r2, [pc, #76] @ (10003444 <__wrap___aeabi_dmul+0x16>) -100033f6: 6f92 ldr r2, [r2, #120] @ 0x78 -100033f8: 0892 lsrs r2, r2, #2 -100033fa: d209 bcs.n 10003410 -100033fc: 4662 mov r2, ip - -100033fe : -100033fe: b418 push {r3, r4} -10003400: 4b0f ldr r3, [pc, #60] @ (10003440 <__wrap___aeabi_dmul+0x12>) -10003402: 68db ldr r3, [r3, #12] -10003404: 46fc mov ip, pc -10003406: 9301 str r3, [sp, #4] -10003408: bd08 pop {r3, pc} -1000340a: df0c .short 0xdf0c -1000340c: 10003969 .word 0x10003969 - -10003410 : -10003410: 4a0c ldr r2, [pc, #48] @ (10003444 <__wrap___aeabi_dmul+0x16>) -10003412: b5f0 push {r4, r5, r6, r7, lr} -10003414: 6e14 ldr r4, [r2, #96] @ 0x60 -10003416: 6e55 ldr r5, [r2, #100] @ 0x64 -10003418: 6f57 ldr r7, [r2, #116] @ 0x74 -1000341a: 6f16 ldr r6, [r2, #112] @ 0x70 -1000341c: 4662 mov r2, ip -1000341e: f7ff ffee bl 100033fe -10003422: 4a08 ldr r2, [pc, #32] @ (10003444 <__wrap___aeabi_dmul+0x16>) -10003424: 6614 str r4, [r2, #96] @ 0x60 -10003426: 6655 str r5, [r2, #100] @ 0x64 -10003428: 6757 str r7, [r2, #116] @ 0x74 -1000342a: 6716 str r6, [r2, #112] @ 0x70 -1000342c: bdf0 pop {r4, r5, r6, r7, pc} - -1000342e <__wrap___aeabi_dmul>: -1000342e: b418 push {r3, r4} -10003430: 4b03 ldr r3, [pc, #12] @ (10003440 <__wrap___aeabi_dmul+0x12>) -10003432: 689b ldr r3, [r3, #8] -10003434: 46fc mov ip, pc -10003436: 9301 str r3, [sp, #4] -10003438: bd08 pop {r3, pc} -1000343a: df08 .short 0xdf08 -1000343c: 1000380d .word 0x1000380d -10003440: 2000049c .word 0x2000049c -10003444: d0000000 .word 0xd0000000 - -10003448 <__wrap___aeabi_cdrcmple>: -10003448: b5ff push {r0, r1, r2, r3, r4, r5, r6, r7, lr} -1000344a: 4050 eors r0, r2 -1000344c: 4042 eors r2, r0 -1000344e: 4050 eors r0, r2 -10003450: 4059 eors r1, r3 -10003452: 404b eors r3, r1 -10003454: 4059 eors r1, r3 -10003456: e000 b.n 1000345a <__aeabi_dfcmple_guts> - -10003458 <__wrap___aeabi_cdcmpeq>: -10003458: b5ff push {r0, r1, r2, r3, r4, r5, r6, r7, lr} - -1000345a <__aeabi_dfcmple_guts>: -1000345a: 4f15 ldr r7, [pc, #84] @ (100034b0 <__aeabi_dfcmple_guts+0x56>) -1000345c: 004c lsls r4, r1, #1 -1000345e: 0d64 lsrs r4, r4, #21 -10003460: d003 beq.n 1000346a <__aeabi_dfcmple_guts+0x10> -10003462: 42bc cmp r4, r7 -10003464: d104 bne.n 10003470 <__aeabi_dfcmple_guts+0x16> -10003466: 030c lsls r4, r1, #12 -10003468: d814 bhi.n 10003494 <__aeabi_dfcmple_guts+0x3a> -1000346a: 2000 movs r0, #0 -1000346c: 0d09 lsrs r1, r1, #20 -1000346e: 0509 lsls r1, r1, #20 -10003470: 005c lsls r4, r3, #1 -10003472: 0d64 lsrs r4, r4, #21 -10003474: d003 beq.n 1000347e <__aeabi_dfcmple_guts+0x24> -10003476: 42bc cmp r4, r7 -10003478: d104 bne.n 10003484 <__aeabi_dfcmple_guts+0x2a> -1000347a: 031c lsls r4, r3, #12 -1000347c: d80a bhi.n 10003494 <__aeabi_dfcmple_guts+0x3a> -1000347e: 2200 movs r2, #0 -10003480: 0d1b lsrs r3, r3, #20 -10003482: 051b lsls r3, r3, #20 -10003484: 2601 movs r6, #1 -10003486: 404b eors r3, r1 -10003488: d409 bmi.n 1000349e <__aeabi_dfcmple_guts+0x44> -1000348a: 404b eors r3, r1 -1000348c: d503 bpl.n 10003496 <__aeabi_dfcmple_guts+0x3c> -1000348e: 428b cmp r3, r1 -10003490: d100 bne.n 10003494 <__aeabi_dfcmple_guts+0x3a> -10003492: 4282 cmp r2, r0 -10003494: bdff pop {r0, r1, r2, r3, r4, r5, r6, r7, pc} -10003496: 4299 cmp r1, r3 -10003498: d1fc bne.n 10003494 <__aeabi_dfcmple_guts+0x3a> -1000349a: 4290 cmp r0, r2 -1000349c: bdff pop {r0, r1, r2, r3, r4, r5, r6, r7, pc} -1000349e: 430b orrs r3, r1 -100034a0: 18db adds r3, r3, r3 -100034a2: 4303 orrs r3, r0 -100034a4: 4313 orrs r3, r2 -100034a6: d0f5 beq.n 10003494 <__aeabi_dfcmple_guts+0x3a> -100034a8: 43c9 mvns r1, r1 -100034aa: 1849 adds r1, r1, r1 -100034ac: bdff pop {r0, r1, r2, r3, r4, r5, r6, r7, pc} -100034ae: 0000 .short 0x0000 -100034b0: 000007ff .word 0x000007ff - -100034b4 <__wrap___aeabi_dcmplt>: -100034b4: b500 push {lr} -100034b6: f7ff ffcf bl 10003458 <__wrap___aeabi_cdcmpeq> -100034ba: 4180 sbcs r0, r0 -100034bc: bd00 pop {pc} -100034be: 46c0 nop @ (mov r8, r8) - -100034c0 <__wrap___aeabi_dcmple>: -100034c0: b500 push {lr} -100034c2: f7ff ffc9 bl 10003458 <__wrap___aeabi_cdcmpeq> -100034c6: d901 bls.n 100034cc <__wrap___aeabi_dcmple+0xc> -100034c8: 2000 movs r0, #0 -100034ca: bd00 pop {pc} -100034cc: 2001 movs r0, #1 -100034ce: bd00 pop {pc} - -100034d0 <__wrap___aeabi_dcmpge>: -100034d0: b500 push {lr} -100034d2: f7ff ffb9 bl 10003448 <__wrap___aeabi_cdrcmple> -100034d6: d901 bls.n 100034dc <__wrap___aeabi_dcmpge+0xc> -100034d8: 2000 movs r0, #0 -100034da: bd00 pop {pc} -100034dc: 2001 movs r0, #1 -100034de: bd00 pop {pc} - -100034e0 <__wrap___aeabi_dcmpgt>: -100034e0: b500 push {lr} -100034e2: f7ff ffb1 bl 10003448 <__wrap___aeabi_cdrcmple> -100034e6: 4180 sbcs r0, r0 -100034e8: bd00 pop {pc} - -100034ea <__wrap___aeabi_dcmpun>: -100034ea: 2001 movs r0, #1 -100034ec: 0540 lsls r0, r0, #21 -100034ee: 004a lsls r2, r1, #1 -100034f0: 1812 adds r2, r2, r0 -100034f2: d804 bhi.n 100034fe <__wrap___aeabi_dcmpun+0x14> -100034f4: 005a lsls r2, r3, #1 -100034f6: 1812 adds r2, r2, r0 -100034f8: d801 bhi.n 100034fe <__wrap___aeabi_dcmpun+0x14> -100034fa: 2000 movs r0, #0 -100034fc: 4770 bx lr -100034fe: 2001 movs r0, #1 -10003500: 4770 bx lr -10003502: 2000 movs r0, #0 -10003504: 4770 bx lr +10003484 : +10003484: b5f0 push {r4, r5, r6, r7, lr} +10003486: 46c6 mov lr, r8 +10003488: b500 push {lr} +1000348a: 0007 movs r7, r0 +1000348c: 000e movs r6, r1 +1000348e: 2500 movs r5, #0 +10003490: 2301 movs r3, #1 +10003492: 4698 mov r8, r3 +10003494: e000 b.n 10003498 +10003496: 3501 adds r5, #1 +10003498: 42b5 cmp r5, r6 +1000349a: d20a bcs.n 100034b2 +1000349c: 00ac lsls r4, r5, #2 +1000349e: 193c adds r4, r7, r4 +100034a0: 6820 ldr r0, [r4, #0] +100034a2: f7ff ffdf bl 10003464 +100034a6: 6020 str r0, [r4, #0] +100034a8: 2800 cmp r0, #0 +100034aa: d1f4 bne.n 10003496 +100034ac: 2300 movs r3, #0 +100034ae: 4698 mov r8, r3 +100034b0: e7f1 b.n 10003496 +100034b2: 4640 mov r0, r8 +100034b4: bc80 pop {r7} +100034b6: 46b8 mov r8, r7 +100034b8: bdf0 pop {r4, r5, r6, r7, pc} ... -10003508 <__wrap___aeabi_ui2d>: -10003508: 2100 movs r1, #0 -1000350a: 2800 cmp r0, #0 -1000350c: d105 bne.n 1000351a <__wrap___aeabi_i2d+0xa> -1000350e: 4770 bx lr +100034bc <__wrap___aeabi_idiv>: +100034bc: 4a12 ldr r2, [pc, #72] @ (10003508 ) +100034be: 6f93 ldr r3, [r2, #120] @ 0x78 +100034c0: 089b lsrs r3, r3, #2 +100034c2: d215 bcs.n 100034f0 -10003510 <__wrap___aeabi_i2d>: -10003510: 17c1 asrs r1, r0, #31 -10003512: 4048 eors r0, r1 -10003514: 1a40 subs r0, r0, r1 -10003516: d0fa beq.n 1000350e <__wrap___aeabi_ui2d+0x6> -10003518: 07c9 lsls r1, r1, #31 -1000351a: b513 push {r0, r1, r4, lr} -1000351c: 4b06 ldr r3, [pc, #24] @ (10003538 <__wrap___aeabi_i2d+0x28>) -1000351e: 681b ldr r3, [r3, #0] -10003520: 4798 blx r3 -10003522: bc0c pop {r2, r3} -10003524: 1c44 adds r4, r0, #1 -10003526: 40a2 lsls r2, r4 -10003528: 0510 lsls r0, r2, #20 -1000352a: 0b12 lsrs r2, r2, #12 -1000352c: 4903 ldr r1, [pc, #12] @ (1000353c <__wrap___aeabi_i2d+0x2c>) -1000352e: 1b09 subs r1, r1, r4 -10003530: 0509 lsls r1, r1, #20 -10003532: 4319 orrs r1, r3 -10003534: 4311 orrs r1, r2 -10003536: bd10 pop {r4, pc} -10003538: 2000059c .word 0x2000059c -1000353c: 0000041f .word 0x0000041f +100034c4 : +100034c4: 6690 str r0, [r2, #104] @ 0x68 +100034c6: 66d1 str r1, [r2, #108] @ 0x6c +100034c8: 2900 cmp r1, #0 +100034ca: d005 beq.n 100034d8 +100034cc: e7ff b.n 100034ce +100034ce: e7ff b.n 100034d0 +100034d0: e7ff b.n 100034d2 +100034d2: 6f51 ldr r1, [r2, #116] @ 0x74 +100034d4: 6f10 ldr r0, [r2, #112] @ 0x70 +100034d6: 4770 bx lr +100034d8: b504 push {r2, lr} +100034da: 2180 movs r1, #128 @ 0x80 +100034dc: 0609 lsls r1, r1, #24 +100034de: 17c2 asrs r2, r0, #31 +100034e0: 4051 eors r1, r2 +100034e2: 2800 cmp r0, #0 +100034e4: d000 beq.n 100034e8 +100034e6: 43c8 mvns r0, r1 +100034e8: f001 fa7a bl 100049e0 <____aeabi_idiv0_veneer> +100034ec: 2100 movs r1, #0 +100034ee: bd04 pop {r2, pc} -10003540 <__wrap___aeabi_d2iz>: -10003540: b510 push {r4, lr} -10003542: 004c lsls r4, r1, #1 -10003544: 0d62 lsrs r2, r4, #21 -10003546: 2380 movs r3, #128 @ 0x80 -10003548: 18d2 adds r2, r2, r3 -1000354a: 00db lsls r3, r3, #3 -1000354c: 1ad2 subs r2, r2, r3 -1000354e: 055b lsls r3, r3, #21 -10003550: 2a7e cmp r2, #126 @ 0x7e -10003552: dd10 ble.n 10003576 <__wrap___aeabi_d2iz+0x36> -10003554: 3a9e subs r2, #158 @ 0x9e -10003556: da13 bge.n 10003580 <__wrap___aeabi_d2iz+0x40> -10003558: 17cc asrs r4, r1, #31 -1000355a: 0309 lsls r1, r1, #12 -1000355c: 0849 lsrs r1, r1, #1 -1000355e: 4319 orrs r1, r3 -10003560: 4252 negs r2, r2 -10003562: 40d1 lsrs r1, r2 -10003564: 0064 lsls r4, r4, #1 -10003566: 3401 adds r4, #1 -10003568: 3215 adds r2, #21 -1000356a: 2a20 cmp r2, #32 -1000356c: da05 bge.n 1000357a <__wrap___aeabi_d2iz+0x3a> -1000356e: 40d0 lsrs r0, r2 -10003570: 4308 orrs r0, r1 -10003572: 4360 muls r0, r4 -10003574: bd10 pop {r4, pc} -10003576: 2000 movs r0, #0 -10003578: bd10 pop {r4, pc} -1000357a: 4608 mov r0, r1 -1000357c: 4360 muls r0, r4 -1000357e: bd10 pop {r4, pc} -10003580: 0fc8 lsrs r0, r1, #31 -10003582: 18c0 adds r0, r0, r3 -10003584: 3801 subs r0, #1 -10003586: bd10 pop {r4, pc} +100034f0 : +100034f0: b5f0 push {r4, r5, r6, r7, lr} +100034f2: 6e14 ldr r4, [r2, #96] @ 0x60 +100034f4: 6e55 ldr r5, [r2, #100] @ 0x64 +100034f6: 6f57 ldr r7, [r2, #116] @ 0x74 +100034f8: 6f16 ldr r6, [r2, #112] @ 0x70 +100034fa: f7ff ffe3 bl 100034c4 +100034fe: 6614 str r4, [r2, #96] @ 0x60 +10003500: 6655 str r5, [r2, #100] @ 0x64 +10003502: 6757 str r7, [r2, #116] @ 0x74 +10003504: 6716 str r6, [r2, #112] @ 0x70 +10003506: bdf0 pop {r4, r5, r6, r7, pc} +10003508: d0000000 .word 0xd0000000 -10003588 <__wrap___aeabi_d2uiz>: -10003588: b418 push {r3, r4} -1000358a: 4b04 ldr r3, [pc, #16] @ (1000359c <__wrap___aeabi_d2uiz+0x14>) -1000358c: 6a5b ldr r3, [r3, #36] @ 0x24 -1000358e: 46fc mov ip, pc -10003590: 9301 str r3, [sp, #4] -10003592: bd08 pop {r3, pc} -10003594: 3b19df24 .word 0x3b19df24 -10003598: 00001000 .word 0x00001000 -1000359c: 2000049c .word 0x2000049c +1000350c <__wrap___aeabi_uidiv>: +1000350c: 4a11 ldr r2, [pc, #68] @ (10003554 ) +1000350e: 6f93 ldr r3, [r2, #120] @ 0x78 +10003510: 089b lsrs r3, r3, #2 +10003512: d213 bcs.n 1000353c -100035a0 <__aeabi_double_init>: -100035a0: b570 push {r4, r5, r6, lr} -100035a2: 2313 movs r3, #19 -100035a4: 781c ldrb r4, [r3, #0] -100035a6: 2c01 cmp r4, #1 -100035a8: d012 beq.n 100035d0 <__aeabi_double_init+0x30> -100035aa: 2c01 cmp r4, #1 -100035ac: dc12 bgt.n 100035d4 <__aeabi_double_init+0x34> -100035ae: 4b21 ldr r3, [pc, #132] @ (10003634 <__aeabi_double_init+0x94>) -100035b0: 4a21 ldr r2, [pc, #132] @ (10003638 <__aeabi_double_init+0x98>) -100035b2: 6493 str r3, [r2, #72] @ 0x48 -100035b4: 4821 ldr r0, [pc, #132] @ (1000363c <__aeabi_double_init+0x9c>) -100035b6: f7ff fc7b bl 10002eb0 -100035ba: 4b21 ldr r3, [pc, #132] @ (10003640 <__aeabi_double_init+0xa0>) -100035bc: 6018 str r0, [r3, #0] -100035be: bd70 pop {r4, r5, r6, pc} -100035c0: 491c ldr r1, [pc, #112] @ (10003634 <__aeabi_double_init+0x94>) -100035c2: 4a1d ldr r2, [pc, #116] @ (10003638 <__aeabi_double_init+0x98>) -100035c4: 0098 lsls r0, r3, #2 -100035c6: 5081 str r1, [r0, r2] -100035c8: 3301 adds r3, #1 -100035ca: 2b1f cmp r3, #31 -100035cc: d9f8 bls.n 100035c0 <__aeabi_double_init+0x20> -100035ce: e7ec b.n 100035aa <__aeabi_double_init+0xa> -100035d0: 2300 movs r3, #0 -100035d2: e7fa b.n 100035ca <__aeabi_double_init+0x2a> -100035d4: 481b ldr r0, [pc, #108] @ (10003644 <__aeabi_double_init+0xa4>) -100035d6: f7ff fc73 bl 10002ec0 -100035da: 0005 movs r5, r0 -100035dc: 481a ldr r0, [pc, #104] @ (10003648 <__aeabi_double_init+0xa8>) -100035de: f7ff fc6f bl 10002ec0 -100035e2: 3802 subs r0, #2 -100035e4: 7803 ldrb r3, [r0, #0] -100035e6: 009b lsls r3, r3, #2 -100035e8: 2b7f cmp r3, #127 @ 0x7f -100035ea: dd09 ble.n 10003600 <__aeabi_double_init+0x60> -100035ec: 4812 ldr r0, [pc, #72] @ (10003638 <__aeabi_double_init+0x98>) -100035ee: 2280 movs r2, #128 @ 0x80 -100035f0: 0029 movs r1, r5 -100035f2: f000 fba9 bl 10003d48 <__wrap___aeabi_memcpy> -100035f6: 2c02 cmp r4, #2 -100035f8: d008 beq.n 1000360c <__aeabi_double_init+0x6c> -100035fa: 2c02 cmp r4, #2 -100035fc: dcda bgt.n 100035b4 <__aeabi_double_init+0x14> -100035fe: e7d6 b.n 100035ae <__aeabi_double_init+0xe> -10003600: 4b12 ldr r3, [pc, #72] @ (1000364c <__aeabi_double_init+0xac>) -10003602: 4a13 ldr r2, [pc, #76] @ (10003650 <__aeabi_double_init+0xb0>) -10003604: 4813 ldr r0, [pc, #76] @ (10003654 <__aeabi_double_init+0xb4>) -10003606: 2132 movs r1, #50 @ 0x32 -10003608: f7fe fabe bl 10001b88 <__assert_func> -1000360c: 4b12 ldr r3, [pc, #72] @ (10003658 <__aeabi_double_init+0xb8>) -1000360e: 881a ldrh r2, [r3, #0] -10003610: 23b5 movs r3, #181 @ 0xb5 -10003612: 021b lsls r3, r3, #8 -10003614: 429a cmp r2, r3 -10003616: d109 bne.n 1000362c <__aeabi_double_init+0x8c> -10003618: 4b10 ldr r3, [pc, #64] @ (1000365c <__aeabi_double_init+0xbc>) -1000361a: 881a ldrh r2, [r3, #0] -1000361c: 4b10 ldr r3, [pc, #64] @ (10003660 <__aeabi_double_init+0xc0>) -1000361e: 429a cmp r2, r3 -10003620: d104 bne.n 1000362c <__aeabi_double_init+0x8c> -10003622: 4b10 ldr r3, [pc, #64] @ (10003664 <__aeabi_double_init+0xc4>) -10003624: 881a ldrh r2, [r3, #0] -10003626: 4b10 ldr r3, [pc, #64] @ (10003668 <__aeabi_double_init+0xc8>) -10003628: 429a cmp r2, r3 -1000362a: d0e6 beq.n 100035fa <__aeabi_double_init+0x5a> -1000362c: 2000 movs r0, #0 -1000362e: f7fe fb43 bl 10001cb8 -10003632: 46c0 nop @ (mov r8, r8) -10003634: 1000366d .word 0x1000366d -10003638: 2000049c .word 0x2000049c -1000363c: 0000334c .word 0x0000334c -10003640: 2000059c .word 0x2000059c -10003644: 00004453 .word 0x00004453 -10003648: 00004653 .word 0x00004653 -1000364c: 10004d68 .word 0x10004d68 -10003650: 10004e1c .word 0x10004e1c -10003654: 10004dc8 .word 0x10004dc8 -10003658: 00003854 .word 0x00003854 -1000365c: 000038d8 .word 0x000038d8 -10003660: 00004649 .word 0x00004649 -10003664: 0000389c .word 0x0000389c -10003668: 00004659 .word 0x00004659 +10003514 : +10003514: 6610 str r0, [r2, #96] @ 0x60 +10003516: 6651 str r1, [r2, #100] @ 0x64 +10003518: 2900 cmp r1, #0 +1000351a: d005 beq.n 10003528 +1000351c: e7ff b.n 1000351e +1000351e: e7ff b.n 10003520 +10003520: e7ff b.n 10003522 +10003522: 6f51 ldr r1, [r2, #116] @ 0x74 +10003524: 6f10 ldr r0, [r2, #112] @ 0x70 +10003526: 4770 bx lr +10003528: b504 push {r2, lr} +1000352a: 2800 cmp r0, #0 +1000352c: d001 beq.n 10003532 +1000352e: 2000 movs r0, #0 +10003530: 43c0 mvns r0, r0 +10003532: f001 fa55 bl 100049e0 <____aeabi_idiv0_veneer> +10003536: 2100 movs r1, #0 +10003538: bd04 pop {r2, pc} +1000353a: 46c0 nop @ (mov r8, r8) -1000366c : -1000366c: b507 push {r0, r1, r2, lr} -1000366e: 4660 mov r0, ip -10003670: 2800 cmp r0, #0 -10003672: d100 bne.n 10003676 -10003674: be00 bkpt 0x0000 -10003676: 8801 ldrh r1, [r0, #0] -10003678: 0a0a lsrs r2, r1, #8 -1000367a: 3002 adds r0, #2 -1000367c: 2adf cmp r2, #223 @ 0xdf -1000367e: d1fa bne.n 10003676 -10003680: b2c9 uxtb r1, r1 -10003682: 0882 lsrs r2, r0, #2 -10003684: d304 bcc.n 10003690 -10003686: 8802 ldrh r2, [r0, #0] -10003688: 8840 ldrh r0, [r0, #2] -1000368a: 0400 lsls r0, r0, #16 -1000368c: 4310 orrs r0, r2 -1000368e: e000 b.n 10003692 -10003690: 6800 ldr r0, [r0, #0] -10003692: 4a02 ldr r2, [pc, #8] @ (1000369c ) -10003694: 5050 str r0, [r2, r1] -10003696: 9003 str r0, [sp, #12] -10003698: bd07 pop {r0, r1, r2, pc} -1000369a: 0000 .short 0x0000 -1000369c: 2000049c .word 0x2000049c +1000353c : +1000353c: b5f0 push {r4, r5, r6, r7, lr} +1000353e: 6e14 ldr r4, [r2, #96] @ 0x60 +10003540: 6e55 ldr r5, [r2, #100] @ 0x64 +10003542: 6f57 ldr r7, [r2, #116] @ 0x74 +10003544: 6f16 ldr r6, [r2, #112] @ 0x70 +10003546: f7ff ffe5 bl 10003514 +1000354a: 6614 str r4, [r2, #96] @ 0x60 +1000354c: 6655 str r5, [r2, #100] @ 0x64 +1000354e: 6757 str r7, [r2, #116] @ 0x74 +10003550: 6716 str r6, [r2, #112] @ 0x70 +10003552: bdf0 pop {r4, r5, r6, r7, pc} +10003554: d0000000 .word 0xd0000000 -100036a0 : -100036a0: b40f push {r0, r1, r2, r3} -100036a2: bc03 pop {r0, r1} -100036a4: bc0c pop {r2, r3} +10003558 <__wrap___aeabi_ldivmod>: +10003558: 4694 mov ip, r2 +1000355a: 4a4a ldr r2, [pc, #296] @ (10003684 ) +1000355c: 6f92 ldr r2, [r2, #120] @ 0x78 +1000355e: 0892 lsrs r2, r2, #2 +10003560: 4662 mov r2, ip +10003562: d201 bcs.n 10003568 +10003564: e028 b.n 100035b8 +10003566: 46c0 nop @ (mov r8, r8) -100036a6 : -100036a6: b5f0 push {r4, r5, r6, r7, lr} -100036a8: 2401 movs r4, #1 -100036aa: 07e4 lsls r4, r4, #31 -100036ac: 4063 eors r3, r4 -100036ae: e000 b.n 100036b2 +10003568 : +10003568: b5f0 push {r4, r5, r6, r7, lr} +1000356a: 4e46 ldr r6, [pc, #280] @ (10003684 ) +1000356c: 6e34 ldr r4, [r6, #96] @ 0x60 +1000356e: 6e75 ldr r5, [r6, #100] @ 0x64 +10003570: 6f77 ldr r7, [r6, #116] @ 0x74 +10003572: 6f36 ldr r6, [r6, #112] @ 0x70 +10003574: f000 f820 bl 100035b8 +10003578: 4694 mov ip, r2 +1000357a: 4a42 ldr r2, [pc, #264] @ (10003684 ) +1000357c: 6614 str r4, [r2, #96] @ 0x60 +1000357e: 6655 str r5, [r2, #100] @ 0x64 +10003580: 6757 str r7, [r2, #116] @ 0x74 +10003582: 6716 str r6, [r2, #112] @ 0x70 +10003584: 4662 mov r2, ip +10003586: bdf0 pop {r4, r5, r6, r7, pc} -100036b0 : -100036b0: b5f0 push {r4, r5, r6, r7, lr} +10003588 <__wrap___aeabi_uldivmod>: +10003588: 4694 mov ip, r2 +1000358a: 4a3e ldr r2, [pc, #248] @ (10003684 ) +1000358c: 6f92 ldr r2, [r2, #120] @ 0x78 +1000358e: 0892 lsrs r2, r2, #2 +10003590: 4662 mov r2, ip +10003592: d201 bcs.n 10003598 +10003594: e054 b.n 10003640 +10003596: 46c0 nop @ (mov r8, r8) -100036b2 : -100036b2: 0d0c lsrs r4, r1, #20 -100036b4: 0fcf lsrs r7, r1, #31 -100036b6: 1e66 subs r6, r4, #1 -100036b8: 0536 lsls r6, r6, #20 -100036ba: 1b89 subs r1, r1, r6 -100036bc: 0564 lsls r4, r4, #21 -100036be: d303 bcc.n 100036c8 -100036c0: 43c9 mvns r1, r1 -100036c2: 4240 negs r0, r0 -100036c4: d300 bcc.n 100036c8 -100036c6: 3101 adds r1, #1 +10003598 : +10003598: b5f0 push {r4, r5, r6, r7, lr} +1000359a: 4e3a ldr r6, [pc, #232] @ (10003684 ) +1000359c: 6e34 ldr r4, [r6, #96] @ 0x60 +1000359e: 6e75 ldr r5, [r6, #100] @ 0x64 +100035a0: 6f77 ldr r7, [r6, #116] @ 0x74 +100035a2: 6f36 ldr r6, [r6, #112] @ 0x70 +100035a4: f000 f84c bl 10003640 +100035a8: 4694 mov ip, r2 +100035aa: 4a36 ldr r2, [pc, #216] @ (10003684 ) +100035ac: 6614 str r4, [r2, #96] @ 0x60 +100035ae: 6655 str r5, [r2, #100] @ 0x64 +100035b0: 6757 str r7, [r2, #116] @ 0x74 +100035b2: 6716 str r6, [r2, #112] @ 0x70 +100035b4: 4662 mov r2, ip +100035b6: bdf0 pop {r4, r5, r6, r7, pc} -100036c8 : -100036c8: 0d64 lsrs r4, r4, #21 -100036ca: d003 beq.n 100036d4 -100036cc: 1c66 adds r6, r4, #1 -100036ce: 0af6 lsrs r6, r6, #11 -100036d0: d007 beq.n 100036e2 -100036d2: 1be4 subs r4, r4, r7 +100035b8 : +100035b8: 2b00 cmp r3, #0 +100035ba: db24 blt.n 10003606 +100035bc: d011 beq.n 100035e2 +100035be: 2900 cmp r1, #0 +100035c0: da3e bge.n 10003640 +100035c2: b500 push {lr} +100035c4: 43c9 mvns r1, r1 +100035c6: 4240 negs r0, r0 +100035c8: d100 bne.n 100035cc +100035ca: 3101 adds r1, #1 -100036d4 : -100036d4: 2000 movs r0, #0 -100036d6: 007f lsls r7, r7, #1 -100036d8: 1c79 adds r1, r7, #1 -100036da: 0789 lsls r1, r1, #30 -100036dc: 1289 asrs r1, r1, #10 -100036de: 3c80 subs r4, #128 @ 0x80 -100036e0: 0324 lsls r4, r4, #12 +100035cc : +100035cc: f000 f838 bl 10003640 +100035d0: 43c9 mvns r1, r1 +100035d2: 4240 negs r0, r0 +100035d4: d100 bne.n 100035d8 +100035d6: 3101 adds r1, #1 -100036e2 : -100036e2: 0d1d lsrs r5, r3, #20 -100036e4: 0fdf lsrs r7, r3, #31 -100036e6: 1e6e subs r6, r5, #1 -100036e8: 0536 lsls r6, r6, #20 -100036ea: 1b9b subs r3, r3, r6 -100036ec: 056d lsls r5, r5, #21 -100036ee: d303 bcc.n 100036f8 -100036f0: 43db mvns r3, r3 -100036f2: 4252 negs r2, r2 -100036f4: d300 bcc.n 100036f8 -100036f6: 3301 adds r3, #1 +100035d8 : +100035d8: 43db mvns r3, r3 +100035da: 4252 negs r2, r2 +100035dc: d100 bne.n 100035e0 +100035de: 3301 adds r3, #1 -100036f8 : -100036f8: 0d6d lsrs r5, r5, #21 -100036fa: d003 beq.n 10003704 -100036fc: 1c6e adds r6, r5, #1 -100036fe: 0af6 lsrs r6, r6, #11 -10003700: d007 beq.n 10003712 -10003702: 1bed subs r5, r5, r7 +100035e0 : +100035e0: bd00 pop {pc} +100035e2: 2a00 cmp r2, #0 +100035e4: d1eb bne.n 100035be +100035e6: 2800 cmp r0, #0 +100035e8: d101 bne.n 100035ee +100035ea: 2900 cmp r1, #0 +100035ec: d005 beq.n 100035fa +100035ee: 2000 movs r0, #0 +100035f0: 0fc9 lsrs r1, r1, #31 +100035f2: 07c9 lsls r1, r1, #31 +100035f4: d101 bne.n 100035fa +100035f6: 43c0 mvns r0, r0 +100035f8: 0841 lsrs r1, r0, #1 +100035fa: b500 push {lr} +100035fc: f001 f9e8 bl 100049d0 <____aeabi_ldiv0_veneer> +10003600: 2200 movs r2, #0 +10003602: 2300 movs r3, #0 +10003604: bd00 pop {pc} +10003606: b500 push {lr} +10003608: 2900 cmp r1, #0 +1000360a: db0a blt.n 10003622 +1000360c: 43db mvns r3, r3 +1000360e: 4252 negs r2, r2 +10003610: d100 bne.n 10003614 +10003612: 3301 adds r3, #1 -10003704 : -10003704: 2200 movs r2, #0 -10003706: 007f lsls r7, r7, #1 -10003708: 1c7b adds r3, r7, #1 -1000370a: 079b lsls r3, r3, #30 -1000370c: 129b asrs r3, r3, #10 -1000370e: 3d80 subs r5, #128 @ 0x80 -10003710: 032d lsls r5, r5, #12 +10003614 : +10003614: f000 f814 bl 10003640 +10003618: 43c9 mvns r1, r1 +1000361a: 4240 negs r0, r0 +1000361c: d100 bne.n 10003620 +1000361e: 3101 adds r1, #1 -10003712 : -10003712: 1b2f subs r7, r5, r4 -10003714: 1b66 subs r6, r4, r5 -10003716: d458 bmi.n 100037ca -10003718: 46a4 mov ip, r4 -1000371a: 2e20 cmp r6, #32 -1000371c: da46 bge.n 100037ac -1000371e: 3720 adds r7, #32 -10003720: 0014 movs r4, r2 -10003722: 40bc lsls r4, r7 +10003620 : +10003620: bd00 pop {pc} +10003622: 43c9 mvns r1, r1 +10003624: 4240 negs r0, r0 +10003626: d100 bne.n 1000362a +10003628: 3101 adds r1, #1 -10003724 : -10003724: 001d movs r5, r3 -10003726: 40bd lsls r5, r7 -10003728: 40f2 lsrs r2, r6 -1000372a: 4133 asrs r3, r6 -1000372c: 432a orrs r2, r5 +1000362a : +1000362a: 43db mvns r3, r3 +1000362c: 4252 negs r2, r2 +1000362e: d100 bne.n 10003632 +10003630: 3301 adds r3, #1 -1000372e : -1000372e: 1880 adds r0, r0, r2 -10003730: 4159 adcs r1, r3 +10003632 : +10003632: f000 f805 bl 10003640 +10003636: 43db mvns r3, r3 +10003638: 4252 negs r2, r2 +1000363a: d100 bne.n 1000363e +1000363c: 3301 adds r3, #1 -10003732 : -10003732: 0fcb lsrs r3, r1, #31 -10003734: d005 beq.n 10003742 -10003736: 43c9 mvns r1, r1 -10003738: 43c0 mvns r0, r0 -1000373a: 2200 movs r2, #0 -1000373c: 4264 negs r4, r4 -1000373e: 4150 adcs r0, r2 -10003740: 4151 adcs r1, r2 -10003742: 4662 mov r2, ip -10003744: 0d4d lsrs r5, r1, #21 -10003746: d128 bne.n 1000379a -10003748: 0d0d lsrs r5, r1, #20 -1000374a: d107 bne.n 1000375c -1000374c: 2800 cmp r0, #0 -1000374e: d01f beq.n 10003790 +1000363e : +1000363e: bd00 pop {pc} -10003750 : -10003750: 1924 adds r4, r4, r4 -10003752: 4140 adcs r0, r0 -10003754: 4149 adcs r1, r1 -10003756: 3a01 subs r2, #1 -10003758: 0d0d lsrs r5, r1, #20 -1000375a: d0f9 beq.n 10003750 +10003640 : +10003640: 2900 cmp r1, #0 +10003642: d123 bne.n 1000368c +10003644: 2b00 cmp r3, #0 +10003646: d118 bne.n 1000367a +10003648: 2a00 cmp r2, #0 +1000364a: d00c beq.n 10003666 +1000364c: 46bc mov ip, r7 +1000364e: 4f0d ldr r7, [pc, #52] @ (10003684 ) +10003650: 6638 str r0, [r7, #96] @ 0x60 +10003652: 667a str r2, [r7, #100] @ 0x64 +10003654: 2100 movs r1, #0 +10003656: 2300 movs r3, #0 +10003658: e7ff b.n 1000365a +1000365a: e7ff b.n 1000365c +1000365c: e7ff b.n 1000365e +1000365e: 6f7a ldr r2, [r7, #116] @ 0x74 +10003660: 6f38 ldr r0, [r7, #112] @ 0x70 +10003662: 4667 mov r7, ip +10003664: 4770 bx lr +10003666: 2800 cmp r0, #0 +10003668: d001 beq.n 1000366e -1000375c : -1000375c: 0064 lsls r4, r4, #1 -1000375e: d306 bcc.n 1000376e +1000366a : +1000366a: 4807 ldr r0, [pc, #28] @ (10003688 ) +1000366c: 0001 movs r1, r0 +1000366e: b500 push {lr} +10003670: f001 f9ae bl 100049d0 <____aeabi_ldiv0_veneer> +10003674: 2200 movs r2, #0 +10003676: 2300 movs r3, #0 +10003678: bd00 pop {pc} +1000367a: 0002 movs r2, r0 +1000367c: 000b movs r3, r1 +1000367e: 2000 movs r0, #0 +10003680: 2100 movs r1, #0 +10003682: 4770 bx lr +10003684: d0000000 .word 0xd0000000 +10003688: ffffffff .word 0xffffffff -10003760 : -10003760: 3001 adds r0, #1 -10003762: d300 bcc.n 10003766 -10003764: 3101 adds r1, #1 -10003766: 2c00 cmp r4, #0 -10003768: d101 bne.n 1000376e -1000376a: 0840 lsrs r0, r0, #1 -1000376c: 0040 lsls r0, r0, #1 +1000368c : +1000368c: 2b00 cmp r3, #0 +1000368e: d000 beq.n 10003692 +10003690: e0bf b.n 10003812 +10003692: 0c13 lsrs r3, r2, #16 +10003694: d128 bne.n 100036e8 +10003696: 2a00 cmp r2, #0 +10003698: d0e7 beq.n 1000366a +1000369a: b480 push {r7} +1000369c: 4f11 ldr r7, [pc, #68] @ (100036e4 ) +1000369e: 6639 str r1, [r7, #96] @ 0x60 +100036a0: 667a str r2, [r7, #100] @ 0x64 +100036a2: e7ff b.n 100036a4 +100036a4: e7ff b.n 100036a6 +100036a6: b430 push {r4, r5} +100036a8: 0c04 lsrs r4, r0, #16 +100036aa: 6f7b ldr r3, [r7, #116] @ 0x74 +100036ac: 6f39 ldr r1, [r7, #112] @ 0x70 +100036ae: 041b lsls r3, r3, #16 +100036b0: 4323 orrs r3, r4 +100036b2: 663b str r3, [r7, #96] @ 0x60 +100036b4: 667a str r2, [r7, #100] @ 0x64 +100036b6: e7ff b.n 100036b8 +100036b8: e7ff b.n 100036ba +100036ba: e7ff b.n 100036bc +100036bc: 46c0 nop @ (mov r8, r8) +100036be: b284 uxth r4, r0 +100036c0: 6f7b ldr r3, [r7, #116] @ 0x74 +100036c2: 6f3d ldr r5, [r7, #112] @ 0x70 +100036c4: 041b lsls r3, r3, #16 +100036c6: 4323 orrs r3, r4 +100036c8: 663b str r3, [r7, #96] @ 0x60 +100036ca: 667a str r2, [r7, #100] @ 0x64 +100036cc: e7ff b.n 100036ce +100036ce: e7ff b.n 100036d0 +100036d0: 46c0 nop @ (mov r8, r8) +100036d2: 2300 movs r3, #0 +100036d4: 042c lsls r4, r5, #16 +100036d6: 0c2d lsrs r5, r5, #16 +100036d8: 6f7a ldr r2, [r7, #116] @ 0x74 +100036da: 6f38 ldr r0, [r7, #112] @ 0x70 +100036dc: 1900 adds r0, r0, r4 +100036de: 4169 adcs r1, r5 +100036e0: bcb0 pop {r4, r5, r7} +100036e2: 4770 bx lr +100036e4: d0000000 .word 0xd0000000 -1000376e : -1000376e: 3a01 subs r2, #1 -10003770: d40b bmi.n 1000378a -10003772: 1c94 adds r4, r2, #2 -10003774: 0ae4 lsrs r4, r4, #11 -10003776: d104 bne.n 10003782 -10003778: 0512 lsls r2, r2, #20 -1000377a: 4411 add r1, r2 -1000377c: 07db lsls r3, r3, #31 -1000377e: 4419 add r1, r3 -10003780: bdf0 pop {r4, r5, r6, r7, pc} +100036e8 : +100036e8: b5f0 push {r4, r5, r6, r7, lr} +100036ea: 4694 mov ip, r2 +100036ec: 2500 movs r5, #0 +100036ee: 0e14 lsrs r4, r2, #24 +100036f0: d101 bne.n 100036f6 +100036f2: 0212 lsls r2, r2, #8 +100036f4: 3508 adds r5, #8 +100036f6: 0f14 lsrs r4, r2, #28 +100036f8: d101 bne.n 100036fe +100036fa: 0112 lsls r2, r2, #4 +100036fc: 3504 adds r5, #4 +100036fe: 0f94 lsrs r4, r2, #30 +10003700: d101 bne.n 10003706 +10003702: 0092 lsls r2, r2, #2 +10003704: 3502 adds r5, #2 +10003706: 0fd4 lsrs r4, r2, #31 +10003708: d101 bne.n 1000370e +1000370a: 0052 lsls r2, r2, #1 +1000370c: 3501 adds r5, #1 +1000370e: 0bd4 lsrs r4, r2, #15 +10003710: 3401 adds r4, #1 +10003712: 4f25 ldr r7, [pc, #148] @ (100037a8 ) +10003714: 667c str r4, [r7, #100] @ 0x64 +10003716: 4c25 ldr r4, [pc, #148] @ (100037ac ) +10003718: 663c str r4, [r7, #96] @ 0x60 +1000371a: 0c0e lsrs r6, r1, #16 +1000371c: b293 uxth r3, r2 +1000371e: e7ff b.n 10003720 +10003720: e7ff b.n 10003722 +10003722: e7ff b.n 10003724 +10003724: 6f3c ldr r4, [r7, #112] @ 0x70 +10003726: 4366 muls r6, r4 +10003728: 0c36 lsrs r6, r6, #16 +1000372a: 0377 lsls r7, r6, #13 +1000372c: 46be mov lr, r7 +1000372e: 4373 muls r3, r6 +10003730: 0bdf lsrs r7, r3, #15 +10003732: 045b lsls r3, r3, #17 +10003734: 1ac0 subs r0, r0, r3 +10003736: 41b9 sbcs r1, r7 +10003738: 0c13 lsrs r3, r2, #16 +1000373a: 4373 muls r3, r6 +1000373c: 18db adds r3, r3, r3 +1000373e: 1ac9 subs r1, r1, r3 +10003740: 08ce lsrs r6, r1, #3 +10003742: 4366 muls r6, r4 +10003744: 0c36 lsrs r6, r6, #16 +10003746: 44b6 add lr, r6 +10003748: b293 uxth r3, r2 +1000374a: 4373 muls r3, r6 +1000374c: 0f1f lsrs r7, r3, #28 +1000374e: 011b lsls r3, r3, #4 +10003750: 1ac0 subs r0, r0, r3 +10003752: 41b9 sbcs r1, r7 +10003754: 0c13 lsrs r3, r2, #16 +10003756: 4373 muls r3, r6 +10003758: 0b1f lsrs r7, r3, #12 +1000375a: 051b lsls r3, r3, #20 +1000375c: 1ac0 subs r0, r0, r3 +1000375e: 41b9 sbcs r1, r7 +10003760: 0d86 lsrs r6, r0, #22 +10003762: 028f lsls r7, r1, #10 +10003764: 433e orrs r6, r7 +10003766: 4366 muls r6, r4 +10003768: 0c36 lsrs r6, r6, #16 +1000376a: 2d09 cmp r5, #9 +1000376c: db24 blt.n 100037b8 +1000376e: 0a52 lsrs r2, r2, #9 +10003770: 4372 muls r2, r6 +10003772: 1a80 subs r0, r0, r2 +10003774: 0377 lsls r7, r6, #13 +10003776: 0a46 lsrs r6, r0, #9 +10003778: 4366 muls r6, r4 +1000377a: 0c36 lsrs r6, r6, #16 +1000377c: 2316 movs r3, #22 +1000377e: 1b5b subs r3, r3, r5 +10003780: 40de lsrs r6, r3 +10003782: 40df lsrs r7, r3 +10003784: 19bf adds r7, r7, r6 +10003786: 4664 mov r4, ip +10003788: 4366 muls r6, r4 +1000378a: 1b82 subs r2, r0, r6 +1000378c: 4670 mov r0, lr +1000378e: 3504 adds r5, #4 +10003790: 3306 adds r3, #6 +10003792: 0001 movs r1, r0 +10003794: 40d9 lsrs r1, r3 +10003796: 40a8 lsls r0, r5 +10003798: 19c0 adds r0, r0, r7 +1000379a: d300 bcc.n 1000379e +1000379c: 3101 adds r1, #1 +1000379e: 42a2 cmp r2, r4 +100037a0: d206 bcs.n 100037b0 +100037a2: 2300 movs r3, #0 +100037a4: bdf0 pop {r4, r5, r6, r7, pc} +100037a6: 0000 .short 0x0000 +100037a8: d0000000 .word 0xd0000000 +100037ac: ffffffff .word 0xffffffff +100037b0: 1b12 subs r2, r2, r4 +100037b2: 3001 adds r0, #1 +100037b4: d3f3 bcc.n 1000379e +100037b6: e7f1 b.n 1000379c -10003782 : -10003782: 07d9 lsls r1, r3, #31 -10003784: 4b20 ldr r3, [pc, #128] @ (10003808 ) -10003786: 4319 orrs r1, r3 -10003788: e000 b.n 1000378c +100037b8 : +100037b8: 2709 movs r7, #9 +100037ba: 1b7f subs r7, r7, r5 +100037bc: 40fe lsrs r6, r7 +100037be: 4664 mov r4, ip +100037c0: b2a2 uxth r2, r4 +100037c2: 4372 muls r2, r6 +100037c4: 1a80 subs r0, r0, r2 +100037c6: d200 bcs.n 100037ca +100037c8: 3901 subs r1, #1 +100037ca: 0c22 lsrs r2, r4, #16 +100037cc: 4372 muls r2, r6 +100037ce: 0c13 lsrs r3, r2, #16 +100037d0: 0412 lsls r2, r2, #16 +100037d2: 1a82 subs r2, r0, r2 +100037d4: 4199 sbcs r1, r3 +100037d6: 000b movs r3, r1 +100037d8: 4670 mov r0, lr +100037da: 3504 adds r5, #4 +100037dc: 3713 adds r7, #19 +100037de: 0001 movs r1, r0 +100037e0: 40f9 lsrs r1, r7 +100037e2: 40a8 lsls r0, r5 +100037e4: 1980 adds r0, r0, r6 +100037e6: d300 bcc.n 100037ea +100037e8: 3101 adds r1, #1 +100037ea: 2b00 cmp r3, #0 +100037ec: d102 bne.n 100037f4 +100037ee: 42a2 cmp r2, r4 +100037f0: d20a bcs.n 10003808 +100037f2: bdf0 pop {r4, r5, r6, r7, pc} +100037f4: 3001 adds r0, #1 +100037f6: d300 bcc.n 100037fa +100037f8: 3101 adds r1, #1 +100037fa: 1b12 subs r2, r2, r4 +100037fc: d2fa bcs.n 100037f4 +100037fe: 3b01 subs r3, #1 +10003800: d1f8 bne.n 100037f4 +10003802: 42a2 cmp r2, r4 +10003804: d200 bcs.n 10003808 +10003806: bdf0 pop {r4, r5, r6, r7, pc} +10003808: 3001 adds r0, #1 +1000380a: d300 bcc.n 1000380e +1000380c: 3101 adds r1, #1 +1000380e: 1b12 subs r2, r2, r4 +10003810: e7f7 b.n 10003802 -1000378a : -1000378a: 07d9 lsls r1, r3, #31 -1000378c: 2000 movs r0, #0 -1000378e: bdf0 pop {r4, r5, r6, r7, pc} +10003812 : +10003812: b5f0 push {r4, r5, r6, r7, lr} +10003814: 0c1c lsrs r4, r3, #16 +10003816: d000 beq.n 1000381a +10003818: e080 b.n 1000391c +1000381a: b40c push {r2, r3} +1000381c: 2500 movs r5, #0 +1000381e: 0a1c lsrs r4, r3, #8 +10003820: d104 bne.n 1000382c +10003822: 021b lsls r3, r3, #8 +10003824: 0e16 lsrs r6, r2, #24 +10003826: 4333 orrs r3, r6 +10003828: 0212 lsls r2, r2, #8 +1000382a: 3508 adds r5, #8 +1000382c: 0b1c lsrs r4, r3, #12 +1000382e: d104 bne.n 1000383a +10003830: 011b lsls r3, r3, #4 +10003832: 0f16 lsrs r6, r2, #28 +10003834: 4333 orrs r3, r6 +10003836: 0112 lsls r2, r2, #4 +10003838: 3504 adds r5, #4 +1000383a: 0b9c lsrs r4, r3, #14 +1000383c: d104 bne.n 10003848 +1000383e: 009b lsls r3, r3, #2 +10003840: 0f96 lsrs r6, r2, #30 +10003842: 4333 orrs r3, r6 +10003844: 0092 lsls r2, r2, #2 +10003846: 3502 adds r5, #2 +10003848: 0bdc lsrs r4, r3, #15 +1000384a: d102 bne.n 10003852 +1000384c: 1892 adds r2, r2, r2 +1000384e: 415b adcs r3, r3 +10003850: 3501 adds r5, #1 +10003852: 001c movs r4, r3 +10003854: 1897 adds r7, r2, r2 +10003856: 4164 adcs r4, r4 +10003858: 3401 adds r4, #1 +1000385a: 4f46 ldr r7, [pc, #280] @ (10003974 ) +1000385c: 667c str r4, [r7, #100] @ 0x64 +1000385e: 4c46 ldr r4, [pc, #280] @ (10003978 ) +10003860: 663c str r4, [r7, #96] @ 0x60 +10003862: 0c0e lsrs r6, r1, #16 +10003864: e7ff b.n 10003866 +10003866: e7ff b.n 10003868 +10003868: e7ff b.n 1000386a +1000386a: 46c0 nop @ (mov r8, r8) +1000386c: 6f3c ldr r4, [r7, #112] @ 0x70 +1000386e: 4366 muls r6, r4 +10003870: 0c36 lsrs r6, r6, #16 +10003872: 0377 lsls r7, r6, #13 +10003874: 46be mov lr, r7 +10003876: b297 uxth r7, r2 +10003878: 4377 muls r7, r6 +1000387a: 1bc0 subs r0, r0, r7 +1000387c: d200 bcs.n 10003880 +1000387e: 3901 subs r1, #1 +10003880: 1bc0 subs r0, r0, r7 +10003882: d200 bcs.n 10003886 +10003884: 3901 subs r1, #1 +10003886: b29f uxth r7, r3 +10003888: 4377 muls r7, r6 +1000388a: 1bc9 subs r1, r1, r7 +1000388c: 1bc9 subs r1, r1, r7 +1000388e: 0c17 lsrs r7, r2, #16 +10003890: 4377 muls r7, r6 +10003892: 047e lsls r6, r7, #17 +10003894: 0bff lsrs r7, r7, #15 +10003896: 1b80 subs r0, r0, r6 +10003898: 41b9 sbcs r1, r7 +1000389a: 08ce lsrs r6, r1, #3 +1000389c: 4366 muls r6, r4 +1000389e: 0c36 lsrs r6, r6, #16 +100038a0: 2d0c cmp r5, #12 +100038a2: db33 blt.n 1000390c +100038a4: 44b6 add lr, r6 +100038a6: 0b12 lsrs r2, r2, #12 +100038a8: 051f lsls r7, r3, #20 +100038aa: 433a orrs r2, r7 +100038ac: 0b1b lsrs r3, r3, #12 +100038ae: b297 uxth r7, r2 +100038b0: 4377 muls r7, r6 +100038b2: 1bc0 subs r0, r0, r7 +100038b4: d200 bcs.n 100038b8 +100038b6: 3901 subs r1, #1 +100038b8: b29f uxth r7, r3 +100038ba: 4377 muls r7, r6 +100038bc: 1bc9 subs r1, r1, r7 +100038be: 0c17 lsrs r7, r2, #16 +100038c0: 4377 muls r7, r6 +100038c2: 043e lsls r6, r7, #16 +100038c4: 0c3f lsrs r7, r7, #16 +100038c6: 1b80 subs r0, r0, r6 +100038c8: 41b9 sbcs r1, r7 +100038ca: 0d86 lsrs r6, r0, #22 +100038cc: 028f lsls r7, r1, #10 +100038ce: 433e orrs r6, r7 +100038d0: 4366 muls r6, r4 +100038d2: 2729 movs r7, #41 @ 0x29 +100038d4: 1b7f subs r7, r7, r5 +100038d6: 40fe lsrs r6, r7 +100038d8: 3d0c subs r5, #12 +100038da: 4677 mov r7, lr +100038dc: 40af lsls r7, r5 +100038de: 19bf adds r7, r7, r6 +100038e0: bc30 pop {r4, r5} +100038e2: b2a2 uxth r2, r4 +100038e4: b2ab uxth r3, r5 +100038e6: 4372 muls r2, r6 +100038e8: 4373 muls r3, r6 +100038ea: 1a80 subs r0, r0, r2 +100038ec: 4199 sbcs r1, r3 +100038ee: 0c22 lsrs r2, r4, #16 +100038f0: 4372 muls r2, r6 +100038f2: 0c13 lsrs r3, r2, #16 +100038f4: 0412 lsls r2, r2, #16 +100038f6: 1a80 subs r0, r0, r2 +100038f8: 4199 sbcs r1, r3 +100038fa: 0002 movs r2, r0 +100038fc: 000b movs r3, r1 +100038fe: 3701 adds r7, #1 +10003900: 1b00 subs r0, r0, r4 +10003902: 41a9 sbcs r1, r5 +10003904: d2f9 bcs.n 100038fa +10003906: 1e78 subs r0, r7, #1 +10003908: 2100 movs r1, #0 +1000390a: bdf0 pop {r4, r5, r6, r7, pc} -10003790 : -10003790: 2900 cmp r1, #0 -10003792: d1dd bne.n 10003750 -10003794: 2c00 cmp r4, #0 -10003796: d1db bne.n 10003750 -10003798: bdf0 pop {r4, r5, r6, r7, pc} +1000390c : +1000390c: 270c movs r7, #12 +1000390e: 1b7f subs r7, r7, r5 +10003910: 40fe lsrs r6, r7 +10003912: 4677 mov r7, lr +10003914: 0b7f lsrs r7, r7, #13 +10003916: 40af lsls r7, r5 +10003918: 19ff adds r7, r7, r7 +1000391a: e7e0 b.n 100038de -1000379a : -1000379a: 3201 adds r2, #1 -1000379c: 07c6 lsls r6, r0, #31 -1000379e: 0840 lsrs r0, r0, #1 -100037a0: 07cd lsls r5, r1, #31 -100037a2: 4328 orrs r0, r5 -100037a4: 0849 lsrs r1, r1, #1 -100037a6: 2e00 cmp r6, #0 -100037a8: d0e1 beq.n 1000376e -100037aa: e7d9 b.n 10003760 +1000391c : +1000391c: 2400 movs r4, #0 +1000391e: 1c5d adds r5, r3, #1 +10003920: d007 beq.n 10003932 +10003922: 4f14 ldr r7, [pc, #80] @ (10003974 ) +10003924: 667d str r5, [r7, #100] @ 0x64 +10003926: 6639 str r1, [r7, #96] @ 0x60 +10003928: e7ff b.n 1000392a +1000392a: e7ff b.n 1000392c +1000392c: e7ff b.n 1000392e +1000392e: e7ff b.n 10003930 +10003930: 6f3c ldr r4, [r7, #112] @ 0x70 +10003932: b295 uxth r5, r2 +10003934: b29e uxth r6, r3 +10003936: 4365 muls r5, r4 +10003938: 4366 muls r6, r4 +1000393a: 1b40 subs r0, r0, r5 +1000393c: 41b1 sbcs r1, r6 +1000393e: 0c15 lsrs r5, r2, #16 +10003940: 0c1e lsrs r6, r3, #16 +10003942: 4365 muls r5, r4 +10003944: 4366 muls r6, r4 +10003946: 0436 lsls r6, r6, #16 +10003948: 0c2f lsrs r7, r5, #16 +1000394a: 433e orrs r6, r7 +1000394c: 042d lsls r5, r5, #16 +1000394e: 1b40 subs r0, r0, r5 +10003950: 41b1 sbcs r1, r6 +10003952: 4299 cmp r1, r3 +10003954: d204 bcs.n 10003960 +10003956: 0002 movs r2, r0 +10003958: 000b movs r3, r1 +1000395a: 0020 movs r0, r4 +1000395c: 2100 movs r1, #0 +1000395e: bdf0 pop {r4, r5, r6, r7, pc} +10003960: d101 bne.n 10003966 +10003962: 4290 cmp r0, r2 +10003964: d3f7 bcc.n 10003956 +10003966: 1a80 subs r0, r0, r2 +10003968: 4199 sbcs r1, r3 +1000396a: 3401 adds r4, #1 +1000396c: 4299 cmp r1, r3 +1000396e: d3f2 bcc.n 10003956 +10003970: e7f6 b.n 10003960 +10003972: 0000 .short 0x0000 +10003974: d0000000 .word 0xd0000000 +10003978: ffffffff .word 0xffffffff -100037ac : -100037ac: 2e3c cmp r6, #60 @ 0x3c -100037ae: da29 bge.n 10003804 -100037b0: 3e20 subs r6, #32 -100037b2: 3740 adds r7, #64 @ 0x40 -100037b4: 0014 movs r4, r2 -100037b6: 40bc lsls r4, r7 -100037b8: d000 beq.n 100037bc -100037ba: 2401 movs r4, #1 -100037bc: 40f2 lsrs r2, r6 -100037be: 4314 orrs r4, r2 -100037c0: 001a movs r2, r3 -100037c2: 40bb lsls r3, r7 -100037c4: 431c orrs r4, r3 -100037c6: 17d3 asrs r3, r2, #31 -100037c8: e7ac b.n 10003724 +1000397c <__wrap___aeabi_drsub>: +1000397c: 4048 eors r0, r1 +1000397e: 4041 eors r1, r0 +10003980: 4048 eors r0, r1 -100037ca : -100037ca: 46ac mov ip, r5 -100037cc: 2f20 cmp r7, #32 -100037ce: da08 bge.n 100037e2 -100037d0: 3620 adds r6, #32 -100037d2: 0004 movs r4, r0 -100037d4: 40b4 lsls r4, r6 +10003982 <__wrap___aeabi_dsub>: +10003982: b418 push {r3, r4} +10003984: 4b1b ldr r3, [pc, #108] @ (100039f4 <__wrap___aeabi_dmul+0x12>) +10003986: 685b ldr r3, [r3, #4] +10003988: 46fc mov ip, pc +1000398a: 9301 str r3, [sp, #4] +1000398c: bd08 pop {r3, pc} +1000398e: df04 .short 0xdf04 +10003990: 10003c5b .word 0x10003c5b -100037d6 : -100037d6: 000d movs r5, r1 -100037d8: 40b5 lsls r5, r6 -100037da: 40f8 lsrs r0, r7 -100037dc: 4139 asrs r1, r7 -100037de: 4328 orrs r0, r5 -100037e0: e7a5 b.n 1000372e +10003994 <__wrap___aeabi_dadd>: +10003994: b418 push {r3, r4} +10003996: 4b17 ldr r3, [pc, #92] @ (100039f4 <__wrap___aeabi_dmul+0x12>) +10003998: 681b ldr r3, [r3, #0] +1000399a: 46fc mov ip, pc +1000399c: 9301 str r3, [sp, #4] +1000399e: bd08 pop {r3, pc} +100039a0: 3c65df00 .word 0x3c65df00 +100039a4: 1000 .short 0x1000 -100037e2 : -100037e2: 2f3c cmp r7, #60 @ 0x3c -100037e4: da0c bge.n 10003800 -100037e6: 3f20 subs r7, #32 -100037e8: 3640 adds r6, #64 @ 0x40 -100037ea: 0004 movs r4, r0 -100037ec: 40b4 lsls r4, r6 -100037ee: d000 beq.n 100037f2 -100037f0: 2401 movs r4, #1 -100037f2: 40f8 lsrs r0, r7 -100037f4: 4304 orrs r4, r0 -100037f6: 0008 movs r0, r1 -100037f8: 40b1 lsls r1, r6 -100037fa: 430c orrs r4, r1 -100037fc: 17c1 asrs r1, r0, #31 -100037fe: e7ea b.n 100037d6 +100039a6 <__wrap___aeabi_ddiv>: +100039a6: 4694 mov ip, r2 +100039a8: 4a13 ldr r2, [pc, #76] @ (100039f8 <__wrap___aeabi_dmul+0x16>) +100039aa: 6f92 ldr r2, [r2, #120] @ 0x78 +100039ac: 0892 lsrs r2, r2, #2 +100039ae: d209 bcs.n 100039c4 +100039b0: 4662 mov r2, ip -10003800 : -10003800: 0010 movs r0, r2 -10003802: 0019 movs r1, r3 +100039b2 : +100039b2: b418 push {r3, r4} +100039b4: 4b0f ldr r3, [pc, #60] @ (100039f4 <__wrap___aeabi_dmul+0x12>) +100039b6: 68db ldr r3, [r3, #12] +100039b8: 46fc mov ip, pc +100039ba: 9301 str r3, [sp, #4] +100039bc: bd08 pop {r3, pc} +100039be: df0c .short 0xdf0c +100039c0: 10003f1d .word 0x10003f1d -10003804 : -10003804: 2400 movs r4, #0 -10003806: e794 b.n 10003732 -10003808: 7ff00000 .word 0x7ff00000 +100039c4 : +100039c4: 4a0c ldr r2, [pc, #48] @ (100039f8 <__wrap___aeabi_dmul+0x16>) +100039c6: b5f0 push {r4, r5, r6, r7, lr} +100039c8: 6e14 ldr r4, [r2, #96] @ 0x60 +100039ca: 6e55 ldr r5, [r2, #100] @ 0x64 +100039cc: 6f57 ldr r7, [r2, #116] @ 0x74 +100039ce: 6f16 ldr r6, [r2, #112] @ 0x70 +100039d0: 4662 mov r2, ip +100039d2: f7ff ffee bl 100039b2 +100039d6: 4a08 ldr r2, [pc, #32] @ (100039f8 <__wrap___aeabi_dmul+0x16>) +100039d8: 6614 str r4, [r2, #96] @ 0x60 +100039da: 6655 str r5, [r2, #100] @ 0x64 +100039dc: 6757 str r7, [r2, #116] @ 0x74 +100039de: 6716 str r6, [r2, #112] @ 0x70 +100039e0: bdf0 pop {r4, r5, r6, r7, pc} -1000380c : -1000380c: b5f0 push {r4, r5, r6, r7, lr} -1000380e: 0d0c lsrs r4, r1, #20 -10003810: 1e66 subs r6, r4, #1 -10003812: 0536 lsls r6, r6, #20 -10003814: 1b89 subs r1, r1, r6 -10003816: 0ae6 lsrs r6, r4, #11 -10003818: 0564 lsls r4, r4, #21 -1000381a: 0d64 lsrs r4, r4, #21 -1000381c: d002 beq.n 10003824 -1000381e: 1c65 adds r5, r4, #1 -10003820: 0aed lsrs r5, r5, #11 -10003822: d004 beq.n 1000382e +100039e2 <__wrap___aeabi_dmul>: +100039e2: b418 push {r3, r4} +100039e4: 4b03 ldr r3, [pc, #12] @ (100039f4 <__wrap___aeabi_dmul+0x12>) +100039e6: 689b ldr r3, [r3, #8] +100039e8: 46fc mov ip, pc +100039ea: 9301 str r3, [sp, #4] +100039ec: bd08 pop {r3, pc} +100039ee: df08 .short 0xdf08 +100039f0: 10003dc1 .word 0x10003dc1 +100039f4: 2000053c .word 0x2000053c +100039f8: d0000000 .word 0xd0000000 -10003824 : -10003824: 2000 movs r0, #0 -10003826: 2101 movs r1, #1 -10003828: 0509 lsls r1, r1, #20 -1000382a: 3c80 subs r4, #128 @ 0x80 -1000382c: 0324 lsls r4, r4, #12 +100039fc <__wrap___aeabi_cdrcmple>: +100039fc: b5ff push {r0, r1, r2, r3, r4, r5, r6, r7, lr} +100039fe: 4050 eors r0, r2 +10003a00: 4042 eors r2, r0 +10003a02: 4050 eors r0, r2 +10003a04: 4059 eors r1, r3 +10003a06: 404b eors r3, r1 +10003a08: 4059 eors r1, r3 +10003a0a: e000 b.n 10003a0e <__aeabi_dfcmple_guts> -1000382e : -1000382e: 46a4 mov ip, r4 -10003830: 0d1c lsrs r4, r3, #20 -10003832: 1e67 subs r7, r4, #1 -10003834: 053f lsls r7, r7, #20 -10003836: 1bdb subs r3, r3, r7 -10003838: 0ae7 lsrs r7, r4, #11 -1000383a: 0564 lsls r4, r4, #21 -1000383c: 0d64 lsrs r4, r4, #21 -1000383e: d002 beq.n 10003846 -10003840: 1c65 adds r5, r4, #1 -10003842: 0aed lsrs r5, r5, #11 -10003844: d004 beq.n 10003850 +10003a0c <__wrap___aeabi_cdcmpeq>: +10003a0c: b5ff push {r0, r1, r2, r3, r4, r5, r6, r7, lr} -10003846 : -10003846: 2200 movs r2, #0 -10003848: 2301 movs r3, #1 -1000384a: 051b lsls r3, r3, #20 -1000384c: 3c80 subs r4, #128 @ 0x80 -1000384e: 0324 lsls r4, r4, #12 +10003a0e <__aeabi_dfcmple_guts>: +10003a0e: 4f15 ldr r7, [pc, #84] @ (10003a64 <__aeabi_dfcmple_guts+0x56>) +10003a10: 004c lsls r4, r1, #1 +10003a12: 0d64 lsrs r4, r4, #21 +10003a14: d003 beq.n 10003a1e <__aeabi_dfcmple_guts+0x10> +10003a16: 42bc cmp r4, r7 +10003a18: d104 bne.n 10003a24 <__aeabi_dfcmple_guts+0x16> +10003a1a: 030c lsls r4, r1, #12 +10003a1c: d814 bhi.n 10003a48 <__aeabi_dfcmple_guts+0x3a> +10003a1e: 2000 movs r0, #0 +10003a20: 0d09 lsrs r1, r1, #20 +10003a22: 0509 lsls r1, r1, #20 +10003a24: 005c lsls r4, r3, #1 +10003a26: 0d64 lsrs r4, r4, #21 +10003a28: d003 beq.n 10003a32 <__aeabi_dfcmple_guts+0x24> +10003a2a: 42bc cmp r4, r7 +10003a2c: d104 bne.n 10003a38 <__aeabi_dfcmple_guts+0x2a> +10003a2e: 031c lsls r4, r3, #12 +10003a30: d80a bhi.n 10003a48 <__aeabi_dfcmple_guts+0x3a> +10003a32: 2200 movs r2, #0 +10003a34: 0d1b lsrs r3, r3, #20 +10003a36: 051b lsls r3, r3, #20 +10003a38: 2601 movs r6, #1 +10003a3a: 404b eors r3, r1 +10003a3c: d409 bmi.n 10003a52 <__aeabi_dfcmple_guts+0x44> +10003a3e: 404b eors r3, r1 +10003a40: d503 bpl.n 10003a4a <__aeabi_dfcmple_guts+0x3c> +10003a42: 428b cmp r3, r1 +10003a44: d100 bne.n 10003a48 <__aeabi_dfcmple_guts+0x3a> +10003a46: 4282 cmp r2, r0 +10003a48: bdff pop {r0, r1, r2, r3, r4, r5, r6, r7, pc} +10003a4a: 4299 cmp r1, r3 +10003a4c: d1fc bne.n 10003a48 <__aeabi_dfcmple_guts+0x3a> +10003a4e: 4290 cmp r0, r2 +10003a50: bdff pop {r0, r1, r2, r3, r4, r5, r6, r7, pc} +10003a52: 430b orrs r3, r1 +10003a54: 18db adds r3, r3, r3 +10003a56: 4303 orrs r3, r0 +10003a58: 4313 orrs r3, r2 +10003a5a: d0f5 beq.n 10003a48 <__aeabi_dfcmple_guts+0x3a> +10003a5c: 43c9 mvns r1, r1 +10003a5e: 1849 adds r1, r1, r1 +10003a60: bdff pop {r0, r1, r2, r3, r4, r5, r6, r7, pc} +10003a62: 0000 .short 0x0000 +10003a64: 000007ff .word 0x000007ff -10003850 : -10003850: 4077 eors r7, r6 -10003852: 4464 add r4, ip -10003854: b497 push {r0, r1, r2, r4, r7} -10003856: b284 uxth r4, r0 -10003858: b296 uxth r6, r2 -1000385a: 4374 muls r4, r6 -1000385c: 0c07 lsrs r7, r0, #16 -1000385e: 437e muls r6, r7 -10003860: 0c15 lsrs r5, r2, #16 -10003862: 436f muls r7, r5 -10003864: b280 uxth r0, r0 -10003866: 4368 muls r0, r5 -10003868: 1836 adds r6, r6, r0 -1000386a: d302 bcc.n 10003872 -1000386c: 2001 movs r0, #1 -1000386e: 0400 lsls r0, r0, #16 -10003870: 183f adds r7, r7, r0 +10003a68 <__wrap___aeabi_dcmplt>: +10003a68: b500 push {lr} +10003a6a: f7ff ffcf bl 10003a0c <__wrap___aeabi_cdcmpeq> +10003a6e: 4180 sbcs r0, r0 +10003a70: bd00 pop {pc} +10003a72: 46c0 nop @ (mov r8, r8) -10003872 : -10003872: 0430 lsls r0, r6, #16 -10003874: 0c35 lsrs r5, r6, #16 -10003876: 1900 adds r0, r0, r4 -10003878: 417d adcs r5, r7 -1000387a: 4684 mov ip, r0 -1000387c: b288 uxth r0, r1 -1000387e: b29a uxth r2, r3 -10003880: 4350 muls r0, r2 -10003882: 0c0c lsrs r4, r1, #16 -10003884: 4362 muls r2, r4 -10003886: 0c1f lsrs r7, r3, #16 -10003888: 437c muls r4, r7 -1000388a: b28e uxth r6, r1 -1000388c: 437e muls r6, r7 -1000388e: 1992 adds r2, r2, r6 -10003890: d302 bcc.n 10003898 -10003892: 2601 movs r6, #1 -10003894: 0436 lsls r6, r6, #16 -10003896: 19a4 adds r4, r4, r6 +10003a74 <__wrap___aeabi_dcmple>: +10003a74: b500 push {lr} +10003a76: f7ff ffc9 bl 10003a0c <__wrap___aeabi_cdcmpeq> +10003a7a: d901 bls.n 10003a80 <__wrap___aeabi_dcmple+0xc> +10003a7c: 2000 movs r0, #0 +10003a7e: bd00 pop {pc} +10003a80: 2001 movs r0, #1 +10003a82: bd00 pop {pc} -10003898 : -10003898: 0416 lsls r6, r2, #16 -1000389a: 0c17 lsrs r7, r2, #16 -1000389c: 1836 adds r6, r6, r0 -1000389e: 4167 adcs r7, r4 -100038a0: bc01 pop {r0} -100038a2: b281 uxth r1, r0 -100038a4: b29a uxth r2, r3 -100038a6: 4351 muls r1, r2 -100038a8: 0c04 lsrs r4, r0, #16 -100038aa: 4362 muls r2, r4 -100038ac: 0c1b lsrs r3, r3, #16 -100038ae: 435c muls r4, r3 -100038b0: b280 uxth r0, r0 -100038b2: 4358 muls r0, r3 -100038b4: 1812 adds r2, r2, r0 -100038b6: d302 bcc.n 100038be -100038b8: 2001 movs r0, #1 -100038ba: 0400 lsls r0, r0, #16 -100038bc: 1824 adds r4, r4, r0 +10003a84 <__wrap___aeabi_dcmpge>: +10003a84: b500 push {lr} +10003a86: f7ff ffb9 bl 100039fc <__wrap___aeabi_cdrcmple> +10003a8a: d901 bls.n 10003a90 <__wrap___aeabi_dcmpge+0xc> +10003a8c: 2000 movs r0, #0 +10003a8e: bd00 pop {pc} +10003a90: 2001 movs r0, #1 +10003a92: bd00 pop {pc} -100038be : -100038be: 0410 lsls r0, r2, #16 -100038c0: 0c13 lsrs r3, r2, #16 -100038c2: 1840 adds r0, r0, r1 -100038c4: 4163 adcs r3, r4 -100038c6: 182d adds r5, r5, r0 -100038c8: 415e adcs r6, r3 -100038ca: 2000 movs r0, #0 -100038cc: 4147 adcs r7, r0 -100038ce: bc06 pop {r1, r2} -100038d0: b288 uxth r0, r1 -100038d2: b293 uxth r3, r2 -100038d4: 4358 muls r0, r3 -100038d6: 0c0c lsrs r4, r1, #16 -100038d8: 4363 muls r3, r4 -100038da: 0c12 lsrs r2, r2, #16 -100038dc: 4354 muls r4, r2 -100038de: b289 uxth r1, r1 -100038e0: 4351 muls r1, r2 -100038e2: 185b adds r3, r3, r1 -100038e4: d302 bcc.n 100038ec -100038e6: 2101 movs r1, #1 -100038e8: 0409 lsls r1, r1, #16 -100038ea: 1864 adds r4, r4, r1 +10003a94 <__wrap___aeabi_dcmpgt>: +10003a94: b500 push {lr} +10003a96: f7ff ffb1 bl 100039fc <__wrap___aeabi_cdrcmple> +10003a9a: 4180 sbcs r0, r0 +10003a9c: bd00 pop {pc} -100038ec : -100038ec: 0419 lsls r1, r3, #16 -100038ee: 0c1a lsrs r2, r3, #16 -100038f0: 1809 adds r1, r1, r0 -100038f2: 4162 adcs r2, r4 -100038f4: 186d adds r5, r5, r1 -100038f6: 4156 adcs r6, r2 -100038f8: 2000 movs r0, #0 -100038fa: 4147 adcs r7, r0 -100038fc: bc18 pop {r3, r4} -100038fe: 02f9 lsls r1, r7, #11 -10003900: 0d72 lsrs r2, r6, #21 -10003902: 4311 orrs r1, r2 -10003904: 02f0 lsls r0, r6, #11 -10003906: 0d6a lsrs r2, r5, #21 -10003908: 4310 orrs r0, r2 -1000390a: 02ed lsls r5, r5, #11 -1000390c: 0d0a lsrs r2, r1, #20 -1000390e: d103 bne.n 10003918 -10003910: 196d adds r5, r5, r5 -10003912: 4140 adcs r0, r0 -10003914: 4149 adcs r1, r1 -10003916: 3b01 subs r3, #1 -10003918: 4e12 ldr r6, [pc, #72] @ (10003964 ) -1000391a: 1b9b subs r3, r3, r6 -1000391c: 0076 lsls r6, r6, #1 -1000391e: 42b3 cmp r3, r6 -10003920: d20e bcs.n 10003940 -10003922: 006d lsls r5, r5, #1 -10003924: d307 bcc.n 10003936 -10003926: 3001 adds r0, #1 -10003928: 2600 movs r6, #0 -1000392a: 4171 adcs r1, r6 -1000392c: 4666 mov r6, ip -1000392e: 4335 orrs r5, r6 -10003930: d101 bne.n 10003936 -10003932: 0840 lsrs r0, r0, #1 -10003934: 0040 lsls r0, r0, #1 -10003936: 051b lsls r3, r3, #20 -10003938: 18c9 adds r1, r1, r3 - -1000393a : -1000393a: 07e4 lsls r4, r4, #31 -1000393c: 4421 add r1, r4 -1000393e: bdf0 pop {r4, r5, r6, r7, pc} - -10003940 : -10003940: da0b bge.n 1000395a -10003942: 3301 adds r3, #1 -10003944: d106 bne.n 10003954 -10003946: 3001 adds r0, #1 -10003948: d104 bne.n 10003954 -1000394a: 3101 adds r1, #1 -1000394c: 0d4f lsrs r7, r1, #21 -1000394e: d001 beq.n 10003954 -10003950: 0849 lsrs r1, r1, #1 -10003952: e7f2 b.n 1000393a -10003954: 07e1 lsls r1, r4, #31 -10003956: 2000 movs r0, #0 -10003958: bdf0 pop {r4, r5, r6, r7, pc} - -1000395a : -1000395a: 3601 adds r6, #1 -1000395c: 0531 lsls r1, r6, #20 -1000395e: 2000 movs r0, #0 -10003960: e7eb b.n 1000393a -10003962: 0000 .short 0x0000 -10003964: 000003ff .word 0x000003ff - -10003968 : -10003968: b5f0 push {r4, r5, r6, r7, lr} - -1000396a : -1000396a: 0d1c lsrs r4, r3, #20 -1000396c: 1e67 subs r7, r4, #1 -1000396e: 053f lsls r7, r7, #20 -10003970: 1bdb subs r3, r3, r7 -10003972: 0ae7 lsrs r7, r4, #11 -10003974: 0564 lsls r4, r4, #21 -10003976: 0d64 lsrs r4, r4, #21 -10003978: d002 beq.n 10003980 -1000397a: 1c66 adds r6, r4, #1 -1000397c: 0af6 lsrs r6, r6, #11 -1000397e: d004 beq.n 1000398a - -10003980 : -10003980: 2200 movs r2, #0 -10003982: 2301 movs r3, #1 -10003984: 051b lsls r3, r3, #20 -10003986: 3c80 subs r4, #128 @ 0x80 -10003988: 0324 lsls r4, r4, #12 - -1000398a : -1000398a: 25d0 movs r5, #208 @ 0xd0 -1000398c: 062d lsls r5, r5, #24 -1000398e: 2600 movs r6, #0 -10003990: 43f6 mvns r6, r6 -10003992: 662e str r6, [r5, #96] @ 0x60 -10003994: 091e lsrs r6, r3, #4 -10003996: 666e str r6, [r5, #100] @ 0x64 -10003998: 0fce lsrs r6, r1, #31 -1000399a: 19f6 adds r6, r6, r7 -1000399c: 46b4 mov ip, r6 -1000399e: 0049 lsls r1, r1, #1 -100039a0: 0d4f lsrs r7, r1, #21 -100039a2: d002 beq.n 100039aa -100039a4: 1c7e adds r6, r7, #1 -100039a6: 0af6 lsrs r6, r6, #11 -100039a8: d003 beq.n 100039b2 -100039aa: 2000 movs r0, #0 -100039ac: 2100 movs r1, #0 -100039ae: 3f40 subs r7, #64 @ 0x40 -100039b0: 033f lsls r7, r7, #12 -100039b2: 1b3e subs r6, r7, r4 -100039b4: 00b6 lsls r6, r6, #2 -100039b6: 44b4 add ip, r6 -100039b8: 3f01 subs r7, #1 -100039ba: 057f lsls r7, r7, #21 -100039bc: 1bc9 subs r1, r1, r7 -100039be: 0849 lsrs r1, r1, #1 -100039c0: 6f2e ldr r6, [r5, #112] @ 0x70 -100039c2: 3601 adds r6, #1 -100039c4: 0876 lsrs r6, r6, #1 -100039c6: 029c lsls r4, r3, #10 -100039c8: 0d95 lsrs r5, r2, #22 -100039ca: 4325 orrs r5, r4 -100039cc: 4375 muls r5, r6 -100039ce: 13ed asrs r5, r5, #15 -100039d0: 4375 muls r5, r6 -100039d2: 13ad asrs r5, r5, #14 -100039d4: 3501 adds r5, #1 -100039d6: 106d asrs r5, r5, #1 -100039d8: 03f6 lsls r6, r6, #15 -100039da: 1b76 subs r6, r6, r5 -100039dc: b40c push {r2, r3} -100039de: 02cc lsls r4, r1, #11 -100039e0: 0d45 lsrs r5, r0, #21 -100039e2: 432c orrs r4, r5 -100039e4: b2a2 uxth r2, r4 -100039e6: b2b3 uxth r3, r6 -100039e8: 435a muls r2, r3 -100039ea: 0c27 lsrs r7, r4, #16 -100039ec: 437b muls r3, r7 -100039ee: 0c35 lsrs r5, r6, #16 -100039f0: 436f muls r7, r5 -100039f2: b2a4 uxth r4, r4 -100039f4: 436c muls r4, r5 -100039f6: 191b adds r3, r3, r4 -100039f8: d302 bcc.n 10003a00 -100039fa: 2401 movs r4, #1 -100039fc: 0424 lsls r4, r4, #16 -100039fe: 193f adds r7, r7, r4 - -10003a00 : -10003a00: 041c lsls r4, r3, #16 -10003a02: 0c1d lsrs r5, r3, #16 -10003a04: 18a4 adds r4, r4, r2 -10003a06: 417d adcs r5, r7 -10003a08: 1924 adds r4, r4, r4 -10003a0a: 416d adcs r5, r5 -10003a0c: 9a00 ldr r2, [sp, #0] -10003a0e: b291 uxth r1, r2 -10003a10: b2ac uxth r4, r5 -10003a12: 4361 muls r1, r4 -10003a14: 0c17 lsrs r7, r2, #16 -10003a16: 437c muls r4, r7 -10003a18: 0c2b lsrs r3, r5, #16 -10003a1a: 435f muls r7, r3 -10003a1c: b292 uxth r2, r2 -10003a1e: 435a muls r2, r3 -10003a20: 18a4 adds r4, r4, r2 -10003a22: d302 bcc.n 10003a2a -10003a24: 2201 movs r2, #1 -10003a26: 0412 lsls r2, r2, #16 -10003a28: 18bf adds r7, r7, r2 - -10003a2a : -10003a2a: 0422 lsls r2, r4, #16 -10003a2c: 0c23 lsrs r3, r4, #16 -10003a2e: 1852 adds r2, r2, r1 -10003a30: 417b adcs r3, r7 -10003a32: 9c01 ldr r4, [sp, #4] -10003a34: 436c muls r4, r5 -10003a36: 191b adds r3, r3, r4 -10003a38: 0e52 lsrs r2, r2, #25 -10003a3a: 01d9 lsls r1, r3, #7 -10003a3c: 430a orrs r2, r1 -10003a3e: 0144 lsls r4, r0, #5 -10003a40: 1aa0 subs r0, r4, r2 -10003a42: b281 uxth r1, r0 -10003a44: b2b2 uxth r2, r6 -10003a46: 4351 muls r1, r2 -10003a48: 1403 asrs r3, r0, #16 -10003a4a: 435a muls r2, r3 -10003a4c: 0c36 lsrs r6, r6, #16 -10003a4e: 4373 muls r3, r6 -10003a50: b287 uxth r7, r0 -10003a52: 4377 muls r7, r6 -10003a54: 17d6 asrs r6, r2, #31 -10003a56: 19d2 adds r2, r2, r7 -10003a58: 2700 movs r7, #0 -10003a5a: 417e adcs r6, r7 -10003a5c: 0436 lsls r6, r6, #16 -10003a5e: 199b adds r3, r3, r6 -10003a60: 0417 lsls r7, r2, #16 -10003a62: 0c16 lsrs r6, r2, #16 -10003a64: 187f adds r7, r7, r1 -10003a66: 415e adcs r6, r3 -10003a68: 1673 asrs r3, r6, #25 -10003a6a: 18ed adds r5, r5, r3 -10003a6c: 01f3 lsls r3, r6, #7 -10003a6e: 2600 movs r6, #0 -10003a70: 3380 adds r3, #128 @ 0x80 -10003a72: 4175 adcs r5, r6 -10003a74: 0fa9 lsrs r1, r5, #30 -10003a76: d106 bne.n 10003a86 -10003a78: 0064 lsls r4, r4, #1 -10003a7a: 0a69 lsrs r1, r5, #9 -10003a7c: 05e8 lsls r0, r5, #23 -10003a7e: 0a5b lsrs r3, r3, #9 -10003a80: 4318 orrs r0, r3 -10003a82: d209 bcs.n 10003a98 -10003a84: e02f b.n 10003ae6 - -10003a86 : -10003a86: 2204 movs r2, #4 -10003a88: 4494 add ip, r2 -10003a8a: 3380 adds r3, #128 @ 0x80 -10003a8c: 4175 adcs r5, r6 -10003a8e: 0aa9 lsrs r1, r5, #10 -10003a90: 05a8 lsls r0, r5, #22 -10003a92: 0a9b lsrs r3, r3, #10 -10003a94: 4318 orrs r0, r3 -10003a96: d326 bcc.n 10003ae6 - -10003a98 : -10003a98: 4140 adcs r0, r0 -10003a9a: 4149 adcs r1, r1 -10003a9c: 0424 lsls r4, r4, #16 -10003a9e: 9a00 ldr r2, [sp, #0] -10003aa0: 9b01 ldr r3, [sp, #4] -10003aa2: 000d movs r5, r1 -10003aa4: 4355 muls r5, r2 -10003aa6: 1b64 subs r4, r4, r5 -10003aa8: 4343 muls r3, r0 -10003aaa: 1ae4 subs r4, r4, r3 -10003aac: b295 uxth r5, r2 -10003aae: b286 uxth r6, r0 -10003ab0: 4375 muls r5, r6 -10003ab2: 0c17 lsrs r7, r2, #16 -10003ab4: 437e muls r6, r7 -10003ab6: 0c03 lsrs r3, r0, #16 -10003ab8: 435f muls r7, r3 -10003aba: b292 uxth r2, r2 -10003abc: 435a muls r2, r3 -10003abe: 18b6 adds r6, r6, r2 -10003ac0: d302 bcc.n 10003ac8 -10003ac2: 2201 movs r2, #1 -10003ac4: 0412 lsls r2, r2, #16 -10003ac6: 18bf adds r7, r7, r2 - -10003ac8 : -10003ac8: 0432 lsls r2, r6, #16 -10003aca: 0c33 lsrs r3, r6, #16 -10003acc: 1952 adds r2, r2, r5 -10003ace: 417b adcs r3, r7 -10003ad0: 4252 negs r2, r2 -10003ad2: 419c sbcs r4, r3 -10003ad4: 2c00 cmp r4, #0 -10003ad6: d402 bmi.n 10003ade -10003ad8: 2200 movs r2, #0 -10003ada: 3001 adds r0, #1 -10003adc: 4151 adcs r1, r2 -10003ade: 0840 lsrs r0, r0, #1 -10003ae0: 07ca lsls r2, r1, #31 -10003ae2: 4310 orrs r0, r2 -10003ae4: 0849 lsrs r1, r1, #1 - -10003ae6 : -10003ae6: b002 add sp, #8 -10003ae8: 4662 mov r2, ip -10003aea: 07d7 lsls r7, r2, #31 -10003aec: 1092 asrs r2, r2, #2 -10003aee: 4b08 ldr r3, [pc, #32] @ (10003b10 ) -10003af0: 18d2 adds r2, r2, r3 -10003af2: 4b08 ldr r3, [pc, #32] @ (10003b14 ) -10003af4: 429a cmp r2, r3 -10003af6: d203 bcs.n 10003b00 -10003af8: 0512 lsls r2, r2, #20 -10003afa: 1889 adds r1, r1, r2 - -10003afc : -10003afc: 19c9 adds r1, r1, r7 -10003afe: bdf0 pop {r4, r5, r6, r7, pc} - -10003b00 : -10003b00: 2000 movs r0, #0 -10003b02: 2a00 cmp r2, #0 -10003b04: dc01 bgt.n 10003b0a -10003b06: 0039 movs r1, r7 -10003b08: bdf0 pop {r4, r5, r6, r7, pc} - -10003b0a : -10003b0a: 3301 adds r3, #1 -10003b0c: 0519 lsls r1, r3, #20 -10003b0e: e7f5 b.n 10003afc -10003b10: 000003fd .word 0x000003fd -10003b14: 000007fe .word 0x000007fe - -10003b18 : -10003b18: 2200 movs r2, #0 - -10003b1a : -10003b1a: b500 push {lr} -10003b1c: 3220 adds r2, #32 -10003b1e: f000 f804 bl 10003b2a -10003b22: 0008 movs r0, r1 -10003b24: bd00 pop {pc} +10003a9e <__wrap___aeabi_dcmpun>: +10003a9e: 2001 movs r0, #1 +10003aa0: 0540 lsls r0, r0, #21 +10003aa2: 004a lsls r2, r1, #1 +10003aa4: 1812 adds r2, r2, r0 +10003aa6: d804 bhi.n 10003ab2 <__wrap___aeabi_dcmpun+0x14> +10003aa8: 005a lsls r2, r3, #1 +10003aaa: 1812 adds r2, r2, r0 +10003aac: d801 bhi.n 10003ab2 <__wrap___aeabi_dcmpun+0x14> +10003aae: 2000 movs r0, #0 +10003ab0: 4770 bx lr +10003ab2: 2001 movs r0, #1 +10003ab4: 4770 bx lr +10003ab6: 2000 movs r0, #0 +10003ab8: 4770 bx lr ... -10003b28 : -10003b28: 2200 movs r2, #0 +10003abc <__wrap___aeabi_ui2d>: +10003abc: 2100 movs r1, #0 +10003abe: 2800 cmp r0, #0 +10003ac0: d105 bne.n 10003ace <__wrap___aeabi_i2d+0xa> +10003ac2: 4770 bx lr -10003b2a : -10003b2a: 150b asrs r3, r1, #20 -10003b2c: d40a bmi.n 10003b44 +10003ac4 <__wrap___aeabi_i2d>: +10003ac4: 17c1 asrs r1, r0, #31 +10003ac6: 4048 eors r0, r1 +10003ac8: 1a40 subs r0, r0, r1 +10003aca: d0fa beq.n 10003ac2 <__wrap___aeabi_ui2d+0x6> +10003acc: 07c9 lsls r1, r1, #31 +10003ace: b513 push {r0, r1, r4, lr} +10003ad0: 4b06 ldr r3, [pc, #24] @ (10003aec <__wrap___aeabi_i2d+0x28>) +10003ad2: 681b ldr r3, [r3, #0] +10003ad4: 4798 blx r3 +10003ad6: bc0c pop {r2, r3} +10003ad8: 1c44 adds r4, r0, #1 +10003ada: 40a2 lsls r2, r4 +10003adc: 0510 lsls r0, r2, #20 +10003ade: 0b12 lsrs r2, r2, #12 +10003ae0: 4903 ldr r1, [pc, #12] @ (10003af0 <__wrap___aeabi_i2d+0x2c>) +10003ae2: 1b09 subs r1, r1, r4 +10003ae4: 0509 lsls r1, r1, #20 +10003ae6: 4319 orrs r1, r3 +10003ae8: 4311 orrs r1, r2 +10003aea: bd10 pop {r4, pc} +10003aec: 2000063c .word 0x2000063c +10003af0: 0000041f .word 0x0000041f -10003b2e : -10003b2e: b510 push {r4, lr} -10003b30: 4694 mov ip, r2 -10003b32: f000 f831 bl 10003b98 -10003b36: 1414 asrs r4, r2, #16 -10003b38: 3401 adds r4, #1 -10003b3a: da00 bge.n 10003b3e -10003b3c: 2100 movs r1, #0 -10003b3e: 17cb asrs r3, r1, #31 -10003b40: 4c14 ldr r4, [pc, #80] @ (10003b94 ) -10003b42: 4720 bx r4 +10003af4 <__wrap___aeabi_d2iz>: +10003af4: b510 push {r4, lr} +10003af6: 004c lsls r4, r1, #1 +10003af8: 0d62 lsrs r2, r4, #21 +10003afa: 2380 movs r3, #128 @ 0x80 +10003afc: 18d2 adds r2, r2, r3 +10003afe: 00db lsls r3, r3, #3 +10003b00: 1ad2 subs r2, r2, r3 +10003b02: 055b lsls r3, r3, #21 +10003b04: 2a7e cmp r2, #126 @ 0x7e +10003b06: dd10 ble.n 10003b2a <__wrap___aeabi_d2iz+0x36> +10003b08: 3a9e subs r2, #158 @ 0x9e +10003b0a: da13 bge.n 10003b34 <__wrap___aeabi_d2iz+0x40> +10003b0c: 17cc asrs r4, r1, #31 +10003b0e: 0309 lsls r1, r1, #12 +10003b10: 0849 lsrs r1, r1, #1 +10003b12: 4319 orrs r1, r3 +10003b14: 4252 negs r2, r2 +10003b16: 40d1 lsrs r1, r2 +10003b18: 0064 lsls r4, r4, #1 +10003b1a: 3401 adds r4, #1 +10003b1c: 3215 adds r2, #21 +10003b1e: 2a20 cmp r2, #32 +10003b20: da05 bge.n 10003b2e <__wrap___aeabi_d2iz+0x3a> +10003b22: 40d0 lsrs r0, r2 +10003b24: 4308 orrs r0, r1 +10003b26: 4360 muls r0, r4 +10003b28: bd10 pop {r4, pc} +10003b2a: 2000 movs r0, #0 +10003b2c: bd10 pop {r4, pc} +10003b2e: 4608 mov r0, r1 +10003b30: 4360 muls r0, r4 +10003b32: bd10 pop {r4, pc} +10003b34: 0fc8 lsrs r0, r1, #31 +10003b36: 18c0 adds r0, r0, r3 +10003b38: 3801 subs r0, #1 +10003b3a: bd10 pop {r4, pc} -10003b44 : -10003b44: 2000 movs r0, #0 -10003b46: 2100 movs r1, #0 -10003b48: 4770 bx lr +10003b3c <__wrap___aeabi_d2uiz>: +10003b3c: b418 push {r3, r4} +10003b3e: 4b04 ldr r3, [pc, #16] @ (10003b50 <__wrap___aeabi_d2uiz+0x14>) +10003b40: 6a5b ldr r3, [r3, #36] @ 0x24 +10003b42: 46fc mov ip, pc +10003b44: 9301 str r3, [sp, #4] +10003b46: bd08 pop {r3, pc} +10003b48: 40cddf24 .word 0x40cddf24 +10003b4c: 00001000 .word 0x00001000 +10003b50: 2000053c .word 0x2000053c -10003b4a : -10003b4a: 4462 add r2, ip -10003b4c: 3a34 subs r2, #52 @ 0x34 -10003b4e: d40c bmi.n 10003b6a -10003b50: 2a0c cmp r2, #12 -10003b52: da07 bge.n 10003b64 -10003b54: 0004 movs r4, r0 -10003b56: 4091 lsls r1, r2 -10003b58: 4090 lsls r0, r2 -10003b5a: 4252 negs r2, r2 -10003b5c: 3220 adds r2, #32 -10003b5e: 40d4 lsrs r4, r2 -10003b60: 4321 orrs r1, r4 -10003b62: bd10 pop {r4, pc} -10003b64: 43d8 mvns r0, r3 -10003b66: 43d9 mvns r1, r3 -10003b68: bd10 pop {r4, pc} -10003b6a: 3220 adds r2, #32 -10003b6c: d407 bmi.n 10003b7e -10003b6e: 460c mov r4, r1 -10003b70: 4094 lsls r4, r2 -10003b72: 4252 negs r2, r2 -10003b74: 3220 adds r2, #32 -10003b76: 4111 asrs r1, r2 -10003b78: 40d0 lsrs r0, r2 -10003b7a: 4320 orrs r0, r4 -10003b7c: bd10 pop {r4, pc} -10003b7e: 0008 movs r0, r1 -10003b80: 17c9 asrs r1, r1, #31 -10003b82: 3220 adds r2, #32 -10003b84: d403 bmi.n 10003b8e -10003b86: 4252 negs r2, r2 -10003b88: 3220 adds r2, #32 -10003b8a: 4110 asrs r0, r2 -10003b8c: bd10 pop {r4, pc} -10003b8e: 0018 movs r0, r3 -10003b90: 0019 movs r1, r3 -10003b92: bd10 pop {r4, pc} -10003b94: 10003b4b .word 0x10003b4b +10003b54 <__aeabi_double_init>: +10003b54: b570 push {r4, r5, r6, lr} +10003b56: 2313 movs r3, #19 +10003b58: 781c ldrb r4, [r3, #0] +10003b5a: 2c01 cmp r4, #1 +10003b5c: d012 beq.n 10003b84 <__aeabi_double_init+0x30> +10003b5e: 2c01 cmp r4, #1 +10003b60: dc12 bgt.n 10003b88 <__aeabi_double_init+0x34> +10003b62: 4b21 ldr r3, [pc, #132] @ (10003be8 <__aeabi_double_init+0x94>) +10003b64: 4a21 ldr r2, [pc, #132] @ (10003bec <__aeabi_double_init+0x98>) +10003b66: 6493 str r3, [r2, #72] @ 0x48 +10003b68: 4821 ldr r0, [pc, #132] @ (10003bf0 <__aeabi_double_init+0x9c>) +10003b6a: f7ff fc7b bl 10003464 +10003b6e: 4b21 ldr r3, [pc, #132] @ (10003bf4 <__aeabi_double_init+0xa0>) +10003b70: 6018 str r0, [r3, #0] +10003b72: bd70 pop {r4, r5, r6, pc} +10003b74: 491c ldr r1, [pc, #112] @ (10003be8 <__aeabi_double_init+0x94>) +10003b76: 4a1d ldr r2, [pc, #116] @ (10003bec <__aeabi_double_init+0x98>) +10003b78: 0098 lsls r0, r3, #2 +10003b7a: 5081 str r1, [r0, r2] +10003b7c: 3301 adds r3, #1 +10003b7e: 2b1f cmp r3, #31 +10003b80: d9f8 bls.n 10003b74 <__aeabi_double_init+0x20> +10003b82: e7ec b.n 10003b5e <__aeabi_double_init+0xa> +10003b84: 2300 movs r3, #0 +10003b86: e7fa b.n 10003b7e <__aeabi_double_init+0x2a> +10003b88: 481b ldr r0, [pc, #108] @ (10003bf8 <__aeabi_double_init+0xa4>) +10003b8a: f7ff fc73 bl 10003474 +10003b8e: 0005 movs r5, r0 +10003b90: 481a ldr r0, [pc, #104] @ (10003bfc <__aeabi_double_init+0xa8>) +10003b92: f7ff fc6f bl 10003474 +10003b96: 3802 subs r0, #2 +10003b98: 7803 ldrb r3, [r0, #0] +10003b9a: 009b lsls r3, r3, #2 +10003b9c: 2b7f cmp r3, #127 @ 0x7f +10003b9e: dd09 ble.n 10003bb4 <__aeabi_double_init+0x60> +10003ba0: 4812 ldr r0, [pc, #72] @ (10003bec <__aeabi_double_init+0x98>) +10003ba2: 2280 movs r2, #128 @ 0x80 +10003ba4: 0029 movs r1, r5 +10003ba6: f000 fba9 bl 100042fc <__wrap___aeabi_memcpy> +10003baa: 2c02 cmp r4, #2 +10003bac: d008 beq.n 10003bc0 <__aeabi_double_init+0x6c> +10003bae: 2c02 cmp r4, #2 +10003bb0: dcda bgt.n 10003b68 <__aeabi_double_init+0x14> +10003bb2: e7d6 b.n 10003b62 <__aeabi_double_init+0xe> +10003bb4: 4b12 ldr r3, [pc, #72] @ (10003c00 <__aeabi_double_init+0xac>) +10003bb6: 4a13 ldr r2, [pc, #76] @ (10003c04 <__aeabi_double_init+0xb0>) +10003bb8: 4813 ldr r0, [pc, #76] @ (10003c08 <__aeabi_double_init+0xb4>) +10003bba: 2132 movs r1, #50 @ 0x32 +10003bbc: f7fe fabe bl 1000213c <__assert_func> +10003bc0: 4b12 ldr r3, [pc, #72] @ (10003c0c <__aeabi_double_init+0xb8>) +10003bc2: 881a ldrh r2, [r3, #0] +10003bc4: 23b5 movs r3, #181 @ 0xb5 +10003bc6: 021b lsls r3, r3, #8 +10003bc8: 429a cmp r2, r3 +10003bca: d109 bne.n 10003be0 <__aeabi_double_init+0x8c> +10003bcc: 4b10 ldr r3, [pc, #64] @ (10003c10 <__aeabi_double_init+0xbc>) +10003bce: 881a ldrh r2, [r3, #0] +10003bd0: 4b10 ldr r3, [pc, #64] @ (10003c14 <__aeabi_double_init+0xc0>) +10003bd2: 429a cmp r2, r3 +10003bd4: d104 bne.n 10003be0 <__aeabi_double_init+0x8c> +10003bd6: 4b10 ldr r3, [pc, #64] @ (10003c18 <__aeabi_double_init+0xc4>) +10003bd8: 881a ldrh r2, [r3, #0] +10003bda: 4b10 ldr r3, [pc, #64] @ (10003c1c <__aeabi_double_init+0xc8>) +10003bdc: 429a cmp r2, r3 +10003bde: d0e6 beq.n 10003bae <__aeabi_double_init+0x5a> +10003be0: 2000 movs r0, #0 +10003be2: f7fe fb43 bl 1000226c +10003be6: 46c0 nop @ (mov r8, r8) +10003be8: 10003c21 .word 0x10003c21 +10003bec: 2000053c .word 0x2000053c +10003bf0: 0000334c .word 0x0000334c +10003bf4: 2000063c .word 0x2000063c +10003bf8: 00004453 .word 0x00004453 +10003bfc: 00004653 .word 0x00004653 +10003c00: 10005708 .word 0x10005708 +10003c04: 100057bc .word 0x100057bc +10003c08: 10005768 .word 0x10005768 +10003c0c: 00003854 .word 0x00003854 +10003c10: 000038d8 .word 0x000038d8 +10003c14: 00004649 .word 0x00004649 +10003c18: 0000389c .word 0x0000389c +10003c1c: 00004659 .word 0x00004659 -10003b98 : -10003b98: 0d0a lsrs r2, r1, #20 -10003b9a: 0fcc lsrs r4, r1, #31 -10003b9c: 1e53 subs r3, r2, #1 -10003b9e: 051b lsls r3, r3, #20 -10003ba0: 1ac9 subs r1, r1, r3 -10003ba2: 0552 lsls r2, r2, #21 -10003ba4: d303 bcc.n 10003bae -10003ba6: 43c9 mvns r1, r1 -10003ba8: 4240 negs r0, r0 -10003baa: d300 bcc.n 10003bae -10003bac: 3101 adds r1, #1 +10003c20 : +10003c20: b507 push {r0, r1, r2, lr} +10003c22: 4660 mov r0, ip +10003c24: 2800 cmp r0, #0 +10003c26: d100 bne.n 10003c2a +10003c28: be00 bkpt 0x0000 +10003c2a: 8801 ldrh r1, [r0, #0] +10003c2c: 0a0a lsrs r2, r1, #8 +10003c2e: 3002 adds r0, #2 +10003c30: 2adf cmp r2, #223 @ 0xdf +10003c32: d1fa bne.n 10003c2a +10003c34: b2c9 uxtb r1, r1 +10003c36: 0882 lsrs r2, r0, #2 +10003c38: d304 bcc.n 10003c44 +10003c3a: 8802 ldrh r2, [r0, #0] +10003c3c: 8840 ldrh r0, [r0, #2] +10003c3e: 0400 lsls r0, r0, #16 +10003c40: 4310 orrs r0, r2 +10003c42: e000 b.n 10003c46 +10003c44: 6800 ldr r0, [r0, #0] +10003c46: 4a02 ldr r2, [pc, #8] @ (10003c50 ) +10003c48: 5050 str r0, [r2, r1] +10003c4a: 9003 str r0, [sp, #12] +10003c4c: bd07 pop {r0, r1, r2, pc} +10003c4e: 0000 .short 0x0000 +10003c50: 2000053c .word 0x2000053c -10003bae : -10003bae: 0d52 lsrs r2, r2, #21 -10003bb0: d003 beq.n 10003bba -10003bb2: 1c53 adds r3, r2, #1 -10003bb4: 0adb lsrs r3, r3, #11 -10003bb6: d007 beq.n 10003bc8 -10003bb8: 1b12 subs r2, r2, r4 +10003c54 : +10003c54: b40f push {r0, r1, r2, r3} +10003c56: bc03 pop {r0, r1} +10003c58: bc0c pop {r2, r3} -10003bba : -10003bba: 2000 movs r0, #0 -10003bbc: 0064 lsls r4, r4, #1 -10003bbe: 1c61 adds r1, r4, #1 -10003bc0: 0789 lsls r1, r1, #30 -10003bc2: 1289 asrs r1, r1, #10 -10003bc4: 3a80 subs r2, #128 @ 0x80 -10003bc6: 0312 lsls r2, r2, #12 +10003c5a : +10003c5a: b5f0 push {r4, r5, r6, r7, lr} +10003c5c: 2401 movs r4, #1 +10003c5e: 07e4 lsls r4, r4, #31 +10003c60: 4063 eors r3, r4 +10003c62: e000 b.n 10003c66 -10003bc8 : -10003bc8: 4b01 ldr r3, [pc, #4] @ (10003bd0 ) -10003bca: 1ad2 subs r2, r2, r3 -10003bcc: 4770 bx lr -10003bce: 0000 .short 0x0000 -10003bd0: 000003ff .word 0x000003ff +10003c64 : +10003c64: b5f0 push {r4, r5, r6, r7, lr} -10003bd4 <__wrap___aeabi_lmul>: -10003bd4: 4351 muls r1, r2 -10003bd6: 4343 muls r3, r0 -10003bd8: 18c9 adds r1, r1, r3 -10003bda: 468c mov ip, r1 -10003bdc: 0c11 lsrs r1, r2, #16 -10003bde: b283 uxth r3, r0 -10003be0: 434b muls r3, r1 -10003be2: b410 push {r4} -10003be4: 0c04 lsrs r4, r0, #16 -10003be6: 4361 muls r1, r4 -10003be8: b292 uxth r2, r2 -10003bea: b280 uxth r0, r0 -10003bec: 4350 muls r0, r2 -10003bee: 4362 muls r2, r4 -10003bf0: 041c lsls r4, r3, #16 -10003bf2: 0c1b lsrs r3, r3, #16 -10003bf4: 1900 adds r0, r0, r4 -10003bf6: bc10 pop {r4} -10003bf8: 4159 adcs r1, r3 -10003bfa: 0413 lsls r3, r2, #16 -10003bfc: 0c12 lsrs r2, r2, #16 -10003bfe: 18c0 adds r0, r0, r3 -10003c00: 4151 adcs r1, r2 -10003c02: 4461 add r1, ip -10003c04: 4770 bx lr +10003c66 : +10003c66: 0d0c lsrs r4, r1, #20 +10003c68: 0fcf lsrs r7, r1, #31 +10003c6a: 1e66 subs r6, r4, #1 +10003c6c: 0536 lsls r6, r6, #20 +10003c6e: 1b89 subs r1, r1, r6 +10003c70: 0564 lsls r4, r4, #21 +10003c72: d303 bcc.n 10003c7c +10003c74: 43c9 mvns r1, r1 +10003c76: 4240 negs r0, r0 +10003c78: d300 bcc.n 10003c7c +10003c7a: 3101 adds r1, #1 + +10003c7c : +10003c7c: 0d64 lsrs r4, r4, #21 +10003c7e: d003 beq.n 10003c88 +10003c80: 1c66 adds r6, r4, #1 +10003c82: 0af6 lsrs r6, r6, #11 +10003c84: d007 beq.n 10003c96 +10003c86: 1be4 subs r4, r4, r7 + +10003c88 : +10003c88: 2000 movs r0, #0 +10003c8a: 007f lsls r7, r7, #1 +10003c8c: 1c79 adds r1, r7, #1 +10003c8e: 0789 lsls r1, r1, #30 +10003c90: 1289 asrs r1, r1, #10 +10003c92: 3c80 subs r4, #128 @ 0x80 +10003c94: 0324 lsls r4, r4, #12 + +10003c96 : +10003c96: 0d1d lsrs r5, r3, #20 +10003c98: 0fdf lsrs r7, r3, #31 +10003c9a: 1e6e subs r6, r5, #1 +10003c9c: 0536 lsls r6, r6, #20 +10003c9e: 1b9b subs r3, r3, r6 +10003ca0: 056d lsls r5, r5, #21 +10003ca2: d303 bcc.n 10003cac +10003ca4: 43db mvns r3, r3 +10003ca6: 4252 negs r2, r2 +10003ca8: d300 bcc.n 10003cac +10003caa: 3301 adds r3, #1 + +10003cac : +10003cac: 0d6d lsrs r5, r5, #21 +10003cae: d003 beq.n 10003cb8 +10003cb0: 1c6e adds r6, r5, #1 +10003cb2: 0af6 lsrs r6, r6, #11 +10003cb4: d007 beq.n 10003cc6 +10003cb6: 1bed subs r5, r5, r7 + +10003cb8 : +10003cb8: 2200 movs r2, #0 +10003cba: 007f lsls r7, r7, #1 +10003cbc: 1c7b adds r3, r7, #1 +10003cbe: 079b lsls r3, r3, #30 +10003cc0: 129b asrs r3, r3, #10 +10003cc2: 3d80 subs r5, #128 @ 0x80 +10003cc4: 032d lsls r5, r5, #12 + +10003cc6 : +10003cc6: 1b2f subs r7, r5, r4 +10003cc8: 1b66 subs r6, r4, r5 +10003cca: d458 bmi.n 10003d7e +10003ccc: 46a4 mov ip, r4 +10003cce: 2e20 cmp r6, #32 +10003cd0: da46 bge.n 10003d60 +10003cd2: 3720 adds r7, #32 +10003cd4: 0014 movs r4, r2 +10003cd6: 40bc lsls r4, r7 + +10003cd8 : +10003cd8: 001d movs r5, r3 +10003cda: 40bd lsls r5, r7 +10003cdc: 40f2 lsrs r2, r6 +10003cde: 4133 asrs r3, r6 +10003ce0: 432a orrs r2, r5 + +10003ce2 : +10003ce2: 1880 adds r0, r0, r2 +10003ce4: 4159 adcs r1, r3 + +10003ce6 : +10003ce6: 0fcb lsrs r3, r1, #31 +10003ce8: d005 beq.n 10003cf6 +10003cea: 43c9 mvns r1, r1 +10003cec: 43c0 mvns r0, r0 +10003cee: 2200 movs r2, #0 +10003cf0: 4264 negs r4, r4 +10003cf2: 4150 adcs r0, r2 +10003cf4: 4151 adcs r1, r2 +10003cf6: 4662 mov r2, ip +10003cf8: 0d4d lsrs r5, r1, #21 +10003cfa: d128 bne.n 10003d4e +10003cfc: 0d0d lsrs r5, r1, #20 +10003cfe: d107 bne.n 10003d10 +10003d00: 2800 cmp r0, #0 +10003d02: d01f beq.n 10003d44 + +10003d04 : +10003d04: 1924 adds r4, r4, r4 +10003d06: 4140 adcs r0, r0 +10003d08: 4149 adcs r1, r1 +10003d0a: 3a01 subs r2, #1 +10003d0c: 0d0d lsrs r5, r1, #20 +10003d0e: d0f9 beq.n 10003d04 + +10003d10 : +10003d10: 0064 lsls r4, r4, #1 +10003d12: d306 bcc.n 10003d22 + +10003d14 : +10003d14: 3001 adds r0, #1 +10003d16: d300 bcc.n 10003d1a +10003d18: 3101 adds r1, #1 +10003d1a: 2c00 cmp r4, #0 +10003d1c: d101 bne.n 10003d22 +10003d1e: 0840 lsrs r0, r0, #1 +10003d20: 0040 lsls r0, r0, #1 + +10003d22 : +10003d22: 3a01 subs r2, #1 +10003d24: d40b bmi.n 10003d3e +10003d26: 1c94 adds r4, r2, #2 +10003d28: 0ae4 lsrs r4, r4, #11 +10003d2a: d104 bne.n 10003d36 +10003d2c: 0512 lsls r2, r2, #20 +10003d2e: 4411 add r1, r2 +10003d30: 07db lsls r3, r3, #31 +10003d32: 4419 add r1, r3 +10003d34: bdf0 pop {r4, r5, r6, r7, pc} + +10003d36 : +10003d36: 07d9 lsls r1, r3, #31 +10003d38: 4b20 ldr r3, [pc, #128] @ (10003dbc ) +10003d3a: 4319 orrs r1, r3 +10003d3c: e000 b.n 10003d40 + +10003d3e : +10003d3e: 07d9 lsls r1, r3, #31 +10003d40: 2000 movs r0, #0 +10003d42: bdf0 pop {r4, r5, r6, r7, pc} + +10003d44 : +10003d44: 2900 cmp r1, #0 +10003d46: d1dd bne.n 10003d04 +10003d48: 2c00 cmp r4, #0 +10003d4a: d1db bne.n 10003d04 +10003d4c: bdf0 pop {r4, r5, r6, r7, pc} + +10003d4e : +10003d4e: 3201 adds r2, #1 +10003d50: 07c6 lsls r6, r0, #31 +10003d52: 0840 lsrs r0, r0, #1 +10003d54: 07cd lsls r5, r1, #31 +10003d56: 4328 orrs r0, r5 +10003d58: 0849 lsrs r1, r1, #1 +10003d5a: 2e00 cmp r6, #0 +10003d5c: d0e1 beq.n 10003d22 +10003d5e: e7d9 b.n 10003d14 + +10003d60 : +10003d60: 2e3c cmp r6, #60 @ 0x3c +10003d62: da29 bge.n 10003db8 +10003d64: 3e20 subs r6, #32 +10003d66: 3740 adds r7, #64 @ 0x40 +10003d68: 0014 movs r4, r2 +10003d6a: 40bc lsls r4, r7 +10003d6c: d000 beq.n 10003d70 +10003d6e: 2401 movs r4, #1 +10003d70: 40f2 lsrs r2, r6 +10003d72: 4314 orrs r4, r2 +10003d74: 001a movs r2, r3 +10003d76: 40bb lsls r3, r7 +10003d78: 431c orrs r4, r3 +10003d7a: 17d3 asrs r3, r2, #31 +10003d7c: e7ac b.n 10003cd8 + +10003d7e : +10003d7e: 46ac mov ip, r5 +10003d80: 2f20 cmp r7, #32 +10003d82: da08 bge.n 10003d96 +10003d84: 3620 adds r6, #32 +10003d86: 0004 movs r4, r0 +10003d88: 40b4 lsls r4, r6 + +10003d8a : +10003d8a: 000d movs r5, r1 +10003d8c: 40b5 lsls r5, r6 +10003d8e: 40f8 lsrs r0, r7 +10003d90: 4139 asrs r1, r7 +10003d92: 4328 orrs r0, r5 +10003d94: e7a5 b.n 10003ce2 + +10003d96 : +10003d96: 2f3c cmp r7, #60 @ 0x3c +10003d98: da0c bge.n 10003db4 +10003d9a: 3f20 subs r7, #32 +10003d9c: 3640 adds r6, #64 @ 0x40 +10003d9e: 0004 movs r4, r0 +10003da0: 40b4 lsls r4, r6 +10003da2: d000 beq.n 10003da6 +10003da4: 2401 movs r4, #1 +10003da6: 40f8 lsrs r0, r7 +10003da8: 4304 orrs r4, r0 +10003daa: 0008 movs r0, r1 +10003dac: 40b1 lsls r1, r6 +10003dae: 430c orrs r4, r1 +10003db0: 17c1 asrs r1, r0, #31 +10003db2: e7ea b.n 10003d8a + +10003db4 : +10003db4: 0010 movs r0, r2 +10003db6: 0019 movs r1, r3 + +10003db8 : +10003db8: 2400 movs r4, #0 +10003dba: e794 b.n 10003ce6 +10003dbc: 7ff00000 .word 0x7ff00000 + +10003dc0 : +10003dc0: b5f0 push {r4, r5, r6, r7, lr} +10003dc2: 0d0c lsrs r4, r1, #20 +10003dc4: 1e66 subs r6, r4, #1 +10003dc6: 0536 lsls r6, r6, #20 +10003dc8: 1b89 subs r1, r1, r6 +10003dca: 0ae6 lsrs r6, r4, #11 +10003dcc: 0564 lsls r4, r4, #21 +10003dce: 0d64 lsrs r4, r4, #21 +10003dd0: d002 beq.n 10003dd8 +10003dd2: 1c65 adds r5, r4, #1 +10003dd4: 0aed lsrs r5, r5, #11 +10003dd6: d004 beq.n 10003de2 + +10003dd8 : +10003dd8: 2000 movs r0, #0 +10003dda: 2101 movs r1, #1 +10003ddc: 0509 lsls r1, r1, #20 +10003dde: 3c80 subs r4, #128 @ 0x80 +10003de0: 0324 lsls r4, r4, #12 + +10003de2 : +10003de2: 46a4 mov ip, r4 +10003de4: 0d1c lsrs r4, r3, #20 +10003de6: 1e67 subs r7, r4, #1 +10003de8: 053f lsls r7, r7, #20 +10003dea: 1bdb subs r3, r3, r7 +10003dec: 0ae7 lsrs r7, r4, #11 +10003dee: 0564 lsls r4, r4, #21 +10003df0: 0d64 lsrs r4, r4, #21 +10003df2: d002 beq.n 10003dfa +10003df4: 1c65 adds r5, r4, #1 +10003df6: 0aed lsrs r5, r5, #11 +10003df8: d004 beq.n 10003e04 + +10003dfa : +10003dfa: 2200 movs r2, #0 +10003dfc: 2301 movs r3, #1 +10003dfe: 051b lsls r3, r3, #20 +10003e00: 3c80 subs r4, #128 @ 0x80 +10003e02: 0324 lsls r4, r4, #12 + +10003e04 : +10003e04: 4077 eors r7, r6 +10003e06: 4464 add r4, ip +10003e08: b497 push {r0, r1, r2, r4, r7} +10003e0a: b284 uxth r4, r0 +10003e0c: b296 uxth r6, r2 +10003e0e: 4374 muls r4, r6 +10003e10: 0c07 lsrs r7, r0, #16 +10003e12: 437e muls r6, r7 +10003e14: 0c15 lsrs r5, r2, #16 +10003e16: 436f muls r7, r5 +10003e18: b280 uxth r0, r0 +10003e1a: 4368 muls r0, r5 +10003e1c: 1836 adds r6, r6, r0 +10003e1e: d302 bcc.n 10003e26 +10003e20: 2001 movs r0, #1 +10003e22: 0400 lsls r0, r0, #16 +10003e24: 183f adds r7, r7, r0 + +10003e26 : +10003e26: 0430 lsls r0, r6, #16 +10003e28: 0c35 lsrs r5, r6, #16 +10003e2a: 1900 adds r0, r0, r4 +10003e2c: 417d adcs r5, r7 +10003e2e: 4684 mov ip, r0 +10003e30: b288 uxth r0, r1 +10003e32: b29a uxth r2, r3 +10003e34: 4350 muls r0, r2 +10003e36: 0c0c lsrs r4, r1, #16 +10003e38: 4362 muls r2, r4 +10003e3a: 0c1f lsrs r7, r3, #16 +10003e3c: 437c muls r4, r7 +10003e3e: b28e uxth r6, r1 +10003e40: 437e muls r6, r7 +10003e42: 1992 adds r2, r2, r6 +10003e44: d302 bcc.n 10003e4c +10003e46: 2601 movs r6, #1 +10003e48: 0436 lsls r6, r6, #16 +10003e4a: 19a4 adds r4, r4, r6 + +10003e4c : +10003e4c: 0416 lsls r6, r2, #16 +10003e4e: 0c17 lsrs r7, r2, #16 +10003e50: 1836 adds r6, r6, r0 +10003e52: 4167 adcs r7, r4 +10003e54: bc01 pop {r0} +10003e56: b281 uxth r1, r0 +10003e58: b29a uxth r2, r3 +10003e5a: 4351 muls r1, r2 +10003e5c: 0c04 lsrs r4, r0, #16 +10003e5e: 4362 muls r2, r4 +10003e60: 0c1b lsrs r3, r3, #16 +10003e62: 435c muls r4, r3 +10003e64: b280 uxth r0, r0 +10003e66: 4358 muls r0, r3 +10003e68: 1812 adds r2, r2, r0 +10003e6a: d302 bcc.n 10003e72 +10003e6c: 2001 movs r0, #1 +10003e6e: 0400 lsls r0, r0, #16 +10003e70: 1824 adds r4, r4, r0 + +10003e72 : +10003e72: 0410 lsls r0, r2, #16 +10003e74: 0c13 lsrs r3, r2, #16 +10003e76: 1840 adds r0, r0, r1 +10003e78: 4163 adcs r3, r4 +10003e7a: 182d adds r5, r5, r0 +10003e7c: 415e adcs r6, r3 +10003e7e: 2000 movs r0, #0 +10003e80: 4147 adcs r7, r0 +10003e82: bc06 pop {r1, r2} +10003e84: b288 uxth r0, r1 +10003e86: b293 uxth r3, r2 +10003e88: 4358 muls r0, r3 +10003e8a: 0c0c lsrs r4, r1, #16 +10003e8c: 4363 muls r3, r4 +10003e8e: 0c12 lsrs r2, r2, #16 +10003e90: 4354 muls r4, r2 +10003e92: b289 uxth r1, r1 +10003e94: 4351 muls r1, r2 +10003e96: 185b adds r3, r3, r1 +10003e98: d302 bcc.n 10003ea0 +10003e9a: 2101 movs r1, #1 +10003e9c: 0409 lsls r1, r1, #16 +10003e9e: 1864 adds r4, r4, r1 + +10003ea0 : +10003ea0: 0419 lsls r1, r3, #16 +10003ea2: 0c1a lsrs r2, r3, #16 +10003ea4: 1809 adds r1, r1, r0 +10003ea6: 4162 adcs r2, r4 +10003ea8: 186d adds r5, r5, r1 +10003eaa: 4156 adcs r6, r2 +10003eac: 2000 movs r0, #0 +10003eae: 4147 adcs r7, r0 +10003eb0: bc18 pop {r3, r4} +10003eb2: 02f9 lsls r1, r7, #11 +10003eb4: 0d72 lsrs r2, r6, #21 +10003eb6: 4311 orrs r1, r2 +10003eb8: 02f0 lsls r0, r6, #11 +10003eba: 0d6a lsrs r2, r5, #21 +10003ebc: 4310 orrs r0, r2 +10003ebe: 02ed lsls r5, r5, #11 +10003ec0: 0d0a lsrs r2, r1, #20 +10003ec2: d103 bne.n 10003ecc +10003ec4: 196d adds r5, r5, r5 +10003ec6: 4140 adcs r0, r0 +10003ec8: 4149 adcs r1, r1 +10003eca: 3b01 subs r3, #1 +10003ecc: 4e12 ldr r6, [pc, #72] @ (10003f18 ) +10003ece: 1b9b subs r3, r3, r6 +10003ed0: 0076 lsls r6, r6, #1 +10003ed2: 42b3 cmp r3, r6 +10003ed4: d20e bcs.n 10003ef4 +10003ed6: 006d lsls r5, r5, #1 +10003ed8: d307 bcc.n 10003eea +10003eda: 3001 adds r0, #1 +10003edc: 2600 movs r6, #0 +10003ede: 4171 adcs r1, r6 +10003ee0: 4666 mov r6, ip +10003ee2: 4335 orrs r5, r6 +10003ee4: d101 bne.n 10003eea +10003ee6: 0840 lsrs r0, r0, #1 +10003ee8: 0040 lsls r0, r0, #1 +10003eea: 051b lsls r3, r3, #20 +10003eec: 18c9 adds r1, r1, r3 + +10003eee : +10003eee: 07e4 lsls r4, r4, #31 +10003ef0: 4421 add r1, r4 +10003ef2: bdf0 pop {r4, r5, r6, r7, pc} + +10003ef4 : +10003ef4: da0b bge.n 10003f0e +10003ef6: 3301 adds r3, #1 +10003ef8: d106 bne.n 10003f08 +10003efa: 3001 adds r0, #1 +10003efc: d104 bne.n 10003f08 +10003efe: 3101 adds r1, #1 +10003f00: 0d4f lsrs r7, r1, #21 +10003f02: d001 beq.n 10003f08 +10003f04: 0849 lsrs r1, r1, #1 +10003f06: e7f2 b.n 10003eee +10003f08: 07e1 lsls r1, r4, #31 +10003f0a: 2000 movs r0, #0 +10003f0c: bdf0 pop {r4, r5, r6, r7, pc} + +10003f0e : +10003f0e: 3601 adds r6, #1 +10003f10: 0531 lsls r1, r6, #20 +10003f12: 2000 movs r0, #0 +10003f14: e7eb b.n 10003eee +10003f16: 0000 .short 0x0000 +10003f18: 000003ff .word 0x000003ff + +10003f1c : +10003f1c: b5f0 push {r4, r5, r6, r7, lr} + +10003f1e : +10003f1e: 0d1c lsrs r4, r3, #20 +10003f20: 1e67 subs r7, r4, #1 +10003f22: 053f lsls r7, r7, #20 +10003f24: 1bdb subs r3, r3, r7 +10003f26: 0ae7 lsrs r7, r4, #11 +10003f28: 0564 lsls r4, r4, #21 +10003f2a: 0d64 lsrs r4, r4, #21 +10003f2c: d002 beq.n 10003f34 +10003f2e: 1c66 adds r6, r4, #1 +10003f30: 0af6 lsrs r6, r6, #11 +10003f32: d004 beq.n 10003f3e + +10003f34 : +10003f34: 2200 movs r2, #0 +10003f36: 2301 movs r3, #1 +10003f38: 051b lsls r3, r3, #20 +10003f3a: 3c80 subs r4, #128 @ 0x80 +10003f3c: 0324 lsls r4, r4, #12 + +10003f3e : +10003f3e: 25d0 movs r5, #208 @ 0xd0 +10003f40: 062d lsls r5, r5, #24 +10003f42: 2600 movs r6, #0 +10003f44: 43f6 mvns r6, r6 +10003f46: 662e str r6, [r5, #96] @ 0x60 +10003f48: 091e lsrs r6, r3, #4 +10003f4a: 666e str r6, [r5, #100] @ 0x64 +10003f4c: 0fce lsrs r6, r1, #31 +10003f4e: 19f6 adds r6, r6, r7 +10003f50: 46b4 mov ip, r6 +10003f52: 0049 lsls r1, r1, #1 +10003f54: 0d4f lsrs r7, r1, #21 +10003f56: d002 beq.n 10003f5e +10003f58: 1c7e adds r6, r7, #1 +10003f5a: 0af6 lsrs r6, r6, #11 +10003f5c: d003 beq.n 10003f66 +10003f5e: 2000 movs r0, #0 +10003f60: 2100 movs r1, #0 +10003f62: 3f40 subs r7, #64 @ 0x40 +10003f64: 033f lsls r7, r7, #12 +10003f66: 1b3e subs r6, r7, r4 +10003f68: 00b6 lsls r6, r6, #2 +10003f6a: 44b4 add ip, r6 +10003f6c: 3f01 subs r7, #1 +10003f6e: 057f lsls r7, r7, #21 +10003f70: 1bc9 subs r1, r1, r7 +10003f72: 0849 lsrs r1, r1, #1 +10003f74: 6f2e ldr r6, [r5, #112] @ 0x70 +10003f76: 3601 adds r6, #1 +10003f78: 0876 lsrs r6, r6, #1 +10003f7a: 029c lsls r4, r3, #10 +10003f7c: 0d95 lsrs r5, r2, #22 +10003f7e: 4325 orrs r5, r4 +10003f80: 4375 muls r5, r6 +10003f82: 13ed asrs r5, r5, #15 +10003f84: 4375 muls r5, r6 +10003f86: 13ad asrs r5, r5, #14 +10003f88: 3501 adds r5, #1 +10003f8a: 106d asrs r5, r5, #1 +10003f8c: 03f6 lsls r6, r6, #15 +10003f8e: 1b76 subs r6, r6, r5 +10003f90: b40c push {r2, r3} +10003f92: 02cc lsls r4, r1, #11 +10003f94: 0d45 lsrs r5, r0, #21 +10003f96: 432c orrs r4, r5 +10003f98: b2a2 uxth r2, r4 +10003f9a: b2b3 uxth r3, r6 +10003f9c: 435a muls r2, r3 +10003f9e: 0c27 lsrs r7, r4, #16 +10003fa0: 437b muls r3, r7 +10003fa2: 0c35 lsrs r5, r6, #16 +10003fa4: 436f muls r7, r5 +10003fa6: b2a4 uxth r4, r4 +10003fa8: 436c muls r4, r5 +10003faa: 191b adds r3, r3, r4 +10003fac: d302 bcc.n 10003fb4 +10003fae: 2401 movs r4, #1 +10003fb0: 0424 lsls r4, r4, #16 +10003fb2: 193f adds r7, r7, r4 + +10003fb4 : +10003fb4: 041c lsls r4, r3, #16 +10003fb6: 0c1d lsrs r5, r3, #16 +10003fb8: 18a4 adds r4, r4, r2 +10003fba: 417d adcs r5, r7 +10003fbc: 1924 adds r4, r4, r4 +10003fbe: 416d adcs r5, r5 +10003fc0: 9a00 ldr r2, [sp, #0] +10003fc2: b291 uxth r1, r2 +10003fc4: b2ac uxth r4, r5 +10003fc6: 4361 muls r1, r4 +10003fc8: 0c17 lsrs r7, r2, #16 +10003fca: 437c muls r4, r7 +10003fcc: 0c2b lsrs r3, r5, #16 +10003fce: 435f muls r7, r3 +10003fd0: b292 uxth r2, r2 +10003fd2: 435a muls r2, r3 +10003fd4: 18a4 adds r4, r4, r2 +10003fd6: d302 bcc.n 10003fde +10003fd8: 2201 movs r2, #1 +10003fda: 0412 lsls r2, r2, #16 +10003fdc: 18bf adds r7, r7, r2 + +10003fde : +10003fde: 0422 lsls r2, r4, #16 +10003fe0: 0c23 lsrs r3, r4, #16 +10003fe2: 1852 adds r2, r2, r1 +10003fe4: 417b adcs r3, r7 +10003fe6: 9c01 ldr r4, [sp, #4] +10003fe8: 436c muls r4, r5 +10003fea: 191b adds r3, r3, r4 +10003fec: 0e52 lsrs r2, r2, #25 +10003fee: 01d9 lsls r1, r3, #7 +10003ff0: 430a orrs r2, r1 +10003ff2: 0144 lsls r4, r0, #5 +10003ff4: 1aa0 subs r0, r4, r2 +10003ff6: b281 uxth r1, r0 +10003ff8: b2b2 uxth r2, r6 +10003ffa: 4351 muls r1, r2 +10003ffc: 1403 asrs r3, r0, #16 +10003ffe: 435a muls r2, r3 +10004000: 0c36 lsrs r6, r6, #16 +10004002: 4373 muls r3, r6 +10004004: b287 uxth r7, r0 +10004006: 4377 muls r7, r6 +10004008: 17d6 asrs r6, r2, #31 +1000400a: 19d2 adds r2, r2, r7 +1000400c: 2700 movs r7, #0 +1000400e: 417e adcs r6, r7 +10004010: 0436 lsls r6, r6, #16 +10004012: 199b adds r3, r3, r6 +10004014: 0417 lsls r7, r2, #16 +10004016: 0c16 lsrs r6, r2, #16 +10004018: 187f adds r7, r7, r1 +1000401a: 415e adcs r6, r3 +1000401c: 1673 asrs r3, r6, #25 +1000401e: 18ed adds r5, r5, r3 +10004020: 01f3 lsls r3, r6, #7 +10004022: 2600 movs r6, #0 +10004024: 3380 adds r3, #128 @ 0x80 +10004026: 4175 adcs r5, r6 +10004028: 0fa9 lsrs r1, r5, #30 +1000402a: d106 bne.n 1000403a +1000402c: 0064 lsls r4, r4, #1 +1000402e: 0a69 lsrs r1, r5, #9 +10004030: 05e8 lsls r0, r5, #23 +10004032: 0a5b lsrs r3, r3, #9 +10004034: 4318 orrs r0, r3 +10004036: d209 bcs.n 1000404c +10004038: e02f b.n 1000409a + +1000403a : +1000403a: 2204 movs r2, #4 +1000403c: 4494 add ip, r2 +1000403e: 3380 adds r3, #128 @ 0x80 +10004040: 4175 adcs r5, r6 +10004042: 0aa9 lsrs r1, r5, #10 +10004044: 05a8 lsls r0, r5, #22 +10004046: 0a9b lsrs r3, r3, #10 +10004048: 4318 orrs r0, r3 +1000404a: d326 bcc.n 1000409a + +1000404c : +1000404c: 4140 adcs r0, r0 +1000404e: 4149 adcs r1, r1 +10004050: 0424 lsls r4, r4, #16 +10004052: 9a00 ldr r2, [sp, #0] +10004054: 9b01 ldr r3, [sp, #4] +10004056: 000d movs r5, r1 +10004058: 4355 muls r5, r2 +1000405a: 1b64 subs r4, r4, r5 +1000405c: 4343 muls r3, r0 +1000405e: 1ae4 subs r4, r4, r3 +10004060: b295 uxth r5, r2 +10004062: b286 uxth r6, r0 +10004064: 4375 muls r5, r6 +10004066: 0c17 lsrs r7, r2, #16 +10004068: 437e muls r6, r7 +1000406a: 0c03 lsrs r3, r0, #16 +1000406c: 435f muls r7, r3 +1000406e: b292 uxth r2, r2 +10004070: 435a muls r2, r3 +10004072: 18b6 adds r6, r6, r2 +10004074: d302 bcc.n 1000407c +10004076: 2201 movs r2, #1 +10004078: 0412 lsls r2, r2, #16 +1000407a: 18bf adds r7, r7, r2 + +1000407c : +1000407c: 0432 lsls r2, r6, #16 +1000407e: 0c33 lsrs r3, r6, #16 +10004080: 1952 adds r2, r2, r5 +10004082: 417b adcs r3, r7 +10004084: 4252 negs r2, r2 +10004086: 419c sbcs r4, r3 +10004088: 2c00 cmp r4, #0 +1000408a: d402 bmi.n 10004092 +1000408c: 2200 movs r2, #0 +1000408e: 3001 adds r0, #1 +10004090: 4151 adcs r1, r2 +10004092: 0840 lsrs r0, r0, #1 +10004094: 07ca lsls r2, r1, #31 +10004096: 4310 orrs r0, r2 +10004098: 0849 lsrs r1, r1, #1 + +1000409a : +1000409a: b002 add sp, #8 +1000409c: 4662 mov r2, ip +1000409e: 07d7 lsls r7, r2, #31 +100040a0: 1092 asrs r2, r2, #2 +100040a2: 4b08 ldr r3, [pc, #32] @ (100040c4 ) +100040a4: 18d2 adds r2, r2, r3 +100040a6: 4b08 ldr r3, [pc, #32] @ (100040c8 ) +100040a8: 429a cmp r2, r3 +100040aa: d203 bcs.n 100040b4 +100040ac: 0512 lsls r2, r2, #20 +100040ae: 1889 adds r1, r1, r2 + +100040b0 : +100040b0: 19c9 adds r1, r1, r7 +100040b2: bdf0 pop {r4, r5, r6, r7, pc} + +100040b4 : +100040b4: 2000 movs r0, #0 +100040b6: 2a00 cmp r2, #0 +100040b8: dc01 bgt.n 100040be +100040ba: 0039 movs r1, r7 +100040bc: bdf0 pop {r4, r5, r6, r7, pc} + +100040be : +100040be: 3301 adds r3, #1 +100040c0: 0519 lsls r1, r3, #20 +100040c2: e7f5 b.n 100040b0 +100040c4: 000003fd .word 0x000003fd +100040c8: 000007fe .word 0x000007fe + +100040cc : +100040cc: 2200 movs r2, #0 + +100040ce : +100040ce: b500 push {lr} +100040d0: 3220 adds r2, #32 +100040d2: f000 f804 bl 100040de +100040d6: 0008 movs r0, r1 +100040d8: bd00 pop {pc} ... -10003c08 <__aeabi_float_init>: -10003c08: b570 push {r4, r5, r6, lr} -10003c0a: 2313 movs r3, #19 -10003c0c: 781e ldrb r6, [r3, #0] -10003c0e: 482a ldr r0, [pc, #168] @ (10003cb8 <__aeabi_float_init+0xb0>) -10003c10: f7ff f956 bl 10002ec0 -10003c14: 0005 movs r5, r0 -10003c16: 2e01 cmp r6, #1 -10003c18: d011 beq.n 10003c3e <__aeabi_float_init+0x36> -10003c1a: 2e01 cmp r6, #1 -10003c1c: dd09 ble.n 10003c32 <__aeabi_float_init+0x2a> -10003c1e: 1eab subs r3, r5, #2 -10003c20: 781b ldrb r3, [r3, #0] -10003c22: 009b lsls r3, r3, #2 -10003c24: 2b7f cmp r3, #127 @ 0x7f -10003c26: dd40 ble.n 10003caa <__aeabi_float_init+0xa2> -10003c28: 4824 ldr r0, [pc, #144] @ (10003cbc <__aeabi_float_init+0xb4>) -10003c2a: 2280 movs r2, #128 @ 0x80 -10003c2c: 0029 movs r1, r5 -10003c2e: f000 f88b bl 10003d48 <__wrap___aeabi_memcpy> -10003c32: 4823 ldr r0, [pc, #140] @ (10003cc0 <__aeabi_float_init+0xb8>) -10003c34: f7ff f93c bl 10002eb0 -10003c38: 4b22 ldr r3, [pc, #136] @ (10003cc4 <__aeabi_float_init+0xbc>) -10003c3a: 6018 str r0, [r3, #0] -10003c3c: bd70 pop {r4, r5, r6, pc} -10003c3e: 481f ldr r0, [pc, #124] @ (10003cbc <__aeabi_float_init+0xb4>) -10003c40: 2254 movs r2, #84 @ 0x54 -10003c42: 0029 movs r1, r5 -10003c44: f000 f880 bl 10003d48 <__wrap___aeabi_memcpy> -10003c48: 4b1f ldr r3, [pc, #124] @ (10003cc8 <__aeabi_float_init+0xc0>) -10003c4a: 881a ldrh r2, [r3, #0] -10003c4c: 4b1f ldr r3, [pc, #124] @ (10003ccc <__aeabi_float_init+0xc4>) -10003c4e: 429a cmp r2, r3 -10003c50: d11c bne.n 10003c8c <__aeabi_float_init+0x84> -10003c52: 23a7 movs r3, #167 @ 0xa7 -10003c54: 019b lsls r3, r3, #6 -10003c56: 881a ldrh r2, [r3, #0] -10003c58: 4b1d ldr r3, [pc, #116] @ (10003cd0 <__aeabi_float_init+0xc8>) -10003c5a: 429a cmp r2, r3 -10003c5c: d116 bne.n 10003c8c <__aeabi_float_init+0x84> -10003c5e: 4b1d ldr r3, [pc, #116] @ (10003cd4 <__aeabi_float_init+0xcc>) -10003c60: 881a ldrh r2, [r3, #0] -10003c62: 4b1d ldr r3, [pc, #116] @ (10003cd8 <__aeabi_float_init+0xd0>) -10003c64: 429a cmp r2, r3 -10003c66: d111 bne.n 10003c8c <__aeabi_float_init+0x84> -10003c68: 4b1c ldr r3, [pc, #112] @ (10003cdc <__aeabi_float_init+0xd4>) -10003c6a: 881a ldrh r2, [r3, #0] -10003c6c: 2394 movs r3, #148 @ 0x94 -10003c6e: 019b lsls r3, r3, #6 -10003c70: 429a cmp r2, r3 -10003c72: d10b bne.n 10003c8c <__aeabi_float_init+0x84> -10003c74: 4b1a ldr r3, [pc, #104] @ (10003ce0 <__aeabi_float_init+0xd8>) -10003c76: 881a ldrh r2, [r3, #0] -10003c78: 4b1a ldr r3, [pc, #104] @ (10003ce4 <__aeabi_float_init+0xdc>) -10003c7a: 429a cmp r2, r3 -10003c7c: d106 bne.n 10003c8c <__aeabi_float_init+0x84> -10003c7e: 4b1a ldr r3, [pc, #104] @ (10003ce8 <__aeabi_float_init+0xe0>) -10003c80: 681a ldr r2, [r3, #0] -10003c82: 4b1a ldr r3, [pc, #104] @ (10003cec <__aeabi_float_init+0xe4>) -10003c84: 429a cmp r2, r3 -10003c86: d101 bne.n 10003c8c <__aeabi_float_init+0x84> -10003c88: 2315 movs r3, #21 -10003c8a: e007 b.n 10003c9c <__aeabi_float_init+0x94> -10003c8c: 4818 ldr r0, [pc, #96] @ (10003cf0 <__aeabi_float_init+0xe8>) -10003c8e: f7fe f813 bl 10001cb8 -10003c92: 4c18 ldr r4, [pc, #96] @ (10003cf4 <__aeabi_float_init+0xec>) -10003c94: 4a09 ldr r2, [pc, #36] @ (10003cbc <__aeabi_float_init+0xb4>) -10003c96: 0099 lsls r1, r3, #2 -10003c98: 508c str r4, [r1, r2] -10003c9a: 3301 adds r3, #1 -10003c9c: 2b1f cmp r3, #31 -10003c9e: d9f8 bls.n 10003c92 <__aeabi_float_init+0x8a> -10003ca0: 4b14 ldr r3, [pc, #80] @ (10003cf4 <__aeabi_float_init+0xec>) -10003ca2: 4a06 ldr r2, [pc, #24] @ (10003cbc <__aeabi_float_init+0xb4>) -10003ca4: 6213 str r3, [r2, #32] -10003ca6: 61d3 str r3, [r2, #28] -10003ca8: e7b7 b.n 10003c1a <__aeabi_float_init+0x12> -10003caa: 4b13 ldr r3, [pc, #76] @ (10003cf8 <__aeabi_float_init+0xf0>) -10003cac: 4a13 ldr r2, [pc, #76] @ (10003cfc <__aeabi_float_init+0xf4>) -10003cae: 4814 ldr r0, [pc, #80] @ (10003d00 <__aeabi_float_init+0xf8>) -10003cb0: 2142 movs r1, #66 @ 0x42 -10003cb2: f7fd ff69 bl 10001b88 <__assert_func> -10003cb6: 46c0 nop @ (mov r8, r8) -10003cb8: 00004653 .word 0x00004653 -10003cbc: 200005a0 .word 0x200005a0 -10003cc0: 0000334c .word 0x0000334c -10003cc4: 2000059c .word 0x2000059c -10003cc8: 000029ee .word 0x000029ee -10003ccc: 00000fc4 .word 0x00000fc4 -10003cd0: 00000dc2 .word 0x00000dc2 -10003cd4: 00002b96 .word 0x00002b96 -10003cd8: 0000b5c0 .word 0x0000b5c0 -10003cdc: 00002b18 .word 0x00002b18 -10003ce0: 00002acc .word 0x00002acc -10003ce4: 0000b510 .word 0x0000b510 -10003ce8: 00002cfc .word 0x00002cfc -10003cec: 6487ed51 .word 0x6487ed51 -10003cf0: 10004aa0 .word 0x10004aa0 -10003cf4: 10003d05 .word 0x10003d05 -10003cf8: 10004e30 .word 0x10004e30 -10003cfc: 10004eb4 .word 0x10004eb4 -10003d00: 10004e64 .word 0x10004e64 +100040dc : +100040dc: 2200 movs r2, #0 -10003d04 : -10003d04: b507 push {r0, r1, r2, lr} -10003d06: 4660 mov r0, ip -10003d08: 2800 cmp r0, #0 -10003d0a: d100 bne.n 10003d0e -10003d0c: be00 bkpt 0x0000 -10003d0e: 8801 ldrh r1, [r0, #0] -10003d10: 0a0a lsrs r2, r1, #8 -10003d12: 3002 adds r0, #2 -10003d14: 2adf cmp r2, #223 @ 0xdf -10003d16: d1fa bne.n 10003d0e -10003d18: b2c9 uxtb r1, r1 -10003d1a: 0882 lsrs r2, r0, #2 -10003d1c: d304 bcc.n 10003d28 -10003d1e: 8802 ldrh r2, [r0, #0] -10003d20: 8840 ldrh r0, [r0, #2] -10003d22: 0400 lsls r0, r0, #16 -10003d24: 4310 orrs r0, r2 -10003d26: e000 b.n 10003d2a -10003d28: 6800 ldr r0, [r0, #0] -10003d2a: 4a02 ldr r2, [pc, #8] @ (10003d34 ) -10003d2c: 5050 str r0, [r2, r1] -10003d2e: 9003 str r0, [sp, #12] -10003d30: bd07 pop {r0, r1, r2, pc} -10003d32: 0000 .short 0x0000 -10003d34: 200005a0 .word 0x200005a0 +100040de : +100040de: 150b asrs r3, r1, #20 +100040e0: d40a bmi.n 100040f8 -10003d38 <__aeabi_mem_init>: -10003d38: 4801 ldr r0, [pc, #4] @ (10003d40 <__aeabi_mem_init+0x8>) -10003d3a: 2104 movs r1, #4 -10003d3c: 4b01 ldr r3, [pc, #4] @ (10003d44 <__aeabi_mem_init+0xc>) -10003d3e: 4718 bx r3 -10003d40: 200002c0 .word 0x200002c0 -10003d44: 10002ed1 .word 0x10002ed1 +100040e2 : +100040e2: b510 push {r4, lr} +100040e4: 4694 mov ip, r2 +100040e6: f000 f831 bl 1000414c +100040ea: 1414 asrs r4, r2, #16 +100040ec: 3401 adds r4, #1 +100040ee: da00 bge.n 100040f2 +100040f0: 2100 movs r1, #0 +100040f2: 17cb asrs r3, r1, #31 +100040f4: 4c14 ldr r4, [pc, #80] @ (10004148 ) +100040f6: 4720 bx r4 -10003d48 <__wrap___aeabi_memcpy>: -10003d48: 4b01 ldr r3, [pc, #4] @ (10003d50 <__wrap___aeabi_memcpy+0x8>) -10003d4a: 685b ldr r3, [r3, #4] -10003d4c: 4718 bx r3 -10003d4e: 0000 .short 0x0000 -10003d50: 200002c0 .word 0x200002c0 +100040f8 : +100040f8: 2000 movs r0, #0 +100040fa: 2100 movs r1, #0 +100040fc: 4770 bx lr -10003d54 : -10003d54: b510 push {r4, lr} -10003d56: 0003 movs r3, r0 -10003d58: 0008 movs r0, r1 -10003d5a: 0011 movs r1, r2 -10003d5c: 681b ldr r3, [r3, #0] -10003d5e: 4798 blx r3 -10003d60: bd10 pop {r4, pc} +100040fe : +100040fe: 4462 add r2, ip +10004100: 3a34 subs r2, #52 @ 0x34 +10004102: d40c bmi.n 1000411e +10004104: 2a0c cmp r2, #12 +10004106: da07 bge.n 10004118 +10004108: 0004 movs r4, r0 +1000410a: 4091 lsls r1, r2 +1000410c: 4090 lsls r0, r2 +1000410e: 4252 negs r2, r2 +10004110: 3220 adds r2, #32 +10004112: 40d4 lsrs r4, r2 +10004114: 4321 orrs r1, r4 +10004116: bd10 pop {r4, pc} +10004118: 43d8 mvns r0, r3 +1000411a: 43d9 mvns r1, r3 +1000411c: bd10 pop {r4, pc} +1000411e: 3220 adds r2, #32 +10004120: d407 bmi.n 10004132 +10004122: 460c mov r4, r1 +10004124: 4094 lsls r4, r2 +10004126: 4252 negs r2, r2 +10004128: 3220 adds r2, #32 +1000412a: 4111 asrs r1, r2 +1000412c: 40d0 lsrs r0, r2 +1000412e: 4320 orrs r0, r4 +10004130: bd10 pop {r4, pc} +10004132: 0008 movs r0, r1 +10004134: 17c9 asrs r1, r1, #31 +10004136: 3220 adds r2, #32 +10004138: d403 bmi.n 10004142 +1000413a: 4252 negs r2, r2 +1000413c: 3220 adds r2, #32 +1000413e: 4110 asrs r0, r2 +10004140: bd10 pop {r4, pc} +10004142: 0018 movs r0, r3 +10004144: 0019 movs r1, r3 +10004146: bd10 pop {r4, pc} +10004148: 100040ff .word 0x100040ff + +1000414c : +1000414c: 0d0a lsrs r2, r1, #20 +1000414e: 0fcc lsrs r4, r1, #31 +10004150: 1e53 subs r3, r2, #1 +10004152: 051b lsls r3, r3, #20 +10004154: 1ac9 subs r1, r1, r3 +10004156: 0552 lsls r2, r2, #21 +10004158: d303 bcc.n 10004162 +1000415a: 43c9 mvns r1, r1 +1000415c: 4240 negs r0, r0 +1000415e: d300 bcc.n 10004162 +10004160: 3101 adds r1, #1 + +10004162 : +10004162: 0d52 lsrs r2, r2, #21 +10004164: d003 beq.n 1000416e +10004166: 1c53 adds r3, r2, #1 +10004168: 0adb lsrs r3, r3, #11 +1000416a: d007 beq.n 1000417c +1000416c: 1b12 subs r2, r2, r4 + +1000416e : +1000416e: 2000 movs r0, #0 +10004170: 0064 lsls r4, r4, #1 +10004172: 1c61 adds r1, r4, #1 +10004174: 0789 lsls r1, r1, #30 +10004176: 1289 asrs r1, r1, #10 +10004178: 3a80 subs r2, #128 @ 0x80 +1000417a: 0312 lsls r2, r2, #12 + +1000417c : +1000417c: 4b01 ldr r3, [pc, #4] @ (10004184 ) +1000417e: 1ad2 subs r2, r2, r3 +10004180: 4770 bx lr +10004182: 0000 .short 0x0000 +10004184: 000003ff .word 0x000003ff + +10004188 <__wrap___aeabi_lmul>: +10004188: 4351 muls r1, r2 +1000418a: 4343 muls r3, r0 +1000418c: 18c9 adds r1, r1, r3 +1000418e: 468c mov ip, r1 +10004190: 0c11 lsrs r1, r2, #16 +10004192: b283 uxth r3, r0 +10004194: 434b muls r3, r1 +10004196: b410 push {r4} +10004198: 0c04 lsrs r4, r0, #16 +1000419a: 4361 muls r1, r4 +1000419c: b292 uxth r2, r2 +1000419e: b280 uxth r0, r0 +100041a0: 4350 muls r0, r2 +100041a2: 4362 muls r2, r4 +100041a4: 041c lsls r4, r3, #16 +100041a6: 0c1b lsrs r3, r3, #16 +100041a8: 1900 adds r0, r0, r4 +100041aa: bc10 pop {r4} +100041ac: 4159 adcs r1, r3 +100041ae: 0413 lsls r3, r2, #16 +100041b0: 0c12 lsrs r2, r2, #16 +100041b2: 18c0 adds r0, r0, r3 +100041b4: 4151 adcs r1, r2 +100041b6: 4461 add r1, ip +100041b8: 4770 bx lr ... -10003d64 : -10003d64: b5f8 push {r3, r4, r5, r6, r7, lr} -10003d66: 0007 movs r7, r0 -10003d68: 000d movs r5, r1 -10003d6a: 0016 movs r6, r2 -10003d6c: 7d43 ldrb r3, [r0, #21] -10003d6e: 2b00 cmp r3, #0 -10003d70: d002 beq.n 10003d78 -10003d72: 2400 movs r4, #0 -10003d74: 2000 movs r0, #0 -10003d76: e00c b.n 10003d92 -10003d78: 6803 ldr r3, [r0, #0] -10003d7a: 0011 movs r1, r2 -10003d7c: 0028 movs r0, r5 -10003d7e: 4798 blx r3 -10003d80: e02d b.n 10003dde -10003d82: 7d3b ldrb r3, [r7, #20] -10003d84: e010 b.n 10003da8 -10003d86: 683b ldr r3, [r7, #0] -10003d88: 4815 ldr r0, [pc, #84] @ (10003de0 ) -10003d8a: 2102 movs r1, #2 -10003d8c: 4798 blx r3 -10003d8e: 1c60 adds r0, r4, #1 -10003d90: 3401 adds r4, #1 -10003d92: 42b4 cmp r4, r6 -10003d94: da14 bge.n 10003dc0 -10003d96: 2c00 cmp r4, #0 -10003d98: ddf3 ble.n 10003d82 -10003d9a: 192b adds r3, r5, r4 -10003d9c: 3b01 subs r3, #1 -10003d9e: 781b ldrb r3, [r3, #0] -10003da0: 3b0d subs r3, #13 -10003da2: 425a negs r2, r3 -10003da4: 4153 adcs r3, r2 -10003da6: b2db uxtb r3, r3 -10003da8: 5d2a ldrb r2, [r5, r4] -10003daa: 2a0a cmp r2, #10 -10003dac: d1f0 bne.n 10003d90 -10003dae: 2b00 cmp r3, #0 -10003db0: d1ee bne.n 10003d90 -10003db2: 42a0 cmp r0, r4 -10003db4: dae7 bge.n 10003d86 -10003db6: 683b ldr r3, [r7, #0] -10003db8: 1a21 subs r1, r4, r0 -10003dba: 1828 adds r0, r5, r0 -10003dbc: 4798 blx r3 -10003dbe: e7e2 b.n 10003d86 -10003dc0: 42b0 cmp r0, r6 -10003dc2: da03 bge.n 10003dcc -10003dc4: 683b ldr r3, [r7, #0] -10003dc6: 1a31 subs r1, r6, r0 -10003dc8: 1828 adds r0, r5, r0 -10003dca: 4798 blx r3 -10003dcc: 2e00 cmp r6, #0 -10003dce: dd06 ble.n 10003dde -10003dd0: 19ad adds r5, r5, r6 -10003dd2: 3d01 subs r5, #1 -10003dd4: 782b ldrb r3, [r5, #0] -10003dd6: 3b0d subs r3, #13 -10003dd8: 425a negs r2, r3 -10003dda: 4153 adcs r3, r2 -10003ddc: 753b strb r3, [r7, #20] -10003dde: bdf8 pop {r3, r4, r5, r6, r7, pc} -10003de0: 10004f28 .word 0x10004f28 +100041bc <__aeabi_float_init>: +100041bc: b570 push {r4, r5, r6, lr} +100041be: 2313 movs r3, #19 +100041c0: 781e ldrb r6, [r3, #0] +100041c2: 482a ldr r0, [pc, #168] @ (1000426c <__aeabi_float_init+0xb0>) +100041c4: f7ff f956 bl 10003474 +100041c8: 0005 movs r5, r0 +100041ca: 2e01 cmp r6, #1 +100041cc: d011 beq.n 100041f2 <__aeabi_float_init+0x36> +100041ce: 2e01 cmp r6, #1 +100041d0: dd09 ble.n 100041e6 <__aeabi_float_init+0x2a> +100041d2: 1eab subs r3, r5, #2 +100041d4: 781b ldrb r3, [r3, #0] +100041d6: 009b lsls r3, r3, #2 +100041d8: 2b7f cmp r3, #127 @ 0x7f +100041da: dd40 ble.n 1000425e <__aeabi_float_init+0xa2> +100041dc: 4824 ldr r0, [pc, #144] @ (10004270 <__aeabi_float_init+0xb4>) +100041de: 2280 movs r2, #128 @ 0x80 +100041e0: 0029 movs r1, r5 +100041e2: f000 f88b bl 100042fc <__wrap___aeabi_memcpy> +100041e6: 4823 ldr r0, [pc, #140] @ (10004274 <__aeabi_float_init+0xb8>) +100041e8: f7ff f93c bl 10003464 +100041ec: 4b22 ldr r3, [pc, #136] @ (10004278 <__aeabi_float_init+0xbc>) +100041ee: 6018 str r0, [r3, #0] +100041f0: bd70 pop {r4, r5, r6, pc} +100041f2: 481f ldr r0, [pc, #124] @ (10004270 <__aeabi_float_init+0xb4>) +100041f4: 2254 movs r2, #84 @ 0x54 +100041f6: 0029 movs r1, r5 +100041f8: f000 f880 bl 100042fc <__wrap___aeabi_memcpy> +100041fc: 4b1f ldr r3, [pc, #124] @ (1000427c <__aeabi_float_init+0xc0>) +100041fe: 881a ldrh r2, [r3, #0] +10004200: 4b1f ldr r3, [pc, #124] @ (10004280 <__aeabi_float_init+0xc4>) +10004202: 429a cmp r2, r3 +10004204: d11c bne.n 10004240 <__aeabi_float_init+0x84> +10004206: 23a7 movs r3, #167 @ 0xa7 +10004208: 019b lsls r3, r3, #6 +1000420a: 881a ldrh r2, [r3, #0] +1000420c: 4b1d ldr r3, [pc, #116] @ (10004284 <__aeabi_float_init+0xc8>) +1000420e: 429a cmp r2, r3 +10004210: d116 bne.n 10004240 <__aeabi_float_init+0x84> +10004212: 4b1d ldr r3, [pc, #116] @ (10004288 <__aeabi_float_init+0xcc>) +10004214: 881a ldrh r2, [r3, #0] +10004216: 4b1d ldr r3, [pc, #116] @ (1000428c <__aeabi_float_init+0xd0>) +10004218: 429a cmp r2, r3 +1000421a: d111 bne.n 10004240 <__aeabi_float_init+0x84> +1000421c: 4b1c ldr r3, [pc, #112] @ (10004290 <__aeabi_float_init+0xd4>) +1000421e: 881a ldrh r2, [r3, #0] +10004220: 2394 movs r3, #148 @ 0x94 +10004222: 019b lsls r3, r3, #6 +10004224: 429a cmp r2, r3 +10004226: d10b bne.n 10004240 <__aeabi_float_init+0x84> +10004228: 4b1a ldr r3, [pc, #104] @ (10004294 <__aeabi_float_init+0xd8>) +1000422a: 881a ldrh r2, [r3, #0] +1000422c: 4b1a ldr r3, [pc, #104] @ (10004298 <__aeabi_float_init+0xdc>) +1000422e: 429a cmp r2, r3 +10004230: d106 bne.n 10004240 <__aeabi_float_init+0x84> +10004232: 4b1a ldr r3, [pc, #104] @ (1000429c <__aeabi_float_init+0xe0>) +10004234: 681a ldr r2, [r3, #0] +10004236: 4b1a ldr r3, [pc, #104] @ (100042a0 <__aeabi_float_init+0xe4>) +10004238: 429a cmp r2, r3 +1000423a: d101 bne.n 10004240 <__aeabi_float_init+0x84> +1000423c: 2315 movs r3, #21 +1000423e: e007 b.n 10004250 <__aeabi_float_init+0x94> +10004240: 4818 ldr r0, [pc, #96] @ (100042a4 <__aeabi_float_init+0xe8>) +10004242: f7fe f813 bl 1000226c +10004246: 4c18 ldr r4, [pc, #96] @ (100042a8 <__aeabi_float_init+0xec>) +10004248: 4a09 ldr r2, [pc, #36] @ (10004270 <__aeabi_float_init+0xb4>) +1000424a: 0099 lsls r1, r3, #2 +1000424c: 508c str r4, [r1, r2] +1000424e: 3301 adds r3, #1 +10004250: 2b1f cmp r3, #31 +10004252: d9f8 bls.n 10004246 <__aeabi_float_init+0x8a> +10004254: 4b14 ldr r3, [pc, #80] @ (100042a8 <__aeabi_float_init+0xec>) +10004256: 4a06 ldr r2, [pc, #24] @ (10004270 <__aeabi_float_init+0xb4>) +10004258: 6213 str r3, [r2, #32] +1000425a: 61d3 str r3, [r2, #28] +1000425c: e7b7 b.n 100041ce <__aeabi_float_init+0x12> +1000425e: 4b13 ldr r3, [pc, #76] @ (100042ac <__aeabi_float_init+0xf0>) +10004260: 4a13 ldr r2, [pc, #76] @ (100042b0 <__aeabi_float_init+0xf4>) +10004262: 4814 ldr r0, [pc, #80] @ (100042b4 <__aeabi_float_init+0xf8>) +10004264: 2142 movs r1, #66 @ 0x42 +10004266: f7fd ff69 bl 1000213c <__assert_func> +1000426a: 46c0 nop @ (mov r8, r8) +1000426c: 00004653 .word 0x00004653 +10004270: 20000640 .word 0x20000640 +10004274: 0000334c .word 0x0000334c +10004278: 2000063c .word 0x2000063c +1000427c: 000029ee .word 0x000029ee +10004280: 00000fc4 .word 0x00000fc4 +10004284: 00000dc2 .word 0x00000dc2 +10004288: 00002b96 .word 0x00002b96 +1000428c: 0000b5c0 .word 0x0000b5c0 +10004290: 00002b18 .word 0x00002b18 +10004294: 00002acc .word 0x00002acc +10004298: 0000b510 .word 0x0000b510 +1000429c: 00002cfc .word 0x00002cfc +100042a0: 6487ed51 .word 0x6487ed51 +100042a4: 1000543c .word 0x1000543c +100042a8: 100042b9 .word 0x100042b9 +100042ac: 100057d0 .word 0x100057d0 +100042b0: 10005854 .word 0x10005854 +100042b4: 10005804 .word 0x10005804 -10003de4 : -10003de4: b570 push {r4, r5, r6, lr} -10003de6: 0005 movs r5, r0 -10003de8: 6803 ldr r3, [r0, #0] -10003dea: 2b00 cmp r3, #0 -10003dec: d016 beq.n 10003e1c -10003dee: 4b0c ldr r3, [pc, #48] @ (10003e20 ) -10003df0: 681c ldr r4, [r3, #0] -10003df2: e005 b.n 10003e00 -10003df4: 0029 movs r1, r5 -10003df6: c904 ldmia r1!, {r2} -10003df8: 0020 movs r0, r4 -10003dfa: f7ff ffb3 bl 10003d64 -10003dfe: 6924 ldr r4, [r4, #16] -10003e00: 2c00 cmp r4, #0 -10003e02: d009 beq.n 10003e18 -10003e04: 6823 ldr r3, [r4, #0] -10003e06: 2b00 cmp r3, #0 -10003e08: d0f9 beq.n 10003dfe -10003e0a: 4b06 ldr r3, [pc, #24] @ (10003e24 ) -10003e0c: 681b ldr r3, [r3, #0] -10003e0e: 2b00 cmp r3, #0 -10003e10: d0f0 beq.n 10003df4 -10003e12: 42a3 cmp r3, r4 -10003e14: d1f3 bne.n 10003dfe -10003e16: e7ed b.n 10003df4 -10003e18: 2300 movs r3, #0 -10003e1a: 602b str r3, [r5, #0] -10003e1c: bd70 pop {r4, r5, r6, pc} -10003e1e: 46c0 nop @ (mov r8, r8) -10003e20: 20000484 .word 0x20000484 -10003e24: 20000488 .word 0x20000488 +100042b8 : +100042b8: b507 push {r0, r1, r2, lr} +100042ba: 4660 mov r0, ip +100042bc: 2800 cmp r0, #0 +100042be: d100 bne.n 100042c2 +100042c0: be00 bkpt 0x0000 +100042c2: 8801 ldrh r1, [r0, #0] +100042c4: 0a0a lsrs r2, r1, #8 +100042c6: 3002 adds r0, #2 +100042c8: 2adf cmp r2, #223 @ 0xdf +100042ca: d1fa bne.n 100042c2 +100042cc: b2c9 uxtb r1, r1 +100042ce: 0882 lsrs r2, r0, #2 +100042d0: d304 bcc.n 100042dc +100042d2: 8802 ldrh r2, [r0, #0] +100042d4: 8840 ldrh r0, [r0, #2] +100042d6: 0400 lsls r0, r0, #16 +100042d8: 4310 orrs r0, r2 +100042da: e000 b.n 100042de +100042dc: 6800 ldr r0, [r0, #0] +100042de: 4a02 ldr r2, [pc, #8] @ (100042e8 ) +100042e0: 5050 str r0, [r2, r1] +100042e2: 9003 str r0, [sp, #12] +100042e4: bd07 pop {r0, r1, r2, pc} +100042e6: 0000 .short 0x0000 +100042e8: 20000640 .word 0x20000640 -10003e28 : -10003e28: b570 push {r4, r5, r6, lr} -10003e2a: 0005 movs r5, r0 -10003e2c: 000c movs r4, r1 -10003e2e: 680b ldr r3, [r1, #0] -10003e30: 2b80 cmp r3, #128 @ 0x80 -10003e32: d005 beq.n 10003e40 -10003e34: 6823 ldr r3, [r4, #0] -10003e36: 1c5a adds r2, r3, #1 -10003e38: 6022 str r2, [r4, #0] -10003e3a: 18e4 adds r4, r4, r3 -10003e3c: 7125 strb r5, [r4, #4] -10003e3e: bd70 pop {r4, r5, r6, pc} -10003e40: 0008 movs r0, r1 -10003e42: f7ff ffcf bl 10003de4 -10003e46: e7f5 b.n 10003e34 +100042ec <__aeabi_mem_init>: +100042ec: 4801 ldr r0, [pc, #4] @ (100042f4 <__aeabi_mem_init+0x8>) +100042ee: 2104 movs r1, #4 +100042f0: 4b01 ldr r3, [pc, #4] @ (100042f8 <__aeabi_mem_init+0xc>) +100042f2: 4718 bx r3 +100042f4: 20000340 .word 0x20000340 +100042f8: 10003485 .word 0x10003485 -10003e48 : -10003e48: b510 push {r4, lr} -10003e4a: 2b00 cmp r3, #0 -10003e4c: db02 blt.n 10003e54 -10003e4e: 6002 str r2, [r0, #0] -10003e50: 6043 str r3, [r0, #4] -10003e52: bd10 pop {r4, pc} -10003e54: 4b02 ldr r3, [pc, #8] @ (10003e60 ) -10003e56: 4a03 ldr r2, [pc, #12] @ (10003e64 ) -10003e58: 4803 ldr r0, [pc, #12] @ (10003e68 ) -10003e5a: 213f movs r1, #63 @ 0x3f -10003e5c: f7fd fe94 bl 10001b88 <__assert_func> -10003e60: 100043ec .word 0x100043ec -10003e64: 10004f2c .word 0x10004f2c -10003e68: 10004408 .word 0x10004408 +100042fc <__wrap___aeabi_memcpy>: +100042fc: 4b01 ldr r3, [pc, #4] @ (10004304 <__wrap___aeabi_memcpy+0x8>) +100042fe: 685b ldr r3, [r3, #4] +10004300: 4718 bx r3 +10004302: 0000 .short 0x0000 +10004304: 20000340 .word 0x20000340 -10003e6c : -10003e6c: b510 push {r4, lr} -10003e6e: b082 sub sp, #8 -10003e70: 0004 movs r4, r0 -10003e72: f7fd fa5d bl 10001330 -10003e76: 0002 movs r2, r0 -10003e78: 000b movs r3, r1 -10003e7a: 4668 mov r0, sp -10003e7c: f7ff ffe4 bl 10003e48 -10003e80: 9a00 ldr r2, [sp, #0] -10003e82: 9b01 ldr r3, [sp, #4] -10003e84: 6022 str r2, [r4, #0] -10003e86: 6063 str r3, [r4, #4] -10003e88: 0020 movs r0, r4 -10003e8a: b002 add sp, #8 -10003e8c: bd10 pop {r4, pc} +10004308 : +10004308: b510 push {r4, lr} +1000430a: 0003 movs r3, r0 +1000430c: 0008 movs r0, r1 +1000430e: 0011 movs r1, r2 +10004310: 681b ldr r3, [r3, #0] +10004312: 4798 blx r3 +10004314: bd10 pop {r4, pc} ... -10003e90 : -10003e90: b570 push {r4, r5, r6, lr} -10003e92: b082 sub sp, #8 -10003e94: 0006 movs r6, r0 -10003e96: 0014 movs r4, r2 -10003e98: 001d movs r5, r3 -10003e9a: 22fa movs r2, #250 @ 0xfa -10003e9c: 0092 lsls r2, r2, #2 -10003e9e: 2300 movs r3, #0 -10003ea0: 9806 ldr r0, [sp, #24] -10003ea2: 2100 movs r1, #0 -10003ea4: f7ff fe96 bl 10003bd4 <__wrap___aeabi_lmul> -10003ea8: 0002 movs r2, r0 -10003eaa: 000b movs r3, r1 -10003eac: 1912 adds r2, r2, r4 -10003eae: 416b adcs r3, r5 -10003eb0: 2b00 cmp r3, #0 -10003eb2: db09 blt.n 10003ec8 -10003eb4: 4668 mov r0, sp -10003eb6: f7ff ffc7 bl 10003e48 -10003eba: 9a00 ldr r2, [sp, #0] -10003ebc: 9b01 ldr r3, [sp, #4] -10003ebe: 6032 str r2, [r6, #0] -10003ec0: 6073 str r3, [r6, #4] -10003ec2: 0030 movs r0, r6 -10003ec4: b002 add sp, #8 -10003ec6: bd70 pop {r4, r5, r6, pc} -10003ec8: 2201 movs r2, #1 -10003eca: 4252 negs r2, r2 -10003ecc: 4b00 ldr r3, [pc, #0] @ (10003ed0 ) -10003ece: e7f1 b.n 10003eb4 -10003ed0: 7fffffff .word 0x7fffffff +10004318 : +10004318: b5f8 push {r3, r4, r5, r6, r7, lr} +1000431a: 0007 movs r7, r0 +1000431c: 000d movs r5, r1 +1000431e: 0016 movs r6, r2 +10004320: 7d43 ldrb r3, [r0, #21] +10004322: 2b00 cmp r3, #0 +10004324: d002 beq.n 1000432c +10004326: 2400 movs r4, #0 +10004328: 2000 movs r0, #0 +1000432a: e00c b.n 10004346 +1000432c: 6803 ldr r3, [r0, #0] +1000432e: 0011 movs r1, r2 +10004330: 0028 movs r0, r5 +10004332: 4798 blx r3 +10004334: e02d b.n 10004392 +10004336: 7d3b ldrb r3, [r7, #20] +10004338: e010 b.n 1000435c +1000433a: 683b ldr r3, [r7, #0] +1000433c: 4815 ldr r0, [pc, #84] @ (10004394 ) +1000433e: 2102 movs r1, #2 +10004340: 4798 blx r3 +10004342: 1c60 adds r0, r4, #1 +10004344: 3401 adds r4, #1 +10004346: 42b4 cmp r4, r6 +10004348: da14 bge.n 10004374 +1000434a: 2c00 cmp r4, #0 +1000434c: ddf3 ble.n 10004336 +1000434e: 192b adds r3, r5, r4 +10004350: 3b01 subs r3, #1 +10004352: 781b ldrb r3, [r3, #0] +10004354: 3b0d subs r3, #13 +10004356: 425a negs r2, r3 +10004358: 4153 adcs r3, r2 +1000435a: b2db uxtb r3, r3 +1000435c: 5d2a ldrb r2, [r5, r4] +1000435e: 2a0a cmp r2, #10 +10004360: d1f0 bne.n 10004344 +10004362: 2b00 cmp r3, #0 +10004364: d1ee bne.n 10004344 +10004366: 42a0 cmp r0, r4 +10004368: dae7 bge.n 1000433a +1000436a: 683b ldr r3, [r7, #0] +1000436c: 1a21 subs r1, r4, r0 +1000436e: 1828 adds r0, r5, r0 +10004370: 4798 blx r3 +10004372: e7e2 b.n 1000433a +10004374: 42b0 cmp r0, r6 +10004376: da03 bge.n 10004380 +10004378: 683b ldr r3, [r7, #0] +1000437a: 1a31 subs r1, r6, r0 +1000437c: 1828 adds r0, r5, r0 +1000437e: 4798 blx r3 +10004380: 2e00 cmp r6, #0 +10004382: dd06 ble.n 10004392 +10004384: 19ad adds r5, r5, r6 +10004386: 3d01 subs r5, #1 +10004388: 782b ldrb r3, [r5, #0] +1000438a: 3b0d subs r3, #13 +1000438c: 425a negs r2, r3 +1000438e: 4153 adcs r3, r2 +10004390: 753b strb r3, [r7, #20] +10004392: bdf8 pop {r3, r4, r5, r6, r7, pc} +10004394: 100058c8 .word 0x100058c8 -10003ed4 : -10003ed4: b530 push {r4, r5, lr} -10003ed6: b085 sub sp, #20 -10003ed8: 0004 movs r4, r0 -10003eda: 000d movs r5, r1 -10003edc: a802 add r0, sp, #8 -10003ede: f7ff ffc5 bl 10003e6c -10003ee2: 9a02 ldr r2, [sp, #8] -10003ee4: 9b03 ldr r3, [sp, #12] -10003ee6: 9500 str r5, [sp, #0] -10003ee8: 0020 movs r0, r4 -10003eea: f7ff ffd1 bl 10003e90 -10003eee: 0020 movs r0, r4 -10003ef0: b005 add sp, #20 -10003ef2: bd30 pop {r4, r5, pc} +10004398 : +10004398: b570 push {r4, r5, r6, lr} +1000439a: 0005 movs r5, r0 +1000439c: 6803 ldr r3, [r0, #0] +1000439e: 2b00 cmp r3, #0 +100043a0: d016 beq.n 100043d0 +100043a2: 4b0c ldr r3, [pc, #48] @ (100043d4 ) +100043a4: 681c ldr r4, [r3, #0] +100043a6: e005 b.n 100043b4 +100043a8: 0029 movs r1, r5 +100043aa: c904 ldmia r1!, {r2} +100043ac: 0020 movs r0, r4 +100043ae: f7ff ffb3 bl 10004318 +100043b2: 6924 ldr r4, [r4, #16] +100043b4: 2c00 cmp r4, #0 +100043b6: d009 beq.n 100043cc +100043b8: 6823 ldr r3, [r4, #0] +100043ba: 2b00 cmp r3, #0 +100043bc: d0f9 beq.n 100043b2 +100043be: 4b06 ldr r3, [pc, #24] @ (100043d8 ) +100043c0: 681b ldr r3, [r3, #0] +100043c2: 2b00 cmp r3, #0 +100043c4: d0f0 beq.n 100043a8 +100043c6: 42a3 cmp r3, r4 +100043c8: d1f3 bne.n 100043b2 +100043ca: e7ed b.n 100043a8 +100043cc: 2300 movs r3, #0 +100043ce: 602b str r3, [r5, #0] +100043d0: bd70 pop {r4, r5, r6, pc} +100043d2: 46c0 nop @ (mov r8, r8) +100043d4: 20000524 .word 0x20000524 +100043d8: 20000528 .word 0x20000528 -10003ef4 : -10003ef4: b500 push {lr} -10003ef6: b083 sub sp, #12 -10003ef8: 21fa movs r1, #250 @ 0xfa -10003efa: 0089 lsls r1, r1, #2 -10003efc: 4668 mov r0, sp -10003efe: f7ff ffe9 bl 10003ed4 -10003f02: 9a00 ldr r2, [sp, #0] -10003f04: 9b01 ldr r3, [sp, #4] -10003f06: 4802 ldr r0, [pc, #8] @ (10003f10 ) -10003f08: f000 f8ee bl 100040e8 <__mutex_try_enter_block_until_veneer> -10003f0c: b003 add sp, #12 -10003f0e: bd00 pop {pc} -10003f10: 200002d0 .word 0x200002d0 +100043dc : +100043dc: b570 push {r4, r5, r6, lr} +100043de: 0005 movs r5, r0 +100043e0: 000c movs r4, r1 +100043e2: 680b ldr r3, [r1, #0] +100043e4: 2b80 cmp r3, #128 @ 0x80 +100043e6: d005 beq.n 100043f4 +100043e8: 6823 ldr r3, [r4, #0] +100043ea: 1c5a adds r2, r3, #1 +100043ec: 6022 str r2, [r4, #0] +100043ee: 18e4 adds r4, r4, r3 +100043f0: 7125 strb r5, [r4, #4] +100043f2: bd70 pop {r4, r5, r6, pc} +100043f4: 0008 movs r0, r1 +100043f6: f7ff ffcf bl 10004398 +100043fa: e7f5 b.n 100043e8 -10003f14 : -10003f14: b510 push {r4, lr} -10003f16: 4802 ldr r0, [pc, #8] @ (10003f20 ) -10003f18: f000 f8ce bl 100040b8 <__mutex_exit_veneer> -10003f1c: bd10 pop {r4, pc} -10003f1e: 46c0 nop @ (mov r8, r8) -10003f20: 200002d0 .word 0x200002d0 +100043fc : +100043fc: b510 push {r4, lr} +100043fe: 2b00 cmp r3, #0 +10004400: db02 blt.n 10004408 +10004402: 6002 str r2, [r0, #0] +10004404: 6043 str r3, [r0, #4] +10004406: bd10 pop {r4, pc} +10004408: 4b02 ldr r3, [pc, #8] @ (10004414 ) +1000440a: 4a03 ldr r2, [pc, #12] @ (10004418 ) +1000440c: 4803 ldr r0, [pc, #12] @ (1000441c ) +1000440e: 213f movs r1, #63 @ 0x3f +10004410: f7fd fe94 bl 1000213c <__assert_func> +10004414: 10004a20 .word 0x10004a20 +10004418: 100058cc .word 0x100058cc +1000441c: 10004a3c .word 0x10004a3c -10003f24 : -10003f24: b5f0 push {r4, r5, r6, r7, lr} -10003f26: 46ce mov lr, r9 -10003f28: 4647 mov r7, r8 -10003f2a: b580 push {r7, lr} -10003f2c: b083 sub sp, #12 -10003f2e: 0006 movs r6, r0 -10003f30: 000d movs r5, r1 -10003f32: 4690 mov r8, r2 -10003f34: 001c movs r4, r3 -10003f36: f7ff ffdd bl 10003ef4 -10003f3a: 4681 mov r9, r0 -10003f3c: 1c6b adds r3, r5, #1 -10003f3e: d005 beq.n 10003f4c -10003f40: 2c00 cmp r4, #0 -10003f42: d008 beq.n 10003f56 -10003f44: 4f19 ldr r7, [pc, #100] @ (10003fac ) -10003f46: 4b1a ldr r3, [pc, #104] @ (10003fb0 ) -10003f48: 681c ldr r4, [r3, #0] -10003f4a: e007 b.n 10003f5c -10003f4c: 0030 movs r0, r6 -10003f4e: f000 f881 bl 10004054 -10003f52: 0005 movs r5, r0 -10003f54: e7f4 b.n 10003f40 -10003f56: 4f17 ldr r7, [pc, #92] @ (10003fb4 ) -10003f58: e7f5 b.n 10003f46 -10003f5a: 6924 ldr r4, [r4, #16] -10003f5c: 2c00 cmp r4, #0 -10003f5e: d017 beq.n 10003f90 -10003f60: 6823 ldr r3, [r4, #0] -10003f62: 2b00 cmp r3, #0 -10003f64: d0f9 beq.n 10003f5a -10003f66: 4b14 ldr r3, [pc, #80] @ (10003fb8 ) -10003f68: 681b ldr r3, [r3, #0] -10003f6a: 2b00 cmp r3, #0 -10003f6c: d001 beq.n 10003f72 -10003f6e: 42a3 cmp r3, r4 -10003f70: d1f3 bne.n 10003f5a -10003f72: 002a movs r2, r5 -10003f74: 0031 movs r1, r6 -10003f76: 0020 movs r0, r4 -10003f78: 47b8 blx r7 -10003f7a: 4643 mov r3, r8 -10003f7c: 2b00 cmp r3, #0 -10003f7e: d0ec beq.n 10003f5a -10003f80: 466b mov r3, sp -10003f82: 1dd9 adds r1, r3, #7 -10003f84: 230a movs r3, #10 -10003f86: 700b strb r3, [r1, #0] -10003f88: 2201 movs r2, #1 -10003f8a: 0020 movs r0, r4 -10003f8c: 47b8 blx r7 -10003f8e: e7e4 b.n 10003f5a -10003f90: 464b mov r3, r9 -10003f92: 2b00 cmp r3, #0 -10003f94: d107 bne.n 10003fa6 -10003f96: 1e6b subs r3, r5, #1 -10003f98: 419d sbcs r5, r3 -10003f9a: b2e8 uxtb r0, r5 -10003f9c: b003 add sp, #12 -10003f9e: bcc0 pop {r6, r7} -10003fa0: 46b9 mov r9, r7 -10003fa2: 46b0 mov r8, r6 -10003fa4: bdf0 pop {r4, r5, r6, r7, pc} -10003fa6: f7ff ffb5 bl 10003f14 -10003faa: e7f4 b.n 10003f96 -10003fac: 10003d55 .word 0x10003d55 -10003fb0: 20000484 .word 0x20000484 -10003fb4: 10003d65 .word 0x10003d65 -10003fb8: 20000488 .word 0x20000488 - -10003fbc : -10003fbc: b510 push {r4, lr} -10003fbe: 4b06 ldr r3, [pc, #24] @ (10003fd8 ) -10003fc0: 681c ldr r4, [r3, #0] -10003fc2: e001 b.n 10003fc8 -10003fc4: 4798 blx r3 -10003fc6: 6924 ldr r4, [r4, #16] -10003fc8: 2c00 cmp r4, #0 -10003fca: d003 beq.n 10003fd4 -10003fcc: 6863 ldr r3, [r4, #4] -10003fce: 2b00 cmp r3, #0 -10003fd0: d1f8 bne.n 10003fc4 -10003fd2: e7f8 b.n 10003fc6 -10003fd4: bd10 pop {r4, pc} -10003fd6: 46c0 nop @ (mov r8, r8) -10003fd8: 20000484 .word 0x20000484 - -10003fdc <__wrap_puts>: -10003fdc: b570 push {r4, r5, r6, lr} -10003fde: 0005 movs r5, r0 -10003fe0: f000 f838 bl 10004054 -10003fe4: 0004 movs r4, r0 -10003fe6: 2300 movs r3, #0 -10003fe8: 2201 movs r2, #1 -10003fea: 0001 movs r1, r0 -10003fec: 0028 movs r0, r5 -10003fee: f7ff ff99 bl 10003f24 -10003ff2: f7ff ffe3 bl 10003fbc -10003ff6: 0020 movs r0, r4 -10003ff8: bd70 pop {r4, r5, r6, pc} +10004420 : +10004420: b510 push {r4, lr} +10004422: b082 sub sp, #8 +10004424: 0004 movs r4, r0 +10004426: f7fd f9d5 bl 100017d4 +1000442a: 0002 movs r2, r0 +1000442c: 000b movs r3, r1 +1000442e: 4668 mov r0, sp +10004430: f7ff ffe4 bl 100043fc +10004434: 9a00 ldr r2, [sp, #0] +10004436: 9b01 ldr r3, [sp, #4] +10004438: 6022 str r2, [r4, #0] +1000443a: 6063 str r3, [r4, #4] +1000443c: 0020 movs r0, r4 +1000443e: b002 add sp, #8 +10004440: bd10 pop {r4, pc} ... -10003ffc <__wrap_vprintf>: -10003ffc: b570 push {r4, r5, r6, lr} -10003ffe: b0a2 sub sp, #136 @ 0x88 -10004000: 0004 movs r4, r0 -10004002: 000e movs r6, r1 -10004004: f7ff ff76 bl 10003ef4 -10004008: 0005 movs r5, r0 -1000400a: 2300 movs r3, #0 -1000400c: 9301 str r3, [sp, #4] -1000400e: 480a ldr r0, [pc, #40] @ (10004038 <__wrap_vprintf+0x3c>) -10004010: 0033 movs r3, r6 -10004012: 0022 movs r2, r4 -10004014: a901 add r1, sp, #4 -10004016: f7fe ff33 bl 10002e80 -1000401a: 0004 movs r4, r0 -1000401c: a801 add r0, sp, #4 -1000401e: f7ff fee1 bl 10003de4 -10004022: f7ff ffcb bl 10003fbc -10004026: 2d00 cmp r5, #0 -10004028: d102 bne.n 10004030 <__wrap_vprintf+0x34> -1000402a: 0020 movs r0, r4 -1000402c: b022 add sp, #136 @ 0x88 -1000402e: bd70 pop {r4, r5, r6, pc} -10004030: f7ff ff70 bl 10003f14 -10004034: e7f9 b.n 1000402a <__wrap_vprintf+0x2e> -10004036: 46c0 nop @ (mov r8, r8) -10004038: 10003e29 .word 0x10003e29 +10004444 : +10004444: b570 push {r4, r5, r6, lr} +10004446: b082 sub sp, #8 +10004448: 0006 movs r6, r0 +1000444a: 0014 movs r4, r2 +1000444c: 001d movs r5, r3 +1000444e: 22fa movs r2, #250 @ 0xfa +10004450: 0092 lsls r2, r2, #2 +10004452: 2300 movs r3, #0 +10004454: 9806 ldr r0, [sp, #24] +10004456: 2100 movs r1, #0 +10004458: f7ff fe96 bl 10004188 <__wrap___aeabi_lmul> +1000445c: 0002 movs r2, r0 +1000445e: 000b movs r3, r1 +10004460: 1912 adds r2, r2, r4 +10004462: 416b adcs r3, r5 +10004464: 2b00 cmp r3, #0 +10004466: db09 blt.n 1000447c +10004468: 4668 mov r0, sp +1000446a: f7ff ffc7 bl 100043fc +1000446e: 9a00 ldr r2, [sp, #0] +10004470: 9b01 ldr r3, [sp, #4] +10004472: 6032 str r2, [r6, #0] +10004474: 6073 str r3, [r6, #4] +10004476: 0030 movs r0, r6 +10004478: b002 add sp, #8 +1000447a: bd70 pop {r4, r5, r6, pc} +1000447c: 2201 movs r2, #1 +1000447e: 4252 negs r2, r2 +10004480: 4b00 ldr r3, [pc, #0] @ (10004484 ) +10004482: e7f1 b.n 10004468 +10004484: 7fffffff .word 0x7fffffff -1000403c <__wrap_printf>: -1000403c: b40f push {r0, r1, r2, r3} -1000403e: b500 push {lr} -10004040: b083 sub sp, #12 -10004042: a904 add r1, sp, #16 -10004044: c901 ldmia r1!, {r0} -10004046: 9101 str r1, [sp, #4] -10004048: f7ff ffd8 bl 10003ffc <__wrap_vprintf> -1000404c: b003 add sp, #12 -1000404e: bc08 pop {r3} -10004050: b004 add sp, #16 -10004052: 4718 bx r3 +10004488 : +10004488: b530 push {r4, r5, lr} +1000448a: b085 sub sp, #20 +1000448c: 0004 movs r4, r0 +1000448e: 000d movs r5, r1 +10004490: a802 add r0, sp, #8 +10004492: f7ff ffc5 bl 10004420 +10004496: 9a02 ldr r2, [sp, #8] +10004498: 9b03 ldr r3, [sp, #12] +1000449a: 9500 str r5, [sp, #0] +1000449c: 0020 movs r0, r4 +1000449e: f7ff ffd1 bl 10004444 +100044a2: 0020 movs r0, r4 +100044a4: b005 add sp, #20 +100044a6: bd30 pop {r4, r5, pc} -10004054 : -10004054: b510 push {r4, lr} -10004056: 0783 lsls r3, r0, #30 -10004058: d00a beq.n 10004070 -1000405a: 0003 movs r3, r0 -1000405c: 2103 movs r1, #3 -1000405e: e002 b.n 10004066 -10004060: 3301 adds r3, #1 -10004062: 420b tst r3, r1 -10004064: d005 beq.n 10004072 -10004066: 781a ldrb r2, [r3, #0] -10004068: 2a00 cmp r2, #0 -1000406a: d1f9 bne.n 10004060 -1000406c: 1a18 subs r0, r3, r0 -1000406e: bd10 pop {r4, pc} -10004070: 0003 movs r3, r0 -10004072: 6819 ldr r1, [r3, #0] -10004074: 4a0c ldr r2, [pc, #48] @ (100040a8 ) -10004076: 4c0d ldr r4, [pc, #52] @ (100040ac ) -10004078: 188a adds r2, r1, r2 -1000407a: 438a bics r2, r1 -1000407c: 4222 tst r2, r4 -1000407e: d10f bne.n 100040a0 -10004080: 6859 ldr r1, [r3, #4] -10004082: 4a09 ldr r2, [pc, #36] @ (100040a8 ) -10004084: 3304 adds r3, #4 -10004086: 188a adds r2, r1, r2 -10004088: 438a bics r2, r1 -1000408a: 4222 tst r2, r4 -1000408c: d108 bne.n 100040a0 -1000408e: 6859 ldr r1, [r3, #4] -10004090: 4a05 ldr r2, [pc, #20] @ (100040a8 ) -10004092: 3304 adds r3, #4 -10004094: 188a adds r2, r1, r2 -10004096: 438a bics r2, r1 -10004098: 4222 tst r2, r4 -1000409a: d0f1 beq.n 10004080 -1000409c: e000 b.n 100040a0 -1000409e: 3301 adds r3, #1 -100040a0: 781a ldrb r2, [r3, #0] -100040a2: 2a00 cmp r2, #0 -100040a4: d1fb bne.n 1000409e -100040a6: e7e1 b.n 1000406c -100040a8: fefefeff .word 0xfefefeff -100040ac: 80808080 .word 0x80808080 +100044a8 : +100044a8: b500 push {lr} +100044aa: b083 sub sp, #12 +100044ac: 21fa movs r1, #250 @ 0xfa +100044ae: 0089 lsls r1, r1, #2 +100044b0: 4668 mov r0, sp +100044b2: f7ff ffe9 bl 10004488 +100044b6: 9a00 ldr r2, [sp, #0] +100044b8: 9b01 ldr r3, [sp, #4] +100044ba: 4802 ldr r0, [pc, #8] @ (100044c4 ) +100044bc: f000 faa0 bl 10004a00 <__mutex_try_enter_block_until_veneer> +100044c0: b003 add sp, #12 +100044c2: bd00 pop {pc} +100044c4: 20000368 .word 0x20000368 -100040b0 <_fini>: -100040b0: b5f8 push {r3, r4, r5, r6, r7, lr} -100040b2: 46c0 nop @ (mov r8, r8) -100040b4: 0000 movs r0, r0 +100044c8 : +100044c8: b510 push {r4, lr} +100044ca: 4802 ldr r0, [pc, #8] @ (100044d4 ) +100044cc: f000 fa78 bl 100049c0 <__mutex_exit_veneer> +100044d0: bd10 pop {r4, pc} +100044d2: 46c0 nop @ (mov r8, r8) +100044d4: 20000368 .word 0x20000368 + +100044d8 : +100044d8: b5f0 push {r4, r5, r6, r7, lr} +100044da: 46ce mov lr, r9 +100044dc: 4647 mov r7, r8 +100044de: b580 push {r7, lr} +100044e0: b083 sub sp, #12 +100044e2: 0006 movs r6, r0 +100044e4: 000d movs r5, r1 +100044e6: 4690 mov r8, r2 +100044e8: 001c movs r4, r3 +100044ea: f7ff ffdd bl 100044a8 +100044ee: 4681 mov r9, r0 +100044f0: 1c6b adds r3, r5, #1 +100044f2: d005 beq.n 10004500 +100044f4: 2c00 cmp r4, #0 +100044f6: d008 beq.n 1000450a +100044f8: 4f19 ldr r7, [pc, #100] @ (10004560 ) +100044fa: 4b1a ldr r3, [pc, #104] @ (10004564 ) +100044fc: 681c ldr r4, [r3, #0] +100044fe: e007 b.n 10004510 +10004500: 0030 movs r0, r6 +10004502: f000 fa2b bl 1000495c +10004506: 0005 movs r5, r0 +10004508: e7f4 b.n 100044f4 +1000450a: 4f17 ldr r7, [pc, #92] @ (10004568 ) +1000450c: e7f5 b.n 100044fa +1000450e: 6924 ldr r4, [r4, #16] +10004510: 2c00 cmp r4, #0 +10004512: d017 beq.n 10004544 +10004514: 6823 ldr r3, [r4, #0] +10004516: 2b00 cmp r3, #0 +10004518: d0f9 beq.n 1000450e +1000451a: 4b14 ldr r3, [pc, #80] @ (1000456c ) +1000451c: 681b ldr r3, [r3, #0] +1000451e: 2b00 cmp r3, #0 +10004520: d001 beq.n 10004526 +10004522: 42a3 cmp r3, r4 +10004524: d1f3 bne.n 1000450e +10004526: 002a movs r2, r5 +10004528: 0031 movs r1, r6 +1000452a: 0020 movs r0, r4 +1000452c: 47b8 blx r7 +1000452e: 4643 mov r3, r8 +10004530: 2b00 cmp r3, #0 +10004532: d0ec beq.n 1000450e +10004534: 466b mov r3, sp +10004536: 1dd9 adds r1, r3, #7 +10004538: 230a movs r3, #10 +1000453a: 700b strb r3, [r1, #0] +1000453c: 2201 movs r2, #1 +1000453e: 0020 movs r0, r4 +10004540: 47b8 blx r7 +10004542: e7e4 b.n 1000450e +10004544: 464b mov r3, r9 +10004546: 2b00 cmp r3, #0 +10004548: d107 bne.n 1000455a +1000454a: 1e6b subs r3, r5, #1 +1000454c: 419d sbcs r5, r3 +1000454e: b2e8 uxtb r0, r5 +10004550: b003 add sp, #12 +10004552: bcc0 pop {r6, r7} +10004554: 46b9 mov r9, r7 +10004556: 46b0 mov r8, r6 +10004558: bdf0 pop {r4, r5, r6, r7, pc} +1000455a: f7ff ffb5 bl 100044c8 +1000455e: e7f4 b.n 1000454a +10004560: 10004309 .word 0x10004309 +10004564: 20000524 .word 0x20000524 +10004568: 10004319 .word 0x10004319 +1000456c: 20000528 .word 0x20000528 + +10004570 : +10004570: 4a09 ldr r2, [pc, #36] @ (10004598 ) +10004572: e001 b.n 10004578 +10004574: 3310 adds r3, #16 +10004576: 001a movs r2, r3 +10004578: 6813 ldr r3, [r2, #0] +1000457a: 2b00 cmp r3, #0 +1000457c: d008 beq.n 10004590 +1000457e: 4283 cmp r3, r0 +10004580: d1f8 bne.n 10004574 +10004582: 2900 cmp r1, #0 +10004584: d107 bne.n 10004596 +10004586: 6903 ldr r3, [r0, #16] +10004588: 6013 str r3, [r2, #0] +1000458a: 2300 movs r3, #0 +1000458c: 6103 str r3, [r0, #16] +1000458e: e002 b.n 10004596 +10004590: 2900 cmp r1, #0 +10004592: d000 beq.n 10004596 +10004594: 6010 str r0, [r2, #0] +10004596: 4770 bx lr +10004598: 20000524 .word 0x20000524 + +1000459c : +1000459c: b510 push {r4, lr} +1000459e: 4b06 ldr r3, [pc, #24] @ (100045b8 ) +100045a0: 681c ldr r4, [r3, #0] +100045a2: e001 b.n 100045a8 +100045a4: 4798 blx r3 +100045a6: 6924 ldr r4, [r4, #16] +100045a8: 2c00 cmp r4, #0 +100045aa: d003 beq.n 100045b4 +100045ac: 6863 ldr r3, [r4, #4] +100045ae: 2b00 cmp r3, #0 +100045b0: d1f8 bne.n 100045a4 +100045b2: e7f8 b.n 100045a6 +100045b4: bd10 pop {r4, pc} +100045b6: 46c0 nop @ (mov r8, r8) +100045b8: 20000524 .word 0x20000524 + +100045bc <__wrap_puts>: +100045bc: b570 push {r4, r5, r6, lr} +100045be: 0005 movs r5, r0 +100045c0: f000 f9cc bl 1000495c +100045c4: 0004 movs r4, r0 +100045c6: 2300 movs r3, #0 +100045c8: 2201 movs r2, #1 +100045ca: 0001 movs r1, r0 +100045cc: 0028 movs r0, r5 +100045ce: f7ff ff83 bl 100044d8 +100045d2: f7ff ffe3 bl 1000459c +100045d6: 0020 movs r0, r4 +100045d8: bd70 pop {r4, r5, r6, pc} ... -100040b8 <__mutex_exit_veneer>: -100040b8: b401 push {r0} -100040ba: 4802 ldr r0, [pc, #8] @ (100040c4 <__mutex_exit_veneer+0xc>) -100040bc: 4684 mov ip, r0 -100040be: bc01 pop {r0} -100040c0: 4760 bx ip -100040c2: bf00 nop -100040c4: 200001c9 .word 0x200001c9 +100045dc <__wrap_vprintf>: +100045dc: b570 push {r4, r5, r6, lr} +100045de: b0a2 sub sp, #136 @ 0x88 +100045e0: 0004 movs r4, r0 +100045e2: 000e movs r6, r1 +100045e4: f7ff ff60 bl 100044a8 +100045e8: 0005 movs r5, r0 +100045ea: 2300 movs r3, #0 +100045ec: 9301 str r3, [sp, #4] +100045ee: 480a ldr r0, [pc, #40] @ (10004618 <__wrap_vprintf+0x3c>) +100045f0: 0033 movs r3, r6 +100045f2: 0022 movs r2, r4 +100045f4: a901 add r1, sp, #4 +100045f6: f7fe ff1d bl 10003434 +100045fa: 0004 movs r4, r0 +100045fc: a801 add r0, sp, #4 +100045fe: f7ff fecb bl 10004398 +10004602: f7ff ffcb bl 1000459c +10004606: 2d00 cmp r5, #0 +10004608: d102 bne.n 10004610 <__wrap_vprintf+0x34> +1000460a: 0020 movs r0, r4 +1000460c: b022 add sp, #136 @ 0x88 +1000460e: bd70 pop {r4, r5, r6, pc} +10004610: f7ff ff5a bl 100044c8 +10004614: e7f9 b.n 1000460a <__wrap_vprintf+0x2e> +10004616: 46c0 nop @ (mov r8, r8) +10004618: 100043dd .word 0x100043dd -100040c8 <____aeabi_ldiv0_veneer>: -100040c8: b401 push {r0} -100040ca: 4802 ldr r0, [pc, #8] @ (100040d4 <____aeabi_ldiv0_veneer+0xc>) -100040cc: 4684 mov ip, r0 -100040ce: bc01 pop {r0} -100040d0: 4760 bx ip -100040d2: bf00 nop -100040d4: 20000215 .word 0x20000215 +1000461c <__wrap_printf>: +1000461c: b40f push {r0, r1, r2, r3} +1000461e: b500 push {lr} +10004620: b083 sub sp, #12 +10004622: a904 add r1, sp, #16 +10004624: c901 ldmia r1!, {r0} +10004626: 9101 str r1, [sp, #4] +10004628: f7ff ffd8 bl 100045dc <__wrap_vprintf> +1000462c: b003 add sp, #12 +1000462e: bc08 pop {r3} +10004630: b004 add sp, #16 +10004632: 4718 bx r3 -100040d8 <____aeabi_idiv0_veneer>: -100040d8: b401 push {r0} -100040da: 4802 ldr r0, [pc, #8] @ (100040e4 <____aeabi_idiv0_veneer+0xc>) -100040dc: 4684 mov ip, r0 -100040de: bc01 pop {r0} -100040e0: 4760 bx ip -100040e2: bf00 nop -100040e4: 20000215 .word 0x20000215 +10004634 : +10004634: b510 push {r4, lr} +10004636: f000 f8ff bl 10004838 +1000463a: 2001 movs r0, #1 +1000463c: bd10 pop {r4, pc} + ... -100040e8 <__mutex_try_enter_block_until_veneer>: -100040e8: b401 push {r0} -100040ea: 4802 ldr r0, [pc, #8] @ (100040f4 <__mutex_try_enter_block_until_veneer+0xc>) -100040ec: 4684 mov ip, r0 -100040ee: bc01 pop {r0} -100040f0: 4760 bx ip -100040f2: bf00 nop -100040f4: 20000195 .word 0x20000195 +10004640 : +10004640: b510 push {r4, lr} +10004642: b082 sub sp, #8 +10004644: 000c movs r4, r1 +10004646: 4b14 ldr r3, [pc, #80] @ (10004698 ) +10004648: 18c3 adds r3, r0, r3 +1000464a: 425a negs r2, r3 +1000464c: 4153 adcs r3, r2 +1000464e: 4a13 ldr r2, [pc, #76] @ (1000469c ) +10004650: 005b lsls r3, r3, #1 +10004652: 5e9b ldrsh r3, [r3, r2] +10004654: 428b cmp r3, r1 +10004656: d004 beq.n 10004662 +10004658: 466b mov r3, sp +1000465a: 1dda adds r2, r3, #7 +1000465c: 7014 strb r4, [r2, #0] +1000465e: 2100 movs r1, #0 +10004660: e015 b.n 1000468e +10004662: 466b mov r3, sp +10004664: 1dda adds r2, r3, #7 +10004666: 230d movs r3, #13 +10004668: 7013 strb r3, [r2, #0] +1000466a: 2100 movs r1, #0 +1000466c: 2900 cmp r1, #0 +1000466e: d1f3 bne.n 10004658 +10004670: 6983 ldr r3, [r0, #24] +10004672: 069b lsls r3, r3, #26 +10004674: d4fc bmi.n 10004670 +10004676: 7813 ldrb r3, [r2, #0] +10004678: 6003 str r3, [r0, #0] +1000467a: 3101 adds r1, #1 +1000467c: 3201 adds r2, #1 +1000467e: e7f5 b.n 1000466c +10004680: 6983 ldr r3, [r0, #24] +10004682: 069b lsls r3, r3, #26 +10004684: d4fc bmi.n 10004680 +10004686: 7813 ldrb r3, [r2, #0] +10004688: 6003 str r3, [r0, #0] +1000468a: 3101 adds r1, #1 +1000468c: 3201 adds r2, #1 +1000468e: 2900 cmp r1, #0 +10004690: d0f6 beq.n 10004680 +10004692: b002 add sp, #8 +10004694: bd10 pop {r4, pc} +10004696: 46c0 nop @ (mov r8, r8) +10004698: bffc8000 .word 0xbffc8000 +1000469c: 20000774 .word 0x20000774 + +100046a0 : +100046a0: b082 sub sp, #8 +100046a2: 2200 movs r2, #0 +100046a4: 466b mov r3, sp +100046a6: 1dd9 adds r1, r3, #7 +100046a8: e006 b.n 100046b8 +100046aa: 6983 ldr r3, [r0, #24] +100046ac: 06db lsls r3, r3, #27 +100046ae: d4fc bmi.n 100046aa +100046b0: 6803 ldr r3, [r0, #0] +100046b2: 700b strb r3, [r1, #0] +100046b4: 3201 adds r2, #1 +100046b6: 3101 adds r1, #1 +100046b8: 2a00 cmp r2, #0 +100046ba: d0f6 beq.n 100046aa +100046bc: 466b mov r3, sp +100046be: 79d8 ldrb r0, [r3, #7] +100046c0: b002 add sp, #8 +100046c2: 4770 bx lr + +100046c4 : +100046c4: b570 push {r4, r5, r6, lr} +100046c6: 0006 movs r6, r0 +100046c8: 000d movs r5, r1 +100046ca: 2400 movs r4, #0 +100046cc: e005 b.n 100046da +100046ce: 5d31 ldrb r1, [r6, r4] +100046d0: 4b03 ldr r3, [pc, #12] @ (100046e0 ) +100046d2: 6818 ldr r0, [r3, #0] +100046d4: f7ff ffb4 bl 10004640 +100046d8: 3401 adds r4, #1 +100046da: 42ac cmp r4, r5 +100046dc: dbf7 blt.n 100046ce +100046de: bd70 pop {r4, r5, r6, pc} +100046e0: 20000778 .word 0x20000778 + +100046e4 : +100046e4: b5f8 push {r3, r4, r5, r6, r7, lr} +100046e6: 0006 movs r6, r0 +100046e8: 000d movs r5, r1 +100046ea: 2700 movs r7, #0 +100046ec: e005 b.n 100046fa +100046ee: 1c7c adds r4, r7, #1 +100046f0: 19f7 adds r7, r6, r7 +100046f2: f7ff ffd5 bl 100046a0 +100046f6: 7038 strb r0, [r7, #0] +100046f8: 0027 movs r7, r4 +100046fa: 42af cmp r7, r5 +100046fc: da04 bge.n 10004708 +100046fe: 4a0e ldr r2, [pc, #56] @ (10004738 ) +10004700: 6810 ldr r0, [r2, #0] +10004702: 6982 ldr r2, [r0, #24] +10004704: 06d2 lsls r2, r2, #27 +10004706: d5f2 bpl.n 100046ee +10004708: 4a0c ldr r2, [pc, #48] @ (1000473c ) +1000470a: 6812 ldr r2, [r2, #0] +1000470c: 2a00 cmp r2, #0 +1000470e: d00c beq.n 1000472a +10004710: 4a09 ldr r2, [pc, #36] @ (10004738 ) +10004712: 6812 ldr r2, [r2, #0] +10004714: 2150 movs r1, #80 @ 0x50 +10004716: 6391 str r1, [r2, #56] @ 0x38 +10004718: 0010 movs r0, r2 +1000471a: 3034 adds r0, #52 @ 0x34 +1000471c: 6b52 ldr r2, [r2, #52] @ 0x34 +1000471e: 3918 subs r1, #24 +10004720: 4011 ands r1, r2 +10004722: 2280 movs r2, #128 @ 0x80 +10004724: 0152 lsls r2, r2, #5 +10004726: 4302 orrs r2, r0 +10004728: 6011 str r1, [r2, #0] +1000472a: 2f00 cmp r7, #0 +1000472c: d001 beq.n 10004732 +1000472e: 0038 movs r0, r7 +10004730: bdf8 pop {r3, r4, r5, r6, r7, pc} +10004732: 3f03 subs r7, #3 +10004734: e7fb b.n 1000472e +10004736: 46c0 nop @ (mov r8, r8) +10004738: 20000778 .word 0x20000778 +1000473c: 200004b4 .word 0x200004b4 + +10004740 : +10004740: b510 push {r4, lr} +10004742: 4b06 ldr r3, [pc, #24] @ (1000475c ) +10004744: 681b ldr r3, [r3, #0] +10004746: 2b00 cmp r3, #0 +10004748: d006 beq.n 10004758 +1000474a: 4a05 ldr r2, [pc, #20] @ (10004760 ) +1000474c: 6812 ldr r2, [r2, #0] +1000474e: 2100 movs r1, #0 +10004750: 6391 str r1, [r2, #56] @ 0x38 +10004752: 4a04 ldr r2, [pc, #16] @ (10004764 ) +10004754: 6810 ldr r0, [r2, #0] +10004756: 4798 blx r3 +10004758: bd10 pop {r4, pc} +1000475a: 46c0 nop @ (mov r8, r8) +1000475c: 200004b4 .word 0x200004b4 +10004760: 20000778 .word 0x20000778 +10004764: 200004b8 .word 0x200004b8 + +10004768 : +10004768: b570 push {r4, r5, r6, lr} +1000476a: 0005 movs r5, r0 +1000476c: 000e movs r6, r1 +1000476e: 4b1c ldr r3, [pc, #112] @ (100047e0 ) +10004770: 681a ldr r2, [r3, #0] +10004772: 4b1c ldr r3, [pc, #112] @ (100047e4 ) +10004774: 18d3 adds r3, r2, r3 +10004776: 4259 negs r1, r3 +10004778: 414b adcs r3, r1 +1000477a: 3314 adds r3, #20 +1000477c: 001c movs r4, r3 +1000477e: 2800 cmp r0, #0 +10004780: d01e beq.n 100047c0 +10004782: 4b19 ldr r3, [pc, #100] @ (100047e8 ) +10004784: 681b ldr r3, [r3, #0] +10004786: 2b00 cmp r3, #0 +10004788: d004 beq.n 10004794 +1000478a: 4b17 ldr r3, [pc, #92] @ (100047e8 ) +1000478c: 601d str r5, [r3, #0] +1000478e: 4b17 ldr r3, [pc, #92] @ (100047ec ) +10004790: 601e str r6, [r3, #0] +10004792: bd70 pop {r4, r5, r6, pc} +10004794: 4916 ldr r1, [pc, #88] @ (100047f0 ) +10004796: 0020 movs r0, r4 +10004798: f7fc f95e bl 10000a58 +1000479c: 2101 movs r1, #1 +1000479e: 0020 movs r0, r4 +100047a0: f7fc f94a bl 10000a38 +100047a4: 4b0e ldr r3, [pc, #56] @ (100047e0 ) +100047a6: 681b ldr r3, [r3, #0] +100047a8: 2250 movs r2, #80 @ 0x50 +100047aa: 639a str r2, [r3, #56] @ 0x38 +100047ac: 0019 movs r1, r3 +100047ae: 3134 adds r1, #52 @ 0x34 +100047b0: 6b5b ldr r3, [r3, #52] @ 0x34 +100047b2: 3a18 subs r2, #24 +100047b4: 401a ands r2, r3 +100047b6: 2380 movs r3, #128 @ 0x80 +100047b8: 015b lsls r3, r3, #5 +100047ba: 430b orrs r3, r1 +100047bc: 601a str r2, [r3, #0] +100047be: e7e4 b.n 1000478a +100047c0: 4b09 ldr r3, [pc, #36] @ (100047e8 ) +100047c2: 681b ldr r3, [r3, #0] +100047c4: 2b00 cmp r3, #0 +100047c6: d0e0 beq.n 1000478a +100047c8: 2300 movs r3, #0 +100047ca: 6393 str r3, [r2, #56] @ 0x38 +100047cc: 2100 movs r1, #0 +100047ce: 0020 movs r0, r4 +100047d0: f7fc f932 bl 10000a38 +100047d4: 4906 ldr r1, [pc, #24] @ (100047f0 ) +100047d6: 0020 movs r0, r4 +100047d8: f7fc f968 bl 10000aac +100047dc: e7d5 b.n 1000478a +100047de: 46c0 nop @ (mov r8, r8) +100047e0: 20000778 .word 0x20000778 +100047e4: bffc8000 .word 0xbffc8000 +100047e8: 200004b4 .word 0x200004b4 +100047ec: 200004b8 .word 0x200004b8 +100047f0: 10004741 .word 0x10004741 + +100047f4 : +100047f4: b570 push {r4, r5, r6, lr} +100047f6: 000d movs r5, r1 +100047f8: 001c movs r4, r3 +100047fa: 4b0d ldr r3, [pc, #52] @ (10004830 ) +100047fc: 6018 str r0, [r3, #0] +100047fe: 2a00 cmp r2, #0 +10004800: da0b bge.n 1000481a +10004802: 2c00 cmp r4, #0 +10004804: da0e bge.n 10004824 +10004806: 4b0a ldr r3, [pc, #40] @ (10004830 ) +10004808: 6818 ldr r0, [r3, #0] +1000480a: 0029 movs r1, r5 +1000480c: f7fd fa96 bl 10001d3c +10004810: 4808 ldr r0, [pc, #32] @ (10004834 ) +10004812: 2101 movs r1, #1 +10004814: f7ff feac bl 10004570 +10004818: bd70 pop {r4, r5, r6, pc} +1000481a: 2102 movs r1, #2 +1000481c: 0010 movs r0, r2 +1000481e: f7fc f803 bl 10000828 +10004822: e7ee b.n 10004802 +10004824: 2102 movs r1, #2 +10004826: 0020 movs r0, r4 +10004828: f7fb fffe bl 10000828 +1000482c: e7eb b.n 10004806 +1000482e: 46c0 nop @ (mov r8, r8) +10004830: 20000778 .word 0x20000778 +10004834: 20000350 .word 0x20000350 + +10004838 : +10004838: b510 push {r4, lr} +1000483a: 4b06 ldr r3, [pc, #24] @ (10004854 ) +1000483c: 781b ldrb r3, [r3, #0] +1000483e: 4b06 ldr r3, [pc, #24] @ (10004858 ) +10004840: 781b ldrb r3, [r3, #0] +10004842: 21e1 movs r1, #225 @ 0xe1 +10004844: 2301 movs r3, #1 +10004846: 2200 movs r2, #0 +10004848: 0249 lsls r1, r1, #9 +1000484a: 4804 ldr r0, [pc, #16] @ (1000485c ) +1000484c: f7ff ffd2 bl 100047f4 +10004850: bd10 pop {r4, pc} +10004852: 46c0 nop @ (mov r8, r8) +10004854: 10005944 .word 0x10005944 +10004858: 10005940 .word 0x10005940 +1000485c: 40034000 .word 0x40034000 + +10004860 : +10004860: b5f0 push {r4, r5, r6, r7, lr} +10004862: 46d6 mov lr, sl +10004864: 4647 mov r7, r8 +10004866: b580 push {r7, lr} +10004868: b083 sub sp, #12 +1000486a: 4682 mov sl, r0 +1000486c: 4688 mov r8, r1 +1000486e: 2006 movs r0, #6 +10004870: f7fd fba6 bl 10001fc0 +10004874: 0007 movs r7, r0 +10004876: 2402 movs r4, #2 +10004878: e000 b.n 1000487c +1000487a: 002c movs r4, r5 +1000487c: 2cfe cmp r4, #254 @ 0xfe +1000487e: d81c bhi.n 100048ba +10004880: 9701 str r7, [sp, #4] +10004882: 2600 movs r6, #0 +10004884: 1ca5 adds r5, r4, #2 +10004886: 0228 lsls r0, r5, #8 +10004888: 4642 mov r2, r8 +1000488a: 2300 movs r3, #0 +1000488c: 2100 movs r1, #0 +1000488e: f7ff fc7b bl 10004188 <__wrap___aeabi_lmul> +10004892: 2900 cmp r1, #0 +10004894: d103 bne.n 1000489e +10004896: 42b1 cmp r1, r6 +10004898: d1ef bne.n 1000487a +1000489a: 42b8 cmp r0, r7 +1000489c: d9ed bls.n 1000487a +1000489e: 2580 movs r5, #128 @ 0x80 +100048a0: 006d lsls r5, r5, #1 +100048a2: 2d01 cmp r5, #1 +100048a4: d90c bls.n 100048c0 +100048a6: 1e6e subs r6, r5, #1 +100048a8: 0021 movs r1, r4 +100048aa: 4371 muls r1, r6 +100048ac: 0038 movs r0, r7 +100048ae: f7fe fe2d bl 1000350c <__wrap___aeabi_uidiv> +100048b2: 4540 cmp r0, r8 +100048b4: d804 bhi.n 100048c0 +100048b6: 0035 movs r5, r6 +100048b8: e7f3 b.n 100048a2 +100048ba: 2580 movs r5, #128 @ 0x80 +100048bc: 006d lsls r5, r5, #1 +100048be: e7f0 b.n 100048a2 +100048c0: 4653 mov r3, sl +100048c2: 611c str r4, [r3, #16] +100048c4: 1e6b subs r3, r5, #1 +100048c6: 021b lsls r3, r3, #8 +100048c8: 4652 mov r2, sl +100048ca: 6812 ldr r2, [r2, #0] +100048cc: 4053 eors r3, r2 +100048ce: 22ff movs r2, #255 @ 0xff +100048d0: 0212 lsls r2, r2, #8 +100048d2: 4013 ands r3, r2 +100048d4: 2280 movs r2, #128 @ 0x80 +100048d6: 0152 lsls r2, r2, #5 +100048d8: 4651 mov r1, sl +100048da: 430a orrs r2, r1 +100048dc: 6013 str r3, [r2, #0] +100048de: 0029 movs r1, r5 +100048e0: 4361 muls r1, r4 +100048e2: 0038 movs r0, r7 +100048e4: f7fe fe12 bl 1000350c <__wrap___aeabi_uidiv> +100048e8: b003 add sp, #12 +100048ea: bcc0 pop {r6, r7} +100048ec: 46ba mov sl, r7 +100048ee: 46b0 mov r8, r6 +100048f0: bdf0 pop {r4, r5, r6, r7, pc} + ... + +100048f4 : +100048f4: b510 push {r4, lr} +100048f6: 0004 movs r4, r0 +100048f8: 4b14 ldr r3, [pc, #80] @ (1000494c ) +100048fa: 4298 cmp r0, r3 +100048fc: d022 beq.n 10004944 +100048fe: 2280 movs r2, #128 @ 0x80 +10004900: 0292 lsls r2, r2, #10 +10004902: 4b13 ldr r3, [pc, #76] @ (10004950 ) +10004904: 601a str r2, [r3, #0] +10004906: 4b13 ldr r3, [pc, #76] @ (10004954 ) +10004908: 601a str r2, [r3, #0] +1000490a: 4b13 ldr r3, [pc, #76] @ (10004958 ) +1000490c: 689b ldr r3, [r3, #8] +1000490e: 0010 movs r0, r2 +10004910: 4398 bics r0, r3 +10004912: d1fa bne.n 1000490a +10004914: 0020 movs r0, r4 +10004916: f7ff ffa3 bl 10004860 +1000491a: 6823 ldr r3, [r4, #0] +1000491c: 2207 movs r2, #7 +1000491e: 4053 eors r3, r2 +10004920: 32c8 adds r2, #200 @ 0xc8 +10004922: 401a ands r2, r3 +10004924: 2380 movs r3, #128 @ 0x80 +10004926: 015b lsls r3, r3, #5 +10004928: 4323 orrs r3, r4 +1000492a: 601a str r2, [r3, #0] +1000492c: 0022 movs r2, r4 +1000492e: 3224 adds r2, #36 @ 0x24 +10004930: 2380 movs r3, #128 @ 0x80 +10004932: 019b lsls r3, r3, #6 +10004934: 431a orrs r2, r3 +10004936: 2103 movs r1, #3 +10004938: 6011 str r1, [r2, #0] +1000493a: 3404 adds r4, #4 +1000493c: 4323 orrs r3, r4 +1000493e: 2202 movs r2, #2 +10004940: 601a str r2, [r3, #0] +10004942: bd10 pop {r4, pc} +10004944: 2280 movs r2, #128 @ 0x80 +10004946: 0252 lsls r2, r2, #9 +10004948: e7db b.n 10004902 +1000494a: 46c0 nop @ (mov r8, r8) +1000494c: 4003c000 .word 0x4003c000 +10004950: 4000e000 .word 0x4000e000 +10004954: 4000f000 .word 0x4000f000 +10004958: 4000c000 .word 0x4000c000 + +1000495c : +1000495c: b510 push {r4, lr} +1000495e: 0783 lsls r3, r0, #30 +10004960: d00a beq.n 10004978 +10004962: 0003 movs r3, r0 +10004964: 2103 movs r1, #3 +10004966: e002 b.n 1000496e +10004968: 3301 adds r3, #1 +1000496a: 420b tst r3, r1 +1000496c: d005 beq.n 1000497a +1000496e: 781a ldrb r2, [r3, #0] +10004970: 2a00 cmp r2, #0 +10004972: d1f9 bne.n 10004968 +10004974: 1a18 subs r0, r3, r0 +10004976: bd10 pop {r4, pc} +10004978: 0003 movs r3, r0 +1000497a: 6819 ldr r1, [r3, #0] +1000497c: 4a0c ldr r2, [pc, #48] @ (100049b0 ) +1000497e: 4c0d ldr r4, [pc, #52] @ (100049b4 ) +10004980: 188a adds r2, r1, r2 +10004982: 438a bics r2, r1 +10004984: 4222 tst r2, r4 +10004986: d10f bne.n 100049a8 +10004988: 6859 ldr r1, [r3, #4] +1000498a: 4a09 ldr r2, [pc, #36] @ (100049b0 ) +1000498c: 3304 adds r3, #4 +1000498e: 188a adds r2, r1, r2 +10004990: 438a bics r2, r1 +10004992: 4222 tst r2, r4 +10004994: d108 bne.n 100049a8 +10004996: 6859 ldr r1, [r3, #4] +10004998: 4a05 ldr r2, [pc, #20] @ (100049b0 ) +1000499a: 3304 adds r3, #4 +1000499c: 188a adds r2, r1, r2 +1000499e: 438a bics r2, r1 +100049a0: 4222 tst r2, r4 +100049a2: d0f1 beq.n 10004988 +100049a4: e000 b.n 100049a8 +100049a6: 3301 adds r3, #1 +100049a8: 781a ldrb r2, [r3, #0] +100049aa: 2a00 cmp r2, #0 +100049ac: d1fb bne.n 100049a6 +100049ae: e7e1 b.n 10004974 +100049b0: fefefeff .word 0xfefefeff +100049b4: 80808080 .word 0x80808080 + +100049b8 <_fini>: +100049b8: b5f8 push {r3, r4, r5, r6, r7, lr} +100049ba: 46c0 nop @ (mov r8, r8) +100049bc: 0000 movs r0, r0 + ... + +100049c0 <__mutex_exit_veneer>: +100049c0: b401 push {r0} +100049c2: 4802 ldr r0, [pc, #8] @ (100049cc <__mutex_exit_veneer+0xc>) +100049c4: 4684 mov ip, r0 +100049c6: bc01 pop {r0} +100049c8: 4760 bx ip +100049ca: bf00 nop +100049cc: 200001c9 .word 0x200001c9 + +100049d0 <____aeabi_ldiv0_veneer>: +100049d0: b401 push {r0} +100049d2: 4802 ldr r0, [pc, #8] @ (100049dc <____aeabi_ldiv0_veneer+0xc>) +100049d4: 4684 mov ip, r0 +100049d6: bc01 pop {r0} +100049d8: 4760 bx ip +100049da: bf00 nop +100049dc: 2000028d .word 0x2000028d + +100049e0 <____aeabi_idiv0_veneer>: +100049e0: b401 push {r0} +100049e2: 4802 ldr r0, [pc, #8] @ (100049ec <____aeabi_idiv0_veneer+0xc>) +100049e4: 4684 mov ip, r0 +100049e6: bc01 pop {r0} +100049e8: 4760 bx ip +100049ea: bf00 nop +100049ec: 2000028d .word 0x2000028d + +100049f0 <__spi_write_blocking_veneer>: +100049f0: b401 push {r0} +100049f2: 4802 ldr r0, [pc, #8] @ (100049fc <__spi_write_blocking_veneer+0xc>) +100049f4: 4684 mov ip, r0 +100049f6: bc01 pop {r0} +100049f8: 4760 bx ip +100049fa: bf00 nop +100049fc: 20000215 .word 0x20000215 + +10004a00 <__mutex_try_enter_block_until_veneer>: +10004a00: b401 push {r0} +10004a02: 4802 ldr r0, [pc, #8] @ (10004a0c <__mutex_try_enter_block_until_veneer+0xc>) +10004a04: 4684 mov ip, r0 +10004a06: bc01 pop {r0} +10004a08: 4760 bx ip +10004a0a: bf00 nop +10004a0c: 20000195 .word 0x20000195 + +10004a10 <__spi_write16_blocking_veneer>: +10004a10: b401 push {r0} +10004a12: 4802 ldr r0, [pc, #8] @ (10004a1c <__spi_write16_blocking_veneer+0xc>) +10004a14: 4684 mov ip, r0 +10004a16: bc01 pop {r0} +10004a18: 4760 bx ip +10004a1a: bf00 nop +10004a1c: 2000024f .word 0x2000024f Disassembly of section .data: @@ -8035,7 +9131,7 @@ Disassembly of section .data: 2000014a: f38c 8810 msr PRIMASK, ip 2000014e: 0038 movs r0, r7 20000150: 4641 mov r1, r8 -20000152: f000 f861 bl 20000218 <__best_effort_wfe_or_timeout_veneer> +20000152: f000 f8a5 bl 200002a0 <__best_effort_wfe_or_timeout_veneer> 20000156: 2800 cmp r0, #0 20000158: d0e5 beq.n 20000126 2000015a: 2000 movs r0, #0 @@ -8044,7 +9140,7 @@ Disassembly of section .data: 20000160: 4a0a ldr r2, [pc, #40] @ (2000018c ) 20000162: 480b ldr r0, [pc, #44] @ (20000190 ) 20000164: 2185 movs r1, #133 @ 0x85 -20000166: f000 f85f bl 20000228 <____assert_func_veneer> +20000166: f000 f893 bl 20000290 <____assert_func_veneer> 2000016a: 464b mov r3, r9 2000016c: 7123 strb r3, [r4, #4] 2000016e: 6823 ldr r3, [r4, #0] @@ -8058,9 +9154,9 @@ Disassembly of section .data: 20000182: 46b0 mov r8, r6 20000184: bdf8 pop {r3, r4, r5, r6, r7, pc} 20000186: 46c0 nop @ (mov r8, r8) -20000188: 10004314 .word 0x10004314 -2000018c: 1000436c .word 0x1000436c -20000190: 100042d0 .word 0x100042d0 +20000188: 10004d1c .word 0x10004d1c +2000018c: 10004d74 .word 0x10004d74 +20000190: 10004cd8 .word 0x10004cd8 20000194 : 20000194: b570 push {r4, r5, r6, lr} @@ -8114,91 +9210,159 @@ Disassembly of section .data: 200001fc: 4a03 ldr r2, [pc, #12] @ (2000020c ) 200001fe: 4804 ldr r0, [pc, #16] @ (20000210 ) 20000200: 21b4 movs r1, #180 @ 0xb4 -20000202: f000 f811 bl 20000228 <____assert_func_veneer> +20000202: f000 f845 bl 20000290 <____assert_func_veneer> 20000206: 46c0 nop @ (mov r8, r8) -20000208: 10004328 .word 0x10004328 -2000020c: 10004360 .word 0x10004360 -20000210: 100042d0 .word 0x100042d0 +20000208: 10004d30 .word 0x10004d30 +2000020c: 10004d68 .word 0x10004d68 +20000210: 10004cd8 .word 0x10004cd8 -20000214 <__aeabi_idiv0>: -20000214: 4770 bx lr -20000216: 46c0 nop @ (mov r8, r8) +20000214 : +20000214: b510 push {r4, lr} +20000216: 0004 movs r4, r0 +20000218: 0010 movs r0, r2 +2000021a: 2200 movs r2, #0 +2000021c: e005 b.n 2000022a +2000021e: 68e3 ldr r3, [r4, #12] +20000220: 079b lsls r3, r3, #30 +20000222: d5fc bpl.n 2000021e +20000224: 5c8b ldrb r3, [r1, r2] +20000226: 60a3 str r3, [r4, #8] +20000228: 3201 adds r2, #1 +2000022a: 4282 cmp r2, r0 +2000022c: d3f7 bcc.n 2000021e +2000022e: e000 b.n 20000232 +20000230: 68a3 ldr r3, [r4, #8] +20000232: 68e3 ldr r3, [r4, #12] +20000234: 075b lsls r3, r3, #29 +20000236: d4fb bmi.n 20000230 +20000238: 68e3 ldr r3, [r4, #12] +2000023a: 06db lsls r3, r3, #27 +2000023c: d4fc bmi.n 20000238 +2000023e: e000 b.n 20000242 +20000240: 68a3 ldr r3, [r4, #8] +20000242: 68e3 ldr r3, [r4, #12] +20000244: 075b lsls r3, r3, #29 +20000246: d4fb bmi.n 20000240 +20000248: 2301 movs r3, #1 +2000024a: 6223 str r3, [r4, #32] +2000024c: bd10 pop {r4, pc} -20000218 <__best_effort_wfe_or_timeout_veneer>: -20000218: b401 push {r0} -2000021a: 4802 ldr r0, [pc, #8] @ (20000224 <__best_effort_wfe_or_timeout_veneer+0xc>) -2000021c: 4684 mov ip, r0 -2000021e: bc01 pop {r0} -20000220: 4760 bx ip -20000222: bf00 nop -20000224: 10001249 .word 0x10001249 - -20000228 <____assert_func_veneer>: -20000228: b401 push {r0} -2000022a: 4802 ldr r0, [pc, #8] @ (20000234 <____assert_func_veneer+0xc>) -2000022c: 4684 mov ip, r0 -2000022e: bc01 pop {r0} -20000230: 4760 bx ip -20000232: bf00 nop -20000234: 10001b89 .word 0x10001b89 - -20000238 : -20000238: 00000010 .... - -2000023c : -2000023c: 00000000 .word 0x00000000 -20000240: 00010000 .word 0x00010000 - ... -2000024c: 00020000 .word 0x00020000 - ... -20000258: 00030000 .word 0x00030000 - ... -20000264: 00ff0000 .word 0x00ff0000 -20000268: 00000000 .word 0x00000000 - -2000026c : -2000026c: b501 push {r0, lr} -2000026e: 6848 ldr r0, [r1, #4] -20000270: 3101 adds r1, #1 -20000272: 468e mov lr, r1 -20000274: 4700 bx r0 - -20000276 : -20000276: 4670 mov r0, lr -20000278: 3809 subs r0, #9 -2000027a: 4901 ldr r1, [pc, #4] @ (20000280 ) -2000027c: 4788 blx r1 -2000027e: bd01 pop {r0, pc} -20000280: 10000791 .word 0x10000791 - -20000284 : -20000284: 2000029c 00000000 200002f0 20000444 ... ....... D.. +2000024e : +2000024e: b510 push {r4, lr} +20000250: 0004 movs r4, r0 +20000252: 0010 movs r0, r2 +20000254: 2200 movs r2, #0 +20000256: e006 b.n 20000266 +20000258: 68e3 ldr r3, [r4, #12] +2000025a: 079b lsls r3, r3, #30 +2000025c: d5fc bpl.n 20000258 +2000025e: 0053 lsls r3, r2, #1 +20000260: 5a5b ldrh r3, [r3, r1] +20000262: 60a3 str r3, [r4, #8] +20000264: 3201 adds r2, #1 +20000266: 4282 cmp r2, r0 +20000268: d3f6 bcc.n 20000258 +2000026a: e000 b.n 2000026e +2000026c: 68a3 ldr r3, [r4, #8] +2000026e: 68e3 ldr r3, [r4, #12] +20000270: 075b lsls r3, r3, #29 +20000272: d4fb bmi.n 2000026c +20000274: 68e3 ldr r3, [r4, #12] +20000276: 06db lsls r3, r3, #27 +20000278: d4fc bmi.n 20000274 +2000027a: e000 b.n 2000027e +2000027c: 68a3 ldr r3, [r4, #8] +2000027e: 68e3 ldr r3, [r4, #12] +20000280: 075b lsls r3, r3, #29 +20000282: d4fb bmi.n 2000027c +20000284: 2301 movs r3, #1 +20000286: 6223 str r3, [r4, #32] +20000288: bd10 pop {r4, pc} ... -2000029c : -2000029c: 20000454 00000000 00000000 00000010 T.. ............ -200002ac: 00000000 .... +2000028c <__aeabi_idiv0>: +2000028c: 4770 bx lr +2000028e: 46c0 nop @ (mov r8, r8) -200002b0 : -200002b0: 00003350 .word 0x00003350 -200002b4: 0000334c .word 0x0000334c -200002b8: 00003354 .word 0x00003354 -200002bc: 00003352 .word 0x00003352 +20000290 <____assert_func_veneer>: +20000290: b401 push {r0} +20000292: 4802 ldr r0, [pc, #8] @ (2000029c <____assert_func_veneer+0xc>) +20000294: 4684 mov ip, r0 +20000296: bc01 pop {r0} +20000298: 4760 bx ip +2000029a: bf00 nop +2000029c: 1000213d .word 0x1000213d -200002c0 : -200002c0: 0000534d .word 0x0000534d -200002c4: 0000434d .word 0x0000434d -200002c8: 00003453 .word 0x00003453 -200002cc: 00003443 .word 0x00003443 +200002a0 <__best_effort_wfe_or_timeout_veneer>: +200002a0: b401 push {r0} +200002a2: 4802 ldr r0, [pc, #8] @ (200002ac <__best_effort_wfe_or_timeout_veneer+0xc>) +200002a4: 4684 mov ip, r0 +200002a6: bc01 pop {r0} +200002a8: 4760 bx ip +200002aa: bf00 nop +200002ac: 100016ed .word 0x100016ed -200002d0 : +200002b0 : +200002b0: 00000010 .... + +200002b4 : +200002b4: 00000000 .word 0x00000000 +200002b8: 00010000 .word 0x00010000 + ... +200002c4: 00020000 .word 0x00020000 + ... +200002d0: 00030000 .word 0x00030000 + ... +200002dc: 00ff0000 .word 0x00ff0000 +200002e0: 00000000 .word 0x00000000 + +200002e4 : +200002e4: b501 push {r0, lr} +200002e6: 6848 ldr r0, [r1, #4] +200002e8: 3101 adds r1, #1 +200002ea: 468e mov lr, r1 +200002ec: 4700 bx r0 + +200002ee : +200002ee: 4670 mov r0, lr +200002f0: 3809 subs r0, #9 +200002f2: 4901 ldr r1, [pc, #4] @ (200002f8 ) +200002f4: 4788 blx r1 +200002f6: bd01 pop {r0, pc} +200002f8: 10000c35 .word 0x10000c35 + +200002fc : +200002fc: 20000314 00000000 20000388 200004e4 ... ....... ... ... -200002d8 <__mutex_array_end>: -200002d8: 10003d39 .word 0x10003d39 -200002dc: 10002ea1 .word 0x10002ea1 -200002e0: 100035a1 .word 0x100035a1 -200002e4: 10003c09 .word 0x10003c09 +20000314 : +20000314: 200004f4 00000000 00000000 00000010 ... ............ + ... -200002e8 <__frame_dummy_init_array_entry>: -200002e8: 10000331 1... +20000330 : +20000330: 00003350 .word 0x00003350 +20000334: 0000334c .word 0x0000334c +20000338: 00003354 .word 0x00003354 +2000033c: 00003352 .word 0x00003352 + +20000340 : +20000340: 0000534d .word 0x0000534d +20000344: 0000434d .word 0x0000434d +20000348: 00003453 .word 0x00003453 +2000034c: 00003443 .word 0x00003443 + +20000350 : +20000350: 100046c5 00000000 100046e5 10004769 .F.......F..iG.. +20000360: 00000000 00000100 ........ + +20000368 : + ... + +20000370 <__mutex_array_end>: +20000370: 100042ed .word 0x100042ed +20000374: 10003455 .word 0x10003455 +20000378: 10003b55 .word 0x10003b55 +2000037c: 100041bd .word 0x100041bd + +20000380 <__frame_dummy_init_array_entry>: +20000380: 10000331 1... diff --git a/build/clacer.elf b/build/clacer.elf index d46fa4dff2b556b9bd269f6db433a3c79dd220f3..a4cb743e511a317a766d92aa744bfa165f6e6cd5 100755 GIT binary patch literal 306112 zcmeFa33!y%^*?^zd1s$VGFc##g)mD3*?=T0vI&zJe6tKHvM7R@gd{kTB|{PApYy&G5^eka_21v``Tw5( z^N>9EeeXT@+;h)8_ug~Q-QKzVlEsoB2sHAiqFmz8hXPq<;Jy8OY9bYBW{{0U#AQ&r z98VTG1wSq2R}-<*F$fS&-|L4XvH@=Sg^GxsW=#Bc5wu0Jv19N6!rE9ozb^b;kiZ2A zT#̾#oC1qob`zy%3hkiZ2AT#̾#oC1qu8glt6ch*KS)`-QiQ&w|hFO`>L%q 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�6GZ}k#e&OLCa!`7rdBuvsJ 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

-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 z

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 delta 5201 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 8, + xs & 0xff, + xe >> 8, + xe & 0xff, + }; + + // CASET (2Ah): Column Address Set + tft_cmd(0x2a, data, sizeof(data)); } -void init_pins() +void tft_raset(uint16_t ys, uint16_t ye) { - gpio_init(LED_PIN); - gpio_set_dir(LED_PIN, GPIO_OUT); - gpio_put(LED_PIN, 1); - gpio_init(RESET_PIN); - gpio_set_dir(RESET_PIN, GPIO_OUT); - gpio_init(RS_PIN); - gpio_set_dir(RS_PIN, GPIO_OUT); - gpio_init(CS_PIN); - gpio_set_dir(CS_PIN, GPIO_OUT); - CS_H; - spi_init(spi_default, SPI_CLK); - gpio_set_function(RX_PIN, GPIO_FUNC_SPI); - gpio_set_function(SCK_PIN, GPIO_FUNC_SPI); - gpio_set_function(TX_PIN, GPIO_FUNC_SPI); + uint8_t data[] = { + ys >> 8, + ys & 0xff, + ye >> 8, + ye & 0xff, + }; + + // RASET (2Bh): Row Address Set + tft_cmd(0x2b, data, sizeof(data)); } -void init() +void tft_init(const struct tft_config* config) { - init_pins(); + memcpy(&tft_cfg, config, sizeof(tft_cfg)); - write_command(0x01); // Software reset - sleep_ms(120); + set_sys_clock_khz(250 * 1000, true); - write_command(0x11); // Sleep exit - sleep_ms(120); + volatile uint ach = spi_init(tft_cfg.spi, 67 * 1000 * 1000); // original 125 * 1000 * 1000 + spi_set_format(tft_cfg.spi, 8, SPI_CPOL_0, SPI_CPHA_0, SPI_MSB_FIRST); - write_command(0xF0); // Command Set control - write_data(0xC3); // Enable extension command 2 partI + gpio_set_function(tft_cfg.gpio_din, GPIO_FUNC_SPI); + gpio_set_function(tft_cfg.gpio_clk, GPIO_FUNC_SPI); - write_command(0xF0); // Command Set control - write_data(0x96); // Enable extension command 2 partII + gpio_init(tft_cfg.gpio_cs); + gpio_init(tft_cfg.gpio_dc); + gpio_init(tft_cfg.gpio_rst); + gpio_init(tft_cfg.gpio_bl); - write_command(0x36); // Memory Data Access Control MX, MY, RGB mode - write_data(0x48); // X-Mirror, Top-Left to right-Buttom, RGB + gpio_set_dir(tft_cfg.gpio_cs, GPIO_OUT); + gpio_set_dir(tft_cfg.gpio_dc, GPIO_OUT); + gpio_set_dir(tft_cfg.gpio_rst, GPIO_OUT); + gpio_set_dir(tft_cfg.gpio_bl, GPIO_OUT); - write_command(0x3A); // Interface Pixel Format - write_data(0x55); // Control interface color format set to 16 + gpio_put(tft_cfg.gpio_cs, 1); + gpio_put(tft_cfg.gpio_dc, 1); + gpio_put(tft_cfg.gpio_rst, 1); + sleep_ms(100); - write_command(0xB4); // Column inversion - write_data(0x01); // 1-dot inversion + // SWRESET (01h): Software Reset + tft_cmd(0x01, NULL, 0); + sleep_ms(150); - write_command(0xB6); // Display Function Control - write_data(0x80); // Bypass - write_data(0x02); // Source Output Scan from S1 to S960, Gate Output scan from G1 to G480, scan cycle=2 - write_data(0x3B); // LCD Drive Line=8*(59+1) + // SLPOUT (11h): Sleep Out + tft_cmd(0x11, NULL, 0); + sleep_ms(50); - write_command(0xE8); // Display Output Ctrl Adjust - write_data(0x40); - write_data(0x8A); - write_data(0x00); - write_data(0x00); - write_data(0x29); // Source eqaulizing period time= 22.5 us - write_data(0x19); // Timing for "Gate start"=25 (Tclk) - write_data(0xA5); // Timing for "Gate End"=37 (Tclk), Gate driver EQ function ON - write_data(0x33); + // COLMOD (3Ah): Interface Pixel Format + // - RGB interface color format = 65K of RGB interface + // - Control interface color format = 16bit/pixel + tft_cmd(0x3a, (uint8_t[]) { 0x55 }, 1); + sleep_ms(10); - write_command(0xC1); // Power control2 - write_data(0x06); // VAP(GVDD)=3.85+( vcom+vcom offset), VAN(GVCL)=-3.85+( vcom+vcom offset) + // MADCTL (36h): Memory Data Access Control + // - Page Address Order = Top to Bottom + // - Column Address Order = Left to Right + // - Page/Column Order = Normal Mode + // - Line Address Order = LCD Refresh Top to Bottom + // - RGB/BGR Order = RGB + // - Display Data Latch Data Order = LCD Refresh Left to Right + tft_cmd(0x36, (uint8_t[]) { 0x00 }, 1); - write_command(0xC2); // Power control 3 - write_data(0xA7); // Source driving current level=low, Gamma driving current level=High + tft_caset(0, tft_cfg.width); + tft_raset(0, tft_cfg.height); - write_command(0xC5); // VCOM Control - write_data(0x18); // VCOM=0.9 + // INVON (21h): Display Inversion On + // tft_cmd(0x21, NULL, 0); + // sleep_ms(10); - sleep_ms(120); + // NORON (13h): Normal Display Mode On + tft_cmd(0x13, NULL, 0); + sleep_ms(10); - // ST7796 Gamma Sequence - write_command(0xE0); // Gamma"+" - write_data(0xF0); - write_data(0x09); - write_data(0x0b); - write_data(0x06); - write_data(0x04); - write_data(0x15); - write_data(0x2F); - write_data(0x54); - write_data(0x42); - write_data(0x3C); - write_data(0x17); - write_data(0x14); - write_data(0x18); - write_data(0x1B); - - write_command(0xE1); // Gamma"-" - write_data(0xE0); - write_data(0x09); - write_data(0x0B); - write_data(0x06); - write_data(0x04); - write_data(0x03); - write_data(0x2B); - write_data(0x43); - write_data(0x42); - write_data(0x3B); - write_data(0x16); - write_data(0x14); - write_data(0x17); - write_data(0x1B); - - sleep_ms(120); - - write_command(0xF0); // Command Set control - write_data(0x3C); // Disable extension command 2 partI - - write_command(0xF0); // Command Set control - write_data(0x69); // Disable extension command 2 partII - - CS_H; - sleep_ms(120); - CS_L; - - write_command(0x29); // Display on + // DISPON (29h): Display On + tft_cmd(0x29, NULL, 0); + sleep_ms(10); + + gpio_put(tft_cfg.gpio_bl, 1); } -void set_pixel_red() +void tft_ramwr() { - write_data(0b111111000100000000); + gpio_put(tft_cfg.gpio_cs, 0); + gpio_put(tft_cfg.gpio_dc, 0); + + // RAMWR (2Ch): Memory Write + uint8_t cmd = 0x2c; + spi_write_blocking(tft_cfg.spi, &cmd, sizeof(cmd)); + + gpio_put(tft_cfg.gpio_cs, 0); + gpio_put(tft_cfg.gpio_dc, 1); } +void tft_write(const void* data, size_t len) +{ + spi_write16_blocking(tft_cfg.spi, data, len / 2); +} + +void tft_put(uint16_t pixel) +{ + tft_write(&pixel, sizeof(pixel)); +} + +void tft_fill(uint16_t pixel) +{ + int num_pixels = tft_cfg.width * tft_cfg.height; + + tft_set_cursor(0, 0); +if (!tft_data_mode) { + tft_ramwr(); + + spi_set_format(tft_cfg.spi, 16, SPI_CPOL_0, SPI_CPHA_0, SPI_MSB_FIRST); + + tft_data_mode = true; + } + + printf("test"); + for (int i = 0; i < num_pixels; i++) { + + tft_put(pixel); + } + printf("test"); +} + +void tft_set_cursor(uint16_t x, uint16_t y) +{ + tft_caset(x, tft_cfg.width); + tft_raset(y, tft_cfg.height); +} + +void tft_vertical_scroll(uint16_t row) +{ + uint8_t data[] = { + (row >> 8) & 0xff, + row & 0x00ff + }; + + // VSCSAD (37h): Vertical Scroll Start Address of RAM + tft_cmd(0x37, data, sizeof(data)); +} \ No newline at end of file diff --git a/src/tft.h b/src/tft.h index 48cf8af..f5f884a 100644 --- a/src/tft.h +++ b/src/tft.h @@ -3,26 +3,31 @@ #include "hardware/gpio.h" #include "hardware/spi.h" +#include "hardware/divider.h" #include "pico/stdlib.h" +#include -#define LED_PIN 20 -#define RESET_PIN 22 -#define RS_PIN 26 -#define RX_PIN PICO_DEFAULT_SPI_RX_PIN -#define CS_PIN PICO_DEFAULT_SPI_CSN_PIN -#define SCK_PIN PICO_DEFAULT_SPI_SCK_PIN -#define TX_PIN PICO_DEFAULT_SPI_TX_PIN -#define SPI_CLK 66666666 -#define CS_L gpio_put(CS_PIN, 0) -#define CS_H gpio_put(CS_PIN, 1) -#define RS_C gpio_put(RS_PIN, 0) -#define RS_D gpio_put(RS_PIN, 1) +struct tft_config { + spi_inst_t* spi; + uint gpio_din; + uint gpio_clk; + int gpio_cs; + uint gpio_dc; + uint gpio_rst; + uint gpio_bl; + uint16_t width; + uint16_t height; +}; -void write_command(uint8_t cmd); -void write_data(uint8_t data); -void reset(); -void init_pins(); -void init(); -void set_pixel_red(); +void tft_cmd(uint8_t cmd, const uint8_t* data, size_t len); +void tft_caset(uint16_t xs, uint16_t xe); +void tft_raset(uint16_t ys, uint16_t ye); +void tft_init(const struct tft_config* config); +void tft_ramwr(); +void tft_write(const void* data, size_t len); +void tft_put(uint16_t pixel); +void tft_fill(uint16_t pixel); +void tft_set_cursor(uint16_t x, uint16_t y); +void tft_vertical_scroll(uint16_t row); -#endif // TFT_H +#endif // TFT_H \ No newline at end of file diff --git a/src/tft.pio b/src/tft.pio new file mode 100644 index 0000000..e535b9d --- /dev/null +++ b/src/tft.pio @@ -0,0 +1,57 @@ +; +; Copyright (c) 2020 Raspberry Pi (Trading) Ltd. +; +; SPDX-License-Identifier: BSD-3-Clause +; + +.program tft +.side_set 1 + +; This is just a simple clocked serial TX. At 125 MHz system clock we can +; sustain up to 62.5 Mbps. +; Data on OUT pin 0 +; Clock on side-set pin 0 + +.wrap_target + out pins, 1 side 0 ; stall here if no data (clock low) + nop side 1 +.wrap + +% c-sdk { +// For optimal use of DMA bandwidth we would use an autopull threshold of 32, +// but we are using a threshold of 8 here (consume 1 byte from each FIFO entry +// and discard the remainder) to make things easier for software on the other side + +static inline void tft_program_init(PIO pio, uint sm, uint offset, uint data_pin, uint clk_pin, float clk_div) { + pio_gpio_init(pio, data_pin); + pio_gpio_init(pio, clk_pin); + pio_sm_set_consecutive_pindirs(pio, sm, data_pin, 1, true); + pio_sm_set_consecutive_pindirs(pio, sm, clk_pin, 1, true); + pio_sm_config c = st7789_lcd_program_get_default_config(offset); + sm_config_set_sideset_pins(&c, clk_pin); + sm_config_set_out_pins(&c, data_pin, 1); + sm_config_set_fifo_join(&c, PIO_FIFO_JOIN_TX); + sm_config_set_clkdiv(&c, clk_div); + sm_config_set_out_shift(&c, false, true, 8); + pio_sm_init(pio, sm, offset, &c); + pio_sm_set_enabled(pio, sm, true); +} + +// Making use of the narrow store replication behaviour on RP2040 to get the +// data left-justified (as we are using shift-to-left to get MSB-first serial) + +static inline void tft_put(PIO pio, uint sm, uint8_t x) { + while (pio_sm_is_tx_fifo_full(pio, sm)) + ; + *(volatile uint8_t*)&pio->txf[sm] = x; +} + +// SM is done when it stalls on an empty FIFO + +static inline void tft_wait_idle(PIO pio, uint sm) { + uint32_t sm_stall_mask = 1u << (sm + PIO_FDEBUG_TXSTALL_LSB); + pio->fdebug = sm_stall_mask; + while (!(pio->fdebug & sm_stall_mask)) + ; +} +%}