gps/GPSResources/tcpmp 0.73/flac/Pocket PC 2003 (ARMV4)/Release/flac.asm

1723 lines
40 KiB
NASM
Executable File

; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\flac\flac.c
CODE32
AREA |.drectve|, DRECTVE
DCB "/nodefaultlib:libc.lib "
DCB "/nodefaultlib:libcd.lib "
DCB "/nodefaultlib:oldnames.lib "
DCB "-defaultlib:LIBCMT "
DCB "-defaultlib:OLDNAMES "
AREA |.rdata|, DATA, READONLY
|FLAC| DCD 0x3b8
DCD 0x43414c46
DCD 0x42544d46
DCD 0x3e8
DCD |Create|
% 4
EXPORT |_calloc|
IMPORT |memset|
IMPORT |malloc|
AREA |.pdata|, PDATA
|$T5148| DCD |$LN6@calloc|
DCD 0x40001904
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|_calloc| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\flac\flac.c
; Line 46
|$LN6@calloc|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M5145|
; Line 47
ldr r2, [sp, #0x14]
ldr r3, [sp, #0x18]
mul r0, r2, r3
bl malloc
str r0, [sp, #8]
ldr r3, [sp, #8]
str r3, [sp]
; Line 48
ldr r3, [sp]
cmp r3, #0
beq |$LN1@calloc|
ldr r1, [sp, #0x14]
ldr r3, [sp, #0x18]
mul r2, r1, r3
mov r1, #0
ldr r0, [sp]
bl memset
|$LN1@calloc|
; Line 49
ldr r3, [sp]
str r3, [sp, #4]
; Line 50
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M5146|
ENDP ; |_calloc|
AREA |.pdata|, PDATA
|$T5154| DCD |$LN5@Create|
DCD 0x40002904
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Create| PROC
; Line 314
|$LN5@Create|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #4
|$M5151|
; Line 315
ldr r3, [sp, #0xC]
add r2, r3, #0x1C
ldr r3, [pc, #0x80]
str r3, [r2]
; Line 316
ldr r3, [sp, #0xC]
add r2, r3, #0x20
ldr r3, [pc, #0x6C]
str r3, [r2]
; Line 317
ldr r3, [sp, #0xC]
add r2, r3, #0x24
ldr r3, [pc, #0x58]
str r3, [r2]
; Line 318
ldr r3, [sp, #0xC]
add r2, r3, #0x3C
ldr r3, [pc, #0x44]
str r3, [r2]
; Line 319
ldr r3, [sp, #0xC]
add r2, r3, #0x28
mov r3, #0
str r3, [r2]
; Line 320
ldr r3, [sp, #0xC]
add r2, r3, #0x2C
mov r3, #0
str r3, [r2]
; Line 321
ldr r3, [sp, #0xC]
add r2, r3, #0x40
mov r3, #0
str r3, [r2]
; Line 323
mov r3, #0
str r3, [sp]
; Line 324
ldr r0, [sp]
add sp, sp, #4
ldmia sp, {sp, pc}
|$LN6@Create|
DCD |Process|
DCD |Seek|
DCD |Done|
DCD |Init|
|$M5152|
ENDP ; |Create|
IMPORT |FLAC__seekable_stream_decoder_delete|
IMPORT |__imp_free_win32|
AREA |.pdata|, PDATA
|$T5160| DCD |$LN6@Done|
DCD 0x40001d03
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Done| PROC
; Line 149
|$LN6@Done|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
|$M5157|
; Line 150
ldr r3, [sp, #8]
add r3, r3, #0xE6, 30
ldr r0, [r3]
ldr r3, [pc, #0x50]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 151
ldr r3, [sp, #8]
add r2, r3, #0xE6, 30
mov r3, #0
str r3, [r2]
; Line 153
ldr r3, [sp, #8]
add r3, r3, #0xD7, 30
ldr r3, [r3]
cmp r3, #0
beq |$LN1@Done|
; Line 155
ldr r3, [sp, #8]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_delete
; Line 156
ldr r3, [sp, #8]
add r2, r3, #0xD7, 30
mov r3, #0
str r3, [r2]
|$LN1@Done|
; Line 158
ldmia sp, {sp, pc}
|$LN7@Done|
DCD |__imp_free_win32|
|$M5158|
ENDP ; |Done|
IMPORT |__imp_Format_PrepairStream|
IMPORT |__imp_PacketFormatDefault|
IMPORT |__imp_PacketFormatClear|
IMPORT |__imp_Format_AddStream|
IMPORT |FLAC__seekable_stream_decoder_process_until_end_of_metadata|
IMPORT |FLAC__seekable_stream_decoder_init|
IMPORT |FLAC__seekable_stream_decoder_set_metadata_respond_all|
IMPORT |FLAC__seekable_stream_decoder_set_error_callback|
IMPORT |FLAC__seekable_stream_decoder_set_metadata_callback|
IMPORT |FLAC__seekable_stream_decoder_set_write_callback|
IMPORT |FLAC__seekable_stream_decoder_set_eof_callback|
IMPORT |FLAC__seekable_stream_decoder_set_tell_callback|
IMPORT |FLAC__seekable_stream_decoder_set_length_callback|
IMPORT |FLAC__seekable_stream_decoder_set_seek_callback|
IMPORT |FLAC__seekable_stream_decoder_set_read_callback|
IMPORT |FLAC__seekable_stream_decoder_set_client_data|
IMPORT |FLAC__seekable_stream_decoder_new|
IMPORT |__imp___rt_udiv64by64|
IMPORT |__imp___i64tos|
IMPORT |__imp___itos|
IMPORT |__imp___muls|
IMPORT |__imp___divs|
IMPORT |__imp___stoi|
AREA |.pdata|, PDATA
|$T5190| DCD |$LN9@Init|
DCD 0x40016d04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Init| PROC
; Line 161
|$LN9@Init|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r4, r12, lr}
sub sp, sp, #0x30
|$M5187|
; Line 165
ldr r3, [sp, #0x3C]
add r2, r3, #0xCA, 30
mov r3, #1
str r3, [r2]
; Line 166
ldr r3, [sp, #0x3C]
add r2, r3, #0x4C
mov r3, #0
str r3, [r2]
; Line 167
bl FLAC__seekable_stream_decoder_new
str r0, [sp, #0xC]
ldr r3, [sp, #0x3C]
add r2, r3, #0xD7, 30
ldr r3, [sp, #0xC]
str r3, [r2]
; Line 169
ldr r1, [sp, #0x3C]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_client_data
; Line 170
ldr r1, [pc, #0x54C]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_read_callback
; Line 171
ldr r1, [pc, #0x534]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_seek_callback
; Line 172
ldr r1, [pc, #0x51C]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_length_callback
; Line 173
ldr r1, [pc, #0x504]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_tell_callback
; Line 174
ldr r1, [pc, #0x4EC]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_eof_callback
; Line 175
ldr r1, [pc, #0x4D4]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_write_callback
; Line 176
ldr r1, [pc, #0x4BC]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_metadata_callback
; Line 177
ldr r1, [pc, #0x4A4]
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_error_callback
; Line 178
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_set_metadata_respond_all
; Line 180
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_init
str r0, [sp, #0x10]
ldr r3, [sp, #0x10]
str r3, [sp, #4]
; Line 182
ldr r3, [sp, #0x3C]
add r3, r3, #0x3B, 28
str r3, [sp, #0x14]
ldr r2, [sp, #0x14]
mov r3, #0
str r3, [r2]
ldr r2, [sp, #0x14]
mov r3, #0
str r3, [r2, #4]
; Line 184
ldr r3, [sp, #0x3C]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_process_until_end_of_metadata
str r0, [sp, #0x18]
ldr r3, [sp, #0x18]
cmp r3, #1
beq |$LN4@Init|
; Line 185
mvn r3, #2
str r3, [sp, #8]
b |$LN5@Init|
|$LN4@Init|
; Line 187
ldr r3, [sp, #0x3C]
add r2, r3, #0xD9, 30
ldr r3, [sp, #0x3C]
add r3, r3, #0xDD, 30
ldr r1, [r2]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #0x3C]
add r3, r3, #0xE7, 30
str r2, [r3]
; Line 188
ldr r3, [sp, #0x3C]
add r3, r3, #0xE7, 30
ldr r2, [r3]
mov r3, #2
mul r0, r2, r3
bl malloc
str r0, [sp, #0x1C]
ldr r3, [sp, #0x3C]
add r2, r3, #0xE6, 30
ldr r3, [sp, #0x1C]
str r3, [r2]
; Line 189
ldr r3, [sp, #0x3C]
add r3, r3, #0xE6, 30
ldr r3, [r3]
cmp r3, #0
bne |$LN3@Init|
; Line 190
mvn r3, #1
str r3, [sp, #8]
b |$LN5@Init|
|$LN3@Init|
; Line 192
mov r1, #0x42, 30
ldr r0, [sp, #0x3C]
ldr r3, [pc, #0x394]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x20]
ldr r3, [sp, #0x20]
str r3, [sp]
; Line 193
ldr r3, [sp]
cmp r3, #0
beq |$LN2@Init|
; Line 195
ldr r3, [sp]
add r0, r3, #0x20
ldr r3, [pc, #0x360]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 196
ldr r3, [sp]
add r2, r3, #0x20
mov r3, #2
str r3, [r2]
; Line 197
ldr r3, [sp]
add r2, r3, #0x38
mov r3, #1
str r3, [r2]
; Line 198
ldr r3, [sp]
add r2, r3, #0x4C
mov r3, #0x10
str r3, [r2]
; Line 199
ldr r3, [sp, #0x3C]
add r1, r3, #0x37, 28
ldr r3, [sp]
add r2, r3, #0x40
ldr r3, [r1]
str r3, [r2]
; Line 200
ldr r3, [sp, #0x3C]
add r1, r3, #0xDD, 30
ldr r3, [sp]
add r2, r3, #0x3C
ldr r3, [r1]
str r3, [r2]
; Line 201
ldr r3, [sp]
add r0, r3, #0x20
ldr r3, [pc, #0x2E4]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 202
ldr r3, [sp, #0x3C]
add r3, r3, #0x68
ldr r3, [r3]
cmp r3, #0
ble |$LN1@Init|
; Line 207
ldr r3, [sp, #0x3C]
add r3, r3, #0x68
ldr r0, [r3]
ldr r3, [pc, #0x2AC]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r4, r0
ldr r3, [sp, #0x3C]
add r3, r3, #0xE, 26
str r3, [sp, #0x24]
ldr r3, [sp, #0x24]
ldr r0, [r3]
ldr r3, [sp, #0x24]
ldr r1, [r3, #4]
ldr r3, [pc, #0x280]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, r0
mov r0, r4
ldr r3, [pc, #0x25C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r4, r0
ldr r3, [sp]
add r3, r3, #0x3C
ldr r0, [r3]
ldr r3, [pc, #0x244]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, r0
mov r0, r4
ldr r3, [pc, #0x228]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r4, r0
ldr r3, [sp]
add r3, r3, #0x4C
ldr r0, [r3]
ldr r3, [pc, #0x20C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, r0
mov r0, r4
ldr r3, [pc, #0x1F0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, #0x41, 8
ldr r3, [pc, #0x1D8]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r4, r0
ldr r3, [sp]
add r3, r3, #0x40
ldr r0, [r3]
ldr r3, [pc, #0x1C0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, r0
mov r0, r4
ldr r3, [pc, #0x1A4]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r4, r0
ldr r3, [sp]
add r3, r3, #0x3C
ldr r0, [r3]
ldr r3, [pc, #0x188]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, r0
mov r0, r4
ldr r3, [pc, #0x16C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r4, r0
ldr r3, [sp]
add r3, r3, #0x4C
ldr r0, [r3]
ldr r3, [pc, #0x150]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, r0
mov r0, r4
ldr r3, [pc, #0x134]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r1, #0x43, 8
ldr r3, [pc, #0x11C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [pc, #0x108]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp]
add r3, r3, #0x24
str r0, [r3]
|$LN1@Init|
; Line 209
ldr r3, [sp]
add r2, r3, #0x68
mov r3, #1
str r3, [r2]
; Line 210
ldr r3, [sp]
add r2, r3, #0x70
mov r3, #1
str r3, [r2]
; Line 211
ldr r3, [sp, #0x3C]
add r3, r3, #0xE, 26
str r3, [sp, #0x28]
ldr r3, [sp, #0x28]
ldr r2, [r3]
ldr r3, [sp, #0x28]
ldr r3, [r3, #4]
str r2, [sp, #0x2C]
mov r1, r3, lsl #14
ldr r3, [sp, #0x2C]
mov r2, r3, lsr #18
ldr r3, [sp, #0x2C]
mov r0, r3, lsl #14
orr r1, r1, r2
ldr r3, [sp, #0x3C]
add r3, r3, #0x37, 28
ldr r2, [r3]
mov r3, #0
ldr lr, [pc, #0x80]
ldr r4, [lr]
mov lr, pc
mov pc, r4
mov r2, r0
ldr r3, [sp, #0x3C]
add r3, r3, #0x60
str r2, [r3]
; Line 213
ldr r1, [sp]
ldr r0, [sp, #0x3C]
ldr r3, [pc, #0x54]
ldr r3, [r3]
mov lr, pc
mov pc, r3
|$LN2@Init|
; Line 216
ldr r3, [sp, #0x3C]
add r1, r3, #0x37, 28
ldr r3, [sp, #0x3C]
add r2, r3, #0xE9, 30
ldr r3, [r1]
str r3, [r2]
; Line 217
ldr r3, [sp, #0x3C]
add r3, r3, #0xDD, 30
ldr r1, [r3]
mov r3, #2
mul r2, r1, r3
ldr r3, [sp, #0x3C]
add r3, r3, #0xEA, 30
str r2, [r3]
; Line 219
mov r3, #0
str r3, [sp, #8]
|$LN5@Init|
; Line 220
ldr r0, [sp, #8]
add sp, sp, #0x30
ldmia sp, {r4, sp, pc}
|$LN10@Init|
DCD |__imp_Format_PrepairStream|
DCD |__imp___rt_udiv64by64|
DCD |__imp___stoi|
DCD |__imp___divs|
DCD |__imp___muls|
DCD |__imp___itos|
DCD |__imp___i64tos|
DCD |__imp_PacketFormatDefault|
DCD |__imp_PacketFormatClear|
DCD |__imp_Format_AddStream|
DCD |ErrorCallback|
DCD |MetadataCallback|
DCD |WriteCallback|
DCD |EofCallback|
DCD |TellCallback|
DCD |LengthCallback|
DCD |SeekCallback|
DCD |ReadCallback|
|$M5188|
ENDP ; |Init|
AREA |.pdata|, PDATA
|$T5197| DCD |$LN5@ReadCallba|
DCD 0x40001904
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|ReadCallback| PROC
; Line 55
|$LN5@ReadCallba|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M5194|
; Line 56
ldr r3, [sp, #0x20]
add r3, r3, #0x79, 30
str r3, [sp]
; Line 57
ldr r3, [sp, #0x1C]
ldr r2, [r3]
ldr r1, [sp, #0x18]
ldr r0, [sp]
ldr r3, [sp]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #8]
ldr r2, [sp, #8]
ldr r3, [sp, #0x1C]
str r2, [r3]
; Line 58
mov r3, #0
str r3, [sp, #4]
; Line 59
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M5195|
ENDP ; |ReadCallback|
AREA |.pdata|, PDATA
|$T5205| DCD |$LN7@SeekCallba|
DCD 0x40001c04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|SeekCallback| PROC
; Line 62
|$LN7@SeekCallba|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r12, lr}
sub sp, sp, #0x10
|$M5202|
; Line 63
ldr r3, [sp, #0x24]
add r3, r3, #0x79, 30
str r3, [sp]
; Line 64
mov r2, #0
ldr r1, [sp, #0x1C]
ldr r0, [sp]
ldr r3, [sp]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #8]
ldr r3, [sp, #8]
cmp r3, #0
blt |$LN3@SeekCallba|
mov r3, #0
str r3, [sp, #0xC]
b |$LN4@SeekCallba|
|$LN3@SeekCallba|
mov r3, #1
str r3, [sp, #0xC]
|$LN4@SeekCallba|
ldr r3, [sp, #0xC]
str r3, [sp, #4]
; Line 65
ldr r0, [sp, #4]
add sp, sp, #0x10
ldmia sp, {sp, pc}
|$M5203|
ENDP ; |SeekCallback|
AREA |.pdata|, PDATA
|$T5211| DCD |$LN5@TellCallba|
DCD 0x40001704
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|TellCallback| PROC
; Line 68
|$LN5@TellCallba|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M5208|
; Line 69
ldr r3, [sp, #0x1C]
add r3, r3, #0x79, 30
str r3, [sp]
; Line 70
ldr r3, [sp]
add r3, r3, #0x64
ldr r3, [r3]
str r3, [sp, #8]
ldr r1, [sp, #8]
ldr r3, [sp, #8]
mov r2, r3, asr #31
ldr r3, [sp, #0x18]
str r1, [r3]
ldr r3, [sp, #0x18]
str r2, [r3, #4]
; Line 71
mov r3, #0
str r3, [sp, #4]
; Line 72
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M5209|
ENDP ; |TellCallback|
AREA |.pdata|, PDATA
|$T5217| DCD |$LN6@LengthCall|
DCD 0x40002304
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|LengthCallback| PROC
; Line 75
|$LN6@LengthCall|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M5214|
; Line 76
ldr r3, [sp, #0x1C]
add r3, r3, #0x79, 30
str r3, [sp]
; Line 77
ldr r3, [sp]
add r3, r3, #0x34
ldr r3, [r3]
add r3, r3, #0x68
ldr r3, [r3]
cmp r3, #0
bge |$LN1@LengthCall|
; Line 78
mov r3, #1
str r3, [sp, #4]
b |$LN2@LengthCall|
|$LN1@LengthCall|
; Line 79
ldr r3, [sp]
add r3, r3, #0x34
ldr r3, [r3]
add r3, r3, #0x68
ldr r3, [r3]
str r3, [sp, #8]
ldr r1, [sp, #8]
ldr r3, [sp, #8]
mov r2, r3, asr #31
ldr r3, [sp, #0x18]
str r1, [r3]
ldr r3, [sp, #0x18]
str r2, [r3, #4]
; Line 81
mov r3, #0
str r3, [sp, #4]
|$LN2@LengthCall|
; Line 82
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M5215|
ENDP ; |LengthCallback|
AREA |.pdata|, PDATA
|$T5225| DCD |$LN7@EofCallbac|
DCD 0x40001b04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|EofCallback| PROC
; Line 85
|$LN7@EofCallbac|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M5222|
; Line 86
ldr r3, [sp, #0x18]
add r3, r3, #0x79, 30
str r3, [sp]
; Line 87
ldr r3, [sp]
add r3, r3, #0x34
ldr r3, [r3]
add r2, r3, #0x68
ldr r3, [sp]
add r3, r3, #0x64
ldr r2, [r2]
ldr r3, [r3]
cmp r2, r3
bne |$LN3@EofCallbac|
mov r3, #1
str r3, [sp, #8]
b |$LN4@EofCallbac|
|$LN3@EofCallbac|
mov r3, #0
str r3, [sp, #8]
|$LN4@EofCallbac|
ldr r3, [sp, #8]
str r3, [sp, #4]
; Line 88
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$M5223|
ENDP ; |EofCallback|
AREA |.pdata|, PDATA
|$T5231| DCD |$LN17@WriteCallb|
DCD 0x40007004
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|WriteCallback| PROC
; Line 91
|$LN17@WriteCallb|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r12, lr}
sub sp, sp, #0x1C
|$M5228|
; Line 92
ldr r3, [sp, #0x30]
str r3, [sp, #4]
; Line 93
ldr r3, [sp, #4]
add r3, r3, #0xE6, 30
ldr r3, [r3]
str r3, [sp]
; Line 94
ldr r3, [sp, #0x28]
add r1, r3, #8
ldr r3, [sp, #0x28]
ldr r2, [r3]
ldr r3, [r1]
mul r3, r2, r3
str r3, [sp, #0xC]
; Line 95
ldr r3, [sp, #0x28]
ldr r3, [r3]
str r3, [sp, #0x10]
; Line 98
ldr r3, [sp, #4]
add r3, r3, #0xE7, 30
ldr r2, [r3]
ldr r3, [sp, #0xC]
cmp r2, r3
bge |$LN12@WriteCallb|
; Line 99
mov r3, #1
str r3, [sp, #0x18]
b |$LN13@WriteCallb|
|$LN12@WriteCallb|
; Line 101
ldr r3, [sp, #0x28]
add r3, r3, #8
ldr r3, [r3]
cmp r3, #1
bne |$LN11@WriteCallb|
; Line 103
mov r3, #0
str r3, [sp, #8]
b |$LN10@WriteCallb|
|$LN9@WriteCallb|
ldr r3, [sp, #8]
add r3, r3, #1
str r3, [sp, #8]
|$LN10@WriteCallb|
ldr r2, [sp, #8]
ldr r3, [sp, #0xC]
cmp r2, r3
bge |$LN8@WriteCallb|
; Line 104
ldr r1, [sp, #8]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x2C]
ldr r3, [r3]
add r3, r3, r2
ldr r3, [r3]
mov r0, r3, lsl #16
mov r0, r0, asr #16
ldr r1, [sp, #8]
mov r3, #2
mul r2, r1, r3
ldr r3, [sp]
add r3, r3, r2
strh r0, [r3]
b |$LN9@WriteCallb|
|$LN8@WriteCallb|
; Line 106
b |$LN7@WriteCallb|
|$LN11@WriteCallb|
; Line 110
mov r3, #0
str r3, [sp, #8]
b |$LN6@WriteCallb|
|$LN5@WriteCallb|
ldr r3, [sp, #8]
add r3, r3, #1
str r3, [sp, #8]
|$LN6@WriteCallb|
ldr r2, [sp, #8]
ldr r3, [sp, #0x10]
cmp r2, r3
bge |$LN4@WriteCallb|
; Line 111
mov r3, #0
str r3, [sp, #0x14]
b |$LN3@WriteCallb|
|$LN2@WriteCallb|
ldr r3, [sp, #0x14]
add r3, r3, #1
str r3, [sp, #0x14]
|$LN3@WriteCallb|
ldr r3, [sp, #0x28]
add r3, r3, #8
ldr r2, [sp, #0x14]
ldr r3, [r3]
cmp r2, r3
bcs |$LN1@WriteCallb|
; Line 112
ldr r1, [sp, #0x14]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x2C]
add r0, r3, r2
ldr r1, [sp, #8]
mov r3, #4
mul r2, r1, r3
ldr r3, [r0]
add r3, r3, r2
ldr r3, [r3]
mov r2, r3, lsl #16
mov r2, r2, asr #16
ldr r3, [sp]
strh r2, [r3]
ldr r3, [sp]
add r3, r3, #2
str r3, [sp]
b |$LN2@WriteCallb|
|$LN1@WriteCallb|
b |$LN5@WriteCallb|
|$LN4@WriteCallb|
|$LN7@WriteCallb|
; Line 115
ldr r3, [sp, #4]
add r2, r3, #0x3A, 28
ldr r3, [sp, #0x10]
str r3, [r2]
; Line 116
mov r3, #0
str r3, [sp, #0x18]
|$LN13@WriteCallb|
; Line 117
ldr r0, [sp, #0x18]
add sp, sp, #0x1C
ldmia sp, {sp, pc}
|$M5229|
ENDP ; |WriteCallback|
EXPORT |__$ArrayPad$| [ DATA ]
IMPORT |__imp_UTF8ToTcs|
IMPORT |__security_cookie|
IMPORT |memcpy|
IMPORT |__security_check_cookie|
AREA |.pdata|, PDATA
|$T5240| DCD |$LN12@MetadataCa|
DCD 0x40005104
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|MetadataCallback| PROC
; Line 120
|$LN12@MetadataCa|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r4, r12, lr}
sub sp, sp, #0x21, 28
|$M5237|
ldr r3, [pc, #0x128]
ldr r3, [r3]
str r3, [sp, #0x20C]
; Line 121
ldr r3, [sp, #0x224]
str r3, [sp]
; Line 122
ldr r3, [sp, #0x220]
ldr r3, [r3]
cmp r3, #0
bne |$LN7@MetadataCa|
; Line 124
ldr r3, [sp, #0x220]
add r1, r3, #0x10
ldr r3, [sp]
add r0, r3, #0x36, 28
mov r2, #0x38
bl memcpy
; Line 126
b |$LN6@MetadataCa|
|$LN7@MetadataCa|
; Line 127
ldr r3, [sp, #0x220]
ldr r3, [r3]
cmp r3, #4
bne |$LN5@MetadataCa|
; Line 129
ldr r3, [sp, #0x220]
add r3, r3, #0x10
str r3, [sp, #4]
; Line 132
ldr r3, [sp]
add r3, r3, #0x6B, 30
ldr r3, [r3]
cmp r3, #0
beq |$LN4@MetadataCa|
; Line 135
mov r3, #0
str r3, [sp, #0x208]
b |$LN3@MetadataCa|
|$LN2@MetadataCa|
ldr r3, [sp, #0x208]
add r3, r3, #1
str r3, [sp, #0x208]
|$LN3@MetadataCa|
ldr r3, [sp, #4]
add r3, r3, #8
ldr r2, [sp, #0x208]
ldr r3, [r3]
cmp r2, r3
bcs |$LN1@MetadataCa|
; Line 137
ldr r3, [sp, #4]
add r0, r3, #0xC
ldr r1, [sp, #0x208]
mov r3, #8
mul r2, r1, r3
ldr r3, [r0]
add r3, r3, r2
add r3, r3, #4
ldr r2, [r3]
mov r1, #1, 24
add r0, sp, #8
ldr r3, [pc, #0x58]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 138
mov r3, #2, 24
add r2, sp, #8
ldr r1, [sp]
add r1, r1, #0x1B, 28
ldr r1, [r1]
ldr r0, [sp]
add r0, r0, #0x6B, 30
ldr r0, [r0]
ldr lr, [sp]
add lr, lr, #0x6B, 30
ldr lr, [lr]
add lr, lr, #0xC
ldr r4, [lr]
mov lr, pc
mov pc, r4
; Line 139
b |$LN2@MetadataCa|
|$LN1@MetadataCa|
|$LN4@MetadataCa|
|$LN5@MetadataCa|
|$LN6@MetadataCa|
; Line 120
ldr r0, [sp, #0x20C]
bl __security_check_cookie
; Line 142
add sp, sp, #0x21, 28
ldmia sp, {r4, sp, pc}
|$LN13@MetadataCa|
DCD |__imp_UTF8ToTcs|
DCD |__security_cookie|
|$M5238|
ENDP ; |MetadataCallback|
AREA |.pdata|, PDATA
|$T5246| DCD |$LN5@ErrorCallb|
DCD 0x40000403
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|ErrorCallback| PROC
; Line 145
|$LN5@ErrorCallb|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
|$M5243|
; Line 146
ldmia sp, {sp, pc}
|$M5244|
ENDP ; |ErrorCallback|
IMPORT |__imp_Format_AfterSeek|
IMPORT |FLAC__seekable_stream_decoder_seek_absolute|
IMPORT |__imp___rt_sdiv64by64|
AREA |.pdata|, PDATA
|$T5254| DCD |$LN9@Seek|
DCD 0x40005e04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Seek| PROC
; Line 223
|$LN9@Seek|
mov r12, sp
stmdb sp!, {r0 - r3}
stmdb sp!, {r4, r12, lr}
sub sp, sp, #0x24
|$M5251|
; Line 226
ldr r3, [sp, #0x34]
cmp r3, #0
bge |$LN4@Seek|
; Line 228
ldr r3, [sp, #0x38]
cmp r3, #0
blt |$LN2@Seek|
ldr r3, [sp, #0x30]
add r3, r3, #0x68
ldr r3, [r3]
cmp r3, #0
bge |$LN3@Seek|
|$LN2@Seek|
; Line 229
mvn r3, #4
str r3, [sp, #8]
b |$LN5@Seek|
|$LN3@Seek|
; Line 231
ldr r3, [sp, #0x30]
add r3, r3, #0x68
ldr r2, [r3]
ldr r3, [sp, #0x30]
add r3, r3, #0x60
ldr r1, [r3]
ldr r0, [sp, #0x38]
bl Scale
str r0, [sp, #0xC]
ldr r3, [sp, #0xC]
str r3, [sp, #0x34]
|$LN4@Seek|
; Line 234
ldr lr, [sp, #0x34]
ldr r3, [sp, #0x34]
mov r0, r3, asr #31
ldr r3, [sp, #0x30]
add r3, r3, #0xE9, 30
ldr r3, [r3]
str r3, [sp, #0x10]
ldr r1, [sp, #0x10]
ldr r3, [sp, #0x10]
mov r2, r3, asr #31
str lr, [sp, #0x14]
str r1, [sp, #0x18]
ldr r3, [sp, #0x14]
mul r2, r3, r2
ldr r3, [sp, #0x18]
mul r3, r0, r3
add r0, r2, r3
ldr r1, [sp, #0x14]
ldr r3, [sp, #0x18]
umull r2, r3, r1, r3
add r3, r0, r3
adds r0, r2, #2, 20
adc r1, r3, #0
mov r2, #1, 18
mov r3, #0
ldr lr, [pc, #0x94]
ldr r4, [lr]
mov lr, pc
mov pc, r4
str r0, [sp]
str r1, [sp, #4]
; Line 236
ldr r1, [sp]
ldr r2, [sp, #4]
ldr r3, [sp, #0x30]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_seek_absolute
str r0, [sp, #0x1C]
ldr r3, [sp, #0x1C]
cmp r3, #0
bne |$LN1@Seek|
; Line 237
mvn r3, #4
str r3, [sp, #8]
b |$LN5@Seek|
|$LN1@Seek|
; Line 239
ldr r0, [sp, #0x30]
ldr r3, [pc, #0x40]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 240
ldr r3, [sp, #0x30]
add r3, r3, #0x3B, 28
str r3, [sp, #0x20]
ldr r2, [sp]
ldr r3, [sp, #0x20]
str r2, [r3]
ldr r2, [sp, #4]
ldr r3, [sp, #0x20]
str r2, [r3, #4]
; Line 241
mov r3, #0
str r3, [sp, #8]
|$LN5@Seek|
; Line 242
ldr r0, [sp, #8]
add sp, sp, #0x24
ldmia sp, {r4, sp, pc}
|$LN10@Seek|
DCD |__imp_Format_AfterSeek|
DCD |__imp___rt_sdiv64by64|
|$M5252|
ENDP ; |Seek|
AREA |.pdata|, PDATA
|$T5262| DCD |$LN6@Scale|
DCD 0x40002804
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Scale| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\common\tools.h
; Line 317
|$LN6@Scale|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r4, r12, lr}
sub sp, sp, #0xC
|$M5259|
; Line 318
ldr r3, [sp, #0x20]
cmp r3, #0
beq |$LN1@Scale|
; Line 319
ldr lr, [sp, #0x18]
ldr r3, [sp, #0x18]
mov r0, r3, asr #31
ldr r1, [sp, #0x1C]
ldr r3, [sp, #0x1C]
mov r2, r3, asr #31
str lr, [sp, #4]
str r1, [sp, #8]
ldr r3, [sp, #4]
mul r2, r3, r2
ldr r3, [sp, #8]
mul r3, r0, r3
add r1, r2, r3
ldr r2, [sp, #4]
ldr r3, [sp, #8]
umull r0, r3, r2, r3
add r1, r1, r3
ldr r2, [sp, #0x20]
ldr r3, [sp, #0x20]
mov r3, r3, asr #31
ldr lr, [pc, #0x28]
ldr r4, [lr]
mov lr, pc
mov pc, r4
mov r3, r0
str r3, [sp]
b |$LN2@Scale|
|$LN1@Scale|
; Line 320
mov r3, #0
str r3, [sp]
|$LN2@Scale|
; Line 321
ldr r0, [sp]
add sp, sp, #0xC
ldmia sp, {r4, sp, pc}
|$LN7@Scale|
DCD |__imp___rt_sdiv64by64|
|$M5260|
ENDP ; |Scale|
IMPORT |__imp_Format_CheckEof|
IMPORT |FLAC__seekable_stream_decoder_get_stream_decoder_state|
IMPORT |FLAC__seekable_stream_decoder_process_single|
IMPORT |__imp_Format_Send|
AREA |.pdata|, PDATA
|$T5272| DCD |$LN22@Process|
DCD 0x4000d404
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|Process| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\flac\flac.c
; Line 245
|$LN22@Process|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r4, r12, lr}
sub sp, sp, #0x3C
|$M5269|
; Line 246
mov r3, #0
str r3, [sp]
; Line 248
ldr r3, [sp, #0x4C]
add r3, r3, #0x98
ldr r3, [r3]
cmp r3, #0
beq |$LN15@Process|
; Line 250
ldr r1, [sp, #0x4C]
ldr r0, [sp, #0x48]
ldr r3, [pc, #0x308]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xC]
ldr r3, [sp, #0xC]
str r3, [sp]
; Line 252
ldr r3, [sp]
cmn r3, #1
beq |$LN13@Process|
ldr r3, [sp]
cmn r3, #0xB
bne |$LN14@Process|
|$LN13@Process|
; Line 253
ldr r3, [sp]
str r3, [sp, #8]
b |$LN16@Process|
|$LN14@Process|
|$LN15@Process|
; Line 256
ldr r3, [sp, #0x48]
add r3, r3, #0x8B, 30
ldr r3, [r3]
cmp r3, #2, 16
bge |$LN12@Process|
ldr r3, [sp, #0x48]
add r3, r3, #0x89, 30
ldr r3, [r3]
cmp r3, #0
bne |$LN12@Process|
; Line 257
mvn r3, #5
str r3, [sp, #8]
b |$LN16@Process|
|$LN12@Process|
; Line 259
ldr r3, [sp, #0x48]
add r2, r3, #0x3A, 28
mov r3, #0
str r3, [r2]
; Line 261
ldr r3, [sp, #0x48]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_process_single
str r0, [sp, #0x10]
ldr r3, [sp, #0x10]
cmp r3, #1
beq |$LN11@Process|
; Line 265
ldr r3, [sp, #0x48]
add r3, r3, #0xD7, 30
ldr r0, [r3]
bl FLAC__seekable_stream_decoder_get_stream_decoder_state
str r0, [sp, #0x14]
ldr r3, [sp, #0x14]
str r3, [sp, #4]
; Line 266
ldr r3, [sp, #4]
str r3, [sp, #0x18]
ldr r3, [sp, #0x18]
cmp r3, #0xA
bhi |$LN9@Process|
ldr r2, [sp, #0x18]
mov r3, r2, lsl #2
add r3, r3, pc
ldr r3, [r3, #4]
add pc, pc, r3
|$LN19@Process|
|$LN18@Process|
DCD 0x28
DCD 0x28
DCD 0x34
DCD 0x34
DCD 0x40
DCD 0x40
DCD 0x40
DCD 0x4c
DCD 0x58
DCD 0x58
DCD 0x58
|$LN8@Process|
; Line 271
mvn r3, #2
str r3, [sp, #8]
b |$LN16@Process|
|$LN7@Process|
; Line 276
mvn r3, #5
str r3, [sp, #8]
b |$LN16@Process|
|$LN6@Process|
; Line 281
mvn r3, #2
str r3, [sp, #8]
b |$LN16@Process|
|$LN5@Process|
; Line 284
mvn r3, #1
str r3, [sp, #8]
b |$LN16@Process|
|$LN4@Process|
; Line 290
mvn r3, #2
str r3, [sp, #8]
b |$LN16@Process|
|$LN9@Process|
; Line 292
mvn r3, #2
str r3, [sp, #8]
b |$LN16@Process|
|$LN11@Process|
; Line 295
ldr r3, [sp, #0x48]
add r3, r3, #0x3A, 28
ldr r3, [r3]
cmp r3, #0
bne |$LN3@Process|
; Line 296
ldr r1, [sp, #0x4C]
ldr r0, [sp, #0x48]
ldr r3, [pc, #0x198]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x1C]
ldr r3, [sp, #0x1C]
str r3, [sp, #8]
b |$LN16@Process|
|$LN3@Process|
; Line 298
ldr r3, [sp, #0x48]
add r3, r3, #0x3B, 28
str r3, [sp, #0x20]
ldr r3, [sp, #0x20]
ldr r2, [r3]
ldr r3, [sp, #0x20]
ldr r3, [r3, #4]
str r2, [sp, #0x24]
mov r1, r3, lsl #14
ldr r3, [sp, #0x24]
mov r2, r3, lsr #18
ldr r3, [sp, #0x24]
mov r0, r3, lsl #14
orr r1, r1, r2
ldr r3, [sp, #0x48]
add r3, r3, #0xE9, 30
ldr r3, [r3]
str r3, [sp, #0x28]
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x28]
mov r3, r3, asr #31
ldr lr, [pc, #0x120]
ldr r4, [lr]
mov lr, pc
mov pc, r4
mov r2, r0
ldr r3, [sp, #0x4C]
add r3, r3, #0xC4
str r2, [r3]
; Line 299
ldr r3, [sp, #0x48]
add r1, r3, #0xE6, 30
ldr r3, [sp, #0x4C]
add r2, r3, #0xA0
ldr r3, [r1]
str r3, [r2]
; Line 300
ldr r3, [sp, #0x48]
add r2, r3, #0x3A, 28
ldr r3, [sp, #0x48]
add r3, r3, #0xEA, 30
ldr r1, [r2]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #0x4C]
add r3, r3, #0xC0
str r2, [r3]
; Line 301
ldr r3, [sp, #0x4C]
add r2, r3, #0x98
mov r3, #1
str r3, [r2]
; Line 302
ldr r3, [sp, #0x48]
add r2, r3, #0x3B, 28
ldr r3, [sp, #0x48]
add r3, r3, #0x3A, 28
ldr r3, [r3]
str r3, [sp, #0x2C]
ldr r1, [sp, #0x2C]
ldr r3, [sp, #0x2C]
mov r0, r3, asr #31
str r2, [sp, #0x30]
ldr r3, [sp, #0x30]
ldr r2, [r3]
ldr r3, [sp, #0x30]
ldr r3, [r3, #4]
adds r1, r2, r1
adc r2, r3, r0
ldr r3, [sp, #0x48]
add r3, r3, #0x3B, 28
str r3, [sp, #0x34]
ldr r3, [sp, #0x34]
str r1, [r3]
ldr r3, [sp, #0x34]
str r2, [r3, #4]
; Line 304
ldr r1, [sp, #0x4C]
ldr r0, [sp, #0x48]
ldr r3, [pc, #0x48]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x38]
ldr r3, [sp, #0x38]
str r3, [sp]
; Line 306
ldr r3, [sp]
cmn r3, #1
beq |$LN1@Process|
ldr r3, [sp]
cmn r3, #6
bne |$LN2@Process|
|$LN1@Process|
; Line 307
mov r3, #0
str r3, [sp]
|$LN2@Process|
; Line 309
ldr r3, [sp]
str r3, [sp, #8]
|$LN16@Process|
; Line 310
ldr r0, [sp, #8]
add sp, sp, #0x3C
ldmia sp, {r4, sp, pc}
|$LN23@Process|
DCD |__imp_Format_Send|
DCD |__imp___rt_sdiv64by64|
DCD |__imp_Format_CheckEof|
|$M5270|
ENDP ; |Process|
EXPORT |FLAC_Init|
IMPORT |__imp_NodeRegisterClass|
AREA |.pdata|, PDATA
|$T5278| DCD |$LN5@FLAC_Init|
DCD 0x40000901
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|FLAC_Init| PROC
; Line 336
|$LN5@FLAC_Init|
str lr, [sp, #-4]!
|$M5275|
; Line 337
ldr r0, [pc, #0x14]
ldr r3, [pc, #0xC]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 338
ldr pc, [sp], #4
|$LN6@FLAC_Init|
DCD |__imp_NodeRegisterClass|
DCD |FLAC|
|$M5276|
ENDP ; |FLAC_Init|
EXPORT |FLAC_Done|
IMPORT |__imp_NodeUnRegisterClass|
AREA |.pdata|, PDATA
|$T5284| DCD |$LN5@FLAC_Done|
DCD 0x40000901
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|FLAC_Done| PROC
; Line 341
|$LN5@FLAC_Done|
str lr, [sp, #-4]!
|$M5281|
; Line 342
ldr r0, [pc, #0x14]
ldr r3, [pc, #0xC]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 343
ldr pc, [sp], #4
|$LN6@FLAC_Done|
DCD |__imp_NodeUnRegisterClass|
DCD 0x43414c46
|$M5282|
ENDP ; |FLAC_Done|
END