Pastey Euphoria on ARM: Objdump with -d of be_runtime.o
- Posted by Jerome
May 16, 2011
build/intobj/back/be_runtime.o: file format elf32-littlearm
Disassembly of section .text:
00000000 :
0: e24dd018 sub sp, sp, #24 ; 0x18
4: e58d000c str r0, [sp, #12]
8: e58d1008 str r1, [sp, #8]
c: e58d2004 str r2, [sp, #4]
10: e58d3000 str r3, [sp]
14: e59d3000 ldr r3, [sp]
18: e58d3010 str r3, [sp, #16]
1c: e59d3008 ldr r3, [sp, #8]
20: e58d3014 str r3, [sp, #20]
24: ea00000f b 68
28: e59d3004 ldr r3, [sp, #4]
2c: e5d33000 ldrb r3, [r3]
30: e59d200c ldr r2, [sp, #12]
34: e5c23000 strb r3, [r2]
38: e59d300c ldr r3, [sp, #12]
3c: e2833001 add r3, r3, #1 ; 0x1
40: e58d300c str r3, [sp, #12]
44: e59d3004 ldr r3, [sp, #4]
48: e2833001 add r3, r3, #1 ; 0x1
4c: e58d3004 str r3, [sp, #4]
50: e59d3010 ldr r3, [sp, #16]
54: e2433001 sub r3, r3, #1 ; 0x1
58: e58d3010 str r3, [sp, #16]
5c: e59d3014 ldr r3, [sp, #20]
60: e2433001 sub r3, r3, #1 ; 0x1
64: e58d3014 str r3, [sp, #20]
68: e59d3010 ldr r3, [sp, #16]
6c: e3530000 cmp r3, #0 ; 0x0
70: da000006 ble 90
74: e59d3014 ldr r3, [sp, #20]
78: e3530000 cmp r3, #0 ; 0x0
7c: da000003 ble 90
80: e59d3004 ldr r3, [sp, #4]
84: e5d33000 ldrb r3, [r3]
88: e3530000 cmp r3, #0 ; 0x0
8c: 1affffe5 bne 28
90: e59d3014 ldr r3, [sp, #20]
94: e3530000 cmp r3, #0 ; 0x0
98: da000002 ble a8
9c: e59d300c ldr r3, [sp, #12]
a0: e3a02000 mov r2, #0 ; 0x0
a4: e5c32000 strb r2, [r3]
a8: e59d3014 ldr r3, [sp, #20]
ac: e1a00003 mov r0, r3
b0: e28dd018 add sp, sp, #24 ; 0x18
b4: e12fff1e bx lr
000000b8 :
b8: e52de004 push {lr} ; (str lr, [sp, #-4]!)
bc: e24dd00c sub sp, sp, #12 ; 0xc
c0: e58d0004 str r0, [sp, #4]
c4: e59f3080 ldr r3, [pc, #128] ; 14c
c8: e5933000 ldr r3, [r3]
cc: e3530000 cmp r3, #0 ; 0x0
d0: 1a000011 bne 11c
d4: e59f0074 ldr r0, [pc, #116] ; 150
d8: e59f1074 ldr r1, [pc, #116] ; 154
dc: ebfffffe bl 0
e0: e1a02000 mov r2, r0
e4: e59f3060 ldr r3, [pc, #96] ; 14c
e8: e5832000 str r2, [r3]
ec: e59f3058 ldr r3, [pc, #88] ; 14c
f0: e5933000 ldr r3, [r3]
f4: e3530000 cmp r3, #0 ; 0x0
f8: 1a000007 bne 11c
fc: e59f3054 ldr r3, [pc, #84] ; 158
100: e5933000 ldr r3, [r3]
104: e59f0050 ldr r0, [pc, #80] ; 15c
108: e3a01001 mov r1, #1 ; 0x1
10c: e3a02018 mov r2, #24 ; 0x18
110: ebfffffe bl 0
114: e3a00001 mov r0, #1 ; 0x1
118: ebfffffe bl 0
11c: e59f3028 ldr r3, [pc, #40] ; 14c
120: e5933000 ldr r3, [r3]
124: e1a00003 mov r0, r3
128: e59f1030 ldr r1, [pc, #48] ; 160
12c: e59d2004 ldr r2, [sp, #4]
130: ebfffffe bl 0
134: e59f3010 ldr r3, [pc, #16] ; 14c
138: e5933000 ldr r3, [r3]
13c: e1a00003 mov r0, r3
140: ebfffffe bl 0
144: e28dd00c add sp, sp, #12 ; 0xc
148: e8bd8000 pop {pc}
14c: 00000000 .word 0x00000000
150: 00000004 .word 0x00000004
154: 00000010 .word 0x00000010
158: 00000000 .word 0x00000000
15c: 00000014 .word 0x00000014
160: 00000030 .word 0x00000030
00000164 :
164: e52de004 push {lr} ; (str lr, [sp, #-4]!)
168: e24dd034 sub sp, sp, #52 ; 0x34
16c: e58d0004 str r0, [sp, #4]
170: e28d3008 add r3, sp, #8 ; 0x8
174: e1a00003 mov r0, r3
178: e3a01028 mov r1, #40 ; 0x28
17c: e59f2020 ldr r2, [pc, #32] ; 1a4
180: e59d3004 ldr r3, [sp, #4]
184: ebfffffe bl 0
188: e3a03000 mov r3, #0 ; 0x0
18c: e5cd302f strb r3, [sp, #47]
190: e28d3008 add r3, sp, #8 ; 0x8
194: e1a00003 mov r0, r3
198: ebfffffe bl b8
19c: e28dd034 add sp, sp, #52 ; 0x34
1a0: e8bd8000 pop {pc}
1a4: 00000034 .word 0x00000034
000001a8 :
1a8: e52de004 push {lr} ; (str lr, [sp, #-4]!)
1ac: e24dd03c sub sp, sp, #60 ; 0x3c
1b0: e1cd00f8 strd r0, [sp, #8]
1b4: e28d1010 add r1, sp, #16 ; 0x10
1b8: e1cd20d8 ldrd r2, [sp, #8]
1bc: e1cd20f0 strd r2, [sp]
1c0: e1a00001 mov r0, r1
1c4: e3a01028 mov r1, #40 ; 0x28
1c8: e59f201c ldr r2, [pc, #28] ; 1ec
1cc: ebfffffe bl 0
1d0: e3a03000 mov r3, #0 ; 0x0
1d4: e5cd3037 strb r3, [sp, #55]
1d8: e28d3010 add r3, sp, #16 ; 0x10
1dc: e1a00003 mov r0, r3
1e0: ebfffffe bl b8
1e4: e28dd03c add sp, sp, #60 ; 0x3c
1e8: e8bd8000 pop {pc}
1ec: 00000038 .word 0x00000038
000001f0 :
1f0: e52de004 push {lr} ; (str lr, [sp, #-4]!)
1f4: e24dd014 sub sp, sp, #20 ; 0x14
1f8: e58d0004 str r0, [sp, #4]
1fc: e59d3004 ldr r3, [sp, #4]
200: e5933000 ldr r3, [r3]
204: e2433001 sub r3, r3, #1 ; 0x1
208: e3530005 cmp r3, #5 ; 0x5
20c: 979ff103 ldrls pc, [pc, r3, lsl #2]
210: ea000014 b 268
214: 0000022c .word 0x0000022c
218: 00000238 .word 0x00000238
21c: 00000244 .word 0x00000244
220: 00000250 .word 0x00000250
224: 0000025c .word 0x0000025c
228: 0000025c .word 0x0000025c
22c: e59f3048 ldr r3, [pc, #72] ; 27c
230: e58d300c str r3, [sp, #12]
234: ea00000d b 270
238: e59f3040 ldr r3, [pc, #64] ; 280
23c: e58d300c str r3, [sp, #12]
240: ea00000a b 270
244: e59f3038 ldr r3, [pc, #56] ; 284
248: e58d300c str r3, [sp, #12]
24c: ea000007 b 270
250: e59f3030 ldr r3, [pc, #48] ; 288
254: e58d300c str r3, [sp, #12]
258: ea000004 b 270
25c: e59f3028 ldr r3, [pc, #40] ; 28c
260: e58d300c str r3, [sp, #12]
264: ea000001 b 270
268: e59f3020 ldr r3, [pc, #32] ; 290
26c: e58d300c str r3, [sp, #12]
270: e59f001c ldr r0, [pc, #28] ; 294
274: e59d100c ldr r1, [sp, #12]
278: ebfffffe bl 6b8
27c: 0000003c .word 0x0000003c
280: 00000044 .word 0x00000044
284: 00000050 .word 0x00000050
288: 0000005c .word 0x0000005c
28c: 00000068 .word 0x00000068
290: 00000080 .word 0x00000080
294: 0000008c .word 0x0000008c
00000298 :
298: e52de004 push {lr} ; (str lr, [sp, #-4]!)
29c: e24dd02c sub sp, sp, #44 ; 0x2c
2a0: e59f31b8 ldr r3, [pc, #440] ; 460
2a4: e5933000 ldr r3, [r3]
2a8: e3530000 cmp r3, #0 ; 0x0
2ac: ca000069 bgt 458
2b0: e59f31a8 ldr r3, [pc, #424] ; 460
2b4: e5933000 ldr r3, [r3]
2b8: e2832001 add r2, r3, #1 ; 0x1
2bc: e59f319c ldr r3, [pc, #412] ; 460
2c0: e5832000 str r2, [r3]
2c4: e59f3198 ldr r3, [pc, #408] ; 464
2c8: e5933000 ldr r3, [r3]
2cc: e3530000 cmp r3, #0 ; 0x0
2d0: 0a000003 beq 2e4
2d4: e59f3188 ldr r3, [pc, #392] ; 464
2d8: e5933000 ldr r3, [r3]
2dc: e1a00003 mov r0, r3
2e0: ebfffffe bl 0
2e4: e3a00010 mov r0, #16 ; 0x10
2e8: ebfffffe bl 0
2ec: e1a03000 mov r3, r0
2f0: e1a02003 mov r2, r3
2f4: e59f3168 ldr r3, [pc, #360] ; 464
2f8: e5832000 str r2, [r3]
2fc: e59f3160 ldr r3, [pc, #352] ; 464
300: e5933000 ldr r3, [r3]
304: e1a00003 mov r0, r3
308: e59f1158 ldr r1, [pc, #344] ; 468
30c: e3a02010 mov r2, #16 ; 0x10
310: ebfffffe bl 0
314: e59f3150 ldr r3, [pc, #336] ; 46c
318: e5933000 ldr r3, [r3]
31c: e3530000 cmp r3, #0 ; 0x0
320: 0a000009 beq 34c
324: e59f3140 ldr r3, [pc, #320] ; 46c
328: e5933000 ldr r3, [r3]
32c: e2832004 add r2, r3, #4 ; 0x4
330: e3a03000 mov r3, #0 ; 0x0
334: e5823000 str r3, [r2]
338: e59f312c ldr r3, [pc, #300] ; 46c
33c: e5933000 ldr r3, [r3]
340: e2832008 add r2, r3, #8 ; 0x8
344: e59f3124 ldr r3, [pc, #292] ; 470
348: e5832000 str r2, [r3]
34c: e59f2120 ldr r2, [pc, #288] ; 474
350: e3a03000 mov r3, #0 ; 0x0
354: e5823000 str r3, [r2]
358: e59f3118 ldr r3, [pc, #280] ; 478
35c: e5933000 ldr r3, [r3]
360: e2433001 sub r3, r3, #1 ; 0x1
364: e58d301c str r3, [sp, #28]
368: ea000037 b 44c
36c: e59d301c ldr r3, [sp, #28]
370: e1a03103 lsl r3, r3, #2
374: e1a02003 mov r2, r3
378: e59f30fc ldr r3, [pc, #252] ; 47c
37c: e5933000 ldr r3, [r3]
380: e0823003 add r3, r2, r3
384: e5933000 ldr r3, [r3]
388: e58d3020 str r3, [sp, #32]
38c: e59f20ec ldr r2, [pc, #236] ; 480
390: e3a03001 mov r3, #1 ; 0x1
394: e5823000 str r3, [r2]
398: e59d3020 ldr r3, [sp, #32]
39c: e1a03103 lsl r3, r3, #2
3a0: e1a02003 mov r2, r3
3a4: e59f30d8 ldr r3, [pc, #216] ; 484
3a8: e5933000 ldr r3, [r3]
3ac: e0823003 add r3, r2, r3
3b0: e5932000 ldr r2, [r3]
3b4: e3a03000 mov r3, #0 ; 0x0
3b8: e58d3000 str r3, [sp]
3bc: e3a03000 mov r3, #0 ; 0x0
3c0: e58d3004 str r3, [sp, #4]
3c4: e3a03000 mov r3, #0 ; 0x0
3c8: e58d3008 str r3, [sp, #8]
3cc: e3a03000 mov r3, #0 ; 0x0
3d0: e58d300c str r3, [sp, #12]
3d4: e3a03000 mov r3, #0 ; 0x0
3d8: e58d3010 str r3, [sp, #16]
3dc: e3a03000 mov r3, #0 ; 0x0
3e0: e58d3014 str r3, [sp, #20]
3e4: e1a00002 mov r0, r2
3e8: e3a01000 mov r1, #0 ; 0x0
3ec: e3a02000 mov r2, #0 ; 0x0
3f0: e3a03000 mov r3, #0 ; 0x0
3f4: ebfffffe bl c6c4
3f8: e1a03000 mov r3, r0
3fc: e58d3024 str r3, [sp, #36]
400: e59d3024 ldr r3, [sp, #36]
404: e3730105 cmn r3, #1073741825 ; 0x40000001
408: da000003 ble 41c
40c: e59d3024 ldr r3, [sp, #36]
410: e3530000 cmp r3, #0 ; 0x0
414: 1a00000f bne 458
418: ea000008 b 440
41c: e59d3024 ldr r3, [sp, #36]
420: e353020a cmp r3, #-1610612736 ; 0xa0000000
424: ba00000b blt 458
428: e59d3024 ldr r3, [sp, #36]
42c: e1a03183 lsl r3, r3, #3
430: ed937b00 vldr d7, [r3]
434: eeb57b40 fcmpzd d7
438: eef1fa10 fmstat
43c: 1a000005 bne 458
440: e59d301c ldr r3, [sp, #28]
444: e2433001 sub r3, r3, #1 ; 0x1
448: e58d301c str r3, [sp, #28]
44c: e59d301c ldr r3, [sp, #28]
450: e3530000 cmp r3, #0 ; 0x0
454: aaffffc4 bge 36c
458: e28dd02c add sp, sp, #44 ; 0x2c
45c: e8bd8000 pop {pc}
...
468: 000000a4 .word 0x000000a4
...
00000488 :
488: e52de004 push {lr} ; (str lr, [sp, #-4]!)
48c: e24dd014 sub sp, sp, #20 ; 0x14
490: e58d0004 str r0, [sp, #4]
494: e58d1000 str r1, [sp]
498: e59d3000 ldr r3, [sp]
49c: e58d300c str r3, [sp, #12]
4a0: e59f31a0 ldr r3, [pc, #416] ; 648
4a4: e5933000 ldr r3, [r3]
4a8: e3530000 cmp r3, #0 ; 0x0
4ac: 0a000003 beq 4c0
4b0: e59f3194 ldr r3, [pc, #404] ; 64c
4b4: e5933000 ldr r3, [r3]
4b8: e3530000 cmp r3, #0 ; 0x0
4bc: da000010 ble 504
4c0: e59f3188 ldr r3, [pc, #392] ; 650
4c4: e5933000 ldr r3, [r3]
4c8: e1a00003 mov r0, r3
4cc: e59f1180 ldr r1, [pc, #384] ; 654
4d0: ebfffffe bl 0
4d4: e59f3174 ldr r3, [pc, #372] ; 650
4d8: e5933000 ldr r3, [r3]
4dc: e59d200c ldr r2, [sp, #12]
4e0: e1a00003 mov r0, r3
4e4: e59d1004 ldr r1, [sp, #4]
4e8: ebfffffe bl 0
4ec: e59f315c ldr r3, [pc, #348] ; 650
4f0: e5933000 ldr r3, [r3]
4f4: e1a00003 mov r0, r3
4f8: e59f1158 ldr r1, [pc, #344] ; 658
4fc: ebfffffe bl 0
500: ea000006 b 520
504: e59f3144 ldr r3, [pc, #324] ; 650
508: e5932000 ldr r2, [r3]
50c: e59f3134 ldr r3, [pc, #308] ; 648
510: e5933000 ldr r3, [r3]
514: e1a00002 mov r0, r2
518: e1a01003 mov r1, r3
51c: ebfffffe bl 0
520: e59f3134 ldr r3, [pc, #308] ; 65c
524: e5933000 ldr r3, [r3]
528: e3530000 cmp r3, #0 ; 0x0
52c: 1a000007 bne 550
530: e59f3128 ldr r3, [pc, #296] ; 660
534: e5933000 ldr r3, [r3]
538: e1a00003 mov r0, r3
53c: e59f1120 ldr r1, [pc, #288] ; 664
540: ebfffffe bl 0
544: e1a02000 mov r2, r0
548: e59f310c ldr r3, [pc, #268] ; 65c
54c: e5832000 str r2, [r3]
550: e59f3104 ldr r3, [pc, #260] ; 65c
554: e5933000 ldr r3, [r3]
558: e3530000 cmp r3, #0 ; 0x0
55c: 0a000033 beq 630
560: e59f30f4 ldr r3, [pc, #244] ; 65c
564: e5933000 ldr r3, [r3]
568: e59f00f8 ldr r0, [pc, #248] ; 668
56c: e3a01001 mov r1, #1 ; 0x1
570: e3a02016 mov r2, #22 ; 0x16
574: ebfffffe bl 0
578: e59f30dc ldr r3, [pc, #220] ; 65c
57c: e5933000 ldr r3, [r3]
580: e1a00003 mov r0, r3
584: e59d1004 ldr r1, [sp, #4]
588: e59d2000 ldr r2, [sp]
58c: ebfffffe bl 0
590: e59f30c4 ldr r3, [pc, #196] ; 65c
594: e5933000 ldr r3, [r3]
598: e3a0000a mov r0, #10 ; 0xa
59c: e1a01003 mov r1, r3
5a0: ebfffffe bl 0
5a4: e59f30c0 ldr r3, [pc, #192] ; 66c
5a8: e5933000 ldr r3, [r3]
5ac: e3530000 cmp r3, #0 ; 0x0
5b0: 0a000017 beq 614
5b4: e59f308c ldr r3, [pc, #140] ; 648
5b8: e5933000 ldr r3, [r3]
5bc: e3530000 cmp r3, #0 ; 0x0
5c0: 0a000003 beq 5d4
5c4: e59f3080 ldr r3, [pc, #128] ; 64c
5c8: e5933000 ldr r3, [r3]
5cc: e3530000 cmp r3, #0 ; 0x0
5d0: da000007 ble 5f4
5d4: e59f3074 ldr r3, [pc, #116] ; 650
5d8: e5932000 ldr r2, [r3]
5dc: e59f3088 ldr r3, [pc, #136] ; 66c
5e0: e5933000 ldr r3, [r3]
5e4: e1a00002 mov r0, r2
5e8: e59f1080 ldr r1, [pc, #128] ; 670
5ec: e1a02003 mov r2, r3
5f0: ebfffffe bl 0
5f4: e59f3060 ldr r3, [pc, #96] ; 65c
5f8: e5932000 ldr r2, [r3]
5fc: e59f3068 ldr r3, [pc, #104] ; 66c
600: e5933000 ldr r3, [r3]
604: e1a00002 mov r0, r2
608: e59f1060 ldr r1, [pc, #96] ; 670
60c: e1a02003 mov r2, r3
610: ebfffffe bl 0
614: e59f3040 ldr r3, [pc, #64] ; 65c
618: e5933000 ldr r3, [r3]
61c: e1a00003 mov r0, r3
620: ebfffffe bl 0
624: e59f2030 ldr r2, [pc, #48] ; 65c
628: e3a03000 mov r3, #0 ; 0x0
62c: e5823000 str r3, [r2]
630: ebfffffe bl 298
634: e59f2038 ldr r2, [pc, #56] ; 674
638: e3a03001 mov r3, #1 ; 0x1
63c: e5823000 str r3, [r2]
640: e3a00001 mov r0, #1 ; 0x1
644: ebfffffe bl d490
...
654: 000000b4 .word 0x000000b4
658: 000000cc .word 0x000000cc
...
664: 00000010 .word 0x00000010
668: 000000d0 .word 0x000000d0
66c: 00000000 .word 0x00000000
670: 00000030 .word 0x00000030
674: 00000000 .word 0x00000000
00000678 :
678: e52de004 push {lr} ; (str lr, [sp, #-4]!)
67c: e24dd00c sub sp, sp, #12 ; 0xc
680: e58d0004 str r0, [sp, #4]
684: e58d1000 str r1, [sp]
688: e59f3024 ldr r3, [pc, #36] ; 6b4
68c: e5933000 ldr r3, [r3]
690: e3530000 cmp r3, #0 ; 0x0
694: 0a000003 beq 6a8
698: e59d0004 ldr r0, [sp, #4]
69c: e3a01000 mov r1, #0 ; 0x0
6a0: e59d2000 ldr r2, [sp]
6a4: ebfffffe bl 0
6a8: e59d0004 ldr r0, [sp, #4]
6ac: e59d1000 ldr r1, [sp]
6b0: ebffff74 bl 488
6b4: 00000000 .word 0x00000000
000006b8 :
6b8: e92d000f push {r0, r1, r2, r3}
6bc: e52de004 push {lr} ; (str lr, [sp, #-4]!)
6c0: e24dd00c sub sp, sp, #12 ; 0xc
6c4: e28d3014 add r3, sp, #20 ; 0x14
6c8: e58d3004 str r3, [sp, #4]
6cc: e59d3004 ldr r3, [sp, #4]
6d0: e59d0010 ldr r0, [sp, #16]
6d4: e1a01003 mov r1, r3
6d8: ebfffffe bl 678
000006dc :
6dc: e24dd008 sub sp, sp, #8 ; 0x8
6e0: e59f3098 ldr r3, [pc, #152] ; 780
6e4: e5932000 ldr r2, [r3]
6e8: e59f3094 ldr r3, [pc, #148] ; 784
6ec: e5832000 str r2, [r3]
6f0: e59f208c ldr r2, [pc, #140] ; 784
6f4: e3a03001 mov r3, #1 ; 0x1
6f8: e5823004 str r3, [r2, #4]
6fc: e59f3084 ldr r3, [pc, #132] ; 788
700: e5932000 ldr r2, [r3]
704: e59f3078 ldr r3, [pc, #120] ; 784
708: e5832008 str r2, [r3, #8]
70c: e59f2070 ldr r2, [pc, #112] ; 784
710: e3a03002 mov r3, #2 ; 0x2
714: e582300c str r3, [r2, #12]
718: e59f306c ldr r3, [pc, #108] ; 78c
71c: e5932000 ldr r2, [r3]
720: e59f305c ldr r3, [pc, #92] ; 784
724: e5832010 str r2, [r3, #16]
728: e59f2054 ldr r2, [pc, #84] ; 784
72c: e3a03002 mov r3, #2 ; 0x2
730: e5823014 str r3, [r2, #20]
734: e3a03003 mov r3, #3 ; 0x3
738: e58d3004 str r3, [sp, #4]
73c: ea00000a b 76c
740: e59d3004 ldr r3, [sp, #4]
744: e59f2038 ldr r2, [pc, #56] ; 784
748: e3a01004 mov r1, #4 ; 0x4
74c: e1a03183 lsl r3, r3, #3
750: e0833002 add r3, r3, r2
754: e0832001 add r2, r3, r1
758: e3a03000 mov r3, #0 ; 0x0
75c: e5823000 str r3, [r2]
760: e59d3004 ldr r3, [sp, #4]
764: e2833001 add r3, r3, #1 ; 0x1
768: e58d3004 str r3, [sp, #4]
76c: e59d3004 ldr r3, [sp, #4]
770: e3530027 cmp r3, #39 ; 0x27
774: dafffff1 ble 740
778: e28dd008 add sp, sp, #8 ; 0x8
77c: e12fff1e bx lr
...
00000790 :
790: e24dd008 sub sp, sp, #8 ; 0x8
794: e3a03000 mov r3, #0 ; 0x0
798: e58d3004 str r3, [sp, #4]
79c: e3a03003 mov r3, #3 ; 0x3
7a0: e58d3000 str r3, [sp]
7a4: ea00000e b 7e4
7a8: e59d3000 ldr r3, [sp]
7ac: e59f204c ldr r2, [pc, #76] ; 800
7b0: e3a01004 mov r1, #4 ; 0x4
7b4: e1a03183 lsl r3, r3, #3
7b8: e0833002 add r3, r3, r2
7bc: e0833001 add r3, r3, r1
7c0: e5933000 ldr r3, [r3]
7c4: e3530000 cmp r3, #0 ; 0x0
7c8: 0a000002 beq 7d8
7cc: e59d3004 ldr r3, [sp, #4]
7d0: e2833001 add r3, r3, #1 ; 0x1
7d4: e58d3004 str r3, [sp, #4]
7d8: e59d3000 ldr r3, [sp]
7dc: e2833001 add r3, r3, #1 ; 0x1
7e0: e58d3000 str r3, [sp]
7e4: e59d3000 ldr r3, [sp]
7e8: e3530027 cmp r3, #39 ; 0x27
7ec: daffffed ble 7a8
7f0: e59d3004 ldr r3, [sp, #4]
7f4: e1a00003 mov r0, r3
7f8: e28dd008 add sp, sp, #8 ; 0x8
7fc: e12fff1e bx lr
800: 00000000 .word 0x00000000
00000804 :
804: e52de004 push {lr} ; (str lr, [sp, #-4]!)
808: e24dd00c sub sp, sp, #12 ; 0xc
80c: e58d0004 str r0, [sp, #4]
810: e59d3004 ldr r3, [sp, #4]
814: e3730105 cmn r3, #1073741825 ; 0x40000001
818: da000004 ble 830
81c: e59d3004 ldr r3, [sp, #4]
820: e6ef3073 uxtb r3, r3
824: e6af3073 sxtb r3, r3
828: e58d3000 str r3, [sp]
82c: ea00000d b 868
830: e59d3004 ldr r3, [sp, #4]
834: e353020a cmp r3, #-1610612736 ; 0xa0000000
838: ba000008 blt 860
83c: e59d3004 ldr r3, [sp, #4]
840: e1a03183 lsl r3, r3, #3
844: ed937b00 vldr d7, [r3]
848: eebd7bc7 ftosizd s14, d7
84c: ee173a10 fmrs r3, s14
850: e6ef3073 uxtb r3, r3
854: e6af3073 sxtb r3, r3
858: e58d3000 str r3, [sp]
85c: ea000001 b 868
860: e59f0010 ldr r0, [pc, #16] ; 878
864: ebfffffe bl 6b8
868: e59d3000 ldr r3, [sp]
86c: e1a00003 mov r0, r3
870: e28dd00c add sp, sp, #12 ; 0xc
874: e8bd8000 pop {pc}
878: 000000e8 .word 0x000000e8
0000087c :
87c: e52de004 push {lr} ; (str lr, [sp, #-4]!)
880: e24dd034 sub sp, sp, #52 ; 0x34
884: e58d000c str r0, [sp, #12]
888: e58d1008 str r1, [sp, #8]
88c: e58d2004 str r2, [sp, #4]
890: e59d300c ldr r3, [sp, #12]
894: e5933000 ldr r3, [r3]
898: e58d3018 str r3, [sp, #24]
89c: e59d3008 ldr r3, [sp, #8]
8a0: e1a03183 lsl r3, r3, #3
8a4: e58d301c str r3, [sp, #28]
8a8: e59d301c ldr r3, [sp, #28]
8ac: e5933004 ldr r3, [r3, #4]
8b0: e58d3024 str r3, [sp, #36]
8b4: e59d2008 ldr r2, [sp, #8]
8b8: e59d3018 ldr r3, [sp, #24]
8bc: e1520003 cmp r2, r3
8c0: 1a000018 bne 928
8c4: e59d301c ldr r3, [sp, #28]
8c8: e5933008 ldr r3, [r3, #8]
8cc: e3530001 cmp r3, #1 ; 0x1
8d0: 1a000014 bne 928
8d4: e59d301c ldr r3, [sp, #28]
8d8: e5932000 ldr r2, [r3]
8dc: e59d301c ldr r3, [sp, #28]
8e0: e2833014 add r3, r3, #20 ; 0x14
8e4: e1520003 cmp r2, r3
8e8: 3a00000e bcc 928
8ec: e59d301c ldr r3, [sp, #28]
8f0: e5933004 ldr r3, [r3, #4]
8f4: e2832001 add r2, r3, #1 ; 0x1
8f8: e59d301c ldr r3, [sp, #28]
8fc: e5832004 str r2, [r3, #4]
900: e59d301c ldr r3, [sp, #28]
904: e5932000 ldr r2, [r3]
908: e59d3004 ldr r3, [sp, #4]
90c: e5823000 str r3, [r2]
910: e59d301c ldr r3, [sp, #28]
914: e5933000 ldr r3, [r3]
918: e2432004 sub r2, r3, #4 ; 0x4
91c: e59d301c ldr r3, [sp, #28]
920: e5832000 str r2, [r3]
924: ea000051 b a70
928: e59d3024 ldr r3, [sp, #36]
92c: e2832004 add r2, r3, #4 ; 0x4
930: e59d3024 ldr r3, [sp, #36]
934: e1a03143 asr r3, r3, #2
938: e0823003 add r3, r2, r3
93c: e58d3028 str r3, [sp, #40]
940: e59d0028 ldr r0, [sp, #40]
944: ebfffffe bl 0
948: e1a03000 mov r3, r0
94c: e58d3020 str r3, [sp, #32]
950: e59d3024 ldr r3, [sp, #36]
954: e2832001 add r2, r3, #1 ; 0x1
958: e59d3020 ldr r3, [sp, #32]
95c: e5832004 str r2, [r3, #4]
960: e59d3020 ldr r3, [sp, #32]
964: e5931000 ldr r1, [r3]
968: e59d3020 ldr r3, [sp, #32]
96c: e5932004 ldr r2, [r3, #4]
970: e59d3028 ldr r3, [sp, #40]
974: e0623003 rsb r3, r2, r3
978: e1a03103 lsl r3, r3, #2
97c: e0812003 add r2, r1, r3
980: e59d3020 ldr r3, [sp, #32]
984: e5832000 str r2, [r3]
988: e59d3020 ldr r3, [sp, #32]
98c: e5933000 ldr r3, [r3]
990: e2833004 add r3, r3, #4 ; 0x4
994: e58d3010 str r3, [sp, #16]
998: e59d2010 ldr r2, [sp, #16]
99c: e59d3004 ldr r3, [sp, #4]
9a0: e5823000 str r3, [r2]
9a4: e59d301c ldr r3, [sp, #28]
9a8: e5933000 ldr r3, [r3]
9ac: e58d3014 str r3, [sp, #20]
9b0: e59d3014 ldr r3, [sp, #20]
9b4: e2833004 add r3, r3, #4 ; 0x4
9b8: e58d3014 str r3, [sp, #20]
9bc: e59d3014 ldr r3, [sp, #20]
9c0: e5933000 ldr r3, [r3]
9c4: e58d302c str r3, [sp, #44]
9c8: e59d3010 ldr r3, [sp, #16]
9cc: e2833004 add r3, r3, #4 ; 0x4
9d0: e58d3010 str r3, [sp, #16]
9d4: e59d2010 ldr r2, [sp, #16]
9d8: e59d302c ldr r3, [sp, #44]
9dc: e5823000 str r3, [r2]
9e0: e59d302c ldr r3, [sp, #44]
9e4: e3730105 cmn r3, #1073741825 ; 0x40000001
9e8: cafffff0 bgt 9b0
9ec: e59d302c ldr r3, [sp, #44]
9f0: e3730105 cmn r3, #1073741825 ; 0x40000001
9f4: 0a000006 beq a14
9f8: e59d302c ldr r3, [sp, #44]
9fc: e1a03183 lsl r3, r3, #3
a00: e1a02003 mov r2, r3
a04: e5923008 ldr r3, [r2, #8]
a08: e2833001 add r3, r3, #1 ; 0x1
a0c: e5823008 str r3, [r2, #8]
a10: eaffffe6 b 9b0
a14: e59d300c ldr r3, [sp, #12]
a18: e5933000 ldr r3, [r3]
a1c: e3730105 cmn r3, #1073741825 ; 0x40000001
a20: aa00000c bge a58
a24: e59d300c ldr r3, [sp, #12]
a28: e5933000 ldr r3, [r3]
a2c: e1a03183 lsl r3, r3, #3
a30: e5932008 ldr r2, [r3, #8]
a34: e2422001 sub r2, r2, #1 ; 0x1
a38: e5832008 str r2, [r3, #8]
a3c: e5933008 ldr r3, [r3, #8]
a40: e3530000 cmp r3, #0 ; 0x0
a44: 1a000003 bne a58
a48: e59d300c ldr r3, [sp, #12]
a4c: e5933000 ldr r3, [r3]
a50: e1a00003 mov r0, r3
a54: ebfffffe bl 2edc
a58: e59d3020 ldr r3, [sp, #32]
a5c: e1a031a3 lsr r3, r3, #3
a60: e2833102 add r3, r3, #-2147483648 ; 0x80000000
a64: e1a02003 mov r2, r3
a68: e59d300c ldr r3, [sp, #12]
a6c: e5832000 str r2, [r3]
a70: e28dd034 add sp, sp, #52 ; 0x34
a74: e8bd8000 pop {pc}
00000a78 :
a78: e52de004 push {lr} ; (str lr, [sp, #-4]!)
a7c: e24dd044 sub sp, sp, #68 ; 0x44
a80: e58d000c str r0, [sp, #12]
a84: e58d1008 str r1, [sp, #8]
a88: e58d2004 str r2, [sp, #4]
a8c: e59d300c ldr r3, [sp, #12]
a90: e5933000 ldr r3, [r3]
a94: e58d301c str r3, [sp, #28]
a98: e59d3008 ldr r3, [sp, #8]
a9c: e1a03183 lsl r3, r3, #3
aa0: e58d3020 str r3, [sp, #32]
aa4: e59d3020 ldr r3, [sp, #32]
aa8: e5933004 ldr r3, [r3, #4]
aac: e58d302c str r3, [sp, #44]
ab0: e59d2008 ldr r2, [sp, #8]
ab4: e59d301c ldr r3, [sp, #28]
ab8: e1520003 cmp r2, r3
abc: 1a00004e bne bfc
ac0: e59d3020 ldr r3, [sp, #32]
ac4: e5933008 ldr r3, [r3, #8]
ac8: e3530001 cmp r3, #1 ; 0x1
acc: 1a00004a bne bfc
ad0: e59d3020 ldr r3, [sp, #32]
ad4: e593300c ldr r3, [r3, #12]
ad8: e3530000 cmp r3, #0 ; 0x0
adc: 1a00002d bne b98
ae0: e59d302c ldr r3, [sp, #44]
ae4: e2832004 add r2, r3, #4 ; 0x4
ae8: e59d302c ldr r3, [sp, #44]
aec: e1a03143 asr r3, r3, #2
af0: e0823003 add r3, r2, r3
af4: e58d3030 str r3, [sp, #48]
af8: e59d3020 ldr r3, [sp, #32]
afc: e5933000 ldr r3, [r3]
b00: e58d3034 str r3, [sp, #52]
b04: e59d3030 ldr r3, [sp, #48]
b08: e1a03103 lsl r3, r3, #2
b0c: e1a02003 mov r2, r3
b10: e59d3034 ldr r3, [sp, #52]
b14: e0823003 add r3, r2, r3
b18: e2833008 add r3, r3, #8 ; 0x8
b1c: e1a02003 mov r2, r3
b20: e59d3020 ldr r3, [sp, #32]
b24: e0633002 rsb r3, r3, r2
b28: e59d0020 ldr r0, [sp, #32]
b2c: e1a01003 mov r1, r3
b30: ebfffffe bl 0
b34: e1a03000 mov r3, r0
b38: e58d3024 str r3, [sp, #36]
b3c: e59d2034 ldr r2, [sp, #52]
b40: e59d3020 ldr r3, [sp, #32]
b44: e0633002 rsb r3, r3, r2
b48: e1a03143 asr r3, r3, #2
b4c: e1a03103 lsl r3, r3, #2
b50: e1a02003 mov r2, r3
b54: e59d3024 ldr r3, [sp, #36]
b58: e0822003 add r2, r2, r3
b5c: e59d3024 ldr r3, [sp, #36]
b60: e5832000 str r2, [r3]
b64: e59d3024 ldr r3, [sp, #36]
b68: e58d3020 str r3, [sp, #32]
b6c: e59d2030 ldr r2, [sp, #48]
b70: e59d302c ldr r3, [sp, #44]
b74: e0632002 rsb r2, r3, r2
b78: e59d3020 ldr r3, [sp, #32]
b7c: e583200c str r2, [r3, #12]
b80: e59d3020 ldr r3, [sp, #32]
b84: e1a031a3 lsr r3, r3, #3
b88: e2833102 add r3, r3, #-2147483648 ; 0x80000000
b8c: e1a02003 mov r2, r3
b90: e59d300c ldr r3, [sp, #12]
b94: e5832000 str r2, [r3]
b98: e59d3020 ldr r3, [sp, #32]
b9c: e593300c ldr r3, [r3, #12]
ba0: e2432001 sub r2, r3, #1 ; 0x1
ba4: e59d3020 ldr r3, [sp, #32]
ba8: e583200c str r2, [r3, #12]
bac: e59d3020 ldr r3, [sp, #32]
bb0: e5933004 ldr r3, [r3, #4]
bb4: e2832001 add r2, r3, #1 ; 0x1
bb8: e59d3020 ldr r3, [sp, #32]
bbc: e5832004 str r2, [r3, #4]
bc0: e59d3020 ldr r3, [sp, #32]
bc4: e5932000 ldr r2, [r3]
bc8: e59d302c ldr r3, [sp, #44]
bcc: e1a03103 lsl r3, r3, #2
bd0: e0823003 add r3, r2, r3
bd4: e2833004 add r3, r3, #4 ; 0x4
bd8: e58d3038 str r3, [sp, #56]
bdc: e59d2038 ldr r2, [sp, #56]
be0: e59d3004 ldr r3, [sp, #4]
be4: e5823000 str r3, [r2]
be8: e59d3038 ldr r3, [sp, #56]
bec: e2832004 add r2, r3, #4 ; 0x4
bf0: e3e03101 mvn r3, #1073741824 ; 0x40000000
bf4: e5823000 str r3, [r2]
bf8: ea000052 b d48
bfc: e59d302c ldr r3, [sp, #44]
c00: e2832004 add r2, r3, #4 ; 0x4
c04: e59d302c ldr r3, [sp, #44]
c08: e1a03143 asr r3, r3, #2
c0c: e0823003 add r3, r2, r3
c10: e58d3030 str r3, [sp, #48]
c14: e59d0030 ldr r0, [sp, #48]
c18: ebfffffe bl 0
c1c: e1a03000 mov r3, r0
c20: e58d3028 str r3, [sp, #40]
c24: e59d302c ldr r3, [sp, #44]
c28: e2832001 add r2, r3, #1 ; 0x1
c2c: e59d3028 ldr r3, [sp, #40]
c30: e5832004 str r2, [r3, #4]
c34: e59d3028 ldr r3, [sp, #40]
c38: e5932004 ldr r2, [r3, #4]
c3c: e59d3030 ldr r3, [sp, #48]
c40: e0622003 rsb r2, r2, r3
c44: e59d3028 ldr r3, [sp, #40]
c48: e583200c str r2, [r3, #12]
c4c: e59d3028 ldr r3, [sp, #40]
c50: e5933000 ldr r3, [r3]
c54: e58d3014 str r3, [sp, #20]
c58: e59d3020 ldr r3, [sp, #32]
c5c: e5933000 ldr r3, [r3]
c60: e58d3018 str r3, [sp, #24]
c64: e59d3018 ldr r3, [sp, #24]
c68: e2833004 add r3, r3, #4 ; 0x4
c6c: e58d3018 str r3, [sp, #24]
c70: e59d3018 ldr r3, [sp, #24]
c74: e5933000 ldr r3, [r3]
c78: e58d303c str r3, [sp, #60]
c7c: e59d3014 ldr r3, [sp, #20]
c80: e2833004 add r3, r3, #4 ; 0x4
c84: e58d3014 str r3, [sp, #20]
c88: e59d2014 ldr r2, [sp, #20]
c8c: e59d303c ldr r3, [sp, #60]
c90: e5823000 str r3, [r2]
c94: e59d303c ldr r3, [sp, #60]
c98: e3730105 cmn r3, #1073741825 ; 0x40000001
c9c: cafffff0 bgt c64
ca0: e59d303c ldr r3, [sp, #60]
ca4: e3730105 cmn r3, #1073741825 ; 0x40000001
ca8: 0a000006 beq cc8
cac: e59d303c ldr r3, [sp, #60]
cb0: e1a03183 lsl r3, r3, #3
cb4: e1a02003 mov r2, r3
cb8: e5923008 ldr r3, [r2, #8]
cbc: e2833001 add r3, r3, #1 ; 0x1
cc0: e5823008 str r3, [r2, #8]
cc4: eaffffe6 b c64
cc8: e59d2014 ldr r2, [sp, #20]
ccc: e59d3004 ldr r3, [sp, #4]
cd0: e5823000 str r3, [r2]
cd4: e59d3014 ldr r3, [sp, #20]
cd8: e2833004 add r3, r3, #4 ; 0x4
cdc: e58d3014 str r3, [sp, #20]
ce0: e59d2014 ldr r2, [sp, #20]
ce4: e3e03101 mvn r3, #1073741824 ; 0x40000000
ce8: e5823000 str r3, [r2]
cec: e59d300c ldr r3, [sp, #12]
cf0: e5933000 ldr r3, [r3]
cf4: e3730105 cmn r3, #1073741825 ; 0x40000001
cf8: aa00000c bge d30
cfc: e59d300c ldr r3, [sp, #12]
d00: e5933000 ldr r3, [r3]
d04: e1a03183 lsl r3, r3, #3
d08: e5932008 ldr r2, [r3, #8]
d0c: e2422001 sub r2, r2, #1 ; 0x1
d10: e5832008 str r2, [r3, #8]
d14: e5933008 ldr r3, [r3, #8]
d18: e3530000 cmp r3, #0 ; 0x0
d1c: 1a000003 bne d30
d20: e59d300c ldr r3, [sp, #12]
d24: e5933000 ldr r3, [r3]
d28: e1a00003 mov r0, r3
d2c: ebfffffe bl 2edc
d30: e59d3028 ldr r3, [sp, #40]
d34: e1a031a3 lsr r3, r3, #3
d38: e2833102 add r3, r3, #-2147483648 ; 0x80000000
d3c: e1a02003 mov r2, r3
d40: e59d300c ldr r3, [sp, #12]
d44: e5832000 str r2, [r3]
d48: e28dd044 add sp, sp, #68 ; 0x44
d4c: e8bd8000 pop {pc}
00000d50 :
d50: e52de004 push {lr} ; (str lr, [sp, #-4]!)
d54: e24dd03c sub sp, sp, #60 ; 0x3c
d58: e58d000c str r0, [sp, #12]
d5c: e58d1008 str r1, [sp, #8]
d60: e58d2004 str r2, [sp, #4]
d64: e59d300c ldr r3, [sp, #12]
d68: e1a03183 lsl r3, r3, #3
d6c: e58d302c str r3, [sp, #44]
d70: e59d302c ldr r3, [sp, #44]
d74: e5933004 ldr r3, [r3, #4]
d78: e58d3030 str r3, [sp, #48]
d7c: e59d302c ldr r3, [sp, #44]
d80: e5933008 ldr r3, [r3, #8]
d84: e3530001 cmp r3, #1 ; 0x1
d88: 1a000077 bne f6c
d8c: e59d302c ldr r3, [sp, #44]
d90: e593200c ldr r2, [r3, #12]
d94: e59d3004 ldr r3, [sp, #4]
d98: e1520003 cmp r2, r3
d9c: ca00002b bgt e50
da0: e59d2030 ldr r2, [sp, #48]
da4: e59d3004 ldr r3, [sp, #4]
da8: e0823003 add r3, r2, r3
dac: e2831004 add r1, r3, #4 ; 0x4
db0: e59d2030 ldr r2, [sp, #48]
db4: e59d3004 ldr r3, [sp, #4]
db8: e0823003 add r3, r2, r3
dbc: e1a03143 asr r3, r3, #2
dc0: e0813003 add r3, r1, r3
dc4: e58d3020 str r3, [sp, #32]
dc8: e59d302c ldr r3, [sp, #44]
dcc: e5933000 ldr r3, [r3]
dd0: e1a02003 mov r2, r3
dd4: e59d302c ldr r3, [sp, #44]
dd8: e0633002 rsb r3, r3, r2
ddc: e1a03143 asr r3, r3, #2
de0: e58d3034 str r3, [sp, #52]
de4: e59d3020 ldr r3, [sp, #32]
de8: e2833001 add r3, r3, #1 ; 0x1
dec: e1a03103 lsl r3, r3, #2
df0: e2833014 add r3, r3, #20 ; 0x14
df4: e59d002c ldr r0, [sp, #44]
df8: e1a01003 mov r1, r3
dfc: ebfffffe bl 0
e00: e1a03000 mov r3, r0
e04: e58d3014 str r3, [sp, #20]
e08: e59d3034 ldr r3, [sp, #52]
e0c: e1a03103 lsl r3, r3, #2
e10: e1a02003 mov r2, r3
e14: e59d3014 ldr r3, [sp, #20]
e18: e0822003 add r2, r2, r3
e1c: e59d3014 ldr r3, [sp, #20]
e20: e5832000 str r2, [r3]
e24: e59d3014 ldr r3, [sp, #20]
e28: e58d302c str r3, [sp, #44]
e2c: e59d2004 ldr r2, [sp, #4]
e30: e59d3030 ldr r3, [sp, #48]
e34: e0822003 add r2, r2, r3
e38: e59d3020 ldr r3, [sp, #32]
e3c: e0623003 rsb r3, r2, r3
e40: e2432001 sub r2, r3, #1 ; 0x1
e44: e59d302c ldr r3, [sp, #44]
e48: e583200c str r2, [r3, #12]
e4c: ea000005 b e68
e50: e59d302c ldr r3, [sp, #44]
e54: e593200c ldr r2, [r3, #12]
e58: e59d3004 ldr r3, [sp, #4]
e5c: e0632002 rsb r2, r3, r2
e60: e59d302c ldr r3, [sp, #44]
e64: e583200c str r2, [r3, #12]
e68: e59d302c ldr r3, [sp, #44]
e6c: e5932004 ldr r2, [r3, #4]
e70: e59d3004 ldr r3, [sp, #4]
e74: e0822003 add r2, r2, r3
e78: e59d302c ldr r3, [sp, #44]
e7c: e5832004 str r2, [r3, #4]
e80: e59d302c ldr r3, [sp, #44]
e84: e5933000 ldr r3, [r3]
e88: e2832004 add r2, r3, #4 ; 0x4
e8c: e59d302c ldr r3, [sp, #44]
e90: e5933004 ldr r3, [r3, #4]
e94: e1a03103 lsl r3, r3, #2
e98: e0822003 add r2, r2, r3
e9c: e3e03101 mvn r3, #1073741824 ; 0x40000000
ea0: e5823000 str r3, [r2]
ea4: e59d302c ldr r3, [sp, #44]
ea8: e5932000 ldr r2, [r3]
eac: e59d3030 ldr r3, [sp, #48]
eb0: e1a03103 lsl r3, r3, #2
eb4: e0823003 add r3, r2, r3
eb8: e58d3028 str r3, [sp, #40]
ebc: e59d302c ldr r3, [sp, #44]
ec0: e5932000 ldr r2, [r3]
ec4: e59d302c ldr r3, [sp, #44]
ec8: e5933004 ldr r3, [r3, #4]
ecc: e1a03103 lsl r3, r3, #2
ed0: e0823003 add r3, r2, r3
ed4: e58d3024 str r3, [sp, #36]
ed8: e59d302c ldr r3, [sp, #44]
edc: e5933004 ldr r3, [r3, #4]
ee0: e2833001 add r3, r3, #1 ; 0x1
ee4: e58d3020 str r3, [sp, #32]
ee8: e59d3030 ldr r3, [sp, #48]
eec: e2833001 add r3, r3, #1 ; 0x1
ef0: e58d3004 str r3, [sp, #4]
ef4: e59d2030 ldr r2, [sp, #48]
ef8: e59d3008 ldr r3, [sp, #8]
efc: e0633002 rsb r3, r3, r2
f00: e58d301c str r3, [sp, #28]
f04: ea000012 b f54
f08: e59d3028 ldr r3, [sp, #40]
f0c: e5932000 ldr r2, [r3]
f10: e59d3024 ldr r3, [sp, #36]
f14: e5832000 str r2, [r3]
f18: e59d3024 ldr r3, [sp, #36]
f1c: e2433004 sub r3, r3, #4 ; 0x4
f20: e58d3024 str r3, [sp, #36]
f24: e59d3028 ldr r3, [sp, #40]
f28: e2433004 sub r3, r3, #4 ; 0x4
f2c: e58d3028 str r3, [sp, #40]
f30: e59d3004 ldr r3, [sp, #4]
f34: e2433001 sub r3, r3, #1 ; 0x1
f38: e58d3004 str r3, [sp, #4]
f3c: e59d3020 ldr r3, [sp, #32]
f40: e2433001 sub r3, r3, #1 ; 0x1
f44: e58d3020 str r3, [sp, #32]
f48: e59d301c ldr r3, [sp, #28]
f4c: e2433001 sub r3, r3, #1 ; 0x1
f50: e58d301c str r3, [sp, #28]
f54: e59d301c ldr r3, [sp, #28]
f58: e3730001 cmn r3, #1 ; 0x1
f5c: caffffe9 bgt f08
f60: e59d302c ldr r3, [sp, #44]
f64: e58d3000 str r3, [sp]
f68: ea00005e b 10e8
f6c: e59d2030 ldr r2, [sp, #48]
f70: e59d3004 ldr r3, [sp, #4]
f74: e0823003 add r3, r2, r3
f78: e1a00003 mov r0, r3
f7c: ebfffffe bl 0
f80: e1a03000 mov r3, r0
f84: e58d3014 str r3, [sp, #20]
f88: e59d3014 ldr r3, [sp, #20]
f8c: e5933000 ldr r3, [r3]
f90: e58d3024 str r3, [sp, #36]
f94: e59d302c ldr r3, [sp, #44]
f98: e5933000 ldr r3, [r3]
f9c: e58d3028 str r3, [sp, #40]
fa0: e3a03001 mov r3, #1 ; 0x1
fa4: e58d301c str r3, [sp, #28]
fa8: ea000017 b 100c
fac: e59d3028 ldr r3, [sp, #40]
fb0: e2833004 add r3, r3, #4 ; 0x4
fb4: e58d3028 str r3, [sp, #40]
fb8: e59d3028 ldr r3, [sp, #40]
fbc: e5933000 ldr r3, [r3]
fc0: e58d3018 str r3, [sp, #24]
fc4: e59d3024 ldr r3, [sp, #36]
fc8: e2833004 add r3, r3, #4 ; 0x4
fcc: e58d3024 str r3, [sp, #36]
fd0: e59d2024 ldr r2, [sp, #36]
fd4: e59d3018 ldr r3, [sp, #24]
fd8: e5823000 str r3, [r2]
fdc: e59d3018 ldr r3, [sp, #24]
fe0: e3730105 cmn r3, #1073741825 ; 0x40000001
fe4: ca000005 bgt 1000
fe8: e59d3018 ldr r3, [sp, #24]
fec: e1a03183 lsl r3, r3, #3
ff0: e1a02003 mov r2, r3
ff4: e5923008 ldr r3, [r2, #8]
ff8: e2833001 add r3, r3, #1 ; 0x1
ffc: e5823008 str r3, [r2, #8]
1000: e59d301c ldr r3, [sp, #28]
1004: e2833001 add r3, r3, #1 ; 0x1
1008: e58d301c str r3, [sp, #28]
100c: e59d201c ldr r2, [sp, #28]
1010: e59d3008 ldr r3, [sp, #8]
1014: e1520003 cmp r2, r3
1018: baffffe3 blt fac
101c: e59d3004 ldr r3, [sp, #4]
1020: e1a03103 lsl r3, r3, #2
1024: e1a02003 mov r2, r3
1028: e59d3024 ldr r3, [sp, #36]
102c: e0833002 add r3, r3, r2
1030: e58d3024 str r3, [sp, #36]
1034: e59d3028 ldr r3, [sp, #40]
1038: e2833004 add r3, r3, #4 ; 0x4
103c: e58d3028 str r3, [sp, #40]
1040: e59d3028 ldr r3, [sp, #40]
1044: e5933000 ldr r3, [r3]
1048: e58d3018 str r3, [sp, #24]
104c: e59d3024 ldr r3, [sp, #36]
1050: e2833004 add r3, r3, #4 ; 0x4
1054: e58d3024 str r3, [sp, #36]
1058: e59d2024 ldr r2, [sp, #36]
105c: e59d3018 ldr r3, [sp, #24]
1060: e5823000 str r3, [r2]
1064: e59d3018 ldr r3, [sp, #24]
1068: e3730105 cmn r3, #1073741825 ; 0x40000001
106c: ca000008 bgt 1094
1070: e59d3018 ldr r3, [sp, #24]
1074: e3730105 cmn r3, #1073741825 ; 0x40000001
1078: 0a000009 beq 10a4
107c: e59d3018 ldr r3, [sp, #24]
1080: e1a03183 lsl r3, r3, #3
1084: e1a02003 mov r2, r3
1088: e5923008 ldr r3, [r2, #8]
108c: e2833001 add r3, r3, #1 ; 0x1
1090: e5823008 str r3, [r2, #8]
1094: e59d301c ldr r3, [sp, #28]
1098: e2833001 add r3, r3, #1 ; 0x1
109c: e58d301c str r3, [sp, #28]
10a0: eaffffe3 b 1034
10a4: e59d302c ldr r3, [sp, #44]
10a8: e1a031a3 lsr r3, r3, #3
10ac: e2833102 add r3, r3, #-2147483648 ; 0x80000000
10b0: e1a03183 lsl r3, r3, #3
10b4: e5932008 ldr r2, [r3, #8]
10b8: e2422001 sub r2, r2, #1 ; 0x1
10bc: e5832008 str r2, [r3, #8]
10c0: e5933008 ldr r3, [r3, #8]
10c4: e3530000 cmp r3, #0 ; 0x0
10c8: 1a000004 bne 10e0
10cc: e59d302c ldr r3, [sp, #44]
10d0: e1a031a3 lsr r3, r3, #3
10d4: e2833102 add r3, r3, #-2147483648 ; 0x80000000
10d8: e1a00003 mov r0, r3
10dc: ebfffffe bl 2edc
10e0: e59d3014 ldr r3, [sp, #20]
10e4: e58d3000 str r3, [sp]
10e8: e59d3000 ldr r3, [sp]
10ec: e1a00003 mov r0, r3
10f0: e28dd03c add sp, sp, #60 ; 0x3c
10f4: e8bd8000 pop {pc}
000010f8 :
10f8: e52de004 push {lr} ; (str lr, [sp, #-4]!)
10fc: e24dd034 sub sp, sp, #52 ; 0x34
1100: e58d000c str r0, [sp, #12]
1104: e58d1008 str r1, [sp, #8]
1108: e58d2004 str r2, [sp, #4]
110c: e59f32b8 ldr r3, [pc, #696] ; 13cc
1110: e5933000 ldr r3, [r3]
1114: e5933000 ldr r3, [r3]
1118: e58d301c str r3, [sp, #28]
111c: e59d301c ldr r3, [sp, #28]
1120: e5933008 ldr r3, [r3, #8]
1124: e3530001 cmp r3, #1 ; 0x1
1128: 1a000002 bne 1138
112c: e59d3004 ldr r3, [sp, #4]
1130: e3530000 cmp r3, #0 ; 0x0
1134: 1a000072 bne 1304
1138: e59d301c ldr r3, [sp, #28]
113c: e5933004 ldr r3, [r3, #4]
1140: e1a00003 mov r0, r3
1144: ebfffffe bl 0
1148: e1a03000 mov r3, r0
114c: e58d3028 str r3, [sp, #40]
1150: e59d3028 ldr r3, [sp, #40]
1154: e5933000 ldr r3, [r3]
1158: e58d3014 str r3, [sp, #20]
115c: e59d301c ldr r3, [sp, #28]
1160: e5933000 ldr r3, [r3]
1164: e58d3018 str r3, [sp, #24]
1168: e3a03001 mov r3, #1 ; 0x1
116c: e58d3024 str r3, [sp, #36]
1170: ea000017 b 11d4
1174: e59d3018 ldr r3, [sp, #24]
1178: e2833004 add r3, r3, #4 ; 0x4
117c: e58d3018 str r3, [sp, #24]
1180: e59d3018 ldr r3, [sp, #24]
1184: e5933000 ldr r3, [r3]
1188: e58d3020 str r3, [sp, #32]
118c: e59d3014 ldr r3, [sp, #20]
1190: e2833004 add r3, r3, #4 ; 0x4
1194: e58d3014 str r3, [sp, #20]
1198: e59d2014 ldr r2, [sp, #20]
119c: e59d3020 ldr r3, [sp, #32]
11a0: e5823000 str r3, [r2]
11a4: e59d3020 ldr r3, [sp, #32]
11a8: e3730105 cmn r3, #1073741825 ; 0x40000001
11ac: ca000005 bgt 11c8
11b0: e59d3020 ldr r3, [sp, #32]
11b4: e1a03183 lsl r3, r3, #3
11b8: e1a02003 mov r2, r3
11bc: e5923008 ldr r3, [r2, #8]
11c0: e2833001 add r3, r3, #1 ; 0x1
11c4: e5823008 str r3, [r2, #8]
11c8: e59d3024 ldr r3, [sp, #36]
11cc: e2833001 add r3, r3, #1 ; 0x1
11d0: e58d3024 str r3, [sp, #36]
11d4: e59d2024 ldr r2, [sp, #36]
11d8: e59d300c ldr r3, [sp, #12]
11dc: e1520003 cmp r2, r3
11e0: baffffe3 blt 1174
11e4: e59d3008 ldr r3, [sp, #8]
11e8: e5933004 ldr r3, [r3, #4]
11ec: e1a03103 lsl r3, r3, #2
11f0: e1a02003 mov r2, r3
11f4: e59d3018 ldr r3, [sp, #24]
11f8: e0823003 add r3, r2, r3
11fc: e58d302c str r3, [sp, #44]
1200: e59d3008 ldr r3, [sp, #8]
1204: e5933000 ldr r3, [r3]
1208: e58d3018 str r3, [sp, #24]
120c: e3a03001 mov r3, #1 ; 0x1
1210: e58d3024 str r3, [sp, #36]
1214: ea000017 b 1278
1218: e59d3018 ldr r3, [sp, #24]
121c: e2833004 add r3, r3, #4 ; 0x4
1220: e58d3018 str r3, [sp, #24]
1224: e59d3018 ldr r3, [sp, #24]
1228: e5933000 ldr r3, [r3]
122c: e58d3020 str r3, [sp, #32]
1230: e59d3014 ldr r3, [sp, #20]
1234: e2833004 add r3, r3, #4 ; 0x4
1238: e58d3014 str r3, [sp, #20]
123c: e59d2014 ldr r2, [sp, #20]
1240: e59d3020 ldr r3, [sp, #32]
1244: e5823000 str r3, [r2]
1248: e59d3020 ldr r3, [sp, #32]
124c: e3730105 cmn r3, #1073741825 ; 0x40000001
1250: ca000005 bgt 126c
1254: e59d3020 ldr r3, [sp, #32]
1258: e1a03183 lsl r3, r3, #3
125c: e1a02003 mov r2, r3
1260: e5923008 ldr r3, [r2, #8]
1264: e2833001 add r3, r3, #1 ; 0x1
1268: e5823008 str r3, [r2, #8]
126c: e59d3024 ldr r3, [sp, #36]
1270: e2833001 add r3, r3, #1 ; 0x1
1274: e58d3024 str r3, [sp, #36]
1278: e59d3008 ldr r3, [sp, #8]
127c: e5932004 ldr r2, [r3, #4]
1280: e59d3024 ldr r3, [sp, #36]
1284: e1520003 cmp r2, r3
1288: aaffffe2 bge 1218
128c: e59d302c ldr r3, [sp, #44]
1290: e58d3018 str r3, [sp, #24]
1294: e59d3018 ldr r3, [sp, #24]
1298: e2833004 add r3, r3, #4 ; 0x4
129c: e58d3018 str r3, [sp, #24]
12a0: e59d3018 ldr r3, [sp, #24]
12a4: e5933000 ldr r3, [r3]
12a8: e58d3020 str r3, [sp, #32]
12ac: e59d3014 ldr r3, [sp, #20]
12b0: e2833004 add r3, r3, #4 ; 0x4
12b4: e58d3014 str r3, [sp, #20]
12b8: e59d2014 ldr r2, [sp, #20]
12bc: e59d3020 ldr r3, [sp, #32]
12c0: e5823000 str r3, [r2]
12c4: e59d3020 ldr r3, [sp, #32]
12c8: e3730105 cmn r3, #1073741825 ; 0x40000001
12cc: cafffff0 bgt 1294
12d0: e59d3020 ldr r3, [sp, #32]
12d4: e3730105 cmn r3, #1073741825 ; 0x40000001
12d8: 0a000006 beq 12f8
12dc: e59d3020 ldr r3, [sp, #32]
12e0: e1a03183 lsl r3, r3, #3
12e4: e1a02003 mov r2, r3
12e8: e5923008 ldr r3, [r2, #8]
12ec: e2833001 add r3, r3, #1 ; 0x1
12f0: e5823008 str r3, [r2, #8]
12f4: eaffffe6 b 1294
12f8: e59d3028 ldr r3, [sp, #40]
12fc: e58d3000 str r3, [sp]
1300: ea00002d b 13bc
1304: e59f30c0 ldr r3, [pc, #192] ; 13cc
1308: e5933000 ldr r3, [r3]
130c: e5933000 ldr r3, [r3]
1310: e5932000 ldr r2, [r3]
1314: e59d300c ldr r3, [sp, #12]
1318: e1a03103 lsl r3, r3, #2
131c: e0823003 add r3, r2, r3
1320: e58d3014 str r3, [sp, #20]
1324: e59d3008 ldr r3, [sp, #8]
1328: e5933000 ldr r3, [r3]
132c: e2833004 add r3, r3, #4 ; 0x4
1330: e58d3018 str r3, [sp, #24]
1334: e3a03001 mov r3, #1 ; 0x1
1338: e58d3024 str r3, [sp, #36]
133c: ea000017 b 13a0
1340: e59d3018 ldr r3, [sp, #24]
1344: e5933000 ldr r3, [r3]
1348: e58d3020 str r3, [sp, #32]
134c: e59d3018 ldr r3, [sp, #24]
1350: e2833004 add r3, r3, #4 ; 0x4
1354: e58d3018 str r3, [sp, #24]
1358: e59d2014 ldr r2, [sp, #20]
135c: e59d3020 ldr r3, [sp, #32]
1360: e5823000 str r3, [r2]
1364: e59d3014 ldr r3, [sp, #20]
1368: e2833004 add r3, r3, #4 ; 0x4
136c: e58d3014 str r3, [sp, #20]
1370: e59d3020 ldr r3, [sp, #32]
1374: e3730105 cmn r3, #1073741825 ; 0x40000001
1378: ca000005 bgt 1394
137c: e59d3020 ldr r3, [sp, #32]
1380: e1a03183 lsl r3, r3, #3
1384: e1a02003 mov r2, r3
1388: e5923008 ldr r3, [r2, #8]
138c: e2833001 add r3, r3, #1 ; 0x1
1390: e5823008 str r3, [r2, #8]
1394: e59d3024 ldr r3, [sp, #36]
1398: e2833001 add r3, r3, #1 ; 0x1
139c: e58d3024 str r3, [sp, #36]
13a0: e59d3008 ldr r3, [sp, #8]
13a4: e5932004 ldr r2, [r3, #4]
13a8: e59d3024 ldr r3, [sp, #36]
13ac: e1520003 cmp r2, r3
13b0: aaffffe2 bge 1340
13b4: e59d301c ldr r3, [sp, #28]
13b8: e58d3000 str r3, [sp]
13bc: e59d3000 ldr r3, [sp]
13c0: e1a00003 mov r0, r3
13c4: e28dd034 add sp, sp, #52 ; 0x34
13c8: e8bd8000 pop {pc}
13cc: 00000000 .word 0x00000000
000013d0 :
13d0: e52de004 push {lr} ; (str lr, [sp, #-4]!)
13d4: e24dd01c sub sp, sp, #28 ; 0x1c
13d8: e58d000c str r0, [sp, #12]
13dc: e58d1008 str r1, [sp, #8]
13e0: e58d2004 str r2, [sp, #4]
13e4: e59d000c ldr r0, [sp, #12]
13e8: e59d1004 ldr r1, [sp, #4]
13ec: e3a02001 mov r2, #1 ; 0x1
13f0: ebfffffe bl d50
13f4: e1a03000 mov r3, r0
13f8: e58d3014 str r3, [sp, #20]
13fc: e59d3014 ldr r3, [sp, #20]
1400: e5932000 ldr r2, [r3]
1404: e59d3004 ldr r3, [sp, #4]
1408: e1a03103 lsl r3, r3, #2
140c: e0822003 add r2, r2, r3
1410: e59d3008 ldr r3, [sp, #8]
1414: e5823000 str r3, [r2]
1418: e59d3014 ldr r3, [sp, #20]
141c: e1a031a3 lsr r3, r3, #3
1420: e2833102 add r3, r3, #-2147483648 ; 0x80000000
1424: e1a00003 mov r0, r3
1428: e28dd01c add sp, sp, #28 ; 0x1c
142c: e8bd8000 pop {pc}
00001430 :
1430: e52de004 push {lr} ; (str lr, [sp, #-4]!)
1434: e24dd02c sub sp, sp, #44 ; 0x2c
1438: e58d000c str r0, [sp, #12]
143c: e58d1008 str r1, [sp, #8]
1440: e58d2004 str r2, [sp, #4]
1444: e59d300c ldr r3, [sp, #12]
1448: e5933008 ldr r3, [r3, #8]
144c: e3530001 cmp r3, #1 ; 0x1
1450: 1a000043 bne 1564
1454: e59d3004 ldr r3, [sp, #4]
1458: e5932000 ldr r2, [r3]
145c: e59d300c ldr r3, [sp, #12]
1460: e1a031a3 lsr r3, r3, #3
1464: e2833102 add r3, r3, #-2147483648 ; 0x80000000
1468: e1520003 cmp r2, r3
146c: 1a00003c bne 1564
1470: e59d300c ldr r3, [sp, #12]
1474: e5932000 ldr r2, [r3]
1478: e59d3008 ldr r3, [sp, #8]
147c: e1a03103 lsl r3, r3, #2
1480: e0823003 add r3, r2, r3
1484: e58d3018 str r3, [sp, #24]
1488: e59d300c ldr r3, [sp, #12]
148c: e5932000 ldr r2, [r3]
1490: e59d300c ldr r3, [sp, #12]
1494: e5933004 ldr r3, [r3, #4]
1498: e1a03103 lsl r3, r3, #2
149c: e0823003 add r3, r2, r3
14a0: e2833004 add r3, r3, #4 ; 0x4
14a4: e58d301c str r3, [sp, #28]
14a8: ea000013 b 14fc
14ac: e59d3018 ldr r3, [sp, #24]
14b0: e5933000 ldr r3, [r3]
14b4: e3730105 cmn r3, #1073741825 ; 0x40000001
14b8: aa00000c bge 14f0
14bc: e59d3018 ldr r3, [sp, #24]
14c0: e5933000 ldr r3, [r3]
14c4: e1a03183 lsl r3, r3, #3
14c8: e5932008 ldr r2, [r3, #8]
14cc: e2422001 sub r2, r2, #1 ; 0x1
14d0: e5832008 str r2, [r3, #8]
14d4: e5933008 ldr r3, [r3, #8]
14d8: e3530000 cmp r3, #0 ; 0x0
14dc: 1a000003 bne 14f0
14e0: e59d3018 ldr r3, [sp, #24]
14e4: e5933000 ldr r3, [r3]
14e8: e1a00003 mov r0, r3
14ec: ebfffffe bl 2edc
14f0: e59d3018 ldr r3, [sp, #24]
14f4: e2833004 add r3, r3, #4 ; 0x4
14f8: e58d3018 str r3, [sp, #24]
14fc: e59d2018 ldr r2, [sp, #24]
1500: e59d301c ldr r3, [sp, #28]
1504: e1520003 cmp r2, r3
1508: 3affffe7 bcc 14ac
150c: e59d300c ldr r3, [sp, #12]
1510: e5932000 ldr r2, [r3]
1514: e59d3008 ldr r3, [sp, #8]
1518: e1a03103 lsl r3, r3, #2
151c: e0822003 add r2, r2, r3
1520: e3e03101 mvn r3, #1073741824 ; 0x40000000
1524: e5823000 str r3, [r2]
1528: e59d300c ldr r3, [sp, #12]
152c: e593100c ldr r1, [r3, #12]
1530: e59d300c ldr r3, [sp, #12]
1534: e5932004 ldr r2, [r3, #4]
1538: e59d3008 ldr r3, [sp, #8]
153c: e0633002 rsb r3, r3, r2
1540: e2833001 add r3, r3, #1 ; 0x1
1544: e0812003 add r2, r1, r3
1548: e59d300c ldr r3, [sp, #12]
154c: e583200c str r2, [r3, #12]
1550: e59d3008 ldr r3, [sp, #8]
1554: e2432001 sub r2, r3, #1 ; 0x1
1558: e59d300c ldr r3, [sp, #12]
155c: e5832004 str r2, [r3, #4]
1560: ea000044 b 1678
1564: e59d3008 ldr r3, [sp, #8]
1568: e2433001 sub r3, r3, #1 ; 0x1
156c: e1a00003 mov r0, r3
1570: ebfffffe bl 0
1574: e1a03000 mov r3, r0
1578: e58d3020 str r3, [sp, #32]
157c: e3a03001 mov r3, #1 ; 0x1
1580: e58d3014 str r3, [sp, #20]
1584: ea000019 b 15f0
1588: e59d300c ldr r3, [sp, #12]
158c: e5932000 ldr r2, [r3]
1590: e59d3014 ldr r3, [sp, #20]
1594: e1a03103 lsl r3, r3, #2
1598: e0823003 add r3, r2, r3
159c: e5933000 ldr r3, [r3]
15a0: e58d3024 str r3, [sp, #36]
15a4: e59d3020 ldr r3, [sp, #32]
15a8: e5932000 ldr r2, [r3]
15ac: e59d3014 ldr r3, [sp, #20]
15b0: e1a03103 lsl r3, r3, #2
15b4: e0822003 add r2, r2, r3
15b8: e59d3024 ldr r3, [sp, #36]
15bc: e5823000 str r3, [r2]
15c0: e59d3024 ldr r3, [sp, #36]
15c4: e3730105 cmn r3, #1073741825 ; 0x40000001
15c8: aa000005 bge 15e4
15cc: e59d3024 ldr r3, [sp, #36]
15d0: e1a03183 lsl r3, r3, #3
15d4: e1a02003 mov r2, r3
15d8: e5923008 ldr r3, [r2, #8]
15dc: e2833001 add r3, r3, #1 ; 0x1
15e0: e5823008 str r3, [r2, #8]
15e4: e59d3014 ldr r3, [sp, #20]
15e8: e2833001 add r3, r3, #1 ; 0x1
15ec: e58d3014 str r3, [sp, #20]
15f0: e59d2014 ldr r2, [sp, #20]
15f4: e59d3008 ldr r3, [sp, #8]
15f8: e1520003 cmp r2, r3
15fc: baffffe1 blt 1588
1600: e59d3020 ldr r3, [sp, #32]
1604: e5932000 ldr r2, [r3]
1608: e59d3008 ldr r3, [sp, #8]
160c: e1a03103 lsl r3, r3, #2
1610: e0822003 add r2, r2, r3
1614: e3e03101 mvn r3, #1073741824 ; 0x40000000
1618: e5823000 str r3, [r2]
161c: e59d3004 ldr r3, [sp, #4]
1620: e5933000 ldr r3, [r3]
1624: e3730105 cmn r3, #1073741825 ; 0x40000001
1628: aa00000c bge 1660
162c: e59d3004 ldr r3, [sp, #4]
1630: e5933000 ldr r3, [r3]
1634: e1a03183 lsl r3, r3, #3
1638: e5932008 ldr r2, [r3, #8]
163c: e2422001 sub r2, r2, #1 ; 0x1
1640: e5832008 str r2, [r3, #8]
1644: e5933008 ldr r3, [r3, #8]
1648: e3530000 cmp r3, #0 ; 0x0
164c: 1a000003 bne 1660
1650: e59d3004 ldr r3, [sp, #4]
1654: e5933000 ldr r3, [r3]
1658: e1a00003 mov r0, r3
165c: ebfffffe bl 2edc
1660: e59d3020 ldr r3, [sp, #32]
1664: e1a031a3 lsr r3, r3, #3
1668: e2833102 add r3, r3, #-2147483648 ; 0x80000000
166c: e1a02003 mov r2, r3
1670: e59d3004 ldr r3, [sp, #4]
1674: e5832000 str r2, [r3]
1678: e28dd02c add sp, sp, #44 ; 0x2c
167c: e8bd8000 pop {pc}
00001680 :
1680: e52de004 push {lr} ; (str lr, [sp, #-4]!)
1684: e24dd034 sub sp, sp, #52 ; 0x34
1688: e58d000c str r0, [sp, #12]
168c: e58d1008 str r1, [sp, #8]
1690: e58d2004 str r2, [sp, #4]
1694: e59d300c ldr r3, [sp, #12]
1698: e5932004 ldr r2, [r3, #4]
169c: e59d3008 ldr r3, [sp, #8]
16a0: e0633002 rsb r3, r3, r2
16a4: e2833001 add r3, r3, #1 ; 0x1
16a8: e58d3010 str r3, [sp, #16]
16ac: e59d300c ldr r3, [sp, #12]
16b0: e5933008 ldr r3, [r3, #8]
16b4: e3530001 cmp r3, #1 ; 0x1
16b8: 1a00003e bne 17b8
16bc: e59d300c ldr r3, [sp, #12]
16c0: e1a031a3 lsr r3, r3, #3
16c4: e2833102 add r3, r3, #-2147483648 ; 0x80000000
16c8: e1a02003 mov r2, r3
16cc: e59d3004 ldr r3, [sp, #4]
16d0: e5933000 ldr r3, [r3]
16d4: e1520003 cmp r2, r3
16d8: 1a000036 bne 17b8
16dc: e59d300c ldr r3, [sp, #12]
16e0: e5933000 ldr r3, [r3]
16e4: e2833004 add r3, r3, #4 ; 0x4
16e8: e58d3018 str r3, [sp, #24]
16ec: e59d3018 ldr r3, [sp, #24]
16f0: e58d3014 str r3, [sp, #20]
16f4: e59d300c ldr r3, [sp, #12]
16f8: e5932000 ldr r2, [r3]
16fc: e59d3008 ldr r3, [sp, #8]
1700: e1a03103 lsl r3, r3, #2
1704: e0823003 add r3, r2, r3
1708: e58d301c str r3, [sp, #28]
170c: ea000013 b 1760
1710: e59d3018 ldr r3, [sp, #24]
1714: e5933000 ldr r3, [r3]
1718: e3730105 cmn r3, #1073741825 ; 0x40000001
171c: aa00000c bge 1754
1720: e59d3018 ldr r3, [sp, #24]
1724: e5933000 ldr r3, [r3]
1728: e1a03183 lsl r3, r3, #3
172c: e5932008 ldr r2, [r3, #8]
1730: e2422001 sub r2, r2, #1 ; 0x1
1734: e5832008 str r2, [r3, #8]
1738: e5933008 ldr r3, [r3, #8]
173c: e3530000 cmp r3, #0 ; 0x0
1740: 1a000003 bne 1754
1744: e59d3018 ldr r3, [sp, #24]
1748: e5933000 ldr r3, [r3]
174c: e1a00003 mov r0, r3
1750: ebfffffe bl 2edc
1754: e59d3018 ldr r3, [sp, #24]
1758: e2833004 add r3, r3, #4 ; 0x4
175c: e58d3018 str r3, [sp, #24]
1760: e59d2018 ldr r2, [sp, #24]
1764: e59d301c ldr r3, [sp, #28]
1768: e1520003 cmp r2, r3
176c: 3affffe7 bcc 1710
1770: e59d3010 ldr r3, [sp, #16]
1774: e2833001 add r3, r3, #1 ; 0x1
1778: e1a03103 lsl r3, r3, #2
177c: e59d0014 ldr r0, [sp, #20]
1780: e59d101c ldr r1, [sp, #28]
1784: e1a02003 mov r2, r3
1788: ebfffffe bl 0
178c: e59d300c ldr r3, [sp, #12]
1790: e593200c ldr r2, [r3, #12]
1794: e59d3008 ldr r3, [sp, #8]
1798: e2433001 sub r3, r3, #1 ; 0x1
179c: e0822003 add r2, r2, r3
17a0: e59d300c ldr r3, [sp, #12]
17a4: e583200c str r2, [r3, #12]
17a8: e59d200c ldr r2, [sp, #12]
17ac: e59d3010 ldr r3, [sp, #16]
17b0: e5823004 str r3, [r2, #4]
17b4: ea00003d b 18b0
17b8: e59d0010 ldr r0, [sp, #16]
17bc: ebfffffe bl 0
17c0: e1a03000 mov r3, r0
17c4: e58d3020 str r3, [sp, #32]
17c8: e59d300c ldr r3, [sp, #12]
17cc: e5932000 ldr r2, [r3]
17d0: e59d3008 ldr r3, [sp, #8]
17d4: e1a03103 lsl r3, r3, #2
17d8: e0823003 add r3, r2, r3
17dc: e2433004 sub r3, r3, #4 ; 0x4
17e0: e58d3028 str r3, [sp, #40]
17e4: e59d3020 ldr r3, [sp, #32]
17e8: e5933000 ldr r3, [r3]
17ec: e58d302c str r3, [sp, #44]
17f0: e59d3028 ldr r3, [sp, #40]
17f4: e2833004 add r3, r3, #4 ; 0x4
17f8: e58d3028 str r3, [sp, #40]
17fc: e59d3028 ldr r3, [sp, #40]
1800: e5933000 ldr r3, [r3]
1804: e58d3024 str r3, [sp, #36]
1808: e59d302c ldr r3, [sp, #44]
180c: e2833004 add r3, r3, #4 ; 0x4
1810: e58d302c str r3, [sp, #44]
1814: e59d202c ldr r2, [sp, #44]
1818: e59d3024 ldr r3, [sp, #36]
181c: e5823000 str r3, [r2]
1820: e59d3024 ldr r3, [sp, #36]
1824: e3730105 cmn r3, #1073741825 ; 0x40000001
1828: 0a000009 beq 1854
182c: e59d3024 ldr r3, [sp, #36]
1830: e3730105 cmn r3, #1073741825 ; 0x40000001
1834: aaffffed bge 17f0
1838: e59d3024 ldr r3, [sp, #36]
183c: e1a03183 lsl r3, r3, #3
1840: e1a02003 mov r2, r3
1844: e5923008 ldr r3, [r2, #8]
1848: e2833001 add r3, r3, #1 ; 0x1
184c: e5823008 str r3, [r2, #8]
1850: eaffffe6 b 17f0
1854: e59d3004 ldr r3, [sp, #4]
1858: e5933000 ldr r3, [r3]
185c: e3730105 cmn r3, #1073741825 ; 0x40000001
1860: aa00000c bge 1898
1864: e59d3004 ldr r3, [sp, #4]
1868: e5933000 ldr r3, [r3]
186c: e1a03183 lsl r3, r3, #3
1870: e5932008 ldr r2, [r3, #8]
1874: e2422001 sub r2, r2, #1 ; 0x1
1878: e5832008 str r2, [r3, #8]
187c: e5933008 ldr r3, [r3, #8]
1880: e3530000 cmp r3, #0 ; 0x0
1884: 1a000003 bne 1898
1888: e59d3004 ldr r3, [sp, #4]
188c: e5933000 ldr r3, [r3]
1890: e1a00003 mov r0, r3
1894: ebfffffe bl 2edc
1898: e59d3020 ldr r3, [sp, #32]
189c: e1a031a3 lsr r3, r3, #3
18a0: e2833102 add r3, r3, #-2147483648 ; 0x80000000
18a4: e1a02003 mov r2, r3
18a8: e59d3004 ldr r3, [sp, #4]
18ac: e5832000 str r2, [r3]
18b0: e28dd034 add sp, sp, #52 ; 0x34
18b4: e8bd8000 pop {pc}
000018b8 :
18b8: e52de004 push {lr} ; (str lr, [sp, #-4]!)
18bc: e24dd03c sub sp, sp, #60 ; 0x3c
18c0: e58d000c str r0, [sp, #12]
18c4: e58d1008 str r1, [sp, #8]
18c8: e58d2004 str r2, [sp, #4]
18cc: e59d2008 ldr r2, [sp, #8]
18d0: e59d300c ldr r3, [sp, #12]
18d4: e0633002 rsb r3, r3, r2
18d8: e2833001 add r3, r3, #1 ; 0x1
18dc: e58d3010 str r3, [sp, #16]
18e0: e59f32c8 ldr r3, [pc, #712] ; 1bb0
18e4: e5933000 ldr r3, [r3]
18e8: e5933000 ldr r3, [r3]
18ec: e58d3014 str r3, [sp, #20]
18f0: e59d3004 ldr r3, [sp, #4]
18f4: e3530000 cmp r3, #0 ; 0x0
18f8: 0a000058 beq 1a60
18fc: e59d3014 ldr r3, [sp, #20]
1900: e5932000 ldr r2, [r3]
1904: e59d300c ldr r3, [sp, #12]
1908: e1a03103 lsl r3, r3, #2
190c: e0823003 add r3, r2, r3
1910: e58d301c str r3, [sp, #28]
1914: e59d3014 ldr r3, [sp, #20]
1918: e5932000 ldr r2, [r3]
191c: e59d3008 ldr r3, [sp, #8]
1920: e1a03103 lsl r3, r3, #2
1924: e0823003 add r3, r2, r3
1928: e2833004 add r3, r3, #4 ; 0x4
192c: e58d3020 str r3, [sp, #32]
1930: e59d300c ldr r3, [sp, #12]
1934: e58d3018 str r3, [sp, #24]
1938: ea00001f b 19bc