asf.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 4,970 行 · 第 1/5 页
S
4,970 行
.file 1 "asf.c".section .mdebug.abi32.previous.section .text.asf_probe,"ax",@progbits.align 2.align 5.ent asf_probe.type asf_probe, @functionasf_probe:.frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0.mask 0x80000000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $31,16($sp)lw $4,4($4)lui $5,%hi(asf_header)addiu $5,$5,%lo(asf_header)jal memcmpli $6,16 # 0x10li $3,100 # 0x64movn $3,$0,$2lw $31,16($sp)move $2,$3j $31addiu $sp,$sp,24.set macro.set reorder.end asf_probe.section .text.get_str16_nolen,"ax",@progbits.align 2.align 5.ent get_str16_nolen.type get_str16_nolen, @functionget_str16_nolen:.frame $sp,56,$31 # vars= 0, regs= 9/0, args= 16, gp= 0.mask 0x80ff0000,-8.fmask 0x00000000,0.set noreorder.set nomacrosrl $2,$5,31addiu $sp,$sp,-56addu $2,$2,$5sw $17,20($sp)lui $3,%hi(ff_log2_tab)sra $17,$2,1li $2,1717960704 # 0x66660000sw $23,44($sp)sw $22,40($sp)sw $21,36($sp)sw $20,32($sp)sw $19,28($sp)sw $18,24($sp)sw $16,16($sp)sw $31,48($sp)move $19,$6move $21,$7move $20,$4addiu $22,$3,%lo(ff_log2_tab)ori $23,$2,0x6667move $16,$6addiu $18,$7,-1$L31:addiu $17,$17,-1$L34:li $2,-1 # 0xffffffffffffffffbeq $17,$2,$L33nop$L8:jal get_le16move $4,$20move $6,$2sltu $2,$2,128beq $2,$0,$L9li $2,-65536 # 0xffffffffffff0000subu $2,$16,$19addiu $3,$21,-1slt $2,$2,$3beq $2,$0,$L31li $2,-1 # 0xffffffffffffffffaddiu $17,$17,-1sb $6,0($16)bne $17,$2,$L8addiu $16,$16,1$L33:sb $0,0($16)lw $31,48($sp)lw $23,44($sp)lw $22,40($sp)lw $21,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,56$L9:and $2,$6,$2bne $2,$0,$L12srl $3,$6,16move $3,$6move $4,$0$L14:andi $2,$3,0xff00beq $2,$0,$L35addu $2,$3,$22srl $3,$3,8addiu $4,$4,8addu $2,$3,$22$L35:lbu $3,0($2)addiu $4,$4,4addu $3,$3,$4mult $3,$23sra $3,$3,31mfhi $2sra $2,$2,1subu $7,$2,$3sll $4,$7,1sll $2,$7,3subu $3,$16,$19subu $2,$2,$4slt $3,$3,$18beq $3,$0,$L18addiu $5,$2,-6li $2,256 # 0x100sra $2,$2,$7subu $2,$0,$2srl $3,$6,$5or $2,$2,$3sb $2,0($16)addiu $16,$16,1$L18:slt $2,$5,6bne $2,$0,$L31addiu $5,$5,-6$L36:subu $2,$16,$19srl $3,$6,$5li $4,-128 # 0xffffffffffffff80andi $3,$3,0x3fslt $2,$2,$18or $3,$3,$4beq $2,$0,$L20slt $4,$5,6sb $3,0($16)addiu $16,$16,1$L20:beq $4,$0,$L36addiu $5,$5,-6addiu $5,$5,6j $L34addiu $17,$17,-1$L12:j $L14li $4,16 # 0x10.set macro.set reorder.end get_str16_nolen.section .text.asf_read_close,"ax",@progbits.align 2.align 5.ent asf_read_close.type asf_read_close, @functionasf_read_close:.frame $sp,40,$31 # vars= 0, regs= 5/0, args= 16, gp= 0.mask 0x800f0000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-40sw $19,28($sp)sw $31,32($sp)sw $18,24($sp)sw $17,20($sp)sw $16,16($sp)lw $2,96($4)beq $2,$0,$L38move $19,$4move $17,$4move $18,$0$L40:lw $16,100($17)addiu $18,$18,1lw $4,20($16)jal av_freeaddiu $17,$17,4lw $2,8($16)jal av_freelw $4,584($2)lw $2,96($19)sltu $2,$18,$2bne $2,$0,$L40nop$L38:lw $31,32($sp)lw $19,28($sp)lw $18,24($sp)lw $17,20($sp)lw $16,16($sp)move $2,$0j $31addiu $sp,$sp,40.set macro.set reorder.end asf_read_close.globl __divdi3.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "asf_read_pts failed\012\000".section .text.asf_read_pts,"ax",@progbits.align 2.align 5.ent asf_read_pts.type asf_read_pts, @functionasf_read_pts:.frame $fp,144,$31 # vars= 64, regs= 10/0, args= 40, gp= 0.mask 0xc0ff0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-144sw $fp,136($sp)sw $22,128($sp)sw $31,140($sp)sw $23,132($sp)sw $21,124($sp)sw $20,120($sp)sw $19,116($sp)sw $18,112($sp)sw $17,108($sp)sw $16,104($sp)lw $7,96($4)move $fp,$spsll $2,$7,3addiu $2,$2,8sw $sp,96($fp)subu $sp,$sp,$2addiu $2,$sp,40sw $5,148($fp)move $22,$4sw $6,152($fp)lw $5,12($4)lw $8,0($6)lw $9,4($6)beq $7,$0,$L44sw $2,100($fp)move $3,$2move $4,$0$L46:addiu $4,$4,1sltu $2,$4,$7sw $8,0($3)sw $9,4($3)bne $2,$0,$L46addiu $3,$3,8$L44:lw $16,4($5)lw $18,3920($22)addu $4,$8,$16lw $19,3924($22)sltu $6,$4,$8addu $5,$6,$9subu $2,$4,$18sltu $6,$4,$2subu $3,$5,$19subu $3,$3,$6addiu $4,$2,-1sltu $6,$4,$2addiu $5,$3,-1move $17,$0addu $5,$6,$5move $7,$17jal __divdi3move $6,$16multu $16,$2addiu $4,$22,16mflo $8mfhi $9mul $5,$3,$16addu $6,$18,$8addu $9,$5,$9sltu $2,$6,$18addu $7,$19,$9addu $7,$2,$7lw $2,152($fp)sw $6,0($2)sw $7,4($2)jal url_fseeksw $0,16($sp)lw $18,12($22)move $4,$0sw $0,14388($18)sw $0,14372($18)sw $0,17776($18)sw $0,17780($18)sw $0,17784($18)sw $0,17788($18)sw $0,17792($18)sw $0,17796($18)sw $0,17800($18)sw $0,17804($18)sw $0,17808($18)sw $0,17812($18)sw $0,17816($18)sw $0,17832($18)sw $0,17836($18)sw $0,17840($18)sw $0,17844($18)lw $2,96($22)move $5,$0sw $4,17824($18)beq $2,$0,$L47sw $5,17828($18)move $17,$22move $19,$0$L49:lw $2,100($17)addiu $19,$19,1lw $16,20($2)addiu $4,$16,8beq $4,$0,$L50addiu $17,$17,4lw $2,36($4)beq $2,$0,$L50nopjal $2nop$L50:sb $0,4($16)sw $0,64($16)lw $2,96($22)sltu $2,$19,$2bne $2,$0,$L49nop$L47:sw $0,17888($18)addiu $23,$fp,40$L69:move $4,$22$L71:jal av_read_framemove $5,$23bltz $2,$L70move $4,$23lw $2,76($fp)lw $20,40($fp)beq $2,$0,$L57lw $21,44($fp)jal $2nop$L57:lw $2,68($fp)andi $2,$2,0x1beq $2,$0,$L71move $4,$22lw $16,64($fp)lw $5,100($fp)sll $2,$16,2addu $2,$2,$22lw $4,100($2)sll $16,$16,3lw $17,20($4)addu $16,$16,$5lw $18,96($17)lw $19,100($17)sw $20,16($sp)sw $21,20($sp)lw $2,60($fp)move $6,$18sw $2,24($sp)lw $3,0($16)li $2,1 # 0x1subu $3,$18,$3addiu $3,$3,1sw $3,28($sp)sw $2,32($sp)jal av_add_index_entrymove $7,$19lw $4,96($17)lw $5,100($17)addiu $2,$4,1sltu $6,$2,$4sw $2,0($16)lw $4,64($fp)lw $2,148($fp)addu $3,$6,$5bne $4,$2,$L69sw $3,4($16)lw $4,152($fp)sw $18,0($4)j $L56sw $19,4($4)$L70:lui $6,%hi($LC0)move $4,$22addiu $6,$6,%lo($LC0)jal av_logli $5,1 # 0x1move $20,$0li $21,-2147483648 # 0xffffffff80000000$L56:lw $sp,96($fp)move $sp,$fpmove $2,$20move $3,$21lw $31,140($sp)lw $fp,136($sp)lw $23,132($sp)lw $22,128($sp)lw $21,124($sp)lw $20,120($sp)lw $19,116($sp)lw $18,112($sp)lw $17,108($sp)lw $16,104($sp)j $31addiu $sp,$sp,144.set macro.set reorder.end asf_read_pts.section .rodata.str1.4.align 2$LC1:.ascii "itime:0x%llx, pct:%d, ict:%d\012\000".align 2$LC2:.ascii "pktnum:%d, pktct:%d\012\000".align 2$LC3:.ascii "SEEKTO: %lld\012\000".section .text.asf_read_seek,"ax",@progbits.align 2.align 5.ent asf_read_seek.type asf_read_seek, @functionasf_read_seek:.frame $sp,120,$31 # vars= 40, regs= 10/0, args= 40, gp= 0.mask 0xc0ff0000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-120sw $22,104($sp)sw $31,116($sp)sw $fp,112($sp)sw $23,108($sp)sw $21,100($sp)sw $20,96($sp)sw $19,92($sp)sw $18,88($sp)sw $17,84($sp)sw $16,80($sp)lw $18,12($4)sw $5,124($sp)sll $2,$5,2lw $3,4($18)sw $2,76($sp)addu $2,$2,$4move $22,$4sw $6,128($sp)sw $7,132($sp)beq $3,$0,$L73lw $fp,100($2)lw $2,17696($18)beq $2,$0,$L96addiu $19,$4,16lw $2,144($fp)$L98:bne $2,$0,$L83lw $2,136($sp)lw $10,136($sp)$L101:lw $5,124($sp)lw $6,128($sp)lw $7,132($sp)move $4,$22jal av_seek_frame_binarysw $10,16($sp)bltz $2,$L100lw $31,116($sp)lw $18,12($22)$L99:move $4,$0sw $0,14388($18)sw $0,14372($18)sw $0,17776($18)sw $0,17780($18)sw $0,17784($18)sw $0,17788($18)sw $0,17792($18)sw $0,17796($18)sw $0,17800($18)sw $0,17804($18)sw $0,17808($18)sw $0,17812($18)sw $0,17816($18)sw $0,17832($18)sw $0,17836($18)sw $0,17840($18)sw $0,17844($18)lw $2,96($22)move $5,$0sw $4,17824($18)beq $2,$0,$L86sw $5,17828($18)move $17,$22move $19,$0$L88:lw $2,100($17)addiu $19,$19,1lw $16,20($2)addiu $4,$16,8beq $4,$0,$L89addiu $17,$17,4lw $2,36($4)beq $2,$0,$L89nopjal $2nop$L89:sb $0,4($16)sw $0,64($16)lw $2,96($22)sltu $2,$19,$2bne $2,$0,$L88nop$L86:sw $0,17888($18)lw $31,116($sp)lw $fp,112($sp)lw $23,108($sp)lw $22,104($sp)lw $21,100($sp)lw $20,96($sp)lw $19,92($sp)lw $18,88($sp)lw $17,84($sp)lw $16,80($sp)move $2,$0j $31addiu $sp,$sp,120$L96:jal url_ftellmove $4,$19sw $2,64($sp)lw $8,17688($18)lw $2,17680($18)lw $9,17692($18)sw $3,68($sp)lw $3,17684($18)addu $6,$2,$8sltu $5,$6,$2addu $7,$3,$9addu $7,$5,$7move $4,$19addiu $16,$sp,40jal url_fseeksw $0,16($sp)move $5,$16li $6,16 # 0x10jal get_buffermove $4,$19lui $5,%hi(index_guid)move $4,$16addiu $5,$5,%lo(index_guid)jal memcmpli $6,16 # 0x10beq $2,$0,$L97nop$L77:lw $6,64($sp)lw $7,68($sp)move $4,$19jal url_fseeksw $0,16($sp)lw $4,17696($18)beq $4,$0,$L101lw $10,136($sp)j $L98lw $2,144($fp)$L73:lw $31,116($sp)$L100:lw $fp,112($sp)lw $23,108($sp)lw $22,104($sp)lw $21,100($sp)lw $20,96($sp)lw $19,92($sp)lw $18,88($sp)lw $17,84($sp)lw $16,80($sp)li $2,-1 # 0xffffffffffffffffj $31addiu $sp,$sp,120$L97:jal get_le64move $4,$19move $5,$16li $6,16 # 0x10jal get_buffermove $4,$19jal get_le64move $4,$19move $4,$19sw $3,60($sp)jal get_le32sw $2,56($sp)move $4,$19jal get_le32move $16,$2lw $3,60($sp)sw $2,72($sp)sw $3,20($sp)lw $2,56($sp)lw $3,72($sp)lui $6,%hi($LC1)move $4,$0addiu $6,$6,%lo($LC1)li $5,2 # 0x2sw $16,24($sp)sw $2,16($sp)jal av_logsw $3,28($sp)lw $4,72($sp)blez $4,$L102li $2,1 # 0x1move $23,$0move $20,$0move $21,$0$L81:jal get_le32move $4,$19move $4,$19jal get_le16move $16,$2lui $10,%hi($LC2)addiu $6,$10,%lo($LC2)move $7,$16move $4,$0li $5,2 # 0x2jal av_logsw $2,16($sp)lw $4,4($18)sra $3,$16,31multu $4,$16lw $8,3920($22)mflo $6mfhi $7mul $10,$3,$4lw $9,3924($22)addu $16,$6,$8addu $7,$10,$7lw $4,56($sp)lw $5,60($sp)sltu $10,$16,$6addu $17,$7,$9move $6,$20move $7,$21li $2,10000 # 0x2710move $3,$0addu $17,$10,$17sw $2,16($sp)jal av_rescalesw $3,20($sp)lw $4,76($sp)sw $2,16($sp)addu $5,$4,$22sw $3,20($sp)lw $4,100($5)lw $3,4($18)li $2,1 # 0x1move $6,$16move $7,$17sw $3,24($sp)sw $2,32($sp)jal av_add_index_entrysw $0,28($sp)addiu $4,$20,1sltu $2,$4,$20addu $5,$2,$21move $21,$5lw $5,72($sp)addiu $23,$23,1bne $5,$23,$L81move $20,$4li $2,1 # 0x1$L102:j $L77sw $2,17696($18)$L83:lw $6,128($sp)lw $7,132($sp)move $4,$fpjal av_index_search_timestampsw $2,16($sp)bltz $2,$L73move $3,$2lw $4,144($fp)sll $3,$3,3sll $2,$2,5subu $2,$2,$3addu $2,$2,$4lw $16,0($2)lw $17,4($2)lui $6,%hi($LC3)addiu $6,$6,%lo($LC3)move $4,$0li $5,2 # 0x2sw $16,16($sp)jal av_logsw $17,20($sp)move $6,$16move $7,$17addiu $4,$22,16jal url_fseeksw $0,16($sp)j $L99lw $18,12($22).set macro.set reorder.end asf_read_seek.section .rodata.str1.4.align 2$LC4:.ascii "ret>=0\000".align 2$LC5:.ascii "asf.c\000".globl __moddi3.align 2$LC6:.ascii "ff asf bad header %x at:%lld\012\000".align 2$LC7:.ascii "ff asf bad non zero\012\000".align 2$LC8:.ascii "invalid packet_length %d at:%lld\012\000".align 2$LC9:.ascii "invalid padsize %d at:%lld\012\000".align 2$LC10:.ascii "asf->packet_size_left < 17 || asf->packet_segments < 1\000".align 2$LC11:.ascii "packet_obj_size invalid\012\000".align 2$LC12:.ascii "unexpected packet_replic_size of %d\012\000".align 2$LC13:.ascii "packet_frag_size is invalid\012\000".align 2$LC14:.ascii "ff asf skip %d (unknown stream)\012\000".align 2$LC15:.ascii "ignoring invalid packet_obj_size (%d %d %d %d)\012\000".align 2$LC16:.ascii "freeing incomplete packet size %d, new %d\012\000".align 2$LC17:.ascii "packet fragment position invalid %u,%u not in %u\012\000".align 2$LC18:.ascii "discarding ms fart\012\000".align 2$LC19:.ascii "pkt.size != ds_packet_size * ds_span (%d %d %d)\012\000".align 2$LC20:.ascii "offset + asf_st->ds_chunk_size <= asf_st->pkt.size\000".align 2$LC21:.ascii "idx+1 <= asf_st->pkt.size / asf_st->ds_chunk_size\000".section .text.asf_read_packet,"ax",@progbits.align 2.align 5.ent asf_read_packet.type asf_read_packet, @functionasf_read_packet:.frame $sp,72,$31 # vars= 0, regs= 10/0, args= 32, gp= 0.mask 0xc0ff0000,-4.fmask 0x00000000,0addiu $sp,$sp,-72sw $fp,64($sp)sw $21,52($sp)sw $31,68($sp)sw $23,60($sp)sw $22,56($sp)sw $20,48($sp)sw $19,44($sp)sw $18,40($sp)sw $17,36($sp)sw $16,32($sp)lw $22,12($4)move $fp,$4sw $5,76($sp)addiu $21,$4,16$L289:.set noreorder.set nomacrojal url_feofmove $4,$21.set macro.set reorderbne $2,$0,$L105lw $6,14372($22)slt $2,$6,17bne $2,$0,$L107lw $2,17792($22)blez $2,$L107lw $2,17844($22)beq $2,$0,$L291$L159:lw $2,17800($22)li $3,1 # 0x1.set noreorder.set nomacrobeq $2,$3,$L292lw $17,17888($22).set macro.set reorder$L208:lw $7,64($17)lw $10,17816($22)lw $9,28($17)addu $3,$7,$10sltu $2,$9,$3bne $2,$0,$L267lw $8,17836($22)sltu $2,$8,$3.set noreorder.set nomacrobne $2,$0,$L293li $5,1 # 0x1.set macro.set reorder$L212:beq $9,$8,$L294$L215:lw $2,24($17).set noreorder.set nomacrobeq $2,$0,$L218addiu $16,$17,8.set macro.set reorderlui $6,%hi($LC16)$L331:addiu $6,$6,%lo($LC16)move $7,$9move $4,$fpli $5,1 # 0x1addiu $16,$17,8.set noreorder.set nomacrojal av_logsw $8,16($sp).set macro.set reorderlw $2,36($16).set noreorder.set nomacrobeq $2,$0,$L269sw $0,64($17).set macro.set reorder.set noreorder.set nomacrojal $2move $4,$16.set macro.set reorderlw $8,17836($22)$L218:move $4,$16.set noreorder.set nomacrojal av_new_packetmove $5,$8.set macro.set reorderlw $3,17796($22)li $7,1 # 0x1sb $3,4($17)lw $6,17856($22)lw $4,17824($22)sw $6,32($17)lw $2,17856($22)lw $5,17828($22)sll $2,$2,2addu $2,$2,$fplw $3,100($2)sw $4,8($17)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?