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

1529 lines
34 KiB
NASM
Raw Normal View History

2019-05-01 12:32:35 +00:00
; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
TTL g:\MyPrograme\VS2005\GPSVersion2\tcpmp\ffmpeg\libavcodec\bitstream.c
CODE32
AREA |.drectve|, DRECTVE
DCB "-defaultlib:LIBCMT "
DCB "-defaultlib:OLDNAMES "
AREA |.data|, DATA
|$SG2993| DCB "Marker bit missing %s", 0xa, 0x0
% 1
|$SG3089| DCB "incorrect codes", 0xa, 0x0
EXPORT |align_put_bits|
AREA |.pdata|, PDATA
|$T3133| DCD |$LN5@align_put_|
DCD 0x40000b03
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|align_put_bits| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.c
; Line 32
|$LN5@align_put_|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
|$M3130|
; Line 36
mov r2, #0
ldr r3, [sp, #8]
add r3, r3, #4
ldr r3, [r3]
and r1, r3, #7
ldr r0, [sp, #8]
bl put_bits
; Line 38
ldmia sp, {sp, pc}
|$M3131|
ENDP ; |align_put_bits|
AREA |.pdata|, PDATA
|$T3138| DCD |$LN7@put_bits|
DCD 0x40004504
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|put_bits| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.h
; Line 162
|$LN7@put_bits|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M3135|
; Line 172
ldr r3, [sp, #0x14]
ldr r3, [r3]
str r3, [sp, #4]
; Line 173
ldr r3, [sp, #0x14]
add r3, r3, #4
ldr r3, [r3]
str r3, [sp]
; Line 177
ldr r2, [sp, #0x18]
ldr r3, [sp]
cmp r2, r3
bge |$LN2@put_bits|
; Line 178
ldr r2, [sp, #4]
ldr r3, [sp, #0x18]
mov r2, r2, lsl r3
ldr r3, [sp, #0x1C]
orr r3, r2, r3
str r3, [sp, #4]
; Line 179
ldr r2, [sp]
ldr r3, [sp, #0x18]
sub r3, r2, r3
str r3, [sp]
; Line 180
b |$LN1@put_bits|
|$LN2@put_bits|
; Line 181
ldr r2, [sp, #4]
ldr r3, [sp]
mov r3, r2, lsl r3
str r3, [sp, #4]
; Line 182
ldr r2, [sp, #0x18]
ldr r3, [sp]
sub r2, r2, r3
ldr r3, [sp, #0x1C]
mov r2, r3, lsr r2
ldr r3, [sp, #4]
orr r3, r3, r2
str r3, [sp, #4]
; Line 191
ldr r0, [sp, #4]
bl bswap_32
str r0, [sp, #8]
ldr r3, [sp, #0x14]
add r3, r3, #0xC
ldr r2, [r3]
ldr r3, [sp, #8]
str r3, [r2]
; Line 193
ldr r3, [sp, #0x14]
add r3, r3, #0xC
ldr r3, [r3]
add r2, r3, #4
ldr r3, [sp, #0x14]
add r3, r3, #0xC
str r2, [r3]
; Line 194
ldr r3, [sp, #0x18]
rsb r2, r3, #0x20
ldr r3, [sp]
add r3, r3, r2
str r3, [sp]
; Line 195
ldr r3, [sp, #0x1C]
str r3, [sp, #4]
|$LN1@put_bits|
; Line 198
ldr r2, [sp, #4]
ldr r3, [sp, #0x14]
str r2, [r3]
; Line 199
ldr r3, [sp, #0x14]
add r2, r3, #4
ldr r3, [sp]
str r3, [r2]
; Line 200
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M3136|
ENDP ; |put_bits|
AREA |.pdata|, PDATA
|$T3144| DCD |$LN5@bswap_32|
DCD 0x40001904
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|bswap_32| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavutil\bswap.h
; Line 109
|$LN5@bswap_32|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #4
|$M3141|
; Line 110
ldr r3, [sp, #0xC]
mov r2, r3, lsl #8
mvn r3, #0xFF, 16
eor r3, r3, #0xFF
and r1, r2, r3
ldr r3, [sp, #0xC]
mov r2, r3, lsr #8
mov r3, #0xFF, 16
orr r3, r3, #0xFF
and r3, r2, r3
orr r3, r1, r3
str r3, [sp, #0xC]
; Line 111
ldr r3, [sp, #0xC]
mov r2, r3, lsr #16
ldr r3, [sp, #0xC]
mov r3, r3, lsl #16
orr r3, r2, r3
str r3, [sp]
; Line 112
ldr r0, [sp]
add sp, sp, #4
ldmia sp, {sp, pc}
|$M3142|
ENDP ; |bswap_32|
EXPORT |ff_put_string|
AREA |.pdata|, PDATA
|$T3149| DCD |$LN8@ff_put_str|
DCD 0x40001903
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|ff_put_string| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.c
; Line 41
|$LN8@ff_put_str|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
|$M3146|
|$LN3@ff_put_str|
; Line 42
ldr r3, [sp, #0xC]
ldrsb r3, [r3]
cmp r3, #0
beq |$LN2@ff_put_str|
; Line 43
ldr r3, [sp, #0xC]
ldrsb r3, [r3]
mov r2, r3
mov r1, #8
ldr r0, [sp, #8]
bl put_bits
; Line 44
ldr r3, [sp, #0xC]
add r3, r3, #1
str r3, [sp, #0xC]
; Line 45
b |$LN3@ff_put_str|
|$LN2@ff_put_str|
; Line 46
ldr r3, [sp, #0x10]
cmp r3, #0
beq |$LN1@ff_put_str|
; Line 47
mov r2, #0
mov r1, #8
ldr r0, [sp, #8]
bl put_bits
|$LN1@ff_put_str|
; Line 48
ldmia sp, {sp, pc}
|$M3147|
ENDP ; |ff_put_string|
EXPORT |get_bits_long|
AREA |.pdata|, PDATA
|$T3155| DCD |$LN7@get_bits_l|
DCD 0x40002404
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_bits_long| PROC
; Line 55
|$LN7@get_bits_l|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0x14
|$M3152|
; Line 56
ldr r3, [sp, #0x20]
cmp r3, #0x11
bgt |$LN2@get_bits_l|
ldr r1, [sp, #0x20]
ldr r0, [sp, #0x1C]
bl get_bits
str r0, [sp, #8]
ldr r3, [sp, #8]
str r3, [sp, #4]
b |$LN3@get_bits_l|
; Line 57
b |$LN1@get_bits_l|
|$LN2@get_bits_l|
; Line 58
mov r1, #0x10
ldr r0, [sp, #0x1C]
bl get_bits
str r0, [sp, #0xC]
ldr r3, [sp, #0x20]
sub r2, r3, #0x10
ldr r3, [sp, #0xC]
mov r3, r3, lsl r2
str r3, [sp]
; Line 59
ldr r3, [sp, #0x20]
sub r1, r3, #0x10
ldr r0, [sp, #0x1C]
bl get_bits
str r0, [sp, #0x10]
ldr r2, [sp]
ldr r3, [sp, #0x10]
orr r3, r2, r3
str r3, [sp, #4]
|$LN1@get_bits_l|
|$LN3@get_bits_l|
; Line 61
ldr r0, [sp, #4]
add sp, sp, #0x14
ldmia sp, {sp, pc}
|$M3153|
ENDP ; |get_bits_long|
AREA |.pdata|, PDATA
|$T3161| DCD |$LN5@get_bits|
DCD 0x40002804
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_bits| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.h
; Line 603
|$LN5@get_bits|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0x14
|$M3158|
; Line 605
ldr r3, [sp, #0x1C]
add r3, r3, #8
ldr r3, [r3]
str r3, [sp, #8]
mov r3, #0
str r3, [sp, #4]
; Line 606
ldr r3, [sp, #8]
mov r2, r3, asr #3
ldr r3, [sp, #0x1C]
ldr r3, [r3]
add r0, r3, r2
bl unaligned32_be
str r0, [sp, #0x10]
ldr r3, [sp, #8]
and r2, r3, #7
ldr r3, [sp, #0x10]
mov r3, r3, lsl r2
str r3, [sp, #4]
; Line 607
ldr r3, [sp, #0x20]
rsb r2, r3, #0x20
ldr r3, [sp, #4]
mov r3, r3, lsr r2
str r3, [sp]
; Line 608
ldr r2, [sp, #8]
ldr r3, [sp, #0x20]
add r3, r2, r3
str r3, [sp, #8]
; Line 609
ldr r3, [sp, #0x1C]
add r2, r3, #8
ldr r3, [sp, #8]
str r3, [r2]
; Line 610
ldr r3, [sp]
str r3, [sp, #0xC]
; Line 611
ldr r0, [sp, #0xC]
add sp, sp, #0x14
ldmia sp, {sp, pc}
|$M3159|
ENDP ; |get_bits|
AREA |.pdata|, PDATA
|$T3167| DCD |$LN5@unaligned3|
DCD 0x40001b04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|unaligned32_be| PROC
; Line 362
|$LN5@unaligned3|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M3164|
; Line 364
ldr r3, [sp, #0x10]
str r3, [sp]
; Line 365
ldr r3, [sp]
ldrb r3, [r3]
mov r2, r3, lsl #8
ldr r3, [sp]
add r3, r3, #1
ldrb r3, [r3]
orr r3, r2, r3
mov r2, r3, lsl #16
ldr r3, [sp]
add r3, r3, #2
ldrb r3, [r3]
mov r3, r3, lsl #8
orr r2, r2, r3
ldr r3, [sp]
add r3, r3, #3
ldrb r3, [r3]
orr r3, r2, r3
str r3, [sp, #4]
; Line 369
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp, {sp, pc}
|$M3165|
ENDP ; |unaligned32_be|
EXPORT |show_bits_long|
IMPORT |memcpy|
AREA |.pdata|, PDATA
|$T3174| DCD |$LN7@show_bits_|
DCD 0x40002204
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|show_bits_long| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.c
; Line 66
|$LN7@show_bits_|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0x20
|$M3171|
; Line 67
ldr r3, [sp, #0x2C]
cmp r3, #0x11
bgt |$LN2@show_bits_|
ldr r1, [sp, #0x2C]
ldr r0, [sp, #0x28]
bl show_bits
str r0, [sp, #0x18]
ldr r3, [sp, #0x18]
str r3, [sp, #0x14]
b |$LN3@show_bits_|
; Line 68
b |$LN1@show_bits_|
|$LN2@show_bits_|
; Line 69
ldr r1, [sp, #0x28]
add r0, sp, #4
mov r2, #0x10
bl memcpy
; Line 70
ldr r1, [sp, #0x2C]
ldr r0, [sp, #0x28]
bl get_bits_long
str r0, [sp, #0x1C]
ldr r3, [sp, #0x1C]
str r3, [sp]
; Line 71
ldr r0, [sp, #0x28]
add r1, sp, #4
mov r2, #0x10
bl memcpy
; Line 72
ldr r3, [sp]
str r3, [sp, #0x14]
|$LN1@show_bits_|
|$LN3@show_bits_|
; Line 74
ldr r0, [sp, #0x14]
add sp, sp, #0x20
ldmia sp, {sp, pc}
|$M3172|
ENDP ; |show_bits_long|
AREA |.pdata|, PDATA
|$T3180| DCD |$LN5@show_bits|
DCD 0x40002004
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|show_bits| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.h
; Line 619
|$LN5@show_bits|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0x14
|$M3177|
; Line 621
ldr r3, [sp, #0x1C]
add r3, r3, #8
ldr r3, [r3]
str r3, [sp, #8]
mov r3, #0
str r3, [sp, #4]
; Line 622
ldr r3, [sp, #8]
mov r2, r3, asr #3
ldr r3, [sp, #0x1C]
ldr r3, [r3]
add r0, r3, r2
bl unaligned32_be
str r0, [sp, #0x10]
ldr r3, [sp, #8]
and r2, r3, #7
ldr r3, [sp, #0x10]
mov r3, r3, lsl r2
str r3, [sp, #4]
; Line 623
ldr r3, [sp, #0x20]
rsb r2, r3, #0x20
ldr r3, [sp, #4]
mov r3, r3, lsr r2
str r3, [sp]
; Line 625
ldr r3, [sp]
str r3, [sp, #0xC]
; Line 626
ldr r0, [sp, #0xC]
add sp, sp, #0x14
ldmia sp, {sp, pc}
|$M3178|
ENDP ; |show_bits|
EXPORT |align_get_bits|
AREA |.pdata|, PDATA
|$T3185| DCD |$LN6@align_get_|
DCD 0x40001304
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|align_get_bits| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.c
; Line 77
|$LN6@align_get_|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M3182|
; Line 78
ldr r0, [sp, #0x10]
bl get_bits_count
str r0, [sp, #4]
ldr r3, [sp, #4]
rsb r3, r3, #0
and r3, r3, #7
str r3, [sp]
; Line 79
ldr r3, [sp]
cmp r3, #0
beq |$LN1@align_get_|
ldr r1, [sp]
ldr r0, [sp, #0x10]
bl skip_bits
|$LN1@align_get_|
; Line 80
add sp, sp, #8
ldmia sp, {sp, pc}
|$M3183|
ENDP ; |align_get_bits|
AREA |.pdata|, PDATA
|$T3191| DCD |$LN5@get_bits_c|
DCD 0x40000b04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_bits_count| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.h
; Line 432
|$LN5@get_bits_c|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #4
|$M3188|
; Line 433
ldr r3, [sp, #0xC]
add r3, r3, #8
ldr r3, [r3]
str r3, [sp]
; Line 434
ldr r0, [sp]
add sp, sp, #4
ldmia sp, {sp, pc}
|$M3189|
ENDP ; |get_bits_count|
AREA |.pdata|, PDATA
|$T3196| DCD |$LN5@skip_bits|
DCD 0x40002004
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|skip_bits| PROC
; Line 630
|$LN5@skip_bits|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M3193|
; Line 632
ldr r3, [sp, #0x14]
add r3, r3, #8
ldr r3, [r3]
str r3, [sp, #4]
mov r3, #0
str r3, [sp]
; Line 633
ldr r3, [sp, #4]
mov r2, r3, asr #3
ldr r3, [sp, #0x14]
ldr r3, [r3]
add r0, r3, r2
bl unaligned32_be
str r0, [sp, #8]
ldr r3, [sp, #4]
and r2, r3, #7
ldr r3, [sp, #8]
mov r3, r3, lsl r2
str r3, [sp]
; Line 634
ldr r2, [sp, #4]
ldr r3, [sp, #0x18]
add r3, r2, r3
str r3, [sp, #4]
; Line 635
ldr r3, [sp, #0x14]
add r2, r3, #8
ldr r3, [sp, #4]
str r3, [r2]
; Line 636
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M3194|
ENDP ; |skip_bits|
EXPORT |check_marker|
IMPORT |av_log|
AREA |.pdata|, PDATA
|$T3202| DCD |$LN6@check_mark|
DCD 0x40001704
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|check_marker| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.c
; Line 83
|$LN6@check_mark|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M3199|
; Line 84
ldr r0, [sp, #0x14]
bl get_bits1
str r0, [sp, #8]
ldr r3, [sp, #8]
str r3, [sp]
; Line 85
ldr r3, [sp]
cmp r3, #0
bne |$LN1@check_mark|
; Line 86
ldr r3, [sp, #0x18]
ldr r2, [pc, #0x1C]
mov r1, #1
mov r0, #0
bl av_log
|$LN1@check_mark|
; Line 88
ldr r3, [sp]
str r3, [sp, #4]
; Line 89
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$LN7@check_mark|
DCD |$SG2993|
|$M3200|
ENDP ; |check_marker|
AREA |.pdata|, PDATA
|$T3209| DCD |$LN5@get_bits1|
DCD 0x40002604
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_bits1| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.h
; Line 638
|$LN5@get_bits1|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M3206|
; Line 640
ldr r3, [sp, #0x14]
add r3, r3, #8
ldr r3, [r3]
str r3, [sp]
; Line 641
ldr r3, [sp]
mov r2, r3, asr #3
ldr r3, [sp, #0x14]
ldr r3, [r3]
add r3, r3, r2
ldrb r3, [r3]
strb r3, [sp, #4]
; Line 646
ldr r3, [sp]
and r3, r3, #7
and r2, r3, #0xFF
ldrb r3, [sp, #4]
mov r3, r3, lsl r2
and r3, r3, #0xFF
strb r3, [sp, #4]
; Line 647
ldrb r3, [sp, #4]
mov r3, r3, lsr #7
and r3, r3, #0xFF
strb r3, [sp, #4]
; Line 649
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
; Line 650
ldr r3, [sp, #0x14]
add r2, r3, #8
ldr r3, [sp]
str r3, [r2]
; Line 652
ldrb r3, [sp, #4]
str r3, [sp, #8]
; Line 656
ldr r0, [sp, #8]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M3207|
ENDP ; |get_bits1|
EXPORT |init_vlc|
IMPORT |av_free|
AREA |.pdata|, PDATA
|$T3223| DCD |$LN9@init_vlc|
DCD 0x40004404
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|init_vlc| PROC
; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\bitstream.c
; Line 261
|$LN9@init_vlc|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r12, lr}
sub sp, sp, #0x48
|$M3220|
; Line 262
ldr r2, [sp, #0x54]
ldr r3, [sp, #0x50]
str r2, [r3]
; Line 263
ldr r3, [sp, #0x74]
cmp r3, #0
bne |$LN4@init_vlc|
; Line 264
ldr r3, [sp, #0x50]
add r2, r3, #4
mov r3, #0
str r3, [r2]
; Line 265
ldr r3, [sp, #0x50]
add r2, r3, #0xC
mov r3, #0
str r3, [r2]
; Line 266
ldr r3, [sp, #0x50]
add r2, r3, #8
mov r3, #0
str r3, [r2]
; Line 267
b |$LN3@init_vlc|
|$LN4@init_vlc|
; Line 270
ldr r3, [sp, #0x50]
add r3, r3, #4
ldr r3, [r3]
cmp r3, #0
beq |$LN2@init_vlc|
; Line 271
mov r3, #0
str r3, [sp, #0x20]
b |$LN5@init_vlc|
|$LN2@init_vlc|
|$LN3@init_vlc|
; Line 281
ldr r3, [sp, #0x74]
str r3, [sp, #0x1C]
mov r3, #0
str r3, [sp, #0x18]
mov r3, #0
str r3, [sp, #0x14]
ldr r3, [sp, #0x70]
str r3, [sp, #0x10]
ldr r3, [sp, #0x6C]
str r3, [sp, #0xC]
ldr r3, [sp, #0x68]
str r3, [sp, #8]
ldr r3, [sp, #0x64]
str r3, [sp, #4]
ldr r3, [sp, #0x60]
str r3, [sp]
ldr r3, [sp, #0x5C]
ldr r2, [sp, #0x58]
ldr r1, [sp, #0x54]
ldr r0, [sp, #0x50]
bl build_table
str r0, [sp, #0x44]
ldr r3, [sp, #0x44]
cmp r3, #0
bge |$LN1@init_vlc|
; Line 282
ldr r3, [sp, #0x50]
add r3, r3, #4
ldr r0, [r3]
bl av_free
; Line 283
mvn r3, #0
str r3, [sp, #0x20]
b |$LN5@init_vlc|
|$LN1@init_vlc|
; Line 285
mov r3, #0
str r3, [sp, #0x20]
|$LN5@init_vlc|
; Line 286
ldr r0, [sp, #0x20]
add sp, sp, #0x48
ldmia sp, {sp, pc}
|$M3221|
ENDP ; |init_vlc|
AREA |.pdata|, PDATA
|$T3243| DCD |$LN46@build_tabl|
DCD 0x40018d04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|build_table| PROC
; Line 136
|$LN46@build_tabl|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r12, lr}
sub sp, sp, #0x98
|$M3240|
; Line 141
ldr r2, [sp, #0xA4]
mov r3, #1
mov r3, r3, lsl r2
str r3, [sp, #0x40]
; Line 142
ldr r3, [sp, #0xCC]
and r2, r3, #1
ldr r1, [sp, #0x40]
ldr r0, [sp, #0xA0]
bl alloc_table
str r0, [sp, #0x7C]
ldr r3, [sp, #0x7C]
str r3, [sp, #0x20]
; Line 147
ldr r3, [sp, #0x20]
cmp r3, #0
bge |$LN35@build_tabl|
; Line 148
mvn r3, #0
str r3, [sp, #0x58]
b |$LN36@build_tabl|
|$LN35@build_tabl|
; Line 149
ldr r3, [sp, #0xA0]
add r0, r3, #4
ldr r1, [sp, #0x20]
mov r3, #4
mul r2, r1, r3
ldr r3, [r0]
add r3, r3, r2
str r3, [sp, #0x38]
; Line 151
mov r3, #0
str r3, [sp, #0x28]
b |$LN34@build_tabl|
|$LN33@build_tabl|
ldr r3, [sp, #0x28]
add r3, r3, #1
str r3, [sp, #0x28]
|$LN34@build_tabl|
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x40]
cmp r2, r3
bge |$LN32@build_tabl|
; Line 152
ldr r1, [sp, #0x28]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r2, r3, #2
mov r3, #0
strh r3, [r2]
; Line 153
ldr r1, [sp, #0x28]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r2, r3, r2
mvn r3, #0
strh r3, [r2]
; Line 154
b |$LN33@build_tabl|
|$LN32@build_tabl|
; Line 157
mov r3, #0
str r3, [sp, #0x28]
b |$LN31@build_tabl|
|$LN30@build_tabl|
ldr r3, [sp, #0x28]
add r3, r3, #1
str r3, [sp, #0x28]
|$LN31@build_tabl|
ldr r2, [sp, #0x28]
ldr r3, [sp, #0xA8]
cmp r2, r3
bge |$LN29@build_tabl|
; Line 158
ldr r1, [sp, #0x28]
ldr r3, [sp, #0xB0]
mul r2, r1, r3
ldr r3, [sp, #0xAC]
add r3, r3, r2
str r3, [sp, #0x50]
ldr r3, [sp, #0xB4]
str r3, [sp, #0x80]
ldr r3, [sp, #0x80]
cmp r3, #1
beq |$LN26@build_tabl|
ldr r3, [sp, #0x80]
cmp r3, #2
beq |$LN25@build_tabl|
b |$LN24@build_tabl|
|$LN26@build_tabl|
ldr r3, [sp, #0x50]
ldrb r3, [r3]
str r3, [sp, #0x24]
b |$LN27@build_tabl|
|$LN25@build_tabl|
ldr r3, [sp, #0x50]
ldrh r3, [r3]
str r3, [sp, #0x24]
b |$LN27@build_tabl|
|$LN24@build_tabl|
ldr r3, [sp, #0x50]
ldr r3, [r3]
str r3, [sp, #0x24]
|$LN27@build_tabl|
; Line 159
ldr r1, [sp, #0x28]
ldr r3, [sp, #0xBC]
mul r2, r1, r3
ldr r3, [sp, #0xB8]
add r3, r3, r2
str r3, [sp, #0x54]
ldr r3, [sp, #0xC0]
str r3, [sp, #0x84]
ldr r3, [sp, #0x84]
cmp r3, #1
beq |$LN21@build_tabl|
ldr r3, [sp, #0x84]
cmp r3, #2
beq |$LN20@build_tabl|
b |$LN19@build_tabl|
|$LN21@build_tabl|
ldr r3, [sp, #0x54]
ldrb r3, [r3]
str r3, [sp, #0x2C]
b |$LN22@build_tabl|
|$LN20@build_tabl|
ldr r3, [sp, #0x54]
ldrh r3, [r3]
str r3, [sp, #0x2C]
b |$LN22@build_tabl|
|$LN19@build_tabl|
ldr r3, [sp, #0x54]
ldr r3, [r3]
str r3, [sp, #0x2C]
|$LN22@build_tabl|
; Line 161
ldr r3, [sp, #0x24]
cmp r3, #0
bgt |$LN18@build_tabl|
; Line 162
b |$LN30@build_tabl|
|$LN18@build_tabl|
; Line 167
ldr r2, [sp, #0x24]
ldr r3, [sp, #0xC8]
sub r3, r2, r3
str r3, [sp, #0x24]
; Line 168
ldr r3, [sp, #0xCC]
tst r3, #2
beq |$LN17@build_tabl|
; Line 169
ldr r3, [sp, #0xC8]
cmp r3, #0x20
blt |$LN38@build_tabl|
mvn r3, #0
str r3, [sp, #0x88]
b |$LN39@build_tabl|
|$LN38@build_tabl|
ldr r2, [sp, #0xC8]
mov r3, #1
mov r3, r3, lsl r2
sub r3, r3, #1
str r3, [sp, #0x88]
|$LN39@build_tabl|
ldr r2, [sp, #0x2C]
ldr r3, [sp, #0x88]
and r3, r2, r3
str r3, [sp, #0x44]
; Line 170
b |$LN16@build_tabl|
|$LN17@build_tabl|
; Line 171
ldr r2, [sp, #0x2C]
ldr r3, [sp, #0x24]
mov r3, r2, lsr r3
str r3, [sp, #0x44]
|$LN16@build_tabl|
; Line 172
ldr r3, [sp, #0x24]
cmp r3, #0
ble |$LN15@build_tabl|
ldr r2, [sp, #0x44]
ldr r3, [sp, #0xC4]
cmp r2, r3
bne |$LN15@build_tabl|
; Line 173
ldr r2, [sp, #0x24]
ldr r3, [sp, #0xA4]
cmp r2, r3
bgt |$LN14@build_tabl|
; Line 175
ldr r2, [sp, #0xA4]
ldr r3, [sp, #0x24]
sub r2, r2, r3
ldr r3, [sp, #0x2C]
mov r2, r3, lsl r2
ldr r3, [sp, #0x40]
sub r3, r3, #1
and r3, r2, r3
str r3, [sp, #0x4C]
; Line 176
ldr r2, [sp, #0xA4]
ldr r3, [sp, #0x24]
sub r2, r2, r3
mov r3, #1
mov r3, r3, lsl r2
str r3, [sp, #0x48]
; Line 177
mov r3, #0
str r3, [sp, #0x3C]
b |$LN13@build_tabl|
|$LN12@build_tabl|
ldr r3, [sp, #0x3C]
add r3, r3, #1
str r3, [sp, #0x3C]
|$LN13@build_tabl|
ldr r2, [sp, #0x3C]
ldr r3, [sp, #0x48]
cmp r2, r3
bge |$LN11@build_tabl|
; Line 178
ldr r3, [sp, #0xCC]
tst r3, #2
beq |$LN10@build_tabl|
; Line 179
ldr r2, [sp, #0x2C]
ldr r3, [sp, #0xC8]
mov r1, r2, lsr r3
ldr r2, [sp, #0x3C]
ldr r3, [sp, #0x24]
mov r3, r2, lsl r3
add r3, r1, r3
str r3, [sp, #0x4C]
|$LN10@build_tabl|
; Line 184
ldr r1, [sp, #0x4C]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r3, r3, #2
ldrsh r3, [r3]
cmp r3, #0
beq |$LN9@build_tabl|
; Line 185
ldr r2, [pc, #0x2F4]
mov r1, #0
mov r0, #0
bl av_log
; Line 186
mvn r3, #0
str r3, [sp, #0x58]
b |$LN36@build_tabl|
|$LN9@build_tabl|
; Line 188
ldr r1, [sp, #0x4C]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r2, r3, #2
ldr r3, [sp, #0x24]
mov r3, r3, lsl #16
mov r3, r3, asr #16
strh r3, [r2]
; Line 189
ldr r1, [sp, #0x4C]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r2, r3, r2
ldr r3, [sp, #0x28]
mov r3, r3, lsl #16
mov r3, r3, asr #16
strh r3, [r2]
; Line 190
ldr r3, [sp, #0x4C]
add r3, r3, #1
str r3, [sp, #0x4C]
; Line 191
b |$LN12@build_tabl|
|$LN11@build_tabl|
; Line 192
b |$LN8@build_tabl|
|$LN14@build_tabl|
; Line 193
ldr r2, [sp, #0x24]
ldr r3, [sp, #0xA4]
sub r3, r2, r3
str r3, [sp, #0x24]
; Line 194
ldr r3, [sp, #0xCC]
tst r3, #2
beq |$LN40@build_tabl|
ldr r3, [sp, #0xC8]
str r3, [sp, #0x8C]
b |$LN41@build_tabl|
|$LN40@build_tabl|
ldr r3, [sp, #0x24]
str r3, [sp, #0x8C]
|$LN41@build_tabl|
ldr r2, [sp, #0x2C]
ldr r3, [sp, #0x8C]
mov r1, r2, lsr r3
ldr r2, [sp, #0xA4]
mov r3, #1
mov r3, r3, lsl r2
sub r3, r3, #1
and r3, r1, r3
str r3, [sp, #0x4C]
; Line 200
ldr r1, [sp, #0x4C]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r3, r3, #2
ldrsh r3, [r3]
rsb r3, r3, #0
str r3, [sp, #0x34]
; Line 201
ldr r2, [sp, #0x24]
ldr r3, [sp, #0x34]
cmp r2, r3
ble |$LN7@build_tabl|
; Line 202
ldr r3, [sp, #0x24]
str r3, [sp, #0x34]
|$LN7@build_tabl|
; Line 203
ldr r3, [sp, #0x34]
rsb r0, r3, #0
ldr r1, [sp, #0x4C]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r2, r3, #2
mov r3, r0, lsl #16
mov r3, r3, asr #16
strh r3, [r2]
|$LN8@build_tabl|
|$LN15@build_tabl|
; Line 206
b |$LN30@build_tabl|
|$LN29@build_tabl|
; Line 209
mov r3, #0
str r3, [sp, #0x28]
b |$LN6@build_tabl|
|$LN5@build_tabl|
ldr r3, [sp, #0x28]
add r3, r3, #1
str r3, [sp, #0x28]
|$LN6@build_tabl|
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x40]
cmp r2, r3
bge |$LN4@build_tabl|
; Line 210
ldr r1, [sp, #0x28]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r3, r3, #2
ldrsh r3, [r3]
str r3, [sp, #0x24]
; Line 211
ldr r3, [sp, #0x24]
cmp r3, #0
bge |$LN3@build_tabl|
; Line 212
ldr r3, [sp, #0x24]
rsb r3, r3, #0
str r3, [sp, #0x24]
; Line 213
ldr r2, [sp, #0x24]
ldr r3, [sp, #0xA4]
cmp r2, r3
ble |$LN2@build_tabl|
; Line 214
ldr r3, [sp, #0xA4]
str r3, [sp, #0x24]
; Line 215
ldr r3, [sp, #0x24]
rsb r0, r3, #0
ldr r1, [sp, #0x28]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r3, r3, r2
add r2, r3, #2
mov r3, r0, lsl #16
mov r3, r3, asr #16
strh r3, [r2]
|$LN2@build_tabl|
; Line 221
ldr r3, [sp, #0xCC]
tst r3, #2
beq |$LN42@build_tabl|
ldr r2, [sp, #0x28]
ldr r3, [sp, #0xC8]
mov r2, r2, lsl r3
ldr r3, [sp, #0xC4]
orr r3, r3, r2
str r3, [sp, #0x90]
b |$LN43@build_tabl|
|$LN42@build_tabl|
ldr r2, [sp, #0xC4]
ldr r3, [sp, #0xA4]
mov r2, r2, lsl r3
ldr r3, [sp, #0x28]
orr r3, r2, r3
str r3, [sp, #0x90]
|$LN43@build_tabl|
ldr r3, [sp, #0xCC]
str r3, [sp, #0x1C]
ldr r2, [sp, #0xC8]
ldr r3, [sp, #0xA4]
add r3, r2, r3
str r3, [sp, #0x18]
ldr r3, [sp, #0x90]
str r3, [sp, #0x14]
ldr r3, [sp, #0xC0]
str r3, [sp, #0x10]
ldr r3, [sp, #0xBC]
str r3, [sp, #0xC]
ldr r3, [sp, #0xB8]
str r3, [sp, #8]
ldr r3, [sp, #0xB4]
str r3, [sp, #4]
ldr r3, [sp, #0xB0]
str r3, [sp]
ldr r3, [sp, #0xAC]
ldr r2, [sp, #0xA8]
ldr r1, [sp, #0x24]
ldr r0, [sp, #0xA0]
bl build_table
str r0, [sp, #0x94]
ldr r3, [sp, #0x94]
str r3, [sp, #0x30]
; Line 222
ldr r3, [sp, #0x30]
cmp r3, #0
bge |$LN1@build_tabl|
; Line 223
mvn r3, #0
str r3, [sp, #0x58]
b |$LN36@build_tabl|
|$LN1@build_tabl|
; Line 225
ldr r3, [sp, #0xA0]
add r0, r3, #4
ldr r1, [sp, #0x20]
mov r3, #4
mul r2, r1, r3
ldr r3, [r0]
add r3, r3, r2
str r3, [sp, #0x38]
; Line 226
ldr r1, [sp, #0x28]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x38]
add r2, r3, r2
ldr r3, [sp, #0x30]
mov r3, r3, lsl #16
mov r3, r3, asr #16
strh r3, [r2]
|$LN3@build_tabl|
; Line 228
b |$LN5@build_tabl|
|$LN4@build_tabl|
; Line 229
ldr r3, [sp, #0x20]
str r3, [sp, #0x58]
|$LN36@build_tabl|
; Line 230
ldr r0, [sp, #0x58]
add sp, sp, #0x98
ldmia sp, {sp, pc}
|$LN47@build_tabl|
DCD |$SG3089|
|$M3241|
ENDP ; |build_table|
IMPORT |av_realloc|
IMPORT |av_realloc_static|
AREA |.pdata|, PDATA
|$T3250| DCD |$LN9@alloc_tabl|
DCD 0x40005004
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|alloc_table| PROC
; Line 113
|$LN9@alloc_tabl|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
sub sp, sp, #0x10
|$M3247|
; Line 115
ldr r3, [sp, #0x18]
add r3, r3, #8
ldr r3, [r3]
str r3, [sp]
; Line 116
ldr r3, [sp, #0x18]
add r3, r3, #8
ldr r2, [r3]
ldr r3, [sp, #0x1C]
add r2, r2, r3
ldr r3, [sp, #0x18]
add r3, r3, #8
str r2, [r3]
; Line 117
ldr r3, [sp, #0x18]
add r2, r3, #8
ldr r3, [sp, #0x18]
add r3, r3, #0xC
ldr r2, [r2]
ldr r3, [r3]
cmp r2, r3
ble |$LN4@alloc_tabl|
; Line 118
ldr r3, [sp, #0x18]
add r1, r3, #0xC
ldr r3, [sp, #0x18]
ldr r2, [r3]
mov r3, #1
mov r2, r3, lsl r2
ldr r3, [r1]
add r2, r3, r2
ldr r3, [sp, #0x18]
add r3, r3, #0xC
str r2, [r3]
; Line 119
ldr r3, [sp, #0x20]
cmp r3, #0
beq |$LN3@alloc_tabl|
; Line 121
ldr r3, [sp, #0x18]
add r3, r3, #0xC
ldr r2, [r3]
mov r3, #4
mul r1, r2, r3
ldr r3, [sp, #0x18]
add r3, r3, #4
ldr r0, [r3]
bl av_realloc_static
str r0, [sp, #8]
ldr r3, [sp, #0x18]
add r2, r3, #4
ldr r3, [sp, #8]
str r3, [r2]
; Line 122
b |$LN2@alloc_tabl|
|$LN3@alloc_tabl|
; Line 124
ldr r3, [sp, #0x18]
add r3, r3, #0xC
ldr r2, [r3]
mov r3, #4
mul r1, r2, r3
ldr r3, [sp, #0x18]
add r3, r3, #4
ldr r0, [r3]
bl av_realloc
str r0, [sp, #0xC]
ldr r3, [sp, #0x18]
add r2, r3, #4
ldr r3, [sp, #0xC]
str r3, [r2]
|$LN2@alloc_tabl|
; Line 125
ldr r3, [sp, #0x18]
add r3, r3, #4
ldr r3, [r3]
cmp r3, #0
bne |$LN1@alloc_tabl|
; Line 126
mvn r3, #0
str r3, [sp, #4]
b |$LN5@alloc_tabl|
|$LN1@alloc_tabl|
|$LN4@alloc_tabl|
; Line 128
ldr r3, [sp]
str r3, [sp, #4]
|$LN5@alloc_tabl|
; Line 129
ldr r0, [sp, #4]
add sp, sp, #0x10
ldmia sp, {sp, pc}
|$M3248|
ENDP ; |alloc_table|
EXPORT |free_vlc|
AREA |.pdata|, PDATA
|$T3255| DCD |$LN5@free_vlc|
DCD 0x40000803
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|free_vlc| PROC
; Line 290
|$LN5@free_vlc|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
|$M3252|
; Line 291
ldr r3, [sp, #8]
add r3, r3, #4
ldr r0, [r3]
bl av_free
; Line 292
ldmia sp, {sp, pc}
|$M3253|
ENDP ; |free_vlc|
END