gps/GPSResources/tcpmpVerOld/ffmpeg/Pocket PC 2003 (ARMV4)/Release/msvideo1.asm

1498 lines
36 KiB
NASM
Executable File

; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
TTL g:\MyPrograme\VS2005\GPSVersion2\tcpmp\ffmpeg\libavcodec\msvideo1.c
CODE32
AREA |.drectve|, DRECTVE
DCB "-defaultlib:LIBCMT "
DCB "-defaultlib:OLDNAMES "
EXPORT |msvideo1_decoder| [ DATA ]
AREA |.data|, DATA
|$SG3606| DCB " MS Video-1 warning: stream_ptr out of bounds (%d >= %d)"
DCB 0xa, 0x0
% 2
|$SG3613| DCB " MS Video-1 warning: stream_ptr out of bounds (%d >= %d)"
DCB 0xa, 0x0
% 2
|$SG3623| DCB " MS Video-1 warning: stream_ptr out of bounds (%d >= %d)"
DCB 0xa, 0x0
% 2
|$SG3671| DCB " MS Video-1 warning: stream_ptr out of bounds (%d >= %d)"
DCB 0xa, 0x0
% 2
|$SG3678| DCB " MS Video-1 warning: stream_ptr out of bounds (%d >= %d)"
DCB 0xa, 0x0
% 2
|$SG3685| DCB " MS Video-1 warning: stream_ptr out of bounds (%d >= %d)"
DCB 0xa, 0x0
% 2
|$SG3733| DCB "reget_buffer() failed", 0xa, 0x0
% 1
|$SG3745| DCB "msvideo1", 0x0
% 3
|msvideo1_decoder| DCD |$SG3745|
DCD 0x0
DCD 0x2e
DCD 0x8b0
DCD |msvideo1_decode_init|
DCD 0x0
DCD |msvideo1_decode_end|
DCD |msvideo1_decode_frame|
DCD 0x2
% 16
IMPORT |dsputil_init|
AREA |.pdata|, PDATA
|$T3755| DCD |$LN7@msvideo1_d|
DCD 0x40003604
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|msvideo1_decode_init| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\msvideo1.c
; Line 63
|$LN7@msvideo1_d|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M3752|
; Line 64
ldr r3, [sp, #0x10]
add r3, r3, #0x88
ldr r3, [r3]
str r3, [sp]
; Line 66
ldr r2, [sp, #0x10]
ldr r3, [sp]
str r2, [r3]
; Line 69
ldr r3, [sp]
ldr r3, [r3]
add r3, r3, #0x92, 30
ldr r3, [r3]
cmp r3, #0
beq |$LN2@msvideo1_d|
; Line 70
ldr r3, [sp]
add r3, r3, #2, 22
add r2, r3, #0xA8
mov r3, #1
str r3, [r2]
; Line 71
ldr r3, [sp, #0x10]
add r2, r3, #0x34
mov r3, #0xE
str r3, [r2]
; Line 72
b |$LN1@msvideo1_d|
|$LN2@msvideo1_d|
; Line 73
ldr r3, [sp]
add r3, r3, #2, 22
add r2, r3, #0xA8
mov r3, #0
str r3, [r2]
; Line 74
ldr r3, [sp, #0x10]
add r2, r3, #0x34
mov r3, #0xA
str r3, [r2]
|$LN1@msvideo1_d|
; Line 77
ldr r3, [sp, #0x10]
add r2, r3, #0x43, 30
mov r3, #0
str r3, [r2]
; Line 78
ldr r1, [sp, #0x10]
ldr r3, [sp]
add r0, r3, #4
bl dsputil_init
; Line 80
ldr r3, [sp]
add r3, r3, #7, 24
add r2, r3, #0xD8
mov r3, #0
str r3, [r2]
; Line 82
mov r3, #0
str r3, [sp, #4]
; Line 83
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp, {sp, pc}
|$M3753|
ENDP ; |msvideo1_decode_init|
IMPORT |av_log|
IMPORT |memcpy|
AREA |.pdata|, PDATA
|$T3762| DCD |$LN8@msvideo1_d@2|
DCD 0x40004a04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|msvideo1_decode_frame| PROC
; Line 302
|$LN8@msvideo1_d@2|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M3759|
; Line 303
ldr r3, [sp, #0x14]
add r3, r3, #0x88
ldr r3, [r3]
str r3, [sp]
; Line 305
ldr r3, [sp]
add r2, r3, #0x8A, 28
ldr r3, [sp, #0x20]
str r3, [r2]
; Line 306
ldr r3, [sp]
add r3, r3, #2, 22
add r2, r3, #0xA4
ldr r3, [sp, #0x24]
str r3, [r2]
; Line 308
ldr r3, [sp]
add r3, r3, #2, 22
add r2, r3, #0x28
mov r3, #1
str r3, [r2]
; Line 309
ldr r3, [sp]
add r3, r3, #2, 22
add r2, r3, #0x8C
mov r3, #0xD
str r3, [r2]
; Line 310
ldr r3, [sp]
add r3, r3, #7, 24
add r1, r3, #0xD8
ldr r0, [sp, #0x14]
ldr r3, [sp, #0x14]
add r3, r3, #0x25, 28
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #8]
ldr r3, [sp, #8]
cmp r3, #0
beq |$LN3@msvideo1_d@2|
; Line 311
ldr r2, [pc, #0x7C]
mov r1, #0
ldr r3, [sp]
ldr r0, [r3]
bl av_log
; Line 312
mvn r3, #0
str r3, [sp, #4]
b |$LN4@msvideo1_d@2|
|$LN3@msvideo1_d@2|
; Line 315
ldr r3, [sp]
add r3, r3, #2, 22
add r3, r3, #0xA8
ldr r3, [r3]
cmp r3, #0
beq |$LN2@msvideo1_d@2|
; Line 316
ldr r0, [sp]
bl msvideo1_decode_8bit
; Line 317
b |$LN1@msvideo1_d@2|
|$LN2@msvideo1_d@2|
; Line 318
ldr r0, [sp]
bl msvideo1_decode_16bit
|$LN1@msvideo1_d@2|
; Line 320
ldr r2, [sp, #0x1C]
mov r3, #0xC8
str r3, [r2]
; Line 321
ldr r3, [sp]
add r3, r3, #7, 24
add r1, r3, #0xD8
ldr r0, [sp, #0x18]
mov r2, #0xC8
bl memcpy
; Line 324
ldr r3, [sp, #0x24]
str r3, [sp, #4]
|$LN4@msvideo1_d@2|
; Line 325
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$LN9@msvideo1_d@2|
DCD |$SG3733|
|$M3760|
ENDP ; |msvideo1_decode_frame|
IMPORT |memcpy|
IMPORT |__imp___rt_sdiv|
AREA |.pdata|, PDATA
|$T3774| DCD |$LN43@msvideo1_d@3|
DCD 0x4001a604
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|msvideo1_decode_8bit| PROC
; Line 86
|$LN43@msvideo1_d@3|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0x5C
|$M3771|
; Line 101
ldr r3, [sp, #0x64]
add r3, r3, #7, 24
add r3, r3, #0xD8
ldr r3, [r3]
str r3, [sp, #0x38]
; Line 102
ldr r3, [sp, #0x64]
add r3, r3, #7, 24
add r3, r3, #0xE8
ldr r3, [r3]
str r3, [sp, #0x1C]
; Line 104
mov r3, #0
str r3, [sp, #0x40]
; Line 105
mov r3, #0
str r3, [sp, #0x3C]
; Line 106
ldr r3, [sp, #0x64]
ldr r3, [r3]
add r3, r3, #0x28
ldr r1, [r3]
mov r0, #4
ldr r3, [pc, #0x630]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x30]
; Line 107
ldr r3, [sp, #0x64]
ldr r3, [r3]
add r3, r3, #0x2C
ldr r1, [r3]
mov r0, #4
ldr r3, [pc, #0x608]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x4C]
; Line 108
ldr r2, [sp, #0x30]
ldr r3, [sp, #0x4C]
mul r3, r2, r3
str r3, [sp, #0x20]
; Line 109
mov r3, #4
str r3, [sp, #0x2C]
; Line 110
ldr r3, [sp, #0x1C]
add r3, r3, #4
str r3, [sp, #0x18]
; Line 112
ldr r3, [sp, #0x4C]
str r3, [sp, #0x48]
b |$LN38@msvideo1_d@3|
|$LN37@msvideo1_d@3|
ldr r3, [sp, #0x48]
sub r3, r3, #1
str r3, [sp, #0x48]
|$LN38@msvideo1_d@3|
ldr r3, [sp, #0x48]
cmp r3, #0
ble |$LN36@msvideo1_d@3|
; Line 113
ldr r2, [sp, #0x48]
mov r3, #4
mul r3, r2, r3
sub r2, r3, #1
ldr r3, [sp, #0x1C]
mul r3, r2, r3
str r3, [sp, #4]
; Line 114
ldr r3, [sp, #0x30]
str r3, [sp, #0x14]
b |$LN35@msvideo1_d@3|
|$LN34@msvideo1_d@3|
ldr r3, [sp, #0x14]
sub r3, r3, #1
str r3, [sp, #0x14]
|$LN35@msvideo1_d@3|
ldr r3, [sp, #0x14]
cmp r3, #0
ble |$LN33@msvideo1_d@3|
; Line 116
ldr r3, [sp, #0x3C]
cmp r3, #0
beq |$LN32@msvideo1_d@3|
; Line 117
ldr r2, [sp, #4]
ldr r3, [sp, #0x2C]
add r3, r2, r3
str r3, [sp, #4]
; Line 118
ldr r3, [sp, #0x3C]
sub r3, r3, #1
str r3, [sp, #0x3C]
; Line 119
ldr r3, [sp, #0x20]
sub r3, r3, #1
str r3, [sp, #0x20]
; Line 120
b |$LN34@msvideo1_d@3|
|$LN32@msvideo1_d@3|
; Line 123
ldr r3, [sp, #4]
str r3, [sp, #0x28]
; Line 126
ldr r3, [sp, #0x40]
add r2, r3, #2
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
cmp r2, r3
ble |$LN31@msvideo1_d@3|
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
str r3, [sp]
ldr r3, [sp, #0x40]
add r3, r3, #2
ldr r2, [pc, #0x4EC]
mov r1, #0
ldr r0, [sp, #0x64]
ldr r0, [r0]
bl av_log
b |$LN39@msvideo1_d@3|
|$LN31@msvideo1_d@3|
; Line 127
ldr r3, [sp, #0x64]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x40]
add r3, r2, r3
ldrb r3, [r3]
strb r3, [sp, #0x34]
ldr r3, [sp, #0x40]
add r3, r3, #1
str r3, [sp, #0x40]
; Line 128
ldr r3, [sp, #0x64]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x40]
add r3, r2, r3
ldrb r3, [r3]
strb r3, [sp, #0xA]
ldr r3, [sp, #0x40]
add r3, r3, #1
str r3, [sp, #0x40]
; Line 131
ldrb r3, [sp, #0x34]
cmp r3, #0
bne |$LN30@msvideo1_d@3|
ldrb r3, [sp, #0xA]
cmp r3, #0
bne |$LN30@msvideo1_d@3|
ldr r3, [sp, #0x20]
cmp r3, #0
bne |$LN30@msvideo1_d@3|
b |$LN39@msvideo1_d@3|
; Line 132
b |$LN29@msvideo1_d@3|
|$LN30@msvideo1_d@3|
; Line 133
ldrb r3, [sp, #0xA]
and r3, r3, #0xFC
cmp r3, #0x84
bne |$LN28@msvideo1_d@3|
; Line 135
ldrb r3, [sp, #0xA]
sub r3, r3, #0x84
mov r2, r3, lsl #8
ldrb r3, [sp, #0x34]
add r3, r2, r3
sub r3, r3, #1
str r3, [sp, #0x3C]
b |$LN27@msvideo1_d@3|
|$LN28@msvideo1_d@3|
; Line 136
ldrb r3, [sp, #0xA]
cmp r3, #0x80
bge |$LN26@msvideo1_d@3|
; Line 138
ldrb r3, [sp, #0xA]
mov r2, r3, lsl #8
ldrb r3, [sp, #0x34]
orr r3, r2, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
; Line 140
ldr r3, [sp, #0x40]
add r2, r3, #2
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
cmp r2, r3
ble |$LN25@msvideo1_d@3|
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
str r3, [sp]
ldr r3, [sp, #0x40]
add r3, r3, #2
ldr r2, [pc, #0x3C0]
mov r1, #0
ldr r0, [sp, #0x64]
ldr r0, [r0]
bl av_log
b |$LN39@msvideo1_d@3|
|$LN25@msvideo1_d@3|
; Line 141
ldr r3, [sp, #0x64]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x40]
add r3, r2, r3
ldrb r3, [r3]
strb r3, [sp, #0xC]
ldr r3, [sp, #0x40]
add r3, r3, #1
str r3, [sp, #0x40]
; Line 142
ldr r3, [sp, #0x64]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x40]
add r3, r2, r3
ldrb r3, [r3]
strb r3, [sp, #0xD]
ldr r3, [sp, #0x40]
add r3, r3, #1
str r3, [sp, #0x40]
; Line 144
mov r3, #0
str r3, [sp, #0x44]
b |$LN24@msvideo1_d@3|
|$LN23@msvideo1_d@3|
ldr r3, [sp, #0x44]
add r3, r3, #1
str r3, [sp, #0x44]
|$LN24@msvideo1_d@3|
ldr r3, [sp, #0x44]
cmp r3, #4
bge |$LN22@msvideo1_d@3|
; Line 145
mov r3, #0
str r3, [sp, #0x24]
b |$LN21@msvideo1_d@3|
|$LN20@msvideo1_d@3|
ldr r3, [sp, #0x24]
add r3, r3, #1
str r3, [sp, #0x24]
ldrh r3, [sp, #8]
mov r3, r3, lsr #1
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
|$LN21@msvideo1_d@3|
ldr r3, [sp, #0x24]
cmp r3, #4
bge |$LN19@msvideo1_d@3|
; Line 146
ldrh r3, [sp, #8]
and r3, r3, #1
eor r2, r3, #1
add r3, sp, #0xC
add r1, r3, r2
ldr r2, [sp, #0x38]
ldr r3, [sp, #0x28]
add r2, r2, r3
ldrb r3, [r1]
strb r3, [r2]
ldr r3, [sp, #0x28]
add r3, r3, #1
str r3, [sp, #0x28]
b |$LN20@msvideo1_d@3|
|$LN19@msvideo1_d@3|
; Line 147
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x18]
sub r3, r2, r3
str r3, [sp, #0x28]
; Line 148
b |$LN23@msvideo1_d@3|
|$LN22@msvideo1_d@3|
; Line 149
b |$LN18@msvideo1_d@3|
|$LN26@msvideo1_d@3|
ldrb r3, [sp, #0xA]
cmp r3, #0x90
blt |$LN17@msvideo1_d@3|
; Line 151
ldrb r3, [sp, #0xA]
mov r2, r3, lsl #8
ldrb r3, [sp, #0x34]
orr r3, r2, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
; Line 153
ldr r3, [sp, #0x40]
add r2, r3, #8
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
cmp r2, r3
ble |$LN16@msvideo1_d@3|
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
str r3, [sp]
ldr r3, [sp, #0x40]
add r3, r3, #8
ldr r2, [pc, #0x244]
mov r1, #0
ldr r0, [sp, #0x64]
ldr r0, [r0]
bl av_log
b |$LN39@msvideo1_d@3|
|$LN16@msvideo1_d@3|
; Line 154
mov r2, #8
ldr r3, [sp, #0x64]
add r3, r3, #0x8A, 28
ldr r1, [r3]
ldr r3, [sp, #0x40]
add r1, r1, r3
add r0, sp, #0xC
bl memcpy
; Line 155
ldr r3, [sp, #0x40]
add r3, r3, #8
str r3, [sp, #0x40]
; Line 157
mov r3, #0
str r3, [sp, #0x44]
b |$LN15@msvideo1_d@3|
|$LN14@msvideo1_d@3|
ldr r3, [sp, #0x44]
add r3, r3, #1
str r3, [sp, #0x44]
|$LN15@msvideo1_d@3|
ldr r3, [sp, #0x44]
cmp r3, #4
bge |$LN13@msvideo1_d@3|
; Line 158
mov r3, #0
str r3, [sp, #0x24]
b |$LN12@msvideo1_d@3|
|$LN11@msvideo1_d@3|
ldr r3, [sp, #0x24]
add r3, r3, #1
str r3, [sp, #0x24]
ldrh r3, [sp, #8]
mov r3, r3, lsr #1
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
|$LN12@msvideo1_d@3|
ldr r3, [sp, #0x24]
cmp r3, #4
bge |$LN10@msvideo1_d@3|
; Line 161
ldr r3, [sp, #0x44]
and r3, r3, #2
mov r2, r3, lsl #1
ldr r3, [sp, #0x24]
and r3, r3, #2
add r2, r2, r3
ldrh r3, [sp, #8]
and r3, r3, #1
eor r3, r3, #1
add r2, r2, r3
add r3, sp, #0xC
add r1, r3, r2
ldr r2, [sp, #0x38]
ldr r3, [sp, #0x28]
add r2, r2, r3
ldrb r3, [r1]
strb r3, [r2]
ldr r3, [sp, #0x28]
add r3, r3, #1
str r3, [sp, #0x28]
b |$LN11@msvideo1_d@3|
|$LN10@msvideo1_d@3|
; Line 162
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x18]
sub r3, r2, r3
str r3, [sp, #0x28]
; Line 163
b |$LN14@msvideo1_d@3|
|$LN13@msvideo1_d@3|
; Line 164
b |$LN9@msvideo1_d@3|
|$LN17@msvideo1_d@3|
; Line 166
ldrb r3, [sp, #0x34]
strb r3, [sp, #0xC]
; Line 168
mov r3, #0
str r3, [sp, #0x44]
b |$LN8@msvideo1_d@3|
|$LN7@msvideo1_d@3|
ldr r3, [sp, #0x44]
add r3, r3, #1
str r3, [sp, #0x44]
|$LN8@msvideo1_d@3|
ldr r3, [sp, #0x44]
cmp r3, #4
bge |$LN6@msvideo1_d@3|
; Line 169
mov r3, #0
str r3, [sp, #0x24]
b |$LN5@msvideo1_d@3|
|$LN4@msvideo1_d@3|
ldr r3, [sp, #0x24]
add r3, r3, #1
str r3, [sp, #0x24]
|$LN5@msvideo1_d@3|
ldr r3, [sp, #0x24]
cmp r3, #4
bge |$LN3@msvideo1_d@3|
; Line 170
ldr r2, [sp, #0x38]
ldr r3, [sp, #0x28]
add r2, r2, r3
ldrb r3, [sp, #0xC]
strb r3, [r2]
ldr r3, [sp, #0x28]
add r3, r3, #1
str r3, [sp, #0x28]
b |$LN4@msvideo1_d@3|
|$LN3@msvideo1_d@3|
; Line 171
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x18]
sub r3, r2, r3
str r3, [sp, #0x28]
; Line 172
b |$LN7@msvideo1_d@3|
|$LN6@msvideo1_d@3|
|$LN9@msvideo1_d@3|
|$LN18@msvideo1_d@3|
|$LN27@msvideo1_d@3|
|$LN29@msvideo1_d@3|
; Line 175
ldr r2, [sp, #4]
ldr r3, [sp, #0x2C]
add r3, r2, r3
str r3, [sp, #4]
; Line 176
ldr r3, [sp, #0x20]
sub r3, r3, #1
str r3, [sp, #0x20]
; Line 177
b |$LN34@msvideo1_d@3|
|$LN33@msvideo1_d@3|
; Line 178
b |$LN37@msvideo1_d@3|
|$LN36@msvideo1_d@3|
; Line 181
ldr r3, [sp, #0x64]
ldr r3, [r3]
add r3, r3, #0x34
ldr r3, [r3]
cmp r3, #0xE
bne |$LN2@msvideo1_d@3|
; Line 182
mov r2, #1, 22
ldr r3, [sp, #0x64]
ldr r3, [r3]
add r3, r3, #0x92, 30
ldr r3, [r3]
add r1, r3, #4
ldr r3, [sp, #0x64]
add r3, r3, #7, 24
add r3, r3, #0xDC
ldr r0, [r3]
bl memcpy
; Line 183
ldr r3, [sp, #0x64]
ldr r3, [r3]
add r3, r3, #0x92, 30
ldr r3, [r3]
ldr r3, [r3]
cmp r3, #0
beq |$LN1@msvideo1_d@3|
; Line 184
ldr r3, [sp, #0x64]
add r3, r3, #2, 22
add r2, r3, #0x88
mov r3, #1
str r3, [r2]
; Line 185
ldr r3, [sp, #0x64]
ldr r3, [r3]
add r3, r3, #0x92, 30
ldr r2, [r3]
mov r3, #0
str r3, [r2]
|$LN1@msvideo1_d@3|
|$LN2@msvideo1_d@3|
|$LN39@msvideo1_d@3|
; Line 188
add sp, sp, #0x5C
ldmia sp, {sp, pc}
|$LN44@msvideo1_d@3|
DCD |$SG3623|
DCD |$SG3613|
DCD |$SG3606|
DCD |__imp___rt_sdiv|
|$M3772|
ENDP ; |msvideo1_decode_8bit|
AREA |.pdata|, PDATA
|$T3786| DCD |$LN41@msvideo1_d@4|
DCD 0x40021904
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|msvideo1_decode_16bit| PROC
; Line 191
|$LN41@msvideo1_d@4|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0x64
|$M3783|
; Line 206
ldr r3, [sp, #0x6C]
add r3, r3, #7, 24
add r3, r3, #0xD8
ldr r3, [r3]
str r3, [sp, #0x40]
; Line 207
ldr r3, [sp, #0x6C]
add r3, r3, #7, 24
add r3, r3, #0xE8
ldr r1, [r3]
mov r0, #2
ldr r3, [pc, #0x820]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x24]
; Line 209
mov r3, #0
str r3, [sp, #0x48]
; Line 210
mov r3, #0
str r3, [sp, #0x44]
; Line 211
ldr r3, [sp, #0x6C]
ldr r3, [r3]
add r3, r3, #0x28
ldr r1, [r3]
mov r0, #4
ldr r3, [pc, #0x7E8]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x38]
; Line 212
ldr r3, [sp, #0x6C]
ldr r3, [r3]
add r3, r3, #0x2C
ldr r1, [r3]
mov r0, #4
ldr r3, [pc, #0x7C0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x54]
; Line 213
ldr r2, [sp, #0x38]
ldr r3, [sp, #0x54]
mul r3, r2, r3
str r3, [sp, #0x28]
; Line 214
mov r3, #4
str r3, [sp, #0x34]
; Line 215
ldr r3, [sp, #0x24]
add r3, r3, #4
str r3, [sp, #0x20]
; Line 217
ldr r3, [sp, #0x54]
str r3, [sp, #0x50]
b |$LN36@msvideo1_d@4|
|$LN35@msvideo1_d@4|
ldr r3, [sp, #0x50]
sub r3, r3, #1
str r3, [sp, #0x50]
|$LN36@msvideo1_d@4|
ldr r3, [sp, #0x50]
cmp r3, #0
ble |$LN34@msvideo1_d@4|
; Line 218
ldr r2, [sp, #0x50]
mov r3, #4
mul r3, r2, r3
sub r2, r3, #1
ldr r3, [sp, #0x24]
mul r3, r2, r3
str r3, [sp, #4]
; Line 219
ldr r3, [sp, #0x38]
str r3, [sp, #0x1C]
b |$LN33@msvideo1_d@4|
|$LN32@msvideo1_d@4|
ldr r3, [sp, #0x1C]
sub r3, r3, #1
str r3, [sp, #0x1C]
|$LN33@msvideo1_d@4|
ldr r3, [sp, #0x1C]
cmp r3, #0
ble |$LN31@msvideo1_d@4|
; Line 221
ldr r3, [sp, #0x44]
cmp r3, #0
beq |$LN30@msvideo1_d@4|
; Line 222
ldr r2, [sp, #4]
ldr r3, [sp, #0x34]
add r3, r2, r3
str r3, [sp, #4]
; Line 223
ldr r3, [sp, #0x44]
sub r3, r3, #1
str r3, [sp, #0x44]
; Line 224
ldr r3, [sp, #0x28]
sub r3, r3, #1
str r3, [sp, #0x28]
; Line 225
b |$LN32@msvideo1_d@4|
|$LN30@msvideo1_d@4|
; Line 228
ldr r3, [sp, #4]
str r3, [sp, #0x30]
; Line 231
ldr r3, [sp, #0x48]
add r2, r3, #2
ldr r3, [sp, #0x6C]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
cmp r2, r3
ble |$LN29@msvideo1_d@4|
ldr r3, [sp, #0x6C]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
str r3, [sp]
ldr r3, [sp, #0x48]
add r3, r3, #2
ldr r2, [pc, #0x6A4]
mov r1, #0
ldr r0, [sp, #0x6C]
ldr r0, [r0]
bl av_log
b |$LN37@msvideo1_d@4|
|$LN29@msvideo1_d@4|
; Line 232
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
strb r3, [sp, #0x3C]
ldr r3, [sp, #0x48]
add r3, r3, #1
str r3, [sp, #0x48]
; Line 233
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
strb r3, [sp, #0xA]
ldr r3, [sp, #0x48]
add r3, r3, #1
str r3, [sp, #0x48]
; Line 236
ldrb r3, [sp, #0x3C]
cmp r3, #0
bne |$LN28@msvideo1_d@4|
ldrb r3, [sp, #0xA]
cmp r3, #0
bne |$LN28@msvideo1_d@4|
ldr r3, [sp, #0x28]
cmp r3, #0
bne |$LN28@msvideo1_d@4|
b |$LN37@msvideo1_d@4|
; Line 237
b |$LN27@msvideo1_d@4|
|$LN28@msvideo1_d@4|
; Line 238
ldrb r3, [sp, #0xA]
and r3, r3, #0xFC
cmp r3, #0x84
bne |$LN26@msvideo1_d@4|
; Line 240
ldrb r3, [sp, #0xA]
sub r3, r3, #0x84
mov r2, r3, lsl #8
ldrb r3, [sp, #0x3C]
add r3, r2, r3
sub r3, r3, #1
str r3, [sp, #0x44]
b |$LN25@msvideo1_d@4|
|$LN26@msvideo1_d@4|
; Line 241
ldrb r3, [sp, #0xA]
cmp r3, #0x80
bge |$LN24@msvideo1_d@4|
; Line 243
ldrb r3, [sp, #0xA]
mov r2, r3, lsl #8
ldrb r3, [sp, #0x3C]
orr r3, r2, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
; Line 245
ldr r3, [sp, #0x48]
add r2, r3, #4
ldr r3, [sp, #0x6C]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
cmp r2, r3
ble |$LN23@msvideo1_d@4|
ldr r3, [sp, #0x6C]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
str r3, [sp]
ldr r3, [sp, #0x48]
add r3, r3, #4
ldr r2, [pc, #0x578]
mov r1, #0
ldr r0, [sp, #0x6C]
ldr r0, [r0]
bl av_log
b |$LN37@msvideo1_d@4|
|$LN23@msvideo1_d@4|
; Line 246
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0xC]
; Line 247
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 248
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0xE]
; Line 249
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 251
ldrh r3, [sp, #0xC]
tst r3, #2, 18
beq |$LN22@msvideo1_d@4|
; Line 253
ldr r3, [sp, #0x48]
add r2, r3, #0xC
ldr r3, [sp, #0x6C]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
cmp r2, r3
ble |$LN21@msvideo1_d@4|
ldr r3, [sp, #0x6C]
add r3, r3, #2, 22
add r3, r3, #0xA4
ldr r3, [r3]
str r3, [sp]
ldr r3, [sp, #0x48]
add r3, r3, #0xC
ldr r2, [pc, #0x46C]
mov r1, #0
ldr r0, [sp, #0x6C]
ldr r0, [r0]
bl av_log
b |$LN37@msvideo1_d@4|
|$LN21@msvideo1_d@4|
; Line 254
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0x10]
; Line 255
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 256
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0x12]
; Line 257
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 258
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0x14]
; Line 259
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 260
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0x16]
; Line 261
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 262
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0x18]
; Line 263
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 264
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
add r3, r3, #1
ldrb r3, [r3]
mov r1, r3, lsl #8
ldr r3, [sp, #0x6C]
add r3, r3, #0x8A, 28
ldr r2, [r3]
ldr r3, [sp, #0x48]
add r3, r2, r3
ldrb r3, [r3]
orr r3, r1, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0x1A]
; Line 265
ldr r3, [sp, #0x48]
add r3, r3, #2
str r3, [sp, #0x48]
; Line 267
mov r3, #0
str r3, [sp, #0x4C]
b |$LN20@msvideo1_d@4|
|$LN19@msvideo1_d@4|
ldr r3, [sp, #0x4C]
add r3, r3, #1
str r3, [sp, #0x4C]
|$LN20@msvideo1_d@4|
ldr r3, [sp, #0x4C]
cmp r3, #4
bge |$LN18@msvideo1_d@4|
; Line 268
mov r3, #0
str r3, [sp, #0x2C]
b |$LN17@msvideo1_d@4|
|$LN16@msvideo1_d@4|
ldr r3, [sp, #0x2C]
add r3, r3, #1
str r3, [sp, #0x2C]
ldrh r3, [sp, #8]
mov r3, r3, lsr #1
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
|$LN17@msvideo1_d@4|
ldr r3, [sp, #0x2C]
cmp r3, #4
bge |$LN15@msvideo1_d@4|
; Line 271
ldr r3, [sp, #0x4C]
and r3, r3, #2
mov r2, r3, lsl #1
ldr r3, [sp, #0x2C]
and r3, r3, #2
add r2, r2, r3
ldrh r3, [sp, #8]
and r3, r3, #1
eor r3, r3, #1
add r1, r2, r3
mov r3, #2
mul r2, r1, r3
add r3, sp, #0xC
add r0, r3, r2
ldr r1, [sp, #0x30]
mov r3, #2
mul r2, r1, r3
ldr r3, [sp, #0x40]
add r2, r3, r2
ldrh r3, [r0]
strh r3, [r2]
ldr r3, [sp, #0x30]
add r3, r3, #1
str r3, [sp, #0x30]
b |$LN16@msvideo1_d@4|
|$LN15@msvideo1_d@4|
; Line 272
ldr r2, [sp, #0x30]
ldr r3, [sp, #0x20]
sub r3, r2, r3
str r3, [sp, #0x30]
; Line 273
b |$LN19@msvideo1_d@4|
|$LN18@msvideo1_d@4|
; Line 274
b |$LN14@msvideo1_d@4|
|$LN22@msvideo1_d@4|
; Line 276
mov r3, #0
str r3, [sp, #0x4C]
b |$LN13@msvideo1_d@4|
|$LN12@msvideo1_d@4|
ldr r3, [sp, #0x4C]
add r3, r3, #1
str r3, [sp, #0x4C]
|$LN13@msvideo1_d@4|
ldr r3, [sp, #0x4C]
cmp r3, #4
bge |$LN11@msvideo1_d@4|
; Line 277
mov r3, #0
str r3, [sp, #0x2C]
b |$LN10@msvideo1_d@4|
|$LN9@msvideo1_d@4|
ldr r3, [sp, #0x2C]
add r3, r3, #1
str r3, [sp, #0x2C]
ldrh r3, [sp, #8]
mov r3, r3, lsr #1
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #8]
|$LN10@msvideo1_d@4|
ldr r3, [sp, #0x2C]
cmp r3, #4
bge |$LN8@msvideo1_d@4|
; Line 278
ldrh r3, [sp, #8]
and r3, r3, #1
eor r1, r3, #1
mov r3, #2
mul r2, r1, r3
add r3, sp, #0xC
add r0, r3, r2
ldr r1, [sp, #0x30]
mov r3, #2
mul r2, r1, r3
ldr r3, [sp, #0x40]
add r2, r3, r2
ldrh r3, [r0]
strh r3, [r2]
ldr r3, [sp, #0x30]
add r3, r3, #1
str r3, [sp, #0x30]
b |$LN9@msvideo1_d@4|
|$LN8@msvideo1_d@4|
; Line 279
ldr r2, [sp, #0x30]
ldr r3, [sp, #0x20]
sub r3, r2, r3
str r3, [sp, #0x30]
; Line 280
b |$LN12@msvideo1_d@4|
|$LN11@msvideo1_d@4|
|$LN14@msvideo1_d@4|
; Line 282
b |$LN7@msvideo1_d@4|
|$LN24@msvideo1_d@4|
; Line 284
ldrb r3, [sp, #0xA]
mov r2, r3, lsl #8
ldrb r3, [sp, #0x3C]
orr r3, r2, r3
mov r3, r3, lsl #16
mov r3, r3, lsr #16
strh r3, [sp, #0xC]
; Line 286
mov r3, #0
str r3, [sp, #0x4C]
b |$LN6@msvideo1_d@4|
|$LN5@msvideo1_d@4|
ldr r3, [sp, #0x4C]
add r3, r3, #1
str r3, [sp, #0x4C]
|$LN6@msvideo1_d@4|
ldr r3, [sp, #0x4C]
cmp r3, #4
bge |$LN4@msvideo1_d@4|
; Line 287
mov r3, #0
str r3, [sp, #0x2C]
b |$LN3@msvideo1_d@4|
|$LN2@msvideo1_d@4|
ldr r3, [sp, #0x2C]
add r3, r3, #1
str r3, [sp, #0x2C]
|$LN3@msvideo1_d@4|
ldr r3, [sp, #0x2C]
cmp r3, #4
bge |$LN1@msvideo1_d@4|
; Line 288
ldr r1, [sp, #0x30]
mov r3, #2
mul r2, r1, r3
ldr r3, [sp, #0x40]
add r2, r3, r2
ldrh r3, [sp, #0xC]
strh r3, [r2]
ldr r3, [sp, #0x30]
add r3, r3, #1
str r3, [sp, #0x30]
b |$LN2@msvideo1_d@4|
|$LN1@msvideo1_d@4|
; Line 289
ldr r2, [sp, #0x30]
ldr r3, [sp, #0x20]
sub r3, r2, r3
str r3, [sp, #0x30]
; Line 290
b |$LN5@msvideo1_d@4|
|$LN4@msvideo1_d@4|
|$LN7@msvideo1_d@4|
|$LN25@msvideo1_d@4|
|$LN27@msvideo1_d@4|
; Line 293
ldr r2, [sp, #4]
ldr r3, [sp, #0x34]
add r3, r2, r3
str r3, [sp, #4]
; Line 294
ldr r3, [sp, #0x28]
sub r3, r3, #1
str r3, [sp, #0x28]
; Line 295
b |$LN32@msvideo1_d@4|
|$LN31@msvideo1_d@4|
; Line 296
b |$LN35@msvideo1_d@4|
|$LN34@msvideo1_d@4|
|$LN37@msvideo1_d@4|
; Line 297
add sp, sp, #0x64
ldmia sp, {sp, pc}
|$LN42@msvideo1_d@4|
DCD |$SG3685|
DCD |$SG3678|
DCD |$SG3671|
DCD |__imp___rt_sdiv|
|$M3784|
ENDP ; |msvideo1_decode_16bit|
AREA |.pdata|, PDATA
|$T3793| DCD |$LN6@msvideo1_d@5|
DCD 0x40001c04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|msvideo1_decode_end| PROC
; Line 328
|$LN6@msvideo1_d@5|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M3790|
; Line 329
ldr r3, [sp, #0x10]
add r3, r3, #0x88
ldr r3, [r3]
str r3, [sp]
; Line 331
ldr r3, [sp]
add r3, r3, #7, 24
add r3, r3, #0xD8
ldr r3, [r3]
cmp r3, #0
beq |$LN1@msvideo1_d@5|
; Line 332
ldr r3, [sp]
add r3, r3, #7, 24
add r1, r3, #0xD8
ldr r0, [sp, #0x10]
ldr r3, [sp, #0x10]
add r3, r3, #0x42, 30
ldr r3, [r3]
mov lr, pc
mov pc, r3
|$LN1@msvideo1_d@5|
; Line 334
mov r3, #0
str r3, [sp, #4]
; Line 335
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp, {sp, pc}
|$M3791|
ENDP ; |msvideo1_decode_end|
END