📄 asm
字号:
434: e3a03001 mov r3, #1 ; 0x1
438: e59dc014 ldr r12, [sp, #20]
43c: e1a03413 mov r3, r3, lsl r4
440: e58d3010 str r3, [sp, #16]
444: e15c0005 cmp r12, r5
448: 21a0c005 movcs r12, r5
44c: e58dc014 str r12, [sp, #20]
450: e1540005 cmp r4, r5
454: e589c000 str r12, [r9]
458: 2a00000b bcs 48c <huft_build+0x144>
45c: e28d3e53 add r3, sp, #1328 ; 0x530
460: e283300c add r3, r3, #12 ; 0xc
464: e7933104 ldr r3, [r3, r4, lsl #2]
468: e59de010 ldr lr, [sp, #16]
46c: e05ee003 subs lr, lr, r3
470: e58de010 str lr, [sp, #16]
474: 4a00000c bmi 4ac <huft_build+0x164>
478: e2844001 add r4, r4, #1 ; 0x1
47c: e1a0e08e mov lr, lr, lsl #1
480: e1540005 cmp r4, r5
484: e58de010 str lr, [sp, #16]
488: 3afffff3 bcc 45c <huft_build+0x114>
48c: e1a00105 mov r0, r5, lsl #2
490: e28d2e53 add r2, sp, #1328 ; 0x530
494: e282200c add r2, r2, #12 ; 0xc
498: e7923000 ldr r3, [r2, r0]
49c: e59d1010 ldr r1, [sp, #16]
4a0: e0511003 subs r1, r1, r3
4a4: e58d1010 str r1, [sp, #16]
4a8: 5a000001 bpl 4b4 <huft_build+0x16c>
4ac: e3a00002 mov r0, #2 ; 0x2
4b0: ea00010f b 8f4 <huft_build+0x5ac>
4b4: e3a04000 mov r4, #0 ; 0x0
4b8: e28d8d15 add r8, sp, #1344 ; 0x540
4bc: e59dc010 ldr r12, [sp, #16]
4c0: e28d1040 add r1, sp, #64 ; 0x40
4c4: e083300c add r3, r3, r12
4c8: e7823000 str r3, [r2, r0]
4cc: e2555001 subs r5, r5, #1 ; 0x1
4d0: e58d403c str r4, [sp, #60]
4d4: 0a000004 beq 4ec <huft_build+0x1a4>
4d8: e4983004 ldr r3, [r8], #4
4dc: e2555001 subs r5, r5, #1 ; 0x1
4e0: e0844003 add r4, r4, r3
4e4: e4814004 str r4, [r1], #4
4e8: 1afffffa bne 4d8 <huft_build+0x190>
4ec: e3a05000 mov r5, #0 ; 0x0
4f0: e59d8034 ldr r8, [sp, #52]
4f4: e4984004 ldr r4, [r8], #4
4f8: e3540000 cmp r4, #0 ; 0x0
4fc: 0a000008 beq 524 <huft_build+0x1dc>
500: e28d1040 add r1, sp, #64 ; 0x40
504: e2411008 sub r1, r1, #8 ; 0x8
508: e28d2080 add r2, sp, #128 ; 0x80
50c: e1a00104 mov r0, r4, lsl #2
510: e7913000 ldr r3, [r1, r0]
514: e2422004 sub r2, r2, #4 ; 0x4
518: e7825103 str r5, [r2, r3, lsl #2]
51c: e2833001 add r3, r3, #1 ; 0x1
520: e7813000 str r3, [r1, r0]
524: e59de030 ldr lr, [sp, #48]
528: e2855001 add r5, r5, #1 ; 0x1
52c: e155000e cmp r5, lr
530: 3affffef bcc 4f4 <huft_build+0x1ac>
534: e3e00000 mvn r0, #0 ; 0x0
538: e58d001c str r0, [sp, #28]
53c: e59d1014 ldr r1, [sp, #20]
540: e3a05000 mov r5, #0 ; 0x0
544: e58d500c str r5, [sp, #12]
548: e58d5038 str r5, [sp, #56]
54c: e28d8080 add r8, sp, #128 ; 0x80
550: e59d2018 ldr r2, [sp, #24]
554: e2488004 sub r8, r8, #4 ; 0x4
558: e59d3020 ldr r3, [sp, #32]
55c: e1a00005 mov r0, r5
560: e58d54fc str r5, [sp, #1276]
564: e261a000 rsb r10, r1, #0 ; 0x0
568: e1520003 cmp r2, r3
56c: ca0000da bgt 8dc <huft_build+0x594>
570: e28dee53 add lr, sp, #1328 ; 0x530
574: e59dc018 ldr r12, [sp, #24]
578: e28ee00c add lr, lr, #12 ; 0xc
57c: e58de004 str lr, [sp, #4]
580: e1a0c10c mov r12, r12, lsl #2
584: e58dc008 str r12, [sp, #8]
588: e79e100c ldr r1, [lr, r12]
58c: e2411001 sub r1, r1, #1 ; 0x1
590: e3710001 cmn r1, #1 ; 0x1
594: e58d1024 str r1, [sp, #36]
598: 0a0000c9 beq 8c4 <huft_build+0x57c>
59c: e59d201c ldr r2, [sp, #28]
5a0: e1a02102 mov r2, r2, lsl #2
5a4: e58d2000 str r2, [sp]
5a8: e28d3014 add r3, sp, #20 ; 0x14
5ac: e8931008 ldmia r3, {r3, r12}
5b0: e08a9003 add r9, r10, r3
5b4: e15c0009 cmp r12, r9
5b8: da000065 ble 754 <huft_build+0x40c>
5bc: e59de000 ldr lr, [sp]
5c0: e28d001c add r0, sp, #28 ; 0x1c
5c4: e8900003 ldmia r0, {r0, r1}
5c8: e28d2014 add r2, sp, #20 ; 0x14
5cc: e892000c ldmia r2, {r2, r3}
5d0: e1a0a009 mov r10, r9
5d4: e59dc024 ldr r12, [sp, #36]
5d8: e28ee004 add lr, lr, #4 ; 0x4
5dc: e2800001 add r0, r0, #1 ; 0x1
5e0: e06a1001 rsb r1, r10, r1
5e4: e58d100c str r1, [sp, #12]
5e8: e1510002 cmp r1, r2
5ec: 21a01002 movcs r1, r2
5f0: e06a4003 rsb r4, r10, r3
5f4: e3a03001 mov r3, #1 ; 0x1
5f8: e1a02413 mov r2, r3, lsl r4
5fc: e58de000 str lr, [sp]
600: e08c3003 add r3, r12, r3
604: e58d001c str r0, [sp, #28]
608: e1520003 cmp r2, r3
60c: e58d100c str r1, [sp, #12]
610: 9a000011 bls 65c <huft_build+0x314>
614: e2423001 sub r3, r2, #1 ; 0x1
618: e59de004 ldr lr, [sp, #4]
61c: e06c2003 rsb r2, r12, r3
620: e59d0008 ldr r0, [sp, #8]
624: e2844001 add r4, r4, #1 ; 0x1
628: e59d300c ldr r3, [sp, #12]
62c: e08e1000 add r1, lr, r0
630: e1540003 cmp r4, r3
634: ea000003 b 648 <huft_build+0x300>
638: e0632002 rsb r2, r3, r2
63c: e59dc00c ldr r12, [sp, #12]
640: e2844001 add r4, r4, #1 ; 0x1
644: e154000c cmp r4, r12
648: 2a000003 bcs 65c <huft_build+0x314>
64c: e5b13004 ldr r3, [r1, #4]!
650: e1a02082 mov r2, r2, lsl #1
654: e1520003 cmp r2, r3
658: 8afffff6 bhi 638 <huft_build+0x2f0>
65c: e3a03001 mov r3, #1 ; 0x1
660: e1a03413 mov r3, r3, lsl r4
664: e2830001 add r0, r3, #1 ; 0x1
668: e1a00180 mov r0, r0, lsl #3
66c: e58d300c str r3, [sp, #12]
670: eb00064a bl 1fa0 <malloc>
674: e3500000 cmp r0, #0 ; 0x0
678: 1a000006 bne 698 <huft_build+0x350>
67c: e59de01c ldr lr, [sp, #28]
680: e35e0000 cmp lr, #0 ; 0x0
684: 0a000001 beq 690 <huft_build+0x348>
688: e59d04fc ldr r0, [sp, #1276]
68c: eb00009a bl 8fc <huft_free>
690: e3a00003 mov r0, #3 ; 0x3
694: ea000096 b 8f4 <huft_build+0x5ac>
698: e59f21d4 ldr r2, [pc, #1d4] ; 874 <huft_build+0x52c>
69c: e59d101c ldr r1, [sp, #28]
6a0: e59dc00c ldr r12, [sp, #12]
6a4: e5923000 ldr r3, [r2]
6a8: e3510000 cmp r1, #0 ; 0x0
6ac: e2833001 add r3, r3, #1 ; 0x1
6b0: e083300c add r3, r3, r12
6b4: e5823000 str r3, [r2]
6b8: e2802008 add r2, r0, #8 ; 0x8
6bc: e59de5a4 ldr lr, [sp, #1444]
6c0: e3a03000 mov r3, #0 ; 0x0
6c4: e58e2000 str r2, [lr]
6c8: e2801004 add r1, r0, #4 ; 0x4
6cc: e58d15a4 str r1, [sp, #1444]
6d0: e28dce4f add r12, sp, #1264 ; 0x4f0
6d4: e5803004 str r3, [r0, #4]
6d8: e1a00002 mov r0, r2
6dc: e59d2000 ldr r2, [sp]
6e0: e28cc00c add r12, r12, #12 ; 0xc
6e4: e78c0002 str r0, [r12, r2]
6e8: 0a000014 beq 740 <huft_build+0x3f8>
6ec: e28d1040 add r1, sp, #64 ; 0x40
6f0: e59d3014 ldr r3, [sp, #20]
6f4: e2411008 sub r1, r1, #8 ; 0x8
6f8: e59de000 ldr lr, [sp]
6fc: e20320ff and r2, r3, #255 ; 0xff
700: e3c63cff bic r3, r6, #65280 ; 0xff00
704: e1836402 orr r6, r3, r2, lsl #8
708: e2843010 add r3, r4, #16 ; 0x10
70c: e20330ff and r3, r3, #255 ; 0xff
710: e3c620ff bic r2, r6, #255 ; 0xff
714: e781500e str r5, [r1, lr]
718: e1836002 orr r6, r3, r2
71c: e59d1014 ldr r1, [sp, #20]
720: e1a07000 mov r7, r0
724: e59de01c ldr lr, [sp, #28]
728: e0612009 rsb r2, r1, r9
72c: e24e3001 sub r3, lr, #1 ; 0x1
730: e79c3103 ldr r3, [r12, r3, lsl #2]
734: e1a04235 mov r4, r5, lsr r2
738: e0833184 add r3, r3, r4, lsl #3
73c: e88300c0 stmia r3, {r6, r7}
740: e28d1014 add r1, sp, #20 ; 0x14
744: e8910006 ldmia r1, {r1, r2}
748: e0899001 add r9, r9, r1
74c: e1520009 cmp r2, r9
750: caffff99 bgt 5bc <huft_build+0x274>
754: e59d3018 ldr r3, [sp, #24]
758: e59de030 ldr lr, [sp, #48]
75c: e06ac003 rsb r12, r10, r3
760: e20c20ff and r2, r12, #255 ; 0xff
764: e3c63cff bic r3, r6, #65280 ; 0xff00
768: e1836402 orr r6, r3, r2, lsl #8
76c: e28d3080 add r3, sp, #128 ; 0x80
770: e2433004 sub r3, r3, #4 ; 0x4
774: e083310e add r3, r3, lr, lsl #2
778: e1580003 cmp r8, r3
77c: 23c6309c biccs r3, r6, #156 ; 0x9c
780: 23836063 orrcs r6, r3, #99 ; 0x63
784: 2a00001a bcs 7f4 <huft_build+0x4ac>
788: e5982000 ldr r2, [r8]
78c: e59d102c ldr r1, [sp, #44]
790: e1520001 cmp r2, r1
794: 2a000009 bcs 7c0 <huft_build+0x478>
798: e35200ff cmp r2, #255 ; 0xff
79c: e3a0200f mov r2, #15 ; 0xf
7a0: 93a02010 movls r2, #16 ; 0x10
7a4: e3c630ff bic r3, r6, #255 ; 0xff
7a8: e1826003 orr r6, r2, r3
7ac: e1a03827 mov r3, r7, lsr #16
7b0: e1a03803 mov r3, r3, lsl #16
7b4: e1d820b0 ldrh r2, [r8]
7b8: e2888004 add r8, r8, #4 ; 0x4
7bc: ea00000b b 7f0 <huft_build+0x4a8>
7c0: e59d302c ldr r3, [sp, #44]
7c4: e2888004 add r8, r8, #4 ; 0x4
7c8: e59de5a0 ldr lr, [sp, #1440]
7cc: e0632002 rsb r2, r3, r2
7d0: e1a02082 mov r2, r2, lsl #1
7d4: e7d2100e ldrb r1, [r2, lr]
7d8: e3c630ff bic r3, r6, #255 ; 0xff
7dc: e1816003 orr r6, r1, r3
7e0: e59d1028 ldr r1, [sp, #40]
7e4: e1a03827 mov r3, r7, lsr #16
7e8: e19220b1 ldrh r2, [r2, r1]
7ec: e1a03803 mov r3, r3, lsl #16
7f0: e1827003 orr r7, r2, r3
7f4: e3a03001 mov r3, #1 ; 0x1
7f8: e1a02c13 mov r2, r3, lsl r12
7fc: e59d300c ldr r3, [sp, #12]
800: e1a04a35 mov r4, r5, lsr r10
804: e1540003 cmp r4, r3
808: 2a000006 bcs 828 <huft_build+0x4e0>
80c: e0803184 add r3, r0, r4, lsl #3
810: e88300c0 stmia r3, {r6, r7}
814: e0833182 add r3, r3, r2, lsl #3
818: e59dc00c ldr r12, [sp, #12]
81c: e0844002 add r4, r4, r2
820: e154000c cmp r4, r12
824: 3afffff9 bcc 810 <huft_build+0x4c8>
828: e59de018 ldr lr, [sp, #24]
82c: e3a03001 mov r3, #1 ; 0x1
830: e24e2001 sub r2, lr, #1 ; 0x1
834: e1a04213 mov r4, r3, lsl r2
838: e1150004 tst r5, r4
83c: 0a000003 beq 850 <huft_build+0x508>
840: e0255004 eor r5, r5, r4
844: e1a040a4 mov r4, r4, lsr #1
848: e1150004 tst r5, r4
84c: 1afffffb bne 840 <huft_build+0x4f8>
850: e0255004 eor r5, r5, r4
854: e28d1040 add r1, sp, #64 ; 0x40
858: e2411008 sub r1, r1, #8 ; 0x8
85c: e3a0c001 mov r12, #1 ; 0x1
860: e1a03a1c mov r3, r12, lsl r10
864: e59de000 ldr lr, [sp]
868: e2433001 sub r3, r3, #1 ; 0x1
86c: e791200e ldr r2, [r1, lr]
870: ea00000b b 8a4 <huft_build+0x55c>
874: 20008370 andcs r8, r0, r0, ror r3
878: e59d2000 ldr r2, [sp]
87c: e59d301c ldr r3, [sp, #28]
880: e59de014 ldr lr, [sp, #20]
884: e2422004 sub r2, r2, #4 ; 0x4
888: e2433001 sub r3, r3, #1 ; 0x1
88c: e06ea00a rsb r10, lr, r10
890: e58d301c str r3, [sp, #28]
894: e1a03a1c mov r3, r12, lsl r10
898: e58d2000 str r2, [sp]
89c: e2433001 sub r3, r3, #1 ; 0x1
8a0: e7912002 ldr r2, [r1, r2]
8a4: e0053003 and r3, r5, r3
8a8: e1530002 cmp r3, r2
8ac: 1afffff1 bne 878 <huft_build+0x530>
8b0: e59d1024 ldr r1, [sp, #36]
8b4: e2411001 sub r1, r1, #1 ; 0x1
8b8: e3710001 cmn r1, #1 ; 0x1
8bc: e58d1024 str r1, [sp, #36]
8c0: 1affff38 bne 5a8 <huft_build+0x260>
8c4: e59d2018 ldr r2, [sp, #24]
8c8: e59d3020 ldr r3, [sp, #32]
8cc: e2822001 add r2, r2, #1 ; 0x1
8d0: e1520003 cmp r2, r3
8d4: e58d2018 str r2, [sp, #24]
8d8: daffff24 ble 570 <huft_build+0x228>
8dc: e59dc020 ldr r12, [sp, #32]
8e0: e59de010 ldr lr, [sp, #16]
8e4: e25c0001 subs r0, r12, #1 ; 0x1
8e8: 13a00001 movne r0, #1 ; 0x1
8ec: e35e0000 cmp lr, #0 ; 0x0
8f0: 03a00000 moveq r0, #0 ; 0x0
8f4: e28ddd16 add sp, sp, #1408 ; 0x580
8f8: e8bd87f0 ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
000008fc <huft_free>:
8fc: e92d4010 stmdb sp!, {r4, lr}
900: e2504000 subs r4, r0, #0 ; 0x0
904: 0a000005 beq 920 <huft_free+0x24>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -