1498 lines
36 KiB
NASM
Executable File
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
|