smacker.s

来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 4,395 行 · 第 1/4 页

S
4,395
字号
.file	1 "smacker.c".section .mdebug.abi32.previous.section	.text.smka_decode_init,"ax",@progbits.align	2.align	5.ent	smka_decode_init.type	smka_decode_init, @functionsmka_decode_init:.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0.mask	0x00000000,0.fmask	0x00000000,0.set	noreorder.set	nomacroj	$31move	$2,$0.set	macro.set	reorder.end	smka_decode_init.section	.rodata.str1.4,"aMS",@progbits,1.align	2$LC0:.ascii	"Tree size exceeded!\012\000".section	.text.smacker_decode_bigtree,"ax",@progbits.align	2.align	5.ent	smacker_decode_bigtree.type	smacker_decode_bigtree, @functionsmacker_decode_bigtree:.frame	$sp,40,$31		# vars= 0, regs= 6/0, args= 16, gp= 0.mask	0x801f0000,-4.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-40sw	$19,28($sp)sw	$18,24($sp)sw	$17,20($sp)sw	$31,36($sp)sw	$20,32($sp)sw	$16,16($sp)lw	$7,8($4)lw	$8,0($4)sra	$2,$7,3addu	$2,$2,$8move	$17,$4lbu	$4,0($2)andi	$3,$7,0x7sra	$4,$4,$3addiu	$7,$7,1andi	$4,$4,0x1move	$18,$5move	$19,$6beq	$4,$0,$L27sw	$7,8($17)j	$L23move	$20,$0$L28:lw	$2,20($18)lw	$8,0($17)addu	$2,$16,$2sw	$3,0($2)lw	$5,8($17)addu	$20,$20,$6sra	$2,$5,3addu	$2,$8,$2lbu	$3,0($2)andi	$4,$5,0x7sra	$3,$3,$4addiu	$7,$5,1andi	$3,$3,0x1beq	$3,$0,$L7sw	$7,8($17)$L23:lw	$16,8($18)move	$4,$17addiu	$2,$16,1move	$6,$19sw	$2,8($18)jal	smacker_decode_bigtreemove	$5,$18move	$4,$2li	$2,-2147483648			# 0xffffffff80000000sll	$16,$16,2or	$3,$4,$2bgez	$4,$L28addiu	$6,$4,1addu	$2,$4,$20lw	$31,36($sp)lw	$20,32($sp)lw	$19,28($sp)lw	$18,24($sp)lw	$17,20($sp)lw	$16,16($sp)j	$31addiu	$sp,$sp,40$L27:move	$20,$0$L7:lw	$2,8($18)lw	$3,0($18)slt	$2,$2,$3beq	$2,$0,$L29sra	$4,$7,3addu	$4,$8,$4lbu	$3,3($4)lbu	$5,2($4)lbu	$6,0($4)lbu	$2,1($4)sll	$3,$3,24sll	$5,$5,16or	$3,$3,$5or	$3,$3,$6sll	$2,$2,8or	$2,$2,$3lw	$4,0($19)andi	$3,$7,0x7sra	$2,$2,$3lw	$10,4($4)andi	$2,$2,0x1ffsll	$2,$2,2addu	$2,$10,$2lh	$9,2($2)bltz	$9,$L30lh	$12,0($2)$L11:addu	$9,$7,$9sra	$4,$9,3addu	$4,$8,$4sw	$9,8($17)lbu	$3,3($4)lbu	$5,2($4)lbu	$6,0($4)lbu	$2,1($4)sll	$3,$3,24sll	$5,$5,16or	$3,$3,$5or	$3,$3,$6sll	$2,$2,8or	$2,$2,$3lw	$4,4($19)andi	$3,$9,0x7sra	$2,$2,$3lw	$11,4($4)andi	$2,$2,0x1ffsll	$2,$2,2addu	$2,$11,$2lh	$7,2($2)bltz	$7,$L31lh	$10,0($2)$L14:lw	$3,12($19)addu	$2,$9,$7lw	$5,8($19)sll	$4,$10,2sw	$2,8($17)addu	$4,$4,$3sll	$2,$12,2addu	$2,$2,$5lw	$3,0($4)lw	$5,0($2)sll	$3,$3,8lw	$2,16($19)or	$5,$3,$5beq	$5,$2,$L32noplw	$2,20($19)beq	$5,$2,$L33noplw	$2,24($19)beq	$5,$2,$L34nop$L19:lw	$2,8($18)lw	$4,20($18)sll	$3,$2,2addu	$3,$3,$4addiu	$2,$2,1sw	$5,0($3)li	$4,1			# 0x1sw	$2,8($18)lw	$31,36($sp)addu	$2,$4,$20lw	$19,28($sp)lw	$20,32($sp)lw	$18,24($sp)lw	$17,20($sp)lw	$16,16($sp)j	$31addiu	$sp,$sp,40$L29:lui	$6,%hi($LC0)move	$4,$0addiu	$6,$6,%lo($LC0)jal	av_logmove	$5,$0li	$4,-1			# 0xffffffffffffffffaddu	$2,$4,$20lw	$31,36($sp)lw	$20,32($sp)lw	$19,28($sp)lw	$18,24($sp)lw	$17,20($sp)lw	$16,16($sp)j	$31addiu	$sp,$sp,40$L33:lw	$3,28($19)lw	$2,8($18)move	$5,$0j	$L19sw	$2,4($3)$L32:lw	$3,28($19)lw	$2,8($18)move	$5,$0j	$L19sw	$2,0($3)$L31:addiu	$9,$9,9sra	$4,$9,3addu	$4,$8,$4lbu	$2,3($4)lbu	$5,2($4)lbu	$6,0($4)lbu	$3,1($4)sll	$2,$2,24sll	$5,$5,16or	$2,$2,$5or	$2,$2,$6sll	$3,$3,8or	$3,$3,$2li	$13,-1			# 0xffffffffffffffffandi	$4,$9,0x7sra	$3,$3,$4srl	$2,$13,$7and	$2,$2,$3addu	$2,$2,$10sll	$2,$2,2addu	$2,$11,$2subu	$3,$0,$7lh	$7,2($2)bgez	$7,$L14lh	$10,0($2)addu	$9,$9,$3sra	$4,$9,3addu	$4,$8,$4lbu	$2,3($4)lbu	$5,2($4)lbu	$6,0($4)lbu	$3,1($4)sll	$2,$2,24sll	$5,$5,16or	$2,$2,$5or	$2,$2,$6sll	$3,$3,8or	$3,$3,$2andi	$4,$9,0x7srl	$2,$13,$7sra	$3,$3,$4and	$2,$2,$3addu	$2,$2,$10sll	$2,$2,2addu	$2,$11,$2lh	$7,2($2)j	$L14lh	$10,0($2)$L30:addiu	$7,$7,9sra	$4,$7,3addu	$4,$8,$4lbu	$2,3($4)lbu	$5,2($4)lbu	$6,0($4)lbu	$3,1($4)sll	$2,$2,24sll	$5,$5,16or	$2,$2,$5or	$2,$2,$6sll	$3,$3,8or	$3,$3,$2li	$11,-1			# 0xffffffffffffffffandi	$4,$7,0x7sra	$3,$3,$4srl	$2,$11,$9and	$2,$2,$3addu	$2,$2,$12sll	$2,$2,2addu	$2,$10,$2subu	$3,$0,$9lh	$9,2($2)bgez	$9,$L11lh	$12,0($2)addu	$7,$7,$3sra	$4,$7,3addu	$4,$8,$4lbu	$2,3($4)lbu	$5,2($4)lbu	$6,0($4)lbu	$3,1($4)sll	$2,$2,24sll	$5,$5,16or	$2,$2,$5or	$2,$2,$6sll	$3,$3,8or	$3,$3,$2andi	$4,$7,0x7srl	$2,$11,$9sra	$3,$3,$4and	$2,$2,$3addu	$2,$2,$12sll	$2,$2,2addu	$2,$10,$2lh	$9,2($2)j	$L11lh	$12,0($2)$L34:lw	$3,28($19)lw	$2,8($18)move	$5,$0j	$L19sw	$2,8($3).set	macro.set	reorder.end	smacker_decode_bigtree.section	.text.decode_end,"ax",@progbits.align	2.align	5.ent	decode_end.type	decode_end, @functiondecode_end:.frame	$sp,32,$31		# vars= 0, regs= 3/0, args= 16, gp= 0.mask	0x80030000,-8.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-32sw	$31,24($sp)sw	$17,20($sp)sw	$16,16($sp)lw	$16,136($4)move	$17,$4jal	av_freepaddiu	$4,$16,208jal	av_freepaddiu	$4,$16,212jal	av_freepaddiu	$4,$16,216jal	av_freepaddiu	$4,$16,220lw	$2,8($16)move	$4,$17beq	$2,$0,$L36addiu	$5,$16,8lw	$2,264($17)jal	$2nop$L36:lw	$31,24($sp)lw	$17,20($sp)lw	$16,16($sp)move	$2,$0j	$31addiu	$sp,$sp,32.set	macro.set	reorder.end	decode_end.section	.rodata.str1.4.align	2$LC1:.ascii	"get_buffer() failed\012\000".section	.text.decode_frame,"ax",@progbits.align	2.align	5.ent	decode_frame.type	decode_frame, @functiondecode_frame:.frame	$sp,104,$31		# vars= 48, regs= 10/0, args= 16, gp= 0.mask	0xc0ff0000,-4.fmask	0x00000000,0.set	noreorder.set	nomacroaddiu	$sp,$sp,-104lw	$3,120($sp)sw	$18,72($sp)sw	$31,100($sp)sw	$fp,96($sp)sw	$23,92($sp)sw	$22,88($sp)sw	$21,84($sp)sw	$20,80($sp)sw	$19,76($sp)sw	$17,68($sp)sw	$16,64($sp)sw	$5,108($sp)li	$2,769			# 0x301sw	$4,104($sp)sw	$6,112($sp)move	$18,$7beq	$3,$2,$L252lw	$16,136($4)lw	$2,8($16)beq	$2,$0,$L221lw	$10,104($sp)addiu	$6,$16,8lw	$2,264($10)move	$5,$6jal	$2sw	$6,52($sp)lw	$5,52($sp)$L43:lw	$3,104($sp)li	$17,1			# 0x1lw	$2,592($3)lw	$4,104($sp)li	$3,13			# 0xdsw	$3,188($16)jal	$2sw	$17,88($16)bltz	$2,$L253lw	$4,104($sp)lbu	$3,0($18)lw	$4,12($16)andi	$3,$3,0x1sw	$3,184($16)lbu	$2,0($18)srl	$2,$2,1andi	$2,$2,0x1beq	$2,$0,$L47sw	$2,56($16)sw	$17,60($16)$L49:move	$6,$4addiu	$5,$18,1addiu	$7,$4,1024$L50:lbu	$2,0($5)lbu	$4,1($5)lbu	$3,2($5)sll	$2,$2,16sll	$4,$4,8or	$2,$2,$4or	$3,$3,$2sw	$3,0($6)addiu	$6,$6,4bne	$6,$7,$L50addiu	$5,$5,3lw	$4,224($16)lw	$5,228($16)lw	$2,232($16)lw	$3,208($16)sll	$5,$5,2sll	$4,$4,2sll	$2,$2,2addu	$2,$2,$3addu	$4,$3,$4addu	$3,$3,$5sw	$0,0($2)sw	$0,0($3)sw	$0,0($4)lw	$5,236($16)lw	$4,240($16)lw	$2,244($16)lw	$3,212($16)sll	$4,$4,2sll	$5,$5,2sll	$2,$2,2addu	$2,$2,$3addu	$5,$3,$5addu	$3,$3,$4sw	$0,0($2)sw	$0,0($3)sw	$0,0($5)lw	$4,248($16)lw	$5,252($16)lw	$2,256($16)lw	$3,216($16)sll	$5,$5,2sll	$4,$4,2sll	$2,$2,2addu	$2,$2,$3addu	$4,$3,$4addu	$3,$3,$5sw	$0,0($2)sw	$0,0($3)sw	$0,0($4)lw	$2,268($16)lw	$3,264($16)lw	$9,220($16)lw	$5,260($16)sll	$2,$2,2lw	$6,120($sp)addu	$2,$2,$9sll	$3,$3,2sw	$0,0($2)addu	$3,$9,$3addiu	$10,$16,224addiu	$2,$16,228sll	$5,$5,2sw	$0,0($3)sll	$4,$6,3sw	$10,40($sp)sw	$2,44($sp)addiu	$3,$16,232addiu	$10,$16,236addiu	$2,$16,240addu	$5,$9,$5sw	$3,48($sp)sw	$10,28($sp)addiu	$6,$4,-6145sw	$0,0($5)addiu	$3,$16,244sw	$2,32($sp)addiu	$10,$16,264addiu	$2,$16,268sw	$3,36($sp)addiu	$14,$16,248addiu	$17,$16,252addiu	$21,$16,256addiu	$fp,$16,260sw	$10,20($sp)sw	$2,24($sp)bltz	$6,$L52addiu	$4,$4,-6152bltz	$4,$L55move	$7,$0addiu	$7,$18,769$L55:lw	$4,104($sp)lw	$3,40($4)lw	$2,44($4)sra	$18,$3,2sra	$2,$2,2mul	$23,$18,$2blez	$23,$L56lw	$24,24($16)sw	$0,16($sp)move	$25,$0li	$10,1			# 0x1$L58:lw	$8,0($9)bgez	$8,$L59move	$6,$25move	$5,$9sra	$2,$6,3$L261:addu	$2,$7,$2lbu	$3,0($2)andi	$4,$6,0x7sra	$3,$3,$4andi	$3,$3,0x1beq	$3,$0,$L62addiu	$6,$6,1lw	$2,0($5)sll	$2,$2,2addu	$5,$5,$2$L62:addiu	$5,$5,4lw	$8,0($5)bltz	$8,$L261sra	$2,$6,3move	$25,$6$L59:lw	$2,0($fp)sll	$2,$2,2addu	$2,$2,$9lw	$3,0($2)beq	$3,$8,$L65lw	$3,20($sp)lw	$4,24($sp)lw	$2,0($3)lw	$3,0($4)sll	$2,$2,2addu	$2,$2,$9lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$9sw	$4,0($3)lw	$2,0($fp)lw	$6,20($sp)sll	$2,$2,2lw	$3,0($6)addu	$2,$2,$9lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$9sw	$4,0($3)lw	$2,0($fp)sll	$2,$2,2addu	$2,$2,$9sw	$8,0($2)$L65:lui	$4,%hi(block_runs)addiu	$3,$4,%lo(block_runs)andi	$2,$8,0xfcaddu	$2,$2,$3andi	$4,$8,0x3li	$3,1			# 0x1beq	$4,$3,$L69lw	$5,0($2)slt	$2,$4,2bne	$2,$0,$L254li	$2,2			# 0x2beq	$4,$2,$L70li	$2,3			# 0x3beq	$4,$2,$L255nop$L67:beq	$10,$0,$L260lw	$6,112($sp)j	$L58lw	$9,220($16)$L47:li	$2,2			# 0x2j	$L49sw	$2,60($16)$L255:beq	$5,$0,$L67nopbeq	$10,$0,$L56sra	$2,$8,8sll	$3,$2,8addu	$3,$3,$2lw	$6,16($sp)sll	$2,$3,16lw	$8,8($16)addu	$9,$3,$2addu	$20,$5,$6j	$L216move	$10,$23$L256:beq	$6,$10,$L56nop$L216:div	$0,$6,$18teq	$18,$0,7addiu	$6,$6,1mflo	$2mfhi	$3mul	$4,$24,$2addu	$2,$4,$3sll	$2,$2,2addu	$2,$2,$8addu	$3,$2,$24addu	$4,$3,$24addu	$5,$24,$4sw	$9,0($2)sw	$9,0($3)sw	$9,0($4)bne	$6,$20,$L256sw	$9,0($5)slt	$10,$6,$23j	$L67sw	$6,16($sp)$L254:bne	$4,$0,$L67nopbeq	$5,$0,$L67nopbeq	$10,$0,$L260lw	$6,112($sp)lw	$11,16($sp)move	$12,$23addu	$20,$5,$11$L77:lw	$8,212($16)lw	$9,0($8)bgez	$9,$L78move	$6,$25move	$5,$8sra	$2,$6,3$L262:addu	$2,$7,$2lbu	$3,0($2)andi	$4,$6,0x7sra	$3,$3,$4andi	$3,$3,0x1beq	$3,$0,$L81addiu	$6,$6,1lw	$2,0($5)sll	$2,$2,2addu	$5,$5,$2$L81:addiu	$5,$5,4lw	$9,0($5)bltz	$9,$L262sra	$2,$6,3move	$25,$6$L78:lw	$6,28($sp)lw	$2,0($6)sll	$2,$2,2addu	$2,$2,$8lw	$3,0($2)beq	$3,$9,$L84lw	$10,32($sp)lw	$4,36($sp)lw	$2,0($10)lw	$3,0($4)sll	$2,$2,2addu	$2,$2,$8lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$8sw	$4,0($3)lw	$2,0($6)lw	$3,0($10)sll	$2,$2,2addu	$2,$2,$8lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$8sw	$4,0($3)lw	$2,0($6)sll	$2,$2,2addu	$2,$2,$8sw	$9,0($2)$L84:lw	$10,208($16)lw	$8,0($10)bgez	$8,$L86move	$6,$25move	$5,$10sra	$2,$6,3$L263:addu	$2,$7,$2lbu	$3,0($2)andi	$4,$6,0x7sra	$3,$3,$4andi	$3,$3,0x1beq	$3,$0,$L89addiu	$6,$6,1lw	$2,0($5)sll	$2,$2,2addu	$5,$5,$2$L89:addiu	$5,$5,4lw	$8,0($5)bltz	$8,$L263sra	$2,$6,3move	$25,$6$L86:lw	$6,40($sp)lw	$2,0($6)sll	$2,$2,2addu	$2,$2,$10lw	$3,0($2)beq	$3,$8,$L92lw	$4,48($sp)lw	$3,44($sp)lw	$2,0($3)lw	$3,0($4)sll	$2,$2,2addu	$2,$2,$10lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$10sw	$4,0($3)lw	$2,0($6)lw	$6,44($sp)sll	$2,$2,2lw	$3,0($6)addu	$2,$2,$10lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$10sw	$4,0($3)lw	$3,40($sp)lw	$2,0($3)sll	$2,$2,2addu	$2,$2,$10sw	$8,0($2)$L92:div	$0,$11,$18teq	$18,$0,7lw	$4,8($16)andi	$5,$8,0x1andi	$6,$9,0xffsra	$9,$9,8mflo	$2mfhi	$3mul	$10,$24,$2addu	$2,$10,$3sll	$2,$2,2bne	$5,$0,$L94addu	$3,$2,$4sb	$6,0($3)$L96:andi	$2,$8,0x2bne	$2,$0,$L97nopsb	$6,1($3)$L99:andi	$2,$8,0x4bne	$2,$0,$L100nopsb	$6,2($3)$L102:andi	$2,$8,0x8bne	$2,$0,$L103nopsb	$6,3($3)$L105:sra	$5,$8,4andi	$2,$5,0x1bne	$2,$0,$L106addu	$3,$24,$3sb	$6,0($3)$L108:andi	$2,$5,0x2bne	$2,$0,$L109nopsb	$6,1($3)$L111:andi	$2,$5,0x4bne	$2,$0,$L112nopsb	$6,2($3)$L114:andi	$2,$5,0x8bne	$2,$0,$L115nopsb	$6,3($3)$L117:sra	$5,$5,4andi	$2,$5,0x1bne	$2,$0,$L118addu	$3,$24,$3sb	$6,0($3)$L120:andi	$2,$5,0x2bne	$2,$0,$L121nopsb	$6,1($3)$L123:andi	$2,$5,0x4bne	$2,$0,$L124nopsb	$6,2($3)$L126:andi	$2,$5,0x8bne	$2,$0,$L127nopsb	$6,3($3)$L129:sra	$5,$5,4andi	$2,$5,0x1beq	$2,$0,$L130addu	$3,$24,$3sb	$9,0($3)$L132:andi	$2,$5,0x2beq	$2,$0,$L133nopsb	$9,1($3)$L135:andi	$2,$5,0x4beq	$2,$0,$L136nopsb	$9,2($3)$L138:andi	$2,$5,0x8beq	$2,$0,$L139nopsb	$9,3($3)$L141:addiu	$11,$11,1beq	$20,$11,$L142slt	$10,$11,$23bne	$11,$12,$L77nop$L56:lw	$6,112($sp)$L260:li	$2,200			# 0xc8$L276:sw	$2,0($6)lw	$7,108($sp)lw	$6,52($sp)addiu	$8,$16,200$L219:lw	$2,0($6)lw	$3,4($6)lw	$4,8($6)lw	$5,12($6)addiu	$6,$6,16sw	$2,0($7)sw	$3,4($7)sw	$4,8($7)sw	$5,12($7)bne	$6,$8,$L219addiu	$7,$7,16lw	$2,4($6)lw	$3,0($6)sw	$2,4($7)sw	$3,0($7)lw	$2,120($sp)$L42:lw	$31,100($sp)lw	$fp,96($sp)lw	$23,92($sp)lw	$22,88($sp)lw	$21,84($sp)lw	$20,80($sp)lw	$19,76($sp)lw	$18,72($sp)lw	$17,68($sp)lw	$16,64($sp)j	$31addiu	$sp,$sp,104$L69:lw	$2,104($sp)lw	$3,232($2)li	$2,877330432			# 0x344b0000ori	$2,$2,0x4d53beq	$3,$2,$L257sra	$2,$25,3$L144:move	$22,$0$L148:beq	$5,$0,$L67nopbeq	$10,$0,$L56lw	$3,16($sp)sll	$4,$24,1addu	$20,$5,$3move	$15,$3sw	$4,56($sp)$L152:div	$0,$15,$18teq	$18,$0,7lw	$8,8($16)mflo	$3mfhi	$2mul	$4,$24,$3addu	$3,$4,$2sll	$3,$3,2li	$2,1			# 0x1beq	$22,$2,$L155addu	$11,$3,$8li	$2,2			# 0x2beq	$22,$2,$L156addu	$13,$11,$24bne	$22,$0,$L153move	$10,$0$L157:lw	$9,216($16)lw	$8,0($9)bgez	$8,$L158move	$6,$25move	$5,$9sra	$2,$6,3$L264:addu	$2,$7,$2lbu	$3,0($2)andi	$4,$6,0x7sra	$3,$3,$4andi	$3,$3,0x1beq	$3,$0,$L161addiu	$6,$6,1lw	$2,0($5)sll	$2,$2,2addu	$5,$5,$2$L161:addiu	$5,$5,4lw	$8,0($5)bltz	$8,$L264sra	$2,$6,3move	$25,$6$L158:lw	$2,0($14)sll	$2,$2,2addu	$2,$2,$9lw	$3,0($2)beq	$3,$8,$L265andi	$3,$8,0xfffflw	$2,0($17)lw	$3,0($21)sll	$2,$2,2addu	$2,$2,$9lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$9sw	$4,0($3)lw	$2,0($14)lw	$3,0($17)sll	$2,$2,2addu	$2,$2,$9lw	$4,0($2)sll	$3,$3,2addu	$3,$3,$9sw	$4,0($3)lw	$2,0($14)sll	$2,$2,2addu	$2,$2,$9sw	$8,0($2)andi	$3,$8,0xffff

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?