smacker.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 4,395 行 · 第 1/4 页
S
4,395 行
$L303:lw $4,0($17)lui $6,%hi($LC6)addiu $6,$6,%lo($LC6)jal av_logmove $5,$0j $L324lw $17,8($fp)$L320:addiu $3,$2,1sw $2,0($4)sw $3,64($sp)lw $2,4($4)bne $2,$16,$L309lw $2,64($sp)$L325:addiu $3,$2,1sw $2,4($4)sw $3,64($sp)lw $2,8($4)bne $2,$16,$L327lw $2,76($sp)lw $2,64($sp)$L326:addiu $3,$2,1sw $2,8($4)j $L311sw $3,64($sp)$L319:lw $4,0($4)lui $6,%hi($LC3)addiu $6,$6,%lo($LC3)jal av_logmove $5,$0j $L298li $2,-1 # 0xffffffffffffffff$L318:lw $4,0($17)lui $6,%hi($LC4)addiu $6,$6,%lo($LC4)jal av_logmove $5,$0j $L298li $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 nomacroaddiu $sp,$sp,-104sw $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_dimensionsmove $16,$4bltz $2,$L350li $3,14 # 0xelw $2,28($16)slt $2,$2,16bne $2,$0,$L351sw $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,3sw $9,44($sp)lbu $9,15($4)addiu $2,$3,-121sw $9,48($sp)lbu $9,14($4)sra $2,$2,3sw $9,52($sp)lbu $9,13($4)addiu $3,$3,-128sw $9,56($sp)lbu $9,12($4)bltz $2,$L334sw $9,60($sp)bltz $3,$L334nopaddiu $4,$4,16addu $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 # 0x1andi $2,$2,0x1bne $2,$0,$L338sw $18,32($sp)lui $6,%hi($LC8)li $5,1 # 0x1move $4,$16jal av_logaddiu $6,$6,%lo($LC8)jal av_mallocli $4,8 # 0x8sw $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,3addu $2,$2,$4lbu $3,0($2)andi $4,$5,0x7sra $3,$3,$4addiu $5,$5,1andi $3,$3,0x1bne $3,$0,$L341sw $5,32($sp)$L352:lw $4,0($17)lui $6,%hi($LC9)li $5,1 # 0x1jal av_logaddiu $6,$6,%lo($LC9)jal av_mallocli $4,8 # 0x8li $3,1 # 0x1sw $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,3addu $2,$2,$4lbu $3,0($2)andi $4,$5,0x7sra $3,$3,$4addiu $5,$5,1andi $3,$3,0x1bne $3,$0,$L344sw $5,32($sp)$L353:lw $4,0($17)lui $6,%hi($LC10)li $5,1 # 0x1jal av_logaddiu $6,$6,%lo($LC10)jal av_mallocli $4,8 # 0x8li $3,1 # 0x1sw $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,3addu $2,$2,$4lbu $3,0($2)andi $4,$5,0x7sra $3,$3,$4addiu $5,$5,1andi $3,$3,0x1bne $3,$0,$L347sw $5,32($sp)$L354:lw $4,0($17)lui $6,%hi($LC11)addiu $6,$6,%lo($LC11)jal av_logli $5,1 # 0x1jal av_mallocli $4,8 # 0x8li $3,1 # 0x1sw $0,0($2)move $4,$0sw $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,$4j $31addiu $sp,$sp,104$L338:sll $3,$6,16sll $2,$5,24or $2,$2,$3or $2,$2,$7sll $3,$8,8or $3,$3,$2move $4,$17addiu $5,$sp,24addiu $6,$17,208addiu $7,$17,224jal smacker_decode_header_treesw $3,16($sp)lw $5,32($sp)lw $2,24($sp)sra $4,$5,3addu $2,$2,$4lbu $3,0($2)andi $4,$5,0x7sra $3,$3,$4addiu $5,$5,1andi $3,$3,0x1beq $3,$0,$L352sw $5,32($sp)$L341:sll $3,$20,16sll $2,$19,24or $2,$2,$3or $2,$2,$21sll $3,$22,8or $3,$3,$2move $4,$17addiu $5,$sp,24addiu $6,$17,212addiu $7,$17,236jal smacker_decode_header_treesw $3,16($sp)lw $5,32($sp)lw $2,24($sp)sra $4,$5,3addu $2,$2,$4lbu $3,0($2)andi $4,$5,0x7sra $3,$3,$4addiu $5,$5,1andi $3,$3,0x1beq $3,$0,$L353sw $5,32($sp)$L344:sll $3,$fp,16sll $2,$23,24lw $4,40($sp)or $2,$2,$3lw $3,44($sp)addiu $5,$sp,24or $2,$2,$3sll $3,$4,8or $3,$3,$2move $4,$17addiu $6,$17,216addiu $7,$17,248jal smacker_decode_header_treesw $3,16($sp)lw $5,32($sp)lw $2,24($sp)sra $4,$5,3addu $2,$2,$4lbu $3,0($2)andi $4,$5,0x7sra $3,$3,$4addiu $5,$5,1andi $3,$3,0x1beq $3,$0,$L354sw $5,32($sp)$L347:lw $5,48($sp)lw $9,52($sp)sll $2,$5,24sll $3,$9,16lw $5,56($sp)or $2,$2,$3lw $3,60($sp)move $4,$17or $2,$2,$3sll $3,$5,8or $3,$3,$2addiu $5,$sp,24addiu $6,$17,220addiu $7,$17,260jal smacker_decode_header_treesw $3,16($sp)move $4,$0lw $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,$4j $31addiu $sp,$sp,104$L334:move $3,$0move $4,$0j $L337move $2,$0$L350:li $4,1 # 0x1lw $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,$4j $31addiu $sp,$sp,104$L351:lui $6,%hi($LC7)move $4,$16addiu $6,$6,%lo($LC7)jal av_logmove $5,$0j $L331li $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,0addiu $sp,$sp,-288lui $8,%hi(C.71.5915)lw $3,304($sp)addiu $2,$8,%lo(C.71.5915)lw $9,4($2)sll $10,$3,3lw $2,%lo(C.71.5915)($8)addiu $3,$10,-25sw $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,3lbu $6,3($7)lbu $5,2($7)lbu $9,1($7)lbu $4,0($7).set noreorder.set nomacrobltz $3,$L356addiu $10,$10,-32.set macro.set reorder.set noreorder.set nomacrobltz $10,$L356addiu $7,$7,4.set macro.set reorderaddu $3,$7,$3sw $0,72($sp)sw $10,76($sp)sw $3,68($sp)sw $7,64($sp)lbu $2,0($7)li $8,1 # 0x1andi $2,$2,0x1.set noreorder.set nomacrobeq $2,$0,$L521sw $8,72($sp).set macro.set reorder$L360:sll $2,$6,24sll $3,$5,16or $2,$2,$3or $2,$2,$4sll $3,$9,8or $fp,$3,$2li $8,2 # 0x2li $2,-1073741824 # 0xffffffffc0000000lbu $6,0($7)and $2,$fp,$2sw $8,72($sp)li $8,3 # 0x3lbu $7,0($7).set noreorder.set nomacrobne $2,$0,$L363sw $8,72($sp).set macro.set reordersrl $2,$7,2lw $4,296($sp)andi $23,$2,0x1sltu $3,$23,1lw $2,0($4)sll $3,$fp,$3slt $3,$2,$3.set noreorder.set nomacrobne $3,$0,$L540lw $4,288($sp).set macro.set reorderli $4,4 # 0x4li $2,2 # 0x2addiu $5,$sp,144.set noreorder.set nomacrobeq $4,$2,$L368addiu $3,$sp,80.set macro.set reorder.set noreorder.set nomacrobeq $4,$8,$L369li $2,1 # 0x1.set macro.set reorderbeq $4,$2,$L522$L366:addiu $7,$3,-4move $2,$0#APP.word 0b01110000000000100000000001101111 #S32I2M XR1,$2#NO_APPandi $3,$3,0x1f.set noreorder.set nomacrobeq $3,$0,$L541addiu $2,$5,-31.set macro.set reorderli $2,-32 # 0xffffffffffffffe0and $2,$7,$2addiu $4,$2,32sltu $3,$7,$4.set noreorder.set nomacrobeq $3,$0,$L541addiu $2,$5,-31.set macro.set reorder$L500:#APP.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4#NO_APPsltu $2,$7,$4.set noreorder.set nomacrobne $2,$0,$L500addiu $2,$5,-31.set macro.set reorder$L541:li $3,-32 # 0xffffffffffffffe0and $3,$2,$3sltu $4,$7,$3.set noreorder.set nomacrobeq $4,$0,$L373addiu $2,$7,4.set macro.set reorder$L542:#APPpref 30,0($2).word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4#NO_APPsltu $2,$7,$3.set noreorder.set nomacrobne $2,$0,$L542addiu $2,$7,4.set macro.set reorder$L373:addiu $3,$5,-4sltu $2,$7,$3beq $2,$0,$L375$L502:#APP.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4#NO_APPsltu $2,$7,$3bne $2,$0,$L502$L375:andi $3,$5,0x3li $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L380li $2,1 # 0x1.set macro.set reorderbeq $3,$2,$L523$L377:li $4,4 # 0x4li $2,3 # 0x3addiu $8,$sp,240.set noreorder.set nomacrobeq $4,$2,$L384move $3,$5.set macro.set reorderli $2,1 # 0x1beq $4,$2,$L524$L381:addiu $7,$3,-4move $2,$0#APP.word 0b01110000000000100000000001101111 #S32I2M XR1,$2#NO_APPandi $3,$3,0x1f.set noreorder.set nomacrobeq $3,$0,$L543addiu $2,$8,-31.set macro.set reorderli $2,-32 # 0xffffffffffffffe0and $2,$7,$2addiu $4,$2,32sltu $3,$7,$4.set noreorder.set nomacrobeq $3,$0,$L543addiu $2,$8,-31.set macro.set reorder$L503:#APP.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4#NO_APPsltu $2,$7,$4.set noreorder.set nomacrobne $2,$0,$L503addiu $2,$8,-31.set macro.set reorder$L543:li $3,-32 # 0xffffffffffffffe0and $3,$2,$3sltu $4,$7,$3.set noreorder.set nomacrobeq $4,$0,$L388addiu $2,$7,4.set macro.set reorder$L544:#APPpref 30,0($2).word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4#NO_APPsltu $2,$7,$3.set noreorder.set nomacrobne $2,$0,$L544addiu $2,$7,4.set macro.set reorder$L388:addiu $3,$8,-4sltu $2,$7,$3beq $2,$0,$L390$L505:#APP.word 0b01110000111000000000010001010101 #S32SDI XR1,$7,4#NO_APPsltu $2,$7,$3bne $2,$0,$L505$L390:andi $3,$8,0x3li $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L395li $2,1 # 0x1.set macro.set reorderbeq $3,$2,$L525$L392:srl $2,$6,1andi $22,$2,0x1addu $3,$22,$23li $2,1 # 0x1sll $20,$2,$3blez $20,$L396move $16,$5move $18,$0addiu $17,$sp,80addiu $21,$sp,64li $19,4 # 0x4$L398:li $2,256 # 0x100li $4,1024 # 0x400sw $2,0($16)sw $0,4($16).set noreorder.set nomacrojal av_malloczsw $0,8($16).set macro.set reordersw $2,12($16).set noreorder.set nomacrojal av_malloczli $4,1024 # 0x400.set macro.set reordersw $2,16($16).set noreorder.set nomacrojal av_malloczli $4,1024 # 0x400.set macro.set reorderlw $3,72($sp)move $5,$16addiu $8,$3,1move $4,$21move $6,$0move $7,$0sw $2,20($16).set noreorder.set nomacrojal smacker_decode_treesw $8,72($sp).set macro.set reorderlw $8,72($sp)move $4,$17addiu $8,$8,1sw $8,72($sp)lw $2,8($16)addiu $18,$18,1slt $2,$2,2li $5,9 # 0x9.set noreorder.set nomacrobne $2,$0,$L399addiu $17,$17,16.set macro.set reorderlw $6,0($16)lw $7,16($16)lw $3,12($16)li $2,2 # 0x2sw $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 nomacrojal init_vlc_sparsesw $0,44($sp).set macro.set reorder.set noreorder.set nomacrobltz $2,$L499lw $4,288($sp).set macro.set reorder$L399:.set noreorder.set nomacrobne $20,$18,$L398addiu $16,$16,24.set macro.set reorder$L396:.set noreorder.set nomacrobeq $23,$0,$L402lw $11,292($sp).set macro.set reorder.set noreorder.set nomacrobltz $22,$L409addiu $13,$sp,56.set macro.set reordersll $2,$22,2lw $8,72($sp)lw $7,64($sp)addu $10,$2,$13move $9,$22li $12,-1 # 0xffffffffffffffff$L408:sra $4,$8,3addu $4,$4,$7lbu $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,$3andi $4,$8,0x7sra $2,$2,$4andi $2,$2,0xffffsll $3,$2,8srl $2,$2,8or $2,$2,$3addiu $8,$8,16andi $2,$2,0xffffaddiu $9,$9,-1sw $2,0($10)sw $8,72($sp).set noreorder.set nomacrobne $9,$12,$L408addiu $10,$10,-4.set macro.set reorder.set noreorder.set nomacroblez $22,$L545srl $2,$fp,31.set macro.set reordermove $4,$13move $3,$0$L411:lw $2,0($4)addiu $3,$3,1sh $2,0($11)addiu $4,$4,4.set noreorder.set nomacrobne $22,$3,$L411addiu $11,$11,2.set macro.set reorder$L409:srl $2,$fp,31$L545:addu $2,$2,$fpsra $19,$2,1.set noreorder.set nomacroblez $19,$L497lw $18,64($sp).set macro.set reorderlw $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,$18move $10,$0move $21,$18move $23,$18sw $3,240($sp).set noreorder.set nomacroj $L414sw $4,244($sp).set macro.set reorder$L530:.set noreorder.set nomacrobeq $14,$0,$L526lw $8,72($sp).set macro.set reordersra $4,$8,3addu $4,$18,$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,$3andi $4,$8,0x7sra $2,$2,$4andi $2,$2,0x1ffsll $2,$2,2addu $2,$14,$2lh $7,2($2).set noreorder.set nomacrobltz $7,$L527lh $9,0($2).set macro.set reorder$L420:addu $8,$8,$7sw $8,72($sp)sll $2,$9,2$L419:addu $2,$2,$24.set noreorder.set nomacrobeq $15,$0,$L528lw $13,0($2).set macro.set reorderlw $8,72($sp)sra $4,$8,3addu $4,$21,$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,$3andi $4,$8,0x7sra $2,$2,$4andi $2,$2,0x1ffsll $2,$2,2addu $2,$15,$2lh $7,2($2).set noreorder.set nomacrobltz $7,$L529lh $9,0($2).set macro.set reorder$L426:addu $8,$8,$7sw $8,72($sp)sll $2,$9,2$L425:addu $2,$2,$25lw $3,0($2)lw $2,60($sp)sll $3,$3,8or $3,$13,$3sll $3,$3,16sra $3,$3,16addu $2,$2,$3sh $2,0($11)sw $2,60($sp)addiu $11,$11,2$L429:addiu $10,$10,1beq $19,$10,$L412$L414:and $2,$22,$10bne $2,$0,$L530.set noreorder.set nomacrobeq $12,$0,$L531lw $8,72($sp).set macro.set reordersra $4,$8,3addu $4,$17,$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,$3andi $4,$8,0x7sra $2,$2,$4andi $2,$2,0x1ffsll $2,$2,2addu $2,$12,$2lh $7,2($2).set noreorder.set nomacrobltz $7,$L532lh $9,0($2).set macro.set reorder$L433:addu $8,$8,$7sw $8,72($sp)sll $2,$9,2$L432:lw $3,240($sp)addu $2,$2,$3.set noreorder.set nomacrobeq $16,$0,$L533lw $13,0($2).set macro.set reorderlw $8,72($sp)sra $4,$8,3addu $4,$23,$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,$3andi $4,$8,0x7
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?