smacker.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 4,395 行 · 第 1/4 页
MID
4,395 行
$L303: lw $4,0($17) lui $6,%hi($LC6) addiu $6,$6,%lo($LC6) jal av_log move $5,$0 j $L324 lw $17,8($fp)$L320: addiu $3,$2,1 sw $2,0($4) sw $3,64($sp) lw $2,4($4) bne $2,$16,$L309 lw $2,64($sp)$L325: addiu $3,$2,1 sw $2,4($4) sw $3,64($sp) lw $2,8($4) bne $2,$16,$L327 lw $2,76($sp) lw $2,64($sp)$L326: addiu $3,$2,1 sw $2,8($4) j $L311 sw $3,64($sp)$L319: lw $4,0($4) lui $6,%hi($LC3) addiu $6,$6,%lo($LC3) jal av_log move $5,$0 j $L298 li $2,-1 # 0xffffffffffffffff$L318: lw $4,0($17) lui $6,%hi($LC4) addiu $6,$6,%lo($LC4) jal av_log move $5,$0 j $L298 li $2,-1 # 0xffffffffffffffff .set macro .set reorder .end smacker_decode_header_tree .section .rodata.str1.4 .align 2$LC7: .ascii "Extradata missing!\012\000" .align 2$LC8: .ascii "Skipping MMAP tree\012\000" .align 2$LC9: .ascii "Skipping MCLR tree\012\000" .align 2$LC10: .ascii "Skipping FULL tree\012\000" .align 2$LC11: .ascii "Skipping TYPE tree\012\000" .section .text.decode_init,"ax",@progbits .align 2 .align 5 .ent decode_init .type decode_init, @functiondecode_init: .frame $sp,104,$31 # vars= 40, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-104 sw $16,64($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 $18,72($sp) sw $17,68($sp) lw $17,136($4) lw $5,40($4) lw $6,44($4) sw $4,0($17) sw $0,8($17) jal avcodec_check_dimensions move $16,$4 bltz $2,$L350 li $3,14 # 0xe lw $2,28($16) slt $2,$2,16 bne $2,$0,$L351 sw $3,52($16) lw $16,0($17) lw $4,24($16) lw $3,28($16) lbu $9,9($4) lbu $5,3($4) lbu $6,2($4) lbu $8,1($4) lbu $7,0($4) lbu $19,7($4) lbu $20,6($4) lbu $22,5($4) lbu $21,4($4) lbu $23,11($4) lbu $fp,10($4) sw $9,40($sp) lbu $9,8($4) sll $3,$3,3 sw $9,44($sp) lbu $9,15($4) addiu $2,$3,-121 sw $9,48($sp) lbu $9,14($4) sra $2,$2,3 sw $9,52($sp) lbu $9,13($4) addiu $3,$3,-128 sw $9,56($sp) lbu $9,12($4) bltz $2,$L334 sw $9,60($sp) bltz $3,$L334 nop addiu $4,$4,16 addu $2,$4,$2$L337: sw $0,32($sp) sw $3,36($sp) sw $2,28($sp) sw $4,24($sp) lbu $2,0($4) li $18,1 # 0x1 andi $2,$2,0x1 bne $2,$0,$L338 sw $18,32($sp) lui $6,%hi($LC8) li $5,1 # 0x1 move $4,$16 jal av_log addiu $6,$6,%lo($LC8) jal av_malloc li $4,8 # 0x8 sw $0,0($2) sw $18,224($17) sw $18,232($17) sw $18,228($17) lw $5,32($sp) sw $2,208($17) lw $2,24($sp) sra $4,$5,3 addu $2,$2,$4 lbu $3,0($2) andi $4,$5,0x7 sra $3,$3,$4 addiu $5,$5,1 andi $3,$3,0x1 bne $3,$0,$L341 sw $5,32($sp)$L352: lw $4,0($17) lui $6,%hi($LC9) li $5,1 # 0x1 jal av_log addiu $6,$6,%lo($LC9) jal av_malloc li $4,8 # 0x8 li $3,1 # 0x1 sw $0,0($2) sw $3,236($17) sw $3,244($17) sw $3,240($17) lw $5,32($sp) sw $2,212($17) lw $2,24($sp) sra $4,$5,3 addu $2,$2,$4 lbu $3,0($2) andi $4,$5,0x7 sra $3,$3,$4 addiu $5,$5,1 andi $3,$3,0x1 bne $3,$0,$L344 sw $5,32($sp)$L353: lw $4,0($17) lui $6,%hi($LC10) li $5,1 # 0x1 jal av_log addiu $6,$6,%lo($LC10) jal av_malloc li $4,8 # 0x8 li $3,1 # 0x1 sw $0,0($2) sw $3,248($17) sw $3,256($17) sw $3,252($17) lw $5,32($sp) sw $2,216($17) lw $2,24($sp) sra $4,$5,3 addu $2,$2,$4 lbu $3,0($2) andi $4,$5,0x7 sra $3,$3,$4 addiu $5,$5,1 andi $3,$3,0x1 bne $3,$0,$L347 sw $5,32($sp)$L354: lw $4,0($17) lui $6,%hi($LC11) addiu $6,$6,%lo($LC11) jal av_log li $5,1 # 0x1 jal av_malloc li $4,8 # 0x8 li $3,1 # 0x1 sw $0,0($2) move $4,$0 sw $3,260($17) sw $2,220($17) sw $3,268($17) sw $3,264($17)$L331: 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) move $2,$4 j $31 addiu $sp,$sp,104$L338: sll $3,$6,16 sll $2,$5,24 or $2,$2,$3 or $2,$2,$7 sll $3,$8,8 or $3,$3,$2 move $4,$17 addiu $5,$sp,24 addiu $6,$17,208 addiu $7,$17,224 jal smacker_decode_header_tree sw $3,16($sp) lw $5,32($sp) lw $2,24($sp) sra $4,$5,3 addu $2,$2,$4 lbu $3,0($2) andi $4,$5,0x7 sra $3,$3,$4 addiu $5,$5,1 andi $3,$3,0x1 beq $3,$0,$L352 sw $5,32($sp)$L341: sll $3,$20,16 sll $2,$19,24 or $2,$2,$3 or $2,$2,$21 sll $3,$22,8 or $3,$3,$2 move $4,$17 addiu $5,$sp,24 addiu $6,$17,212 addiu $7,$17,236 jal smacker_decode_header_tree sw $3,16($sp) lw $5,32($sp) lw $2,24($sp) sra $4,$5,3 addu $2,$2,$4 lbu $3,0($2) andi $4,$5,0x7 sra $3,$3,$4 addiu $5,$5,1 andi $3,$3,0x1 beq $3,$0,$L353 sw $5,32($sp)$L344: sll $3,$fp,16 sll $2,$23,24 lw $4,40($sp) or $2,$2,$3 lw $3,44($sp) addiu $5,$sp,24 or $2,$2,$3 sll $3,$4,8 or $3,$3,$2 move $4,$17 addiu $6,$17,216 addiu $7,$17,248 jal smacker_decode_header_tree sw $3,16($sp) lw $5,32($sp) lw $2,24($sp) sra $4,$5,3 addu $2,$2,$4 lbu $3,0($2) andi $4,$5,0x7 sra $3,$3,$4 addiu $5,$5,1 andi $3,$3,0x1 beq $3,$0,$L354 sw $5,32($sp)$L347: lw $5,48($sp) lw $9,52($sp) sll $2,$5,24 sll $3,$9,16 lw $5,56($sp) or $2,$2,$3 lw $3,60($sp) move $4,$17 or $2,$2,$3 sll $3,$5,8 or $3,$3,$2 addiu $5,$sp,24 addiu $6,$17,220 addiu $7,$17,260 jal smacker_decode_header_tree sw $3,16($sp) move $4,$0 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) move $2,$4 j $31 addiu $sp,$sp,104$L334: move $3,$0 move $4,$0 j $L337 move $2,$0$L350: li $4,1 # 0x1 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) move $2,$4 j $31 addiu $sp,$sp,104$L351: lui $6,%hi($LC7) move $4,$16 addiu $6,$6,%lo($LC7) jal av_log move $5,$0 j $L331 li $4,-1 # 0xffffffffffffffff .set macro .set reorder .end decode_init .section .rodata.str1.4 .align 2$LC12: .ascii "Sound: no data\012\000" .align 2$LC13: .ascii "Frame is too large to fit in buffer\012\000" .section .text.smka_decode_frame,"ax",@progbits .align 2 .align 5 .ent smka_decode_frame .type smka_decode_frame, @functionsmka_decode_frame: .frame $sp,288,$31 # vars= 192, regs= 10/0, args= 56, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 addiu $sp,$sp,-288 lui $8,%hi(C.71.5915) lw $3,304($sp) addiu $2,$8,%lo(C.71.5915) lw $9,4($2) sll $10,$3,3 lw $2,%lo(C.71.5915)($8) addiu $3,$10,-25 sw $31,284($sp) sw $fp,280($sp) sw $23,276($sp) sw $22,272($sp) sw $21,268($sp) sw $20,264($sp) sw $19,260($sp) sw $18,256($sp) sw $17,252($sp) sw $16,248($sp) sw $2,56($sp) sw $9,60($sp) sw $4,288($sp) sw $5,292($sp) sw $6,296($sp) sra $3,$3,3 lbu $6,3($7) lbu $5,2($7) lbu $9,1($7) lbu $4,0($7) .set noreorder .set nomacro bltz $3,$L356 addiu $10,$10,-32 .set macro .set reorder .set noreorder .set nomacro bltz $10,$L356 addiu $7,$7,4 .set macro .set reorder addu $3,$7,$3 sw $0,72($sp) sw $10,76($sp) sw $3,68($sp) sw $7,64($sp) lbu $2,0($7) li $8,1 # 0x1 andi $2,$2,0x1 .set noreorder .set nomacro beq $2,$0,$L521 sw $8,72($sp) .set macro .set reorder$L360: sll $2,$6,24 sll $3,$5,16 or $2,$2,$3 or $2,$2,$4 sll $3,$9,8 or $fp,$3,$2 li $8,2 # 0x2 li $2,-1073741824 # 0xffffffffc0000000 lbu $6,0($7) and $2,$fp,$2 sw $8,72($sp) li $8,3 # 0x3 lbu $7,0($7) .set noreorder .set nomacro bne $2,$0,$L363 sw $8,72($sp) .set macro .set reorder srl $2,$7,2 lw $4,296($sp) andi $23,$2,0x1 sltu $3,$23,1 lw $2,0($4) sll $3,$fp,$3 slt $3,$2,$3 .set noreorder .set nomacro bne $3,$0,$L540 lw $4,288($sp) .set macro .set reorder li $4,4 # 0x4 li $2,2 # 0x2 addiu $5,$sp,144 .set noreorder .set nomacro beq $4,$2,$L368 addiu $3,$sp,80 .set macro .set reorder .set noreorder .set nomacro beq $4,$8,$L369 li $2,1 # 0x1 .set macro .set reorder beq $4,$2,$L522$L366: addiu $7,$3,-4 move $2,$0#APP S32I2M xr1,$2#NO_APP andi $3,$3,0x1f .set noreorder .set nomacro beq $3,$0,$L541 addiu $2,$5,-31 .set macro .set reorder li $2,-32 # 0xffffffffffffffe0 and $2,$7,$2 addiu $4,$2,32 sltu $3,$7,$4 .set noreorder .set nomacro beq $3,$0,$L541 addiu $2,$5,-31 .set macro .set reorder$L500:#APP S32SDI xr1,$7,4#NO_APP sltu $2,$7,$4 .set noreorder .set nomacro bne $2,$0,$L500 addiu $2,$5,-31 .set macro .set reorder$L541: li $3,-32 # 0xffffffffffffffe0 and $3,$2,$3 sltu $4,$7,$3 .set noreorder .set nomacro beq $4,$0,$L373 addiu $2,$7,4 .set macro .set reorder$L542:#APP pref 30,0($2) S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4#NO_APP sltu $2,$7,$3 .set noreorder .set nomacro bne $2,$0,$L542 addiu $2,$7,4 .set macro .set reorder$L373: addiu $3,$5,-4 sltu $2,$7,$3 beq $2,$0,$L375$L502:#APP S32SDI xr1,$7,4#NO_APP sltu $2,$7,$3 bne $2,$0,$L502$L375: andi $3,$5,0x3 li $2,3 # 0x3 .set noreorder .set nomacro beq $3,$2,$L380 li $2,1 # 0x1 .set macro .set reorder beq $3,$2,$L523$L377: li $4,4 # 0x4 li $2,3 # 0x3 addiu $8,$sp,240 .set noreorder .set nomacro beq $4,$2,$L384 move $3,$5 .set macro .set reorder li $2,1 # 0x1 beq $4,$2,$L524$L381: addiu $7,$3,-4 move $2,$0#APP S32I2M xr1,$2#NO_APP andi $3,$3,0x1f .set noreorder .set nomacro beq $3,$0,$L543 addiu $2,$8,-31 .set macro .set reorder li $2,-32 # 0xffffffffffffffe0 and $2,$7,$2 addiu $4,$2,32 sltu $3,$7,$4 .set noreorder .set nomacro beq $3,$0,$L543 addiu $2,$8,-31 .set macro .set reorder$L503:#APP S32SDI xr1,$7,4#NO_APP sltu $2,$7,$4 .set noreorder .set nomacro bne $2,$0,$L503 addiu $2,$8,-31 .set macro .set reorder$L543: li $3,-32 # 0xffffffffffffffe0 and $3,$2,$3 sltu $4,$7,$3 .set noreorder .set nomacro beq $4,$0,$L388 addiu $2,$7,4 .set macro .set reorder$L544:#APP pref 30,0($2) S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4 S32SDI xr1,$7,4#NO_APP sltu $2,$7,$3 .set noreorder .set nomacro bne $2,$0,$L544 addiu $2,$7,4 .set macro .set reorder$L388: addiu $3,$8,-4 sltu $2,$7,$3 beq $2,$0,$L390$L505:#APP S32SDI xr1,$7,4#NO_APP sltu $2,$7,$3 bne $2,$0,$L505$L390: andi $3,$8,0x3 li $2,3 # 0x3 .set noreorder .set nomacro beq $3,$2,$L395 li $2,1 # 0x1 .set macro .set reorder beq $3,$2,$L525$L392: srl $2,$6,1 andi $22,$2,0x1 addu $3,$22,$23 li $2,1 # 0x1 sll $20,$2,$3 blez $20,$L396 move $16,$5 move $18,$0 addiu $17,$sp,80 addiu $21,$sp,64 li $19,4 # 0x4$L398: li $2,256 # 0x100 li $4,1024 # 0x400 sw $2,0($16) sw $0,4($16) .set noreorder .set nomacro jal av_mallocz sw $0,8($16) .set macro .set reorder sw $2,12($16) .set noreorder .set nomacro jal av_mallocz li $4,1024 # 0x400 .set macro .set reorder sw $2,16($16) .set noreorder .set nomacro jal av_mallocz li $4,1024 # 0x400 .set macro .set reorder lw $3,72($sp) move $5,$16 addiu $8,$3,1 move $4,$21 move $6,$0 move $7,$0 sw $2,20($16) .set noreorder .set nomacro jal smacker_decode_tree sw $8,72($sp) .set macro .set reorder lw $8,72($sp) move $4,$17 addiu $8,$8,1 sw $8,72($sp) lw $2,8($16) addiu $18,$18,1 slt $2,$2,2 li $5,9 # 0x9 .set noreorder .set nomacro bne $2,$0,$L399 addiu $17,$17,16 .set macro .set reorder lw $6,0($16) lw $7,16($16) lw $3,12($16) li $2,2 # 0x2 sw $3,24($sp) sw $2,48($sp) sw $19,16($sp) sw $19,20($sp) sw $19,28($sp) sw $19,32($sp) sw $0,36($sp) sw $0,40($sp) .set noreorder .set nomacro jal init_vlc_sparse sw $0,44($sp) .set macro .set reorder .set noreorder .set nomacro bltz $2,$L499 lw $4,288($sp) .set macro .set reorder$L399: .set noreorder .set nomacro bne $20,$18,$L398 addiu $16,$16,24 .set macro .set reorder$L396: .set noreorder .set nomacro beq $23,$0,$L402 lw $11,292($sp) .set macro .set reorder .set noreorder .set nomacro bltz $22,$L409 addiu $13,$sp,56 .set macro .set reorder sll $2,$22,2 lw $8,72($sp) lw $7,64($sp) addu $10,$2,$13 move $9,$22 li $12,-1 # 0xffffffffffffffff$L408: sra $4,$8,3 addu $4,$4,$7 lbu $3,3($4) lbu $5,2($4) lbu $6,0($4) lbu $2,1($4) sll $3,$3,24 sll $5,$5,16 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 andi $4,$8,0x7 sra $2,$2,$4 andi $2,$2,0xffff sll $3,$2,8 srl $2,$2,8 or $2,$2,$3 addiu $8,$8,16 andi $2,$2,0xffff addiu $9,$9,-1 sw $2,0($10) sw $8,72($sp) .set noreorder .set nomacro bne $9,$12,$L408 addiu $10,$10,-4 .set macro .set reorder .set noreorder .set nomacro blez $22,$L545 srl $2,$fp,31 .set macro .set reorder move $4,$13 move $3,$0$L411: lw $2,0($4) addiu $3,$3,1 sh $2,0($11) addiu $4,$4,4 .set noreorder .set nomacro bne $22,$3,$L411 addiu $11,$11,2 .set macro .set reorder$L409: srl $2,$fp,31$L545: addu $2,$2,$fp sra $19,$2,1 .set noreorder .set nomacro blez $19,$L497 lw $18,64($sp) .set macro .set reorder lw $3,164($sp) lw $4,188($sp) lw $12,84($sp) lw $14,116($sp) lw $15,132($sp) lw $16,100($sp) lw $24,212($sp) lw $25,236($sp) move $17,$18 move $10,$0 move $21,$18 move $23,$18 sw $3,240($sp) .set noreorder .set nomacro j $L414 sw $4,244($sp) .set macro .set reorder$L530: .set noreorder .set nomacro beq $14,$0,$L526 lw $8,72($sp) .set macro .set reorder sra $4,$8,3 addu $4,$18,$4 lbu $3,3($4) lbu $5,2($4) lbu $6,0($4) lbu $2,1($4) sll $3,$3,24 sll $5,$5,16 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 andi $4,$8,0x7 sra $2,$2,$4 andi $2,$2,0x1ff sll $2,$2,2 addu $2,$14,$2 lh $7,2($2) .set noreorder .set nomacro bltz $7,$L527 lh $9,0($2) .set macro .set reorder$L420: addu $8,$8,$7 sw $8,72($sp) sll $2,$9,2$L419: addu $2,$2,$24 .set noreorder .set nomacro beq $15,$0,$L528 lw $13,0($2) .set macro .set reorder lw $8,72($sp) sra $4,$8,3 addu $4,$21,$4 lbu $3,3($4) lbu $5,2($4) lbu $6,0($4) lbu $2,1($4) sll $3,$3,24 sll $5,$5,16 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 andi $4,$8,0x7 sra $2,$2,$4 andi $2,$2,0x1ff sll $2,$2,2 addu $2,$15,$2 lh $7,2($2) .set noreorder .set nomacro bltz $7,$L529 lh $9,0($2) .set macro .set reorder$L426: addu $8,$8,$7 sw $8,72($sp) sll $2,$9,2$L425: addu $2,$2,$25 lw $3,0($2) lw $2,60($sp) sll $3,$3,8 or $3,$13,$3 sll $3,$3,16 sra $3,$3,16 addu $2,$2,$3 sh $2,0($11) sw $2,60($sp) addiu $11,$11,2$L429: addiu $10,$10,1 beq $19,$10,$L412$L414: and $2,$22,$10 bne $2,$0,$L530 .set noreorder .set nomacro beq $12,$0,$L531 lw $8,72($sp) .set macro .set reorder sra $4,$8,3 addu $4,$17,$4 lbu $3,3($4) lbu $5,2($4) lbu $6,0($4) lbu $2,1($4) sll $3,$3,24 sll $5,$5,16 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 andi $4,$8,0x7 sra $2,$2,$4 andi $2,$2,0x1ff sll $2,$2,2 addu $2,$12,$2 lh $7,2($2) .set noreorder .set nomacro bltz $7,$L532 lh $9,0($2) .set macro .set reorder$L433: addu $8,$8,$7 sw $8,72($sp) sll $2,$9,2$L432: lw $3,240($sp) addu $2,$2,$3 .set noreorder .set nomacro beq $16,$0,$L533 lw $13,0($2) .set macro .set reorder lw $8,72($sp) sra $4,$8,3 addu $4,$23,$4 lbu $3,3($4) lbu $5,2($4) lbu $6,0($4) lbu $2,1($4) sll $3,$3,24 sll $5,$5,16 or $3,$3,$5 or $3,$3,$6 sll $2,$2,8 or $2,$2,$3 andi $4,$8,0x7
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?