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

5323 lines
121 KiB
NASM
Executable File

; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\tta\ttalib\ttadec.c
CODE32
AREA |.drectve|, DRECTVE
DCB "/nodefaultlib:libc.lib "
DCB "/nodefaultlib:libcd.lib "
DCB "/nodefaultlib:oldnames.lib "
DCB "-defaultlib:LIBCMT "
DCB "-defaultlib:OLDNAMES "
EXPORT |crc32_table| [ DATA ]
EXPORT |bit_mask| [ DATA ]
EXPORT |bit_shift| [ DATA ]
EXPORT |shift_16| [ DATA ]
AREA |.bss|, NOINIT
|isobuffers| % 0x40004
AREA |.data|, DATA
COMMON |ttainfo|, 0x4
|shift_16| DCD |bit_shift|+16
|$SG4323| DCB "Blues", 0x0
% 2
|$SG4324| DCB "Classic Rock", 0x0
% 3
|$SG4325| DCB "Country", 0x0
|$SG4326| DCB "Dance", 0x0
% 2
|$SG4327| DCB "Disco", 0x0
% 2
|$SG4328| DCB "Funk", 0x0
% 3
|$SG4329| DCB "Grunge", 0x0
% 1
|$SG4330| DCB "Hip-Hop", 0x0
|$SG4331| DCB "Jazz", 0x0
% 3
|$SG4332| DCB "Metal", 0x0
% 2
|$SG4333| DCB "New Age", 0x0
|$SG4334| DCB "Oldies", 0x0
% 1
|$SG4335| DCB "Other", 0x0
% 2
|$SG4336| DCB "Pop", 0x0
|$SG4337| DCB "R&B", 0x0
|$SG4338| DCB "Rap", 0x0
|$SG4339| DCB "Reggae", 0x0
% 1
|$SG4340| DCB "Rock", 0x0
% 3
|$SG4341| DCB "Techno", 0x0
% 1
|$SG4342| DCB "Industrial", 0x0
% 1
|$SG4343| DCB "Alternative", 0x0
|$SG4344| DCB "Ska", 0x0
|$SG4345| DCB "Death Metal", 0x0
|$SG4346| DCB "Pranks", 0x0
% 1
|$SG4347| DCB "Soundtrack", 0x0
% 1
|$SG4348| DCB "Euro-Techno", 0x0
|$SG4349| DCB "Ambient", 0x0
|$SG4350| DCB "Trip-Hop", 0x0
% 3
|$SG4351| DCB "Vocal", 0x0
% 2
|$SG4352| DCB "Jazz+Funk", 0x0
% 2
|$SG4353| DCB "Fusion", 0x0
% 1
|$SG4354| DCB "Trance", 0x0
% 1
|$SG4355| DCB "Classical", 0x0
% 2
|$SG4356| DCB "Instrumental", 0x0
% 3
|$SG4357| DCB "Acid", 0x0
% 3
|$SG4358| DCB "House", 0x0
% 2
|$SG4359| DCB "Game", 0x0
% 3
|$SG4360| DCB "Sound Clip", 0x0
% 1
|$SG4361| DCB "Gospel", 0x0
% 1
|$SG4362| DCB "Noise", 0x0
% 2
|$SG4363| DCB "AlternRock", 0x0
% 1
|$SG4364| DCB "Bass", 0x0
% 3
|$SG4365| DCB "Soul", 0x0
% 3
|$SG4366| DCB "Punk", 0x0
% 3
|$SG4367| DCB "Space", 0x0
% 2
|$SG4368| DCB "Meditative", 0x0
% 1
|$SG4369| DCB "Instrumental Pop", 0x0
% 3
|$SG4370| DCB "Instrumental Rock", 0x0
% 2
|$SG4371| DCB "Ethnic", 0x0
% 1
|$SG4372| DCB "Gothic", 0x0
% 1
|$SG4373| DCB "Darkwave", 0x0
% 3
|$SG4374| DCB "Techno-Industrial", 0x0
% 2
|$SG4375| DCB "Electronic", 0x0
% 1
|$SG4376| DCB "Pop-Folk", 0x0
% 3
|$SG4377| DCB "Eurodance", 0x0
% 2
|$SG4378| DCB "Dream", 0x0
% 2
|$SG4379| DCB "Southern Rock", 0x0
% 2
|$SG4380| DCB "Comedy", 0x0
% 1
|$SG4381| DCB "Cult", 0x0
% 3
|$SG4382| DCB "Gangsta", 0x0
|$SG4383| DCB "Top 40", 0x0
% 1
|$SG4384| DCB "Christian Rap", 0x0
% 2
|$SG4385| DCB "Pop/Funk", 0x0
% 3
|$SG4386| DCB "Jungle", 0x0
% 1
|$SG4387| DCB "Native American", 0x0
|$SG4388| DCB "Cabaret", 0x0
|$SG4389| DCB "New Wave", 0x0
% 3
|$SG4390| DCB "Psychedelic", 0x0
|$SG4391| DCB "Rave", 0x0
% 3
|$SG4392| DCB "Showtunes", 0x0
% 2
|$SG4393| DCB "Trailer", 0x0
|$SG4394| DCB "Lo-Fi", 0x0
% 2
|$SG4395| DCB "Tribal", 0x0
% 1
|$SG4396| DCB "Acid Punk", 0x0
% 2
|$SG4397| DCB "Acid Jazz", 0x0
% 2
|$SG4398| DCB "Polka", 0x0
% 2
|$SG4399| DCB "Retro", 0x0
% 2
|$SG4400| DCB "Musical", 0x0
|$SG4401| DCB "Rock & Roll", 0x0
|$SG4402| DCB "Hard Rock", 0x0
% 2
|$SG4403| DCB "Folk", 0x0
% 3
|$SG4404| DCB "Folk/Rock", 0x0
% 2
|$SG4405| DCB "National Folk", 0x0
% 2
|$SG4406| DCB "Swing", 0x0
% 2
|$SG4407| DCB "Fast-Fusion", 0x0
|$SG4408| DCB "Bebob", 0x0
% 2
|$SG4409| DCB "Latin", 0x0
% 2
|$SG4410| DCB "Revival", 0x0
|$SG4411| DCB "Celtic", 0x0
% 1
|$SG4412| DCB "Bluegrass", 0x0
% 2
|$SG4413| DCB "Avantgarde", 0x0
% 1
|$SG4414| DCB "Gothic Rock", 0x0
|$SG4415| DCB "Progressive Rock", 0x0
% 3
|$SG4416| DCB "Psychedelic Rock", 0x0
% 3
|$SG4417| DCB "Symphonic Rock", 0x0
% 1
|$SG4418| DCB "Slow Rock", 0x0
% 2
|$SG4419| DCB "Big Band", 0x0
% 3
|$SG4420| DCB "Chorus", 0x0
% 1
|$SG4421| DCB "Easy Listening", 0x0
% 1
|$SG4422| DCB "Acoustic", 0x0
% 3
|$SG4423| DCB "Humour", 0x0
% 1
|$SG4424| DCB "Speech", 0x0
% 1
|$SG4425| DCB "Chanson", 0x0
|$SG4426| DCB "Opera", 0x0
% 2
|$SG4427| DCB "Chamber Music", 0x0
% 2
|$SG4428| DCB "Sonata", 0x0
% 1
|$SG4429| DCB "Symphony", 0x0
% 3
|$SG4430| DCB "Booty Bass", 0x0
% 1
|$SG4431| DCB "Primus", 0x0
% 1
|$SG4432| DCB "Porn Groove", 0x0
|$SG4433| DCB "Satire", 0x0
% 1
|$SG4434| DCB "Slow Jam", 0x0
% 3
|$SG4435| DCB "Club", 0x0
% 3
|$SG4436| DCB "Tango", 0x0
% 2
|$SG4437| DCB "Samba", 0x0
% 2
|$SG4438| DCB "Folklore", 0x0
% 3
|$SG4439| DCB "Ballad", 0x0
% 1
|$SG4440| DCB "Power Ballad", 0x0
% 3
|$SG4441| DCB "Rhythmic Soul", 0x0
% 2
|$SG4442| DCB "Freestyle", 0x0
% 2
|$SG4443| DCB "Duet", 0x0
% 3
|$SG4444| DCB "Punk Rock", 0x0
% 2
|$SG4445| DCB "Drum Solo", 0x0
% 2
|$SG4446| DCB "A Cappella", 0x0
% 1
|$SG4447| DCB "Euro-House", 0x0
% 1
|$SG4448| DCB "Dance Hall", 0x0
% 1
|$SG4449| DCB "Goa", 0x0
|$SG4450| DCB "Drum & Bass", 0x0
|$SG4451| DCB "Club-House", 0x0
% 1
|$SG4452| DCB "Hardcore", 0x0
% 3
|$SG4453| DCB "Terror", 0x0
% 1
|$SG4454| DCB "Indie", 0x0
% 2
|$SG4455| DCB "BritPop", 0x0
|$SG4456| DCB "Negerpunk", 0x0
% 2
|$SG4457| DCB "Polsk Punk", 0x0
% 1
|$SG4458| DCB "Beat", 0x0
% 3
|$SG4459| DCB "Christian Gangsta Rap", 0x0
% 2
|$SG4460| DCB "Heavy Metal", 0x0
|$SG4461| DCB "Black Metal", 0x0
|$SG4462| DCB "Crossover", 0x0
% 2
|$SG4463| DCB "Contemporary Christian", 0x0
% 1
|$SG4464| DCB "Christian Rock", 0x0
% 1
|$SG4465| DCB "Merengue", 0x0
% 3
|$SG4466| DCB "Salsa", 0x0
% 2
|$SG4467| DCB "Thrash Metal", 0x0
% 3
|$SG4468| DCB "Anime", 0x0
% 2
|$SG4469| DCB "JPop", 0x0
% 3
|$SG4470| DCB "Synthpop", 0x0
% 7
|genre| DCD |$SG4323|
DCD |$SG4324|
DCD |$SG4325|
DCD |$SG4326|
DCD |$SG4327|
DCD |$SG4328|
DCD |$SG4329|
DCD |$SG4330|
DCD |$SG4331|
DCD |$SG4332|
DCD |$SG4333|
DCD |$SG4334|
DCD |$SG4335|
DCD |$SG4336|
DCD |$SG4337|
DCD |$SG4338|
DCD |$SG4339|
DCD |$SG4340|
DCD |$SG4341|
DCD |$SG4342|
DCD |$SG4343|
DCD |$SG4344|
DCD |$SG4345|
DCD |$SG4346|
DCD |$SG4347|
DCD |$SG4348|
DCD |$SG4349|
DCD |$SG4350|
DCD |$SG4351|
DCD |$SG4352|
DCD |$SG4353|
DCD |$SG4354|
DCD |$SG4355|
DCD |$SG4356|
DCD |$SG4357|
DCD |$SG4358|
DCD |$SG4359|
DCD |$SG4360|
DCD |$SG4361|
DCD |$SG4362|
DCD |$SG4363|
DCD |$SG4364|
DCD |$SG4365|
DCD |$SG4366|
DCD |$SG4367|
DCD |$SG4368|
DCD |$SG4369|
DCD |$SG4370|
DCD |$SG4371|
DCD |$SG4372|
DCD |$SG4373|
DCD |$SG4374|
DCD |$SG4375|
DCD |$SG4376|
DCD |$SG4377|
DCD |$SG4378|
DCD |$SG4379|
DCD |$SG4380|
DCD |$SG4381|
DCD |$SG4382|
DCD |$SG4383|
DCD |$SG4384|
DCD |$SG4385|
DCD |$SG4386|
DCD |$SG4387|
DCD |$SG4388|
DCD |$SG4389|
DCD |$SG4390|
DCD |$SG4391|
DCD |$SG4392|
DCD |$SG4393|
DCD |$SG4394|
DCD |$SG4395|
DCD |$SG4396|
DCD |$SG4397|
DCD |$SG4398|
DCD |$SG4399|
DCD |$SG4400|
DCD |$SG4401|
DCD |$SG4402|
DCD |$SG4403|
DCD |$SG4404|
DCD |$SG4405|
DCD |$SG4406|
DCD |$SG4407|
DCD |$SG4408|
DCD |$SG4409|
DCD |$SG4410|
DCD |$SG4411|
DCD |$SG4412|
DCD |$SG4413|
DCD |$SG4414|
DCD |$SG4415|
DCD |$SG4416|
DCD |$SG4417|
DCD |$SG4418|
DCD |$SG4419|
DCD |$SG4420|
DCD |$SG4421|
DCD |$SG4422|
DCD |$SG4423|
DCD |$SG4424|
DCD |$SG4425|
DCD |$SG4426|
DCD |$SG4427|
DCD |$SG4428|
DCD |$SG4429|
DCD |$SG4430|
DCD |$SG4431|
DCD |$SG4432|
DCD |$SG4433|
DCD |$SG4434|
DCD |$SG4435|
DCD |$SG4436|
DCD |$SG4437|
DCD |$SG4438|
DCD |$SG4439|
DCD |$SG4440|
DCD |$SG4441|
DCD |$SG4442|
DCD |$SG4443|
DCD |$SG4444|
DCD |$SG4445|
DCD |$SG4446|
DCD |$SG4447|
DCD |$SG4448|
DCD |$SG4449|
DCD |$SG4450|
DCD |$SG4451|
DCD |$SG4452|
DCD |$SG4453|
DCD |$SG4454|
DCD |$SG4455|
DCD |$SG4456|
DCD |$SG4457|
DCD |$SG4458|
DCD |$SG4459|
DCD |$SG4460|
DCD |$SG4461|
DCD |$SG4462|
DCD |$SG4463|
DCD |$SG4464|
DCD |$SG4465|
DCD |$SG4466|
DCD |$SG4467|
DCD |$SG4468|
DCD |$SG4469|
DCD |$SG4470|
|flt_set| DCD 0xa
DCD 0x9
DCD 0xa
|iso_buffers_end| DCD |isobuffers|+262144
|$SG4551| DCB "No errors found", 0x0
|$SG4553| DCB "Can't open file", 0x0
|$SG4555| DCB "Not supported file format", 0x0
% 2
|$SG4557| DCB "File is corrupted", 0x0
% 2
|$SG4559| DCB "Can't read from file", 0x0
% 3
|$SG4561| DCB "Insufficient memory available", 0x0
% 2
|$SG4563| DCB "Unknown error code", 0x0
% 1
|$SG4757| DCB "TIT2", 0x0
% 3
|$SG4759| DCB "TPE1", 0x0
% 3
|$SG4761| DCB "TALB", 0x0
% 3
|$SG4763| DCB "TRCK", 0x0
% 3
|$SG4765| DCB "TYER", 0x0
% 3
|$SG4767| DCB "TCON", 0x0
% 3
|$SG4769| DCB "COMM", 0x0
% 3
|$SG4787| DCB "TAG", 0x0
|$SG4789| DCB "%02d", 0x0
% 3
|$SG4791| DCB "%s", 0x0
% 1
|$SG4796| DCB "ID3", 0x0
AREA |.rdata|, DATA, READONLY
|crc32_table| DCD 0x0
DCD 0x77073096
DCD 0xee0e612c
DCD 0x990951ba
DCD 0x76dc419
DCD 0x706af48f
DCD 0xe963a535
DCD 0x9e6495a3
DCD 0xedb8832
DCD 0x79dcb8a4
DCD 0xe0d5e91e
DCD 0x97d2d988
DCD 0x9b64c2b
DCD 0x7eb17cbd
DCD 0xe7b82d07
DCD 0x90bf1d91
DCD 0x1db71064
DCD 0x6ab020f2
DCD 0xf3b97148
DCD 0x84be41de
DCD 0x1adad47d
DCD 0x6ddde4eb
DCD 0xf4d4b551
DCD 0x83d385c7
DCD 0x136c9856
DCD 0x646ba8c0
DCD 0xfd62f97a
DCD 0x8a65c9ec
DCD 0x14015c4f
DCD 0x63066cd9
DCD 0xfa0f3d63
DCD 0x8d080df5
DCD 0x3b6e20c8
DCD 0x4c69105e
DCD 0xd56041e4
DCD 0xa2677172
DCD 0x3c03e4d1
DCD 0x4b04d447
DCD 0xd20d85fd
DCD 0xa50ab56b
DCD 0x35b5a8fa
DCD 0x42b2986c
DCD 0xdbbbc9d6
DCD 0xacbcf940
DCD 0x32d86ce3
DCD 0x45df5c75
DCD 0xdcd60dcf
DCD 0xabd13d59
DCD 0x26d930ac
DCD 0x51de003a
DCD 0xc8d75180
DCD 0xbfd06116
DCD 0x21b4f4b5
DCD 0x56b3c423
DCD 0xcfba9599
DCD 0xb8bda50f
DCD 0x2802b89e
DCD 0x5f058808
DCD 0xc60cd9b2
DCD 0xb10be924
DCD 0x2f6f7c87
DCD 0x58684c11
DCD 0xc1611dab
DCD 0xb6662d3d
DCD 0x76dc4190
DCD 0x1db7106
DCD 0x98d220bc
DCD 0xefd5102a
DCD 0x71b18589
DCD 0x6b6b51f
DCD 0x9fbfe4a5
DCD 0xe8b8d433
DCD 0x7807c9a2
DCD 0xf00f934
DCD 0x9609a88e
DCD 0xe10e9818
DCD 0x7f6a0dbb
DCD 0x86d3d2d
DCD 0x91646c97
DCD 0xe6635c01
DCD 0x6b6b51f4
DCD 0x1c6c6162
DCD 0x856530d8
DCD 0xf262004e
DCD 0x6c0695ed
DCD 0x1b01a57b
DCD 0x8208f4c1
DCD 0xf50fc457
DCD 0x65b0d9c6
DCD 0x12b7e950
DCD 0x8bbeb8ea
DCD 0xfcb9887c
DCD 0x62dd1ddf
DCD 0x15da2d49
DCD 0x8cd37cf3
DCD 0xfbd44c65
DCD 0x4db26158
DCD 0x3ab551ce
DCD 0xa3bc0074
DCD 0xd4bb30e2
DCD 0x4adfa541
DCD 0x3dd895d7
DCD 0xa4d1c46d
DCD 0xd3d6f4fb
DCD 0x4369e96a
DCD 0x346ed9fc
DCD 0xad678846
DCD 0xda60b8d0
DCD 0x44042d73
DCD 0x33031de5
DCD 0xaa0a4c5f
DCD 0xdd0d7cc9
DCD 0x5005713c
DCD 0x270241aa
DCD 0xbe0b1010
DCD 0xc90c2086
DCD 0x5768b525
DCD 0x206f85b3
DCD 0xb966d409
DCD 0xce61e49f
DCD 0x5edef90e
DCD 0x29d9c998
DCD 0xb0d09822
DCD 0xc7d7a8b4
DCD 0x59b33d17
DCD 0x2eb40d81
DCD 0xb7bd5c3b
DCD 0xc0ba6cad
DCD 0xedb88320
DCD 0x9abfb3b6
DCD 0x3b6e20c
DCD 0x74b1d29a
DCD 0xead54739
DCD 0x9dd277af
DCD 0x4db2615
DCD 0x73dc1683
DCD 0xe3630b12
DCD 0x94643b84
DCD 0xd6d6a3e
DCD 0x7a6a5aa8
DCD 0xe40ecf0b
DCD 0x9309ff9d
DCD 0xa00ae27
DCD 0x7d079eb1
DCD 0xf00f9344
DCD 0x8708a3d2
DCD 0x1e01f268
DCD 0x6906c2fe
DCD 0xf762575d
DCD 0x806567cb
DCD 0x196c3671
DCD 0x6e6b06e7
DCD 0xfed41b76
DCD 0x89d32be0
DCD 0x10da7a5a
DCD 0x67dd4acc
DCD 0xf9b9df6f
DCD 0x8ebeeff9
DCD 0x17b7be43
DCD 0x60b08ed5
DCD 0xd6d6a3e8
DCD 0xa1d1937e
DCD 0x38d8c2c4
DCD 0x4fdff252
DCD 0xd1bb67f1
DCD 0xa6bc5767
DCD 0x3fb506dd
DCD 0x48b2364b
DCD 0xd80d2bda
DCD 0xaf0a1b4c
DCD 0x36034af6
DCD 0x41047a60
DCD 0xdf60efc3
DCD 0xa867df55
DCD 0x316e8eef
DCD 0x4669be79
DCD 0xcb61b38c
DCD 0xbc66831a
DCD 0x256fd2a0
DCD 0x5268e236
DCD 0xcc0c7795
DCD 0xbb0b4703
DCD 0x220216b9
DCD 0x5505262f
DCD 0xc5ba3bbe
DCD 0xb2bd0b28
DCD 0x2bb45a92
DCD 0x5cb36a04
DCD 0xc2d7ffa7
DCD 0xb5d0cf31
DCD 0x2cd99e8b
DCD 0x5bdeae1d
DCD 0x9b64c2b0
DCD 0xec63f226
DCD 0x756aa39c
DCD 0x26d930a
DCD 0x9c0906a9
DCD 0xeb0e363f
DCD 0x72076785
DCD 0x5005713
DCD 0x95bf4a82
DCD 0xe2b87a14
DCD 0x7bb12bae
DCD 0xcb61b38
DCD 0x92d28e9b
DCD 0xe5d5be0d
DCD 0x7cdcefb7
DCD 0xbdbdf21
DCD 0x86d3d2d4
DCD 0xf1d4e242
DCD 0x68ddb3f8
DCD 0x1fda836e
DCD 0x81be16cd
DCD 0xf6b9265b
DCD 0x6fb077e1
DCD 0x18b74777
DCD 0x88085ae6
DCD 0xff0f6a70
DCD 0x66063bca
DCD 0x11010b5c
DCD 0x8f659eff
DCD 0xf862ae69
DCD 0x616bffd3
DCD 0x166ccf45
DCD 0xa00ae278
DCD 0xd70dd2ee
DCD 0x4e048354
DCD 0x3903b3c2
DCD 0xa7672661
DCD 0xd06016f7
DCD 0x4969474d
DCD 0x3e6e77db
DCD 0xaed16a4a
DCD 0xd9d65adc
DCD 0x40df0b66
DCD 0x37d83bf0
DCD 0xa9bcae53
DCD 0xdebb9ec5
DCD 0x47b2cf7f
DCD 0x30b5ffe9
DCD 0xbdbdf21c
DCD 0xcabac28a
DCD 0x53b39330
DCD 0x24b4a3a6
DCD 0xbad03605
DCD 0xcdd70693
DCD 0x54de5729
DCD 0x23d967bf
DCD 0xb3667a2e
DCD 0xc4614ab8
DCD 0x5d681b02
DCD 0x2a6f2b94
DCD 0xb40bbe37
DCD 0xc30c8ea1
DCD 0x5a05df1b
DCD 0x2d02ef8d
|bit_mask| DCD 0x0
DCD 0x1
DCD 0x3
DCD 0x7
DCD 0xf
DCD 0x1f
DCD 0x3f
DCD 0x7f
DCD 0xff
DCD 0x1ff
DCD 0x3ff
DCD 0x7ff
DCD 0xfff
DCD 0x1fff
DCD 0x3fff
DCD 0x7fff
DCD 0xffff
DCD 0x1ffff
DCD 0x3ffff
DCD 0x7ffff
DCD 0xfffff
DCD 0x1fffff
DCD 0x3fffff
DCD 0x7fffff
DCD 0xffffff
DCD 0x1ffffff
DCD 0x3ffffff
DCD 0x7ffffff
DCD 0xfffffff
DCD 0x1fffffff
DCD 0x3fffffff
DCD 0x7fffffff
DCD 0xffffffff
% 4
|bit_shift| DCD 0x1
DCD 0x2
DCD 0x4
DCD 0x8
DCD 0x10
DCD 0x20
DCD 0x40
DCD 0x80
DCD 0x100
DCD 0x200
DCD 0x400
DCD 0x800
DCD 0x1000
DCD 0x2000
DCD 0x4000
DCD 0x8000
DCD 0x10000
DCD 0x20000
DCD 0x40000
DCD 0x80000
DCD 0x100000
DCD 0x200000
DCD 0x400000
DCD 0x800000
DCD 0x1000000
DCD 0x2000000
DCD 0x4000000
DCD 0x8000000
DCD 0x10000000
DCD 0x20000000
DCD 0x40000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
DCD 0x80000000
EXPORT |filter_init|
IMPORT |memset|
AREA |.pdata|, PDATA
|$T4848| DCD |$LN5@filter_ini|
DCD 0x40002303
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|filter_init| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\tta\ttalib\filter.h
; Line 111
|$LN5@filter_ini|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
|$M4845|
; Line 112
mov r2, #0x7C
mov r1, #0
ldr r0, [sp, #8]
bl memset
; Line 113
ldr r3, [sp, #0xC]
ldr r1, [sp, #8]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 114
ldr r3, [sp, #0xC]
sub r2, r3, #1
mov r3, #1
mov r2, r3, lsl r2
ldr r3, [sp, #8]
add r1, r3, #4
mov r3, r2
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 115
ldmia sp, {sp, pc}
|$M4846|
ENDP ; |filter_init|
EXPORT |get_error_str|
AREA |.pdata|, PDATA
|$T4854| DCD |$LN14@get_error_|
DCD 0x40003704
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_error_str| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\tta\ttalib\ttadec.c
; Line 162
|$LN14@get_error_|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M4851|
; Line 163
ldr r3, [sp, #0x10]
str r3, [sp, #4]
ldr r3, [sp, #4]
cmp r3, #0
beq |$LN7@get_error_|
ldr r3, [sp, #4]
cmp r3, #1
beq |$LN6@get_error_|
ldr r3, [sp, #4]
cmp r3, #2
beq |$LN5@get_error_|
ldr r3, [sp, #4]
cmp r3, #4
beq |$LN4@get_error_|
ldr r3, [sp, #4]
cmp r3, #5
beq |$LN3@get_error_|
ldr r3, [sp, #4]
cmp r3, #6
beq |$LN2@get_error_|
b |$LN1@get_error_|
|$LN7@get_error_|
; Line 164
ldr r3, [pc, #0x6C]
str r3, [sp]
b |$LN10@get_error_|
|$LN6@get_error_|
; Line 165
ldr r3, [pc, #0x5C]
str r3, [sp]
b |$LN10@get_error_|
|$LN5@get_error_|
; Line 166
ldr r3, [pc, #0x4C]
str r3, [sp]
b |$LN10@get_error_|
|$LN4@get_error_|
; Line 167
ldr r3, [pc, #0x3C]
str r3, [sp]
b |$LN10@get_error_|
|$LN3@get_error_|
; Line 168
ldr r3, [pc, #0x2C]
str r3, [sp]
b |$LN10@get_error_|
|$LN2@get_error_|
; Line 169
ldr r3, [pc, #0x1C]
str r3, [sp]
b |$LN10@get_error_|
|$LN1@get_error_|
; Line 170
ldr r3, [pc, #0xC]
str r3, [sp]
|$LN10@get_error_|
; Line 172
ldr r0, [sp]
add sp, sp, #8
ldmia sp, {sp, pc}
|$LN15@get_error_|
DCD |$SG4563|
DCD |$SG4561|
DCD |$SG4559|
DCD |$SG4557|
DCD |$SG4555|
DCD |$SG4553|
DCD |$SG4551|
|$M4852|
ENDP ; |get_error_str|
EXPORT |open_tta_file|
IMPORT |__imp___rt_udiv|
IMPORT |__imp___rt_sdiv|
IMPORT |__imp___utod|
IMPORT |__imp___itod|
IMPORT |__imp___muld|
IMPORT |__imp___divd|
IMPORT |__imp___dtoi|
AREA |.pdata|, PDATA
|$T4884| DCD |$LN13@open_tta_f|
DCD 0x4001ab04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|open_tta_file| PROC
; Line 174
|$LN13@open_tta_f|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r4, r5, r12, lr}
sub sp, sp, #0x3C
|$M4881|
; Line 184
mov r2, #2
mov r1, #0
ldr r3, [sp, #0x4C]
ldr r0, [r3]
ldr r3, [sp, #0x4C]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 185
ldr r3, [sp, #0x4C]
ldr r3, [r3]
add r1, r3, #0x64
ldr r3, [sp, #0x4C]
add r2, r3, #4
ldr r3, [r1]
str r3, [r2]
; Line 186
mov r2, #0
mov r1, #0
ldr r3, [sp, #0x4C]
ldr r0, [r3]
ldr r3, [sp, #0x4C]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 189
ldr r3, [sp, #0x50]
cmp r3, #0
bne |$LN8@open_tta_f|
; Line 191
ldr r0, [sp, #0x4C]
bl read_id3_tags
str r0, [sp, #0x28]
ldr r3, [sp, #0x28]
str r3, [sp, #0x50]
ldr r3, [sp, #0x50]
cmp r3, #0
bcs |$LN7@open_tta_f|
; Line 192
mvn r3, #0
str r3, [sp, #0x24]
b |$LN9@open_tta_f|
|$LN7@open_tta_f|
; Line 193
b |$LN6@open_tta_f|
|$LN8@open_tta_f|
; Line 194
mov r2, #0
ldr r1, [sp, #0x50]
ldr r3, [sp, #0x4C]
ldr r0, [r3]
ldr r3, [sp, #0x4C]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
|$LN6@open_tta_f|
; Line 197
mov r2, #0x16
add r1, sp, #4
ldr r3, [sp, #0x4C]
ldr r0, [r3]
ldr r3, [sp, #0x4C]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x2C]
ldr r3, [sp, #0x2C]
cmp r3, #0
bne |$LN5@open_tta_f|
; Line 198
ldr r3, [sp, #0x4C]
add r2, r3, #0x20
mov r3, #5
str r3, [r2]
; Line 199
mvn r3, #0
str r3, [sp, #0x24]
b |$LN9@open_tta_f|
|$LN5@open_tta_f|
; Line 203
ldr r2, [sp, #4]
ldr r3, [pc, #0x574]
cmp r2, r3
beq |$LN4@open_tta_f|
; Line 204
ldr r3, [sp, #0x4C]
add r2, r3, #0x20
mov r3, #2
str r3, [r2]
; Line 205
mvn r3, #0
str r3, [sp, #0x24]
b |$LN9@open_tta_f|
|$LN4@open_tta_f|
; Line 208
ldrh r3, [sp, #0x18]
mov r2, r3, lsl #16
ldrh r3, [sp, #0x16]
orr r3, r3, r2
strh r3, [sp, #0x16]
mov r3, r3, lsr #16
strh r3, [sp, #0x18]
; Line 210
mov r1, #0x12
add r0, sp, #4
bl crc32
str r0, [sp, #0x30]
ldr r3, [sp, #0x30]
str r3, [sp, #0x20]
; Line 211
ldr r1, [sp, #0x20]
ldrh r3, [sp, #0x18]
mov r2, r3, lsl #16
ldrh r3, [sp, #0x16]
orr r3, r3, r2
cmp r1, r3
beq |$LN3@open_tta_f|
; Line 212
ldr r3, [sp, #0x4C]
add r2, r3, #0x20
mov r3, #4
str r3, [r2]
; Line 213
mvn r3, #0
str r3, [sp, #0x24]
b |$LN9@open_tta_f|
|$LN3@open_tta_f|
; Line 216
ldrh r3, [sp, #8]
strh r3, [sp, #8]
; Line 217
ldrh r3, [sp, #0xA]
strh r3, [sp, #0xA]
; Line 218
ldrh r3, [sp, #0xC]
strh r3, [sp, #0xC]
; Line 219
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r3, r3, r2
strh r3, [sp, #0xE]
mov r3, r3, lsr #16
strh r3, [sp, #0x10]
; Line 220
ldrh r3, [sp, #0x14]
mov r2, r3, lsl #16
ldrh r3, [sp, #0x12]
orr r3, r3, r2
strh r3, [sp, #0x12]
mov r3, r3, lsr #16
strh r3, [sp, #0x14]
; Line 234
ldrh r3, [sp, #8]
cmp r3, #1
bne |$LN1@open_tta_f|
ldrh r3, [sp, #0xA]
cmp r3, #8
bgt |$LN1@open_tta_f|
ldrh r3, [sp, #0xC]
cmp r3, #0x18
bgt |$LN1@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r3, r3, r2
cmp r3, #0xFA, 26
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r2, r3, r2
mov r3, #0x56, 24
orr r3, r3, #0x22
cmp r2, r3
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r2, r3, r2
mov r3, #0x5D, 24
orr r3, r3, #0xC0
cmp r2, r3
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r3, r3, r2
cmp r3, #0x7D, 24
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r2, r3, r2
mov r3, #0x2B, 22
orr r3, r3, #0x44
cmp r2, r3
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r2, r3, r2
mov r3, #0xBB, 24
orr r3, r3, #0x80
cmp r2, r3
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r3, r3, r2
cmp r3, #0xFA, 24
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r2, r3, r2
mov r3, #0x56, 22
orr r3, r3, #0x88
cmp r2, r3
beq |$LN2@open_tta_f|
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r2, r3, r2
mov r3, #0x5D, 22
orr r3, r3, #3, 24
cmp r2, r3
beq |$LN2@open_tta_f|
|$LN1@open_tta_f|
; Line 235
ldr r3, [sp, #0x4C]
add r2, r3, #0x20
mov r3, #2
str r3, [r2]
; Line 236
mvn r3, #0
str r3, [sp, #0x24]
b |$LN9@open_tta_f|
|$LN2@open_tta_f|
; Line 240
ldr r3, [sp, #0x4C]
add r2, r3, #8
ldrh r3, [sp, #0xA]
strh r3, [r2]
; Line 241
ldr r3, [sp, #0x4C]
add r2, r3, #0xA
ldrh r3, [sp, #0xC]
strh r3, [r2]
; Line 242
ldrh r3, [sp, #0xC]
add r1, r3, #7
mov r0, #8
ldr r3, [pc, #0x318]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #0x4C]
add r2, r3, #0xC
mov r3, r0, lsl #16
mov r3, r3, lsr #16
strh r3, [r2]
; Line 243
ldr r3, [sp, #0x4C]
add r2, r3, #0xE
ldrh r3, [sp, #8]
strh r3, [r2]
; Line 244
ldr r3, [sp, #0x4C]
add r1, r3, #0x10
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r3, r3, r2
str r3, [r1]
; Line 245
ldr r3, [sp, #0x4C]
add r1, r3, #0x14
ldrh r3, [sp, #0x14]
mov r2, r3, lsl #16
ldrh r3, [sp, #0x12]
orr r3, r3, r2
str r3, [r1]
; Line 246
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r0, r3, r2
ldr r3, [pc, #0x28C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r3, r1
mov r2, r0
ldr r0, [pc, #0x280]
ldr r1, [pc, #0x278]
ldr lr, [pc, #0x264]
ldr r4, [lr]
mov lr, pc
mov pc, r4
ldr r3, [pc, #0x248]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #0x4C]
add r3, r3, #0x18
str r0, [r3]
; Line 247
ldrh r3, [sp, #0x14]
mov r2, r3, lsl #16
ldrh r3, [sp, #0x12]
orr r1, r3, r2
ldrh r3, [sp, #0x10]
mov r2, r3, lsl #16
ldrh r3, [sp, #0xE]
orr r0, r3, r2
ldr r3, [pc, #0x224]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #0x4C]
add r3, r3, #0x1C
str r0, [r3]
; Line 248
ldr r3, [sp, #0x4C]
add r2, r3, #0x24
ldr r3, [sp, #0x50]
str r3, [r2]
; Line 250
ldr r3, [sp, #0x4C]
add r2, r3, #4
ldr r3, [sp, #0x4C]
add r3, r3, #0x24
ldr r2, [r2]
ldr r3, [r3]
sub r3, r2, r3
str r3, [sp, #0x1C]
; Line 251
ldr r3, [sp, #0x4C]
add r1, r3, #0x14
ldr r3, [sp, #0x4C]
add r3, r3, #0xC
ldrh r2, [r3]
ldr r3, [r1]
mul r2, r3, r2
ldr r3, [sp, #0x4C]
add r3, r3, #8
ldrh r3, [r3]
mul r3, r2, r3
str r3, [sp]
; Line 253
ldr r0, [sp, #0x1C]
ldr r3, [pc, #0x1A0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r5, r1
mov r4, r0
ldr r0, [sp]
ldr r3, [pc, #0x184]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r3, r1
mov r2, r0
mov r0, r4
mov r1, r5
ldr lr, [pc, #0x154]
ldr r4, [lr]
mov lr, pc
mov pc, r4
ldr r3, [sp, #0x4C]
add r3, r3, #0x30
str r3, [sp, #0x34]
ldr r3, [sp, #0x34]
str r0, [r3]
ldr r3, [sp, #0x34]
str r1, [r3, #4]
; Line 255
ldr r3, [sp, #0x4C]
add r4, r3, #0x30
ldr r3, [sp, #0x4C]
add r3, r3, #0x10
ldr r0, [r3]
ldr r3, [pc, #0x124]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov lr, r1
mov r2, r0
str r4, [sp, #0x38]
ldr r3, [sp, #0x38]
ldr r0, [r3]
ldr r3, [sp, #0x38]
ldr r1, [r3, #4]
mov r3, lr
ldr lr, [pc, #0xEC]
ldr r4, [lr]
mov lr, pc
mov pc, r4
mov r5, r1
mov r4, r0
ldr r3, [sp, #0x4C]
add r3, r3, #8
ldrh r3, [r3]
mov r0, r3
ldr r3, [pc, #0xC8]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r3, r1
mov r2, r0
mov r0, r4
mov r1, r5
ldr lr, [pc, #0xA4]
ldr r4, [lr]
mov lr, pc
mov pc, r4
mov r5, r1
mov r4, r0
ldr r3, [sp, #0x4C]
add r3, r3, #0xA
ldrh r3, [r3]
mov r0, r3
ldr r3, [pc, #0x80]
ldr r3, [r3]
mov lr, pc
mov pc, r3
mov r3, r1
mov r2, r0
mov r0, r4
mov r1, r5
ldr lr, [pc, #0x5C]
ldr r4, [lr]
mov lr, pc
mov pc, r4
mov r2, #0
ldr r3, [pc, #0x44]
ldr lr, [pc, #0x3C]
ldr r4, [lr]
mov lr, pc
mov pc, r4
ldr r3, [pc, #0x28]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #0x4C]
add r3, r3, #0x28
str r0, [r3]
; Line 257
mov r3, #0
str r3, [sp, #0x24]
|$LN9@open_tta_f|
; Line 258
ldr r0, [sp, #0x24]
add sp, sp, #0x3C
ldmia sp, {r4, r5, sp, pc}
|$LN14@open_tta_f|
DCD |__imp___dtoi|
DCD |__imp___divd|
DCD 0x408f4000
DCD |__imp___muld|
DCD |__imp___itod|
DCD |__imp___utod|
DCD |__imp___rt_udiv|
DCD 0x3ff0b7e6
DCD 0xec259dc8
DCD |__imp___rt_sdiv|
DCD 0x31415454
|$M4882|
ENDP ; |open_tta_file|
AREA |.pdata|, PDATA
|$T4891| DCD |$LN8@crc32|
DCD 0x40002904
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|crc32| PROC
; Line 80
|$LN8@crc32|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M4888|
; Line 82
mvn r3, #0
str r3, [sp]
; Line 84
mov r3, #0
str r3, [sp, #4]
b |$LN3@crc32|
|$LN2@crc32|
ldr r3, [sp, #4]
add r3, r3, #1
str r3, [sp, #4]
|$LN3@crc32|
ldr r2, [sp, #4]
ldr r3, [sp, #0x18]
cmp r2, r3
bcs |$LN1@crc32|
ldr r3, [sp]
mov r0, r3, lsr #8
ldr r2, [sp, #0x14]
ldr r3, [sp, #4]
add r3, r2, r3
ldrb r2, [r3]
ldr r3, [sp]
eor r3, r3, r2
and r1, r3, #0xFF
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x2C]
add r3, r3, r2
ldr r3, [r3]
eor r3, r0, r3
str r3, [sp]
b |$LN2@crc32|
|$LN1@crc32|
; Line 86
ldr r2, [sp]
mvn r3, #0
eor r3, r2, r3
str r3, [sp, #8]
; Line 87
ldr r0, [sp, #8]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$LN9@crc32|
DCD |crc32_table|
|$M4889|
ENDP ; |crc32|
EXPORT |set_position|
AREA |.bss|, NOINIT
|framelen| % 0x4
|data_cur| % 0x4
|seek_table| % 0x4
|data_pos| % 0x4
|st_state| % 0x4
|fframes| % 0x4
AREA |.pdata|, PDATA
|$T4898| DCD |$LN8@set_positi|
DCD 0x40005304
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|set_position| PROC
; Line 289
|$LN8@set_positi|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0xC
|$M4895|
; Line 292
ldr r2, [sp, #0x14]
ldr r3, [pc, #0x12C]
ldr r3, [r3]
cmp r2, r3
bcc |$LN3@set_positi|
mov r3, #0
str r3, [sp, #4]
b |$LN4@set_positi|
|$LN3@set_positi|
; Line 293
ldr r3, [pc, #0x10C]
ldr r3, [r3]
cmp r3, #0
bne |$LN2@set_positi|
; Line 294
ldr r3, [pc, #0xF0]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #4
str r3, [r2]
; Line 295
mvn r3, #0
str r3, [sp, #4]
b |$LN4@set_positi|
|$LN2@set_positi|
; Line 298
ldr r2, [sp, #0x14]
ldr r3, [pc, #0xD4]
str r2, [r3]
ldr r3, [pc, #0xCC]
ldr r1, [r3]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xB8]
ldr r3, [r3]
add r1, r3, r2
ldr r3, [pc, #0xA8]
ldr r3, [r3]
add r3, r3, #0x24
ldr r2, [r3]
ldr r3, [r1]
add r3, r2, r3
str r3, [sp]
; Line 299
mov r2, #0
ldr r1, [sp]
ldr r3, [pc, #0x84]
ldr r3, [r3]
ldr r0, [r3]
ldr r3, [pc, #0x78]
ldr r3, [r3]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #8]
ldr r3, [sp, #8]
cmp r3, #0
bge |$LN1@set_positi|
; Line 300
ldr r3, [pc, #0x50]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #5
str r3, [r2]
; Line 301
mvn r3, #0
str r3, [sp, #4]
b |$LN4@set_positi|
|$LN1@set_positi|
; Line 304
ldr r2, [pc, #0x2C]
mov r3, #0
str r3, [r2]
; Line 305
ldr r2, [pc, #0x1C]
mov r3, #0
str r3, [r2]
; Line 308
bl init_buffer_read
; Line 310
mov r3, #0
str r3, [sp, #4]
|$LN4@set_positi|
; Line 311
ldr r0, [sp, #4]
add sp, sp, #0xC
ldmia sp, {sp, pc}
|$LN9@set_positi|
DCD |framelen|
DCD |data_cur|
DCD |ttainfo|
DCD |seek_table|
DCD |data_pos|
DCD |st_state|
DCD |fframes|
|$M4896|
ENDP ; |set_position|
AREA |.bss|, NOINIT
|bitpos| % 0x4
|bit_count| % 0x4
|bit_cache| % 0x4
|frame_crc32| % 0x4
AREA |.pdata|, PDATA
|$T4904| DCD |$LN5@init_buffe|
DCD 0x40001400
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|init_buffer_read| PROC
; Line 128
|$LN5@init_buffe|
|$M4901|
; Line 129
ldr r2, [pc, #0x44]
mvn r3, #0
str r3, [r2]
; Line 130
ldr r2, [pc, #0x34]
mov r3, #0
str r3, [r2]
ldr r3, [pc, #0x28]
ldr r2, [r3]
ldr r3, [pc, #0x1C]
str r2, [r3]
; Line 131
ldr r3, [pc, #0x10]
ldr r2, [r3]
ldr r3, [pc, #4]
str r2, [r3]
; Line 132
mov pc, lr
|$LN6@init_buffe|
DCD |bitpos|
DCD |iso_buffers_end|
DCD |bit_count|
DCD |bit_cache|
DCD |frame_crc32|
|$M4902|
ENDP ; |init_buffer_read|
EXPORT |player_init|
IMPORT |__imp_malloc_win32|
AREA |.bss|, NOINIT
|maxvalue| % 0x4
|pcm_buffer_size| % 0x4
|lastlen| % 0x4
AREA |.pdata|, PDATA
|$T4917| DCD |$LN11@player_ini|
DCD 0x4000b604
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|player_init| PROC
; Line 313
|$LN11@player_ini|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0x24
|$M4914|
; Line 318
ldr r2, [sp, #0x2C]
ldr r3, [pc, #0x290]
str r2, [r3]
; Line 320
ldr r2, [pc, #0x2B0]
mov r3, #0
str r3, [r2]
; Line 321
ldr r2, [pc, #0x2A0]
mov r3, #0
str r3, [r2]
; Line 322
ldr r2, [pc, #0x290]
mov r3, #0
str r3, [r2]
; Line 324
ldr r3, [pc, #0x264]
ldr r3, [r3]
add r2, r3, #0x14
ldr r3, [pc, #0x258]
ldr r3, [r3]
add r3, r3, #0x18
ldr r1, [r2]
ldr r0, [r3]
ldr r3, [pc, #0x25C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [pc, #0x250]
str r1, [r3]
; Line 325
ldr r3, [pc, #0x248]
ldr r3, [r3]
cmp r3, #0
beq |$LN5@player_ini|
mov r3, #1
str r3, [sp, #0x10]
b |$LN6@player_ini|
|$LN5@player_ini|
mov r3, #0
str r3, [sp, #0x10]
|$LN6@player_ini|
ldr r3, [pc, #0x208]
ldr r3, [r3]
add r2, r3, #0x14
ldr r3, [pc, #0x1FC]
ldr r3, [r3]
add r3, r3, #0x18
ldr r1, [r2]
ldr r0, [r3]
ldr r3, [pc, #0x200]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #0x10]
add r2, r0, r3
ldr r3, [pc, #0x1DC]
str r2, [r3]
; Line 326
ldr r3, [pc, #0x1D4]
ldr r3, [r3]
add r2, r3, #1
mov r3, #4
mul r3, r2, r3
str r3, [sp, #4]
; Line 328
ldr r0, [sp, #4]
ldr r3, [pc, #0x1C0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x14]
ldr r2, [sp, #0x14]
ldr r3, [pc, #0x19C]
str r2, [r3]
; Line 329
ldr r3, [pc, #0x194]
ldr r3, [r3]
cmp r3, #0
bne |$LN2@player_ini|
; Line 330
ldr r3, [pc, #0x17C]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #6
str r3, [r2]
; Line 331
mvn r3, #0
str r3, [sp, #0xC]
b |$LN3@player_ini|
|$LN2@player_ini|
; Line 335
ldr r2, [sp, #4]
ldr r3, [pc, #0x160]
ldr r1, [r3]
ldr r3, [sp, #0x2C]
ldr r0, [r3]
ldr r3, [sp, #0x2C]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x18]
ldr r3, [sp, #0x18]
cmp r3, #0
bne |$LN1@player_ini|
; Line 336
ldr r3, [pc, #0x120]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #5
str r3, [r2]
; Line 337
mvn r3, #0
str r3, [sp, #0xC]
b |$LN3@player_ini|
|$LN1@player_ini|
; Line 340
ldr r3, [sp, #4]
sub r1, r3, #4
ldr r3, [pc, #0x100]
ldr r0, [r3]
bl crc32
str r0, [sp, #0x1C]
ldr r3, [sp, #0x1C]
str r3, [sp, #8]
; Line 341
ldr r3, [pc, #0xEC]
ldr r1, [r3]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xD8]
ldr r3, [r3]
add r3, r3, r2
ldr r2, [sp, #8]
ldr r3, [r3]
cmp r2, r3
bne |$LN7@player_ini|
mov r3, #1
str r3, [sp, #0x20]
b |$LN8@player_ini|
|$LN7@player_ini|
mov r3, #0
str r3, [sp, #0x20]
|$LN8@player_ini|
ldr r2, [sp, #0x20]
ldr r3, [pc, #0xAC]
str r2, [r3]
; Line 342
ldr r3, [sp, #4]
add r3, r3, #0x16
str r3, [sp]
; Line 345
ldr r2, [sp]
ldr r3, [pc, #0x90]
ldr r1, [r3]
ldr r3, [pc, #0x84]
ldr r0, [r3]
bl seek_table_init
; Line 348
bl init_buffer_read
; Line 350
ldr r3, [pc, #0x6C]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
mov r2, r3
mov r3, #0x12, 24
mul r1, r2, r3
ldr r3, [pc, #0x50]
ldr r3, [r3]
add r3, r3, #8
ldrh r3, [r3]
mul r2, r1, r3
ldr r3, [pc, #0x40]
str r2, [r3]
; Line 351
ldr r3, [pc, #0x34]
ldr r3, [r3]
add r3, r3, #0xA
ldrh r2, [r3]
mov r3, #1
mov r3, r3, lsl r2
sub r2, r3, #1
ldr r3, [pc, #0x14]
str r2, [r3]
; Line 353
mov r3, #0
str r3, [sp, #0xC]
|$LN3@player_ini|
; Line 354
ldr r0, [sp, #0xC]
add sp, sp, #0x24
ldmia sp, {sp, pc}
|$LN12@player_ini|
DCD |maxvalue|
DCD |ttainfo|
DCD |pcm_buffer_size|
DCD |seek_table|
DCD |fframes|
DCD |st_state|
DCD |__imp_malloc_win32|
DCD |__imp___rt_udiv|
DCD |lastlen|
DCD |data_cur|
DCD |data_pos|
DCD |framelen|
|$M4915|
ENDP ; |player_init|
AREA |.pdata|, PDATA
|$T4923| DCD |$LN8@seek_table|
DCD 0x40001f04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|seek_table_init| PROC
; Line 279
|$LN8@seek_table|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M4920|
; Line 282
ldr r3, [sp, #0x10]
str r3, [sp]
b |$LN3@seek_table|
|$LN2@seek_table|
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
|$LN3@seek_table|
ldr r1, [sp, #0x14]
mov r3, #4
mul r2, r1, r3
ldr r3, [sp, #0x10]
add r2, r3, r2
ldr r3, [sp]
cmp r3, r2
bcs |$LN1@seek_table|
; Line 283
ldr r3, [sp]
ldr r3, [r3]
str r3, [sp, #4]
; Line 284
ldr r2, [sp, #0x18]
ldr r3, [sp]
str r2, [r3]
; Line 285
ldr r2, [sp, #0x18]
ldr r3, [sp, #4]
add r3, r2, r3
str r3, [sp, #0x18]
; Line 286
b |$LN2@seek_table|
|$LN1@seek_table|
; Line 287
add sp, sp, #8
ldmia sp, {sp, pc}
|$M4921|
ENDP ; |seek_table_init|
EXPORT |close_tta_file|
AREA |.pdata|, PDATA
|$T4928| DCD |$LN5@close_tta_|
DCD 0x40000403
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|close_tta_file| PROC
; Line 356
|$LN5@close_tta_|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
|$M4925|
; Line 358
ldmia sp, {sp, pc}
|$M4926|
ENDP ; |close_tta_file|
EXPORT |player_stop|
IMPORT |__imp_free_win32|
AREA |.pdata|, PDATA
|$T4933| DCD |$LN6@player_sto|
DCD 0x40001101
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|player_stop| PROC
; Line 360
|$LN6@player_sto|
str lr, [sp, #-4]!
|$M4930|
; Line 361
ldr r3, [pc, #0x30]
ldr r3, [r3]
cmp r3, #0
beq |$LN1@player_sto|
; Line 362
ldr r3, [pc, #0x20]
ldr r0, [r3]
ldr r3, [pc, #0x1C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 363
ldr r2, [pc, #8]
mov r3, #0
str r3, [r2]
|$LN1@player_sto|
; Line 365
ldr pc, [sp], #4
|$LN7@player_sto|
DCD |seek_table|
DCD |__imp_free_win32|
|$M4931|
ENDP ; |player_stop|
EXPORT |hybrid_filter|
EXPORT |get_samples|
IMPORT |abs|
AREA |.bss|, NOINIT
|cache| % 0x20
|tta| % 0x480
AREA |.pdata|, PDATA
|$T4944| DCD |$LN61@get_sample|
DCD 0x40043d04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_samples| PROC
; Line 367
|$LN61@get_sample|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0x64
|$M4941|
; Line 369
ldr r3, [sp, #0x6C]
str r3, [sp]
; Line 370
ldr r3, [pc, #0xE4]
str r3, [sp, #0xC]
; Line 371
ldr r3, [pc, #0xD8]
str r3, [sp, #0x10]
; Line 374
mov r3, #0
str r3, [sp, #4]
|$LN54@get_sample|
ldr r2, [sp, #0x6C]
ldr r3, [pc, #0xC0]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp]
cmp r3, r2
bcs |$LN53@get_sample|
; Line 375
ldr r3, [sp, #0xC]
str r3, [sp, #0x28]
; Line 376
ldr r3, [sp, #0xC]
add r3, r3, #0x7C
str r3, [sp, #0x2C]
; Line 377
ldr r3, [sp, #0xC]
add r3, r3, #0x8C
str r3, [sp, #0x24]
; Line 379
ldr r3, [pc, #0x84]
ldr r2, [r3]
ldr r3, [pc, #0x74]
ldr r3, [r3]
cmp r2, r3
bne |$LN52@get_sample|
; Line 380
ldr r3, [pc, #0x60]
ldr r2, [r3]
ldr r3, [pc, #0x60]
ldr r3, [r3]
cmp r2, r3
bne |$LN51@get_sample|
b |$LN53@get_sample|
|$LN51@get_sample|
; Line 381
ldr r3, [pc, #0x48]
ldr r3, [r3]
cmp r3, #0
beq |$LN50@get_sample|
bl done_buffer_read
str r0, [sp, #0x3C]
ldr r3, [sp, #0x3C]
cmp r3, #0
beq |$LN50@get_sample|
; Line 382
ldr r3, [pc, #0x20]
ldr r0, [r3]
bl set_position
str r0, [sp, #0x40]
ldr r3, [sp, #0x40]
cmp r3, #0
beq |$LN49@get_sample|
mvn r3, #0
str r3, [sp, #0x38]
b |$LN55@get_sample|
|$LN63@get_sample|
DCD |data_pos|
DCD |framelen|
DCD |fframes|
DCD |data_cur|
DCD |pcm_buffer_size|
DCD |cache|
DCD |tta|
|$LN49@get_sample|
; Line 383
ldr r3, [sp, #4]
cmp r3, #0
beq |$LN48@get_sample|
b |$LN53@get_sample|
|$LN48@get_sample|
|$LN50@get_sample|
; Line 386
ldr r3, [pc, #0xFD0]
ldr r3, [r3]
sub r2, r3, #1
ldr r3, [pc, #0xFB8]
ldr r3, [r3]
cmp r3, r2
bne |$LN47@get_sample|
ldr r3, [pc, #0xFB0]
ldr r3, [r3]
cmp r3, #0
beq |$LN47@get_sample|
; Line 387
ldr r3, [pc, #0xFA0]
ldr r2, [r3]
ldr r3, [pc, #0xF94]
str r2, [r3]
b |$LN46@get_sample|
|$LN47@get_sample|
; Line 388
ldr r3, [pc, #0xF48]
ldr r3, [r3]
add r3, r3, #0x18
ldr r2, [r3]
ldr r3, [pc, #0xF78]
str r2, [r3]
|$LN46@get_sample|
; Line 390
ldr r3, [pc, #0xF30]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
mov r2, r3
ldr r3, [pc, #0xF1C]
ldr r3, [r3]
add r3, r3, #8
ldrh r3, [r3]
mov r1, r3
ldr r0, [pc, #0xEFC]
bl decoder_init
; Line 391
ldr r3, [pc, #0xF3C]
ldr r3, [r3]
add r2, r3, #1
ldr r3, [pc, #0xF30]
str r2, [r3]
ldr r2, [pc, #0xEE4]
mov r3, #0
str r3, [r2]
|$LN52@get_sample|
; Line 395
mov r3, #0
str r3, [sp, #0x14]
|$LN45@get_sample|
ldr r3, [pc, #0xEFC]
ldr r1, [r3]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xEE8]
add r1, r3, r2
ldr r3, [pc, #0xEDC]
ldr r2, [r3]
ldr r3, [r1]
teq r2, r3
bne |$LN44@get_sample|
ldr r3, [pc, #0xED4]
ldr r2, [r3]
ldr r3, [pc, #0xEDC]
ldr r3, [r3]
cmp r2, r3
bne |$LN43@get_sample|
mov r2, #1, 14
ldr r1, [pc, #0xEC4]
ldr r3, [pc, #0xE8C]
ldr r3, [r3]
ldr r0, [r3]
ldr r3, [pc, #0xE80]
ldr r3, [r3]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x44]
ldr r3, [sp, #0x44]
cmp r3, #0
bne |$LN42@get_sample|
ldr r3, [pc, #0xE54]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #5
str r3, [r2]
mvn r3, #0
str r3, [sp, #0x38]
b |$LN55@get_sample|
|$LN42@get_sample|
ldr r2, [pc, #0xE68]
ldr r3, [pc, #0xE58]
str r2, [r3]
|$LN43@get_sample|
ldr r2, [sp, #0x14]
ldr r3, [pc, #0xE48]
ldr r3, [r3]
add r3, r2, r3
str r3, [sp, #0x14]
ldr r3, [pc, #0xE3C]
ldr r3, [r3]
ldrb r2, [r3]
ldr r3, [pc, #0xE24]
str r2, [r3]
ldr r3, [pc, #0xE28]
ldr r3, [r3]
add r2, r3, #1
ldr r3, [pc, #0xE1C]
str r2, [r3]
ldr r3, [pc, #0xE18]
ldr r3, [r3]
mov r0, r3, lsr #8
ldr r3, [pc, #0xE0C]
ldr r2, [r3]
ldr r3, [pc, #0xDF4]
ldr r3, [r3]
eor r3, r2, r3
and r1, r3, #0xFF
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xDF0]
add r3, r3, r2
ldr r3, [r3]
eor r2, r0, r3
ldr r3, [pc, #0xDDC]
str r2, [r3]
ldr r2, [pc, #0xDCC]
mov r3, #8
str r3, [r2]
b |$LN45@get_sample|
|$LN44@get_sample|
|$LN41@get_sample|
ldr r3, [pc, #0xDB4]
ldr r3, [r3]
tst r3, #1
beq |$LN40@get_sample|
ldr r3, [sp, #0x14]
add r3, r3, #1
str r3, [sp, #0x14]
ldr r3, [pc, #0xD98]
ldr r3, [r3]
mov r2, r3, lsr #1
ldr r3, [pc, #0xD8C]
str r2, [r3]
ldr r3, [pc, #0xD8C]
ldr r3, [r3]
sub r2, r3, #1
ldr r3, [pc, #0xD80]
str r2, [r3]
b |$LN41@get_sample|
|$LN40@get_sample|
ldr r3, [pc, #0xD6C]
ldr r3, [r3]
mov r2, r3, lsr #1
ldr r3, [pc, #0xD60]
str r2, [r3]
ldr r3, [pc, #0xD60]
ldr r3, [r3]
sub r2, r3, #1
ldr r3, [pc, #0xD54]
str r2, [r3]
; Line 397
ldr r3, [sp, #0x14]
cmp r3, #0
beq |$LN37@get_sample|
b |$LN36@get_sample|
|$LN37@get_sample|
; Line 398
mov r3, #0
str r3, [sp, #0x20]
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
str r3, [sp, #0x18]
b |$LN38@get_sample|
|$LN36@get_sample|
; Line 400
mov r3, #1
str r3, [sp, #0x20]
ldr r3, [sp, #0x2C]
add r1, r3, #4
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
str r3, [sp, #0x18]
; Line 401
ldr r3, [sp, #0x14]
sub r3, r3, #1
str r3, [sp, #0x14]
|$LN38@get_sample|
; Line 404
ldr r3, [sp, #0x18]
cmp r3, #0
beq |$LN35@get_sample|
|$LN34@get_sample|
; Line 405
ldr r3, [pc, #0xCAC]
ldr r2, [r3]
ldr r3, [sp, #0x18]
cmp r2, r3
bcs |$LN33@get_sample|
ldr r3, [pc, #0xC9C]
ldr r2, [r3]
ldr r3, [pc, #0xCA4]
ldr r3, [r3]
cmp r2, r3
bne |$LN32@get_sample|
mov r2, #1, 14
ldr r1, [pc, #0xC8C]
ldr r3, [pc, #0xC54]
ldr r3, [r3]
ldr r0, [r3]
ldr r3, [pc, #0xC48]
ldr r3, [r3]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0x48]
ldr r3, [sp, #0x48]
cmp r3, #0
bne |$LN31@get_sample|
ldr r3, [pc, #0xC1C]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #5
str r3, [r2]
mvn r3, #0
str r3, [sp, #0x38]
b |$LN55@get_sample|
|$LN31@get_sample|
ldr r2, [pc, #0xC30]
ldr r3, [pc, #0xC20]
str r2, [r3]
|$LN32@get_sample|
ldr r3, [pc, #0xC1C]
ldr r3, [r3]
mov r0, r3, lsr #8
ldr r3, [pc, #0xC0C]
ldr r3, [r3]
ldrb r2, [r3]
ldr r3, [pc, #0xC04]
ldr r3, [r3]
eor r3, r3, r2
and r1, r3, #0xFF
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xBF0]
add r3, r3, r2
ldr r3, [r3]
eor r2, r0, r3
ldr r3, [pc, #0xBDC]
str r2, [r3]
ldr r3, [pc, #0xBD0]
ldr r3, [r3]
ldrb r3, [r3]
mov r2, r3
ldr r3, [pc, #0xBBC]
ldr r3, [r3]
mov r2, r2, lsl r3
ldr r3, [pc, #0xBA8]
ldr r3, [r3]
orr r2, r3, r2
ldr r3, [pc, #0xB9C]
str r2, [r3]
ldr r3, [pc, #0xB9C]
ldr r3, [r3]
add r2, r3, #8
ldr r3, [pc, #0xB90]
str r2, [r3]
ldr r3, [pc, #0xB8C]
ldr r3, [r3]
add r2, r3, #1
ldr r3, [pc, #0xB80]
str r2, [r3]
b |$LN34@get_sample|
|$LN33@get_sample|
ldr r1, [sp, #0x18]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xB60]
add r1, r3, r2
ldr r3, [pc, #0xB54]
ldr r2, [r3]
ldr r3, [r1]
and r3, r2, r3
str r3, [sp, #0x1C]
ldr r3, [pc, #0xB40]
ldr r2, [r3]
ldr r3, [sp, #0x18]
mov r2, r2, lsr r3
ldr r3, [pc, #0xB30]
str r2, [r3]
ldr r3, [pc, #0xB30]
ldr r2, [r3]
ldr r3, [sp, #0x18]
sub r2, r2, r3
ldr r3, [pc, #0xB20]
str r2, [r3]
ldr r3, [pc, #0xB18]
ldr r1, [r3]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xB04]
add r1, r3, r2
ldr r3, [pc, #0xAF8]
ldr r2, [r3]
ldr r3, [r1]
and r2, r2, r3
ldr r3, [pc, #0xAE8]
str r2, [r3]
; Line 406
ldr r2, [sp, #0x14]
ldr r3, [sp, #0x18]
mov r2, r2, lsl r3
ldr r3, [sp, #0x1C]
add r3, r2, r3
str r3, [sp, #8]
b |$LN30@get_sample|
|$LN35@get_sample|
; Line 407
ldr r3, [sp, #0x14]
str r3, [sp, #8]
|$LN30@get_sample|
; Line 409
ldr r3, [sp, #0x20]
cmp r3, #1
beq |$LN27@get_sample|
b |$LN23@get_sample|
|$LN27@get_sample|
; Line 411
ldr r3, [sp, #0x2C]
add r0, r3, #0xC
ldr r3, [sp, #0x2C]
add r1, r3, #0xC
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
mov r2, r3, lsr #4
ldr r3, [sp, #8]
sub r1, r3, r2
ldrb r3, [r0, #3]
mov r2, r3, lsl #8
ldrb r3, [r0, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0]
orr r3, r3, r2
add r2, r3, r1
ldr r3, [sp, #0x2C]
add r1, r3, #0xC
mov r3, r2
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 412
ldr r3, [sp, #0x2C]
add r1, r3, #4
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
cmp r3, #0
bls |$LN26@get_sample|
ldr r3, [sp, #0x2C]
add r0, r3, #0xC
ldr r3, [sp, #0x2C]
add r1, r3, #4
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r1, r3, r2
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x98C]
ldr r3, [r3]
add r1, r3, r2
ldrb r3, [r0, #3]
mov r2, r3, lsl #8
ldrb r3, [r0, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0]
orr r2, r3, r2
ldr r3, [r1]
cmp r2, r3
bcs |$LN26@get_sample|
; Line 413
ldr r3, [sp, #0x2C]
add r1, r3, #4
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
sub r2, r3, #1
ldr r3, [sp, #0x2C]
add r1, r3, #4
mov r3, r2
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
b |$LN25@get_sample|
|$LN26@get_sample|
; Line 414
ldr r3, [sp, #0x2C]
add r0, r3, #0xC
ldr r3, [sp, #0x2C]
add r1, r3, #4
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
add r1, r3, #1
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x8A0]
ldr r3, [r3]
add r1, r3, r2
ldrb r3, [r0, #3]
mov r2, r3, lsl #8
ldrb r3, [r0, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0]
orr r2, r3, r2
ldr r3, [r1]
cmp r2, r3
bls |$LN24@get_sample|
; Line 415
ldr r3, [sp, #0x2C]
add r1, r3, #4
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
add r2, r3, #1
ldr r3, [sp, #0x2C]
add r1, r3, #4
mov r3, r2
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
|$LN24@get_sample|
|$LN25@get_sample|
; Line 416
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r1, r3, r2
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x7CC]
add r3, r3, r2
ldr r2, [sp, #8]
ldr r3, [r3]
add r3, r2, r3
str r3, [sp, #8]
|$LN23@get_sample|
; Line 418
ldr r3, [sp, #0x2C]
add r0, r3, #8
ldr r3, [sp, #0x2C]
add r1, r3, #8
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
mov r2, r3, lsr #4
ldr r3, [sp, #8]
sub r1, r3, r2
ldrb r3, [r0, #3]
mov r2, r3, lsl #8
ldrb r3, [r0, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0]
orr r3, r3, r2
add r2, r3, r1
ldr r3, [sp, #0x2C]
add r1, r3, #8
mov r3, r2
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 419
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
cmp r3, #0
bls |$LN22@get_sample|
ldr r3, [sp, #0x2C]
add r0, r3, #8
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r1, r3, r2
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x6A0]
ldr r3, [r3]
add r1, r3, r2
ldrb r3, [r0, #3]
mov r2, r3, lsl #8
ldrb r3, [r0, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0]
orr r2, r3, r2
ldr r3, [r1]
cmp r2, r3
bcs |$LN22@get_sample|
; Line 420
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
sub r3, r3, #1
ldr r1, [sp, #0x2C]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
b |$LN21@get_sample|
|$LN22@get_sample|
; Line 421
ldr r3, [sp, #0x2C]
add r0, r3, #8
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
add r1, r3, #1
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x5C4]
ldr r3, [r3]
add r1, r3, r2
ldrb r3, [r0, #3]
mov r2, r3, lsl #8
ldrb r3, [r0, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r0]
orr r2, r3, r2
ldr r3, [r1]
cmp r2, r3
bls |$LN20@get_sample|
; Line 422
ldr r1, [sp, #0x2C]
ldrb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
add r3, r3, #1
ldr r1, [sp, #0x2C]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
|$LN20@get_sample|
|$LN21@get_sample|
; Line 425
ldr r3, [sp, #8]
tst r3, #1
beq |$LN57@get_sample|
ldr r3, [sp, #8]
add r3, r3, #1
str r3, [sp, #8]
ldr r3, [sp, #8]
mov r3, r3, asr #1
str r3, [sp, #0x4C]
b |$LN58@get_sample|
|$LN57@get_sample|
ldr r3, [sp, #8]
rsb r3, r3, #0
mov r3, r3, asr #1
str r3, [sp, #0x4C]
|$LN58@get_sample|
ldr r3, [sp, #0x4C]
str r3, [sp, #8]
; Line 428
add r1, sp, #8
ldr r0, [sp, #0x28]
bl hybrid_filter
; Line 431
ldr r3, [pc, #0x4CC]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
str r3, [sp, #0x50]
ldr r3, [sp, #0x50]
cmp r3, #1
beq |$LN17@get_sample|
ldr r3, [sp, #0x50]
cmp r3, #2
beq |$LN16@get_sample|
ldr r3, [sp, #0x50]
cmp r3, #3
beq |$LN15@get_sample|
b |$LN18@get_sample|
|$LN17@get_sample|
; Line 432
ldr r3, [sp, #0x24]
ldr r2, [r3]
ldr r3, [sp, #0x24]
ldr r3, [r3]
mov r3, r3, asr #31
str r2, [sp, #0x54]
mov r1, r3, lsl #4
ldr r3, [sp, #0x54]
mov r2, r3, lsr #28
ldr r3, [sp, #0x54]
mov r0, r3, lsl #4
orr r1, r1, r2
ldr r3, [sp, #0x24]
ldr r2, [r3]
ldr r3, [sp, #0x24]
ldr r3, [r3]
mov r3, r3, asr #31
subs r2, r0, r2
sbc r3, r1, r3
mov r2, r2, lsr #4
mov r3, r3, lsl #28
orr r2, r3, r2
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
b |$LN18@get_sample|
|$LN16@get_sample|
; Line 433
ldr r3, [sp, #0x24]
ldr r2, [r3]
ldr r3, [sp, #0x24]
ldr r3, [r3]
mov r3, r3, asr #31
str r2, [sp, #0x58]
mov r1, r3, lsl #5
ldr r3, [sp, #0x58]
mov r2, r3, lsr #27
ldr r3, [sp, #0x58]
mov r0, r3, lsl #5
orr r1, r1, r2
ldr r3, [sp, #0x24]
ldr r2, [r3]
ldr r3, [sp, #0x24]
ldr r3, [r3]
mov r3, r3, asr #31
subs r2, r0, r2
sbc r3, r1, r3
mov r2, r2, lsr #5
mov r3, r3, lsl #27
orr r2, r3, r2
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
b |$LN18@get_sample|
|$LN15@get_sample|
; Line 434
ldr r3, [sp, #0x24]
ldr r2, [r3]
ldr r3, [sp, #0x24]
ldr r3, [r3]
mov r3, r3, asr #31
str r2, [sp, #0x5C]
mov r1, r3, lsl #5
ldr r3, [sp, #0x5C]
mov r2, r3, lsr #27
ldr r3, [sp, #0x5C]
mov r0, r3, lsl #5
orr r1, r1, r2
ldr r3, [sp, #0x24]
ldr r2, [r3]
ldr r3, [sp, #0x24]
ldr r3, [r3]
mov r3, r3, asr #31
subs r2, r0, r2
sbc r3, r1, r3
mov r2, r2, lsr #5
mov r3, r3, lsl #27
orr r2, r3, r2
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
|$LN18@get_sample|
; Line 435
ldr r2, [sp, #8]
ldr r3, [sp, #0x24]
str r2, [r3]
; Line 438
ldr r0, [sp, #8]
bl abs
str r0, [sp, #0x60]
ldr r2, [sp, #0x60]
ldr r3, [pc, #0x350]
ldr r3, [r3]
cmp r2, r3
ble |$LN14@get_sample|
; Line 440
ldr r3, [pc, #0x330]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
mov r2, r3
ldr r3, [pc, #0x31C]
ldr r3, [r3]
add r3, r3, #8
ldrh r3, [r3]
mul r0, r2, r3
ldr r3, [pc, #0x310]
ldr r1, [r3]
ldr r3, [pc, #0x30C]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #4]
sub r3, r0, r3
str r3, [sp, #0x30]
; Line 441
ldr r3, [pc, #0x2EC]
ldr r2, [r3]
mov r1, #0
ldr r0, [sp, #0x6C]
bl memset
; Line 442
ldr r3, [pc, #0x2C8]
ldr r2, [r3]
ldr r3, [sp, #0x30]
add r2, r2, r3
ldr r3, [pc, #0x2B8]
str r2, [r3]
ldr r2, [sp, #4]
ldr r3, [sp, #0x30]
add r3, r2, r3
str r3, [sp, #4]
; Line 443
b |$LN53@get_sample|
|$LN14@get_sample|
; Line 446
ldr r3, [pc, #0x2A4]
ldr r3, [r3]
add r3, r3, #8
ldrh r3, [r3]
sub r1, r3, #1
mov r3, #0x90
mul r2, r1, r3
ldr r3, [pc, #0x27C]
add r2, r3, r2
ldr r3, [sp, #0xC]
cmp r3, r2
bcs |$LN13@get_sample|
; Line 447
ldr r2, [sp, #8]
ldr r3, [sp, #0x10]
str r2, [r3]
ldr r3, [sp, #0x10]
add r3, r3, #4
str r3, [sp, #0x10]
ldr r3, [sp, #0xC]
add r3, r3, #0x90
str r3, [sp, #0xC]
; Line 448
b |$LN12@get_sample|
|$LN13@get_sample|
; Line 449
ldr r2, [sp, #8]
ldr r3, [sp, #0x10]
str r2, [r3]
; Line 450
ldr r3, [pc, #0x240]
ldr r3, [r3]
add r3, r3, #8
ldrh r3, [r3]
cmp r3, #1
ble |$LN11@get_sample|
; Line 451
ldr r3, [sp, #0x10]
sub r3, r3, #4
str r3, [sp, #0x34]
; Line 452
ldr r3, [sp, #0x34]
ldr r1, [r3]
mov r0, #2
ldr r3, [pc, #0x214]
ldr r3, [r3]
mov lr, pc
mov pc, r3
ldr r3, [sp, #0x10]
ldr r3, [r3]
add r2, r3, r0
ldr r3, [sp, #0x10]
str r2, [r3]
b |$LN10@get_sample|
|$LN9@get_sample|
ldr r3, [sp, #0x34]
sub r3, r3, #4
str r3, [sp, #0x34]
|$LN10@get_sample|
ldr r2, [sp, #0x34]
ldr r3, [pc, #0x1D4]
cmp r2, r3
bcc |$LN8@get_sample|
; Line 453
ldr r3, [sp, #0x34]
add r3, r3, #4
ldr r2, [r3]
ldr r3, [sp, #0x34]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #0x34]
str r2, [r3]
b |$LN9@get_sample|
|$LN8@get_sample|
; Line 454
ldr r3, [pc, #0x1A4]
str r3, [sp, #0x34]
b |$LN7@get_sample|
|$LN6@get_sample|
ldr r3, [sp, #0x34]
add r3, r3, #4
str r3, [sp, #0x34]
|$LN7@get_sample|
ldr r2, [sp, #0x34]
ldr r3, [sp, #0x10]
cmp r2, r3
bcs |$LN5@get_sample|
; Line 455
ldr r3, [sp, #0x34]
ldr r3, [r3]
and r2, r3, #0xFF
ldr r3, [sp]
strb r2, [r3]
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
ldr r3, [pc, #0x160]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
cmp r3, #1
ble |$LN4@get_sample|
ldr r3, [sp, #0x34]
ldr r3, [r3]
mov r3, r3, asr #8
and r2, r3, #0xFF
ldr r3, [sp]
strb r2, [r3]
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
|$LN4@get_sample|
ldr r3, [pc, #0x124]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
cmp r3, #2
ble |$LN3@get_sample|
ldr r3, [sp, #0x34]
ldr r3, [r3]
mov r3, r3, asr #16
and r2, r3, #0xFF
ldr r3, [sp]
strb r2, [r3]
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
|$LN3@get_sample|
b |$LN6@get_sample|
|$LN5@get_sample|
|$LN11@get_sample|
; Line 457
ldr r3, [sp, #0x10]
ldr r3, [r3]
and r2, r3, #0xFF
ldr r3, [sp]
strb r2, [r3]
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
ldr r3, [pc, #0xC4]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
cmp r3, #1
ble |$LN2@get_sample|
ldr r3, [sp, #0x10]
ldr r3, [r3]
mov r3, r3, asr #8
and r2, r3, #0xFF
ldr r3, [sp]
strb r2, [r3]
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
|$LN2@get_sample|
ldr r3, [pc, #0x88]
ldr r3, [r3]
add r3, r3, #0xC
ldrh r3, [r3]
cmp r3, #2
ble |$LN1@get_sample|
ldr r3, [sp, #0x10]
ldr r3, [r3]
mov r3, r3, asr #16
and r2, r3, #0xFF
ldr r3, [sp]
strb r2, [r3]
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
|$LN1@get_sample|
; Line 458
ldr r3, [pc, #0x48]
str r3, [sp, #0x10]
; Line 459
ldr r3, [pc, #0x3C]
ldr r3, [r3]
add r2, r3, #1
ldr r3, [pc, #0x30]
str r2, [r3]
ldr r3, [sp, #4]
add r3, r3, #1
str r3, [sp, #4]
; Line 460
ldr r3, [pc, #0x18]
str r3, [sp, #0xC]
|$LN12@get_sample|
; Line 462
b |$LN54@get_sample|
|$LN53@get_sample|
; Line 464
ldr r3, [sp, #4]
str r3, [sp, #0x38]
|$LN55@get_sample|
; Line 465
ldr r0, [sp, #0x38]
add sp, sp, #0x64
ldmia sp, {sp, pc}
|$LN62@get_sample|
DCD |tta|
DCD |data_cur|
DCD |cache|
DCD |ttainfo|
DCD |__imp___rt_sdiv|
DCD |pcm_buffer_size|
DCD |__imp___rt_udiv|
DCD |maxvalue|
DCD |shift_16|
DCD |bit_shift|
DCD |bit_cache|
DCD |bit_mask|
DCD |bit_count|
DCD |bitpos|
DCD |frame_crc32|
DCD |crc32_table|
DCD |isobuffers|
DCD |iso_buffers_end|
DCD |data_pos|
DCD |framelen|
DCD |lastlen|
DCD |fframes|
|$M4942|
ENDP ; |get_samples|
EXPORT |memshl|
; File d:\myproject\vs2005\tcpmp\tcpmp\tta\ttalib\filter.h
AREA |.text| { |hybrid_filter| }, CODE, ARM, SELECTION=2 ; comdat any
AREA |.pdata$$hybrid_filter|, PDATA, SELECTION=5, ASSOC=|.text| { |hybrid_filter| } ; comdat associative
|$T4951| DCD |$LN9@hybrid_fil|
DCD 0x40029904
; Function compile flags: /Odsp
AREA |.text| { |hybrid_filter| }, CODE, ARM, SELECTION=2 ; comdat any
|hybrid_filter| PROC
; Line 58
|$LN9@hybrid_fil|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
sub sp, sp, #0x10
|$M4948|
; Line 59
ldr r3, [sp, #0x18]
add r3, r3, #0x58
str r3, [sp]
; Line 60
ldr r3, [sp, #0x18]
add r3, r3, #0x10
str r3, [sp, #4]
; Line 61
ldr r3, [sp, #0x18]
add r3, r3, #0x34
str r3, [sp, #0xC]
; Line 62
ldr r3, [sp, #0x18]
add r1, r3, #4
ldrsb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
str r3, [sp, #8]
; Line 64
ldr r3, [sp, #0x18]
add r1, r3, #8
ldrsb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
cmp r3, #0
bne |$LN4@hybrid_fil|
; Line 65
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 66
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 67
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 68
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 69
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 70
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 71
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 72
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
ldr r3, [sp, #0xC]
add r3, r3, #0x20
str r3, [sp, #0xC]
b |$LN3@hybrid_fil|
|$LN4@hybrid_fil|
; Line 73
ldr r3, [sp, #0x18]
add r1, r3, #8
ldrsb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
cmp r3, #0
bge |$LN2@hybrid_fil|
; Line 74
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 75
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 76
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 77
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 78
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 79
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 80
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 81
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 82
b |$LN1@hybrid_fil|
|$LN2@hybrid_fil|
; Line 83
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 84
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 85
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 86
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 87
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 88
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 89
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
; Line 90
ldr r3, [sp, #4]
ldr r2, [r3]
ldr r3, [sp, #0xC]
ldr r3, [r3]
add r2, r2, r3
ldr r3, [sp, #4]
str r2, [r3]
ldr r3, [sp]
ldr r1, [r3]
ldr r3, [sp, #4]
ldr r3, [r3]
mul r2, r1, r3
ldr r3, [sp, #8]
add r3, r3, r2
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
ldr r3, [sp]
add r3, r3, #4
str r3, [sp]
ldr r3, [sp, #4]
add r3, r3, #4
str r3, [sp, #4]
|$LN1@hybrid_fil|
|$LN3@hybrid_fil|
; Line 93
ldr r3, [sp]
sub r3, r3, #4
ldr r3, [r3]
mov r3, r3, asr #30
orr r3, r3, #1
mov r2, r3, lsl #2
ldr r3, [sp, #0xC]
str r2, [r3]
; Line 94
ldr r3, [sp]
sub r3, r3, #8
ldr r3, [r3]
mov r3, r3, asr #30
orr r3, r3, #1
mov r2, r3, lsl #1
ldr r3, [sp, #0xC]
sub r3, r3, #4
str r2, [r3]
; Line 95
ldr r3, [sp]
sub r3, r3, #0xC
ldr r3, [r3]
mov r3, r3, asr #30
orr r3, r3, #1
mov r2, r3, lsl #1
ldr r3, [sp, #0xC]
sub r3, r3, #8
str r2, [r3]
; Line 96
ldr r3, [sp]
sub r3, r3, #0x10
ldr r3, [r3]
mov r3, r3, asr #30
orr r2, r3, #1
ldr r3, [sp, #0xC]
sub r3, r3, #0xC
str r2, [r3]
; Line 98
ldr r3, [sp, #0x18]
add r1, r3, #8
ldr r3, [sp, #0x1C]
ldr r3, [r3]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 99
ldr r0, [sp, #8]
ldr r1, [sp, #0x18]
ldrsb r3, [r1, #3]
mov r2, r3, lsl #8
ldrb r3, [r1, #2]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1, #1]
orr r3, r3, r2
mov r2, r3, lsl #8
ldrb r3, [r1]
orr r3, r3, r2
mov r2, r0, asr r3
ldr r3, [sp, #0x1C]
ldr r3, [r3]
add r2, r3, r2
ldr r3, [sp, #0x1C]
str r2, [r3]
; Line 100
ldr r3, [sp, #0x1C]
ldr r2, [r3]
ldr r3, [sp]
str r2, [r3]
; Line 102
ldr r3, [sp]
sub r1, r3, #4
ldr r3, [sp]
ldr r2, [r3]
ldr r3, [r1]
sub r2, r2, r3
ldr r3, [sp]
sub r3, r3, #4
str r2, [r3]
; Line 103
ldr r3, [sp]
sub r2, r3, #4
ldr r3, [sp]
sub r3, r3, #8
ldr r2, [r2]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp]
sub r3, r3, #8
str r2, [r3]
; Line 104
ldr r3, [sp]
sub r2, r3, #8
ldr r3, [sp]
sub r3, r3, #0xC
ldr r2, [r2]
ldr r3, [r3]
sub r2, r2, r3
ldr r3, [sp]
sub r3, r3, #0xC
str r2, [r3]
; Line 106
ldr r3, [sp, #0x18]
add r1, r3, #0x5C
ldr r3, [sp, #0x18]
add r0, r3, #0x58
bl memshl
; Line 107
ldr r3, [sp, #0x18]
add r1, r3, #0x38
ldr r3, [sp, #0x18]
add r0, r3, #0x34
bl memshl
; Line 108
add sp, sp, #0x10
ldmia sp, {sp, pc}
|$M4949|
ENDP ; |hybrid_filter|
AREA |.text| { |memshl| }, CODE, ARM, SELECTION=2 ; comdat any
AREA |.pdata$$memshl|, PDATA, SELECTION=5, ASSOC=|.text| { |memshl| } ; comdat associative
|$T4957| DCD |$LN5@memshl|
DCD 0x40004e03
; Function compile flags: /Odsp
AREA |.text| { |memshl| }, CODE, ARM, SELECTION=2 ; comdat any
|memshl| PROC
; Line 46
|$LN5@memshl|
mov r12, sp
stmdb sp!, {r0, r1}
stmdb sp!, {r12, lr}
|$M4954|
; Line 47
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 48
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 49
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 50
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 51
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 52
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 53
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
ldr r3, [sp, #8]
add r3, r3, #4
str r3, [sp, #8]
ldr r3, [sp, #0xC]
add r3, r3, #4
str r3, [sp, #0xC]
; Line 54
ldr r3, [sp, #0xC]
ldr r2, [r3]
ldr r3, [sp, #8]
str r2, [r3]
; Line 55
ldmia sp, {sp, pc}
|$M4955|
ENDP ; |memshl|
IMPORT |memcpy|
AREA |.pdata|, PDATA
|$T4964| DCD |$LN8@done_buffe|
DCD 0x40005902
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|done_buffer_read| PROC
; File d:\myproject\vs2005\tcpmp\tcpmp\tta\ttalib\ttadec.c
; Line 134
|$LN8@done_buffe|
str lr, [sp, #-4]!
sub sp, sp, #0x10
|$M4961|
; Line 137
ldr r3, [pc, #0x138]
ldr r2, [r3]
mvn r3, #0
eor r2, r2, r3
ldr r3, [pc, #0x128]
str r2, [r3]
; Line 138
ldr r3, [pc, #0x138]
ldr r2, [r3]
ldr r3, [pc, #0x124]
ldr r3, [r3]
sub r3, r2, r3
str r3, [sp, #4]
; Line 140
ldr r3, [sp, #4]
cmp r3, #4
bcs |$LN3@done_buffe|
; Line 141
mov r2, #4
ldr r3, [pc, #0x104]
ldr r1, [r3]
ldr r0, [pc, #0x100]
bl memcpy
; Line 143
ldr r3, [sp, #4]
rsb r2, r3, #1, 14
ldr r1, [pc, #0xF0]
ldr r3, [sp, #4]
add r1, r1, r3
ldr r3, [pc, #0xE8]
ldr r3, [r3]
ldr r0, [r3]
ldr r3, [pc, #0xDC]
ldr r3, [r3]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xC]
ldr r3, [sp, #0xC]
cmp r3, #0
bne |$LN2@done_buffe|
; Line 144
mvn r3, #0
str r3, [sp, #8]
b |$LN4@done_buffe|
|$LN2@done_buffe|
; Line 145
ldr r2, [pc, #0xA0]
ldr r3, [pc, #0x98]
str r2, [r3]
|$LN3@done_buffe|
; Line 148
mov r2, #4
ldr r3, [pc, #0x8C]
ldr r1, [r3]
add r0, sp, #0
bl memcpy
; Line 149
ldr r3, [sp]
str r3, [sp]
; Line 150
ldr r3, [pc, #0x74]
ldr r3, [r3]
add r2, r3, #4
ldr r3, [pc, #0x68]
str r2, [r3]
; Line 152
ldr r2, [sp]
ldr r3, [pc, #0x50]
ldr r3, [r3]
cmp r2, r3
beq |$LN1@done_buffe|
mvn r3, #0
str r3, [sp, #8]
b |$LN4@done_buffe|
|$LN1@done_buffe|
; Line 154
ldr r2, [pc, #0x3C]
mov r3, #0
str r3, [r2]
ldr r3, [pc, #0x30]
ldr r2, [r3]
ldr r3, [pc, #0x24]
str r2, [r3]
; Line 155
ldr r2, [pc, #0x18]
mvn r3, #0
str r3, [r2]
; Line 157
mov r3, #0
str r3, [sp, #8]
|$LN4@done_buffe|
; Line 158
ldr r0, [sp, #8]
add sp, sp, #0x10
ldr pc, [sp], #4
|$LN9@done_buffe|
DCD |frame_crc32|
DCD |bit_cache|
DCD |bit_count|
DCD |bitpos|
DCD |isobuffers|
DCD |ttainfo|
DCD |iso_buffers_end|
|$M4962|
ENDP ; |done_buffer_read|
AREA |.pdata|, PDATA
|$T4970| DCD |$LN8@decoder_in|
DCD 0x40003a04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|decoder_init| PROC
; Line 267
|$LN8@decoder_in|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M4967|
; Line 268
ldr r3, [sp, #0x18]
sub r1, r3, #1
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0xBC]
add r3, r3, r2
ldr r3, [r3]
str r3, [sp, #4]
; Line 271
mov r3, #0
str r3, [sp]
b |$LN3@decoder_in|
|$LN2@decoder_in|
ldr r3, [sp]
add r3, r3, #1
str r3, [sp]
|$LN3@decoder_in|
ldr r2, [sp]
ldr r3, [sp, #0x14]
cmp r2, r3
bge |$LN1@decoder_in|
; Line 272
ldr r1, [sp, #4]
ldr r0, [sp]
mov r3, #0x90
mul r2, r0, r3
ldr r3, [sp, #0x10]
add r0, r3, r2
bl filter_init
; Line 273
mov r2, #0xA
mov r1, #0xA
ldr lr, [sp]
mov r3, #0x90
mul r0, lr, r3
ldr r3, [sp, #0x10]
add r3, r3, r0
add r0, r3, #0x7C
bl rice_init
; Line 274
ldr r1, [sp]
mov r3, #0x90
mul r2, r1, r3
ldr r3, [sp, #0x10]
add r3, r3, r2
add r1, r3, #0x8C
mov r3, #0
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 275
b |$LN2@decoder_in|
|$LN1@decoder_in|
; Line 276
add sp, sp, #8
ldmia sp, {sp, pc}
|$LN9@decoder_in|
DCD |flt_set|
|$M4968|
ENDP ; |decoder_init|
AREA |.pdata|, PDATA
|$T4976| DCD |$LN5@rice_init|
DCD 0x40004003
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|rice_init| PROC
; Line 260
|$LN5@rice_init|
mov r12, sp
stmdb sp!, {r0 - r2}
stmdb sp!, {r12, lr}
|$M4973|
; Line 261
ldr r3, [sp, #0xC]
ldr r1, [sp, #8]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 262
ldr r3, [sp, #8]
add r1, r3, #4
ldr r3, [sp, #0x10]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 263
ldr r1, [sp, #0xC]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x80]
ldr r3, [r3]
add r2, r3, r2
ldr r3, [sp, #8]
add r1, r3, #8
ldr r3, [r2]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 264
ldr r1, [sp, #0x10]
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x38]
ldr r3, [r3]
add r2, r3, r2
ldr r3, [sp, #8]
add r1, r3, #0xC
ldr r3, [r2]
strb r3, [r1]
mov r2, r3, lsr #8
mov r3, r2
strb r3, [r1, #1]
mov r2, r2, lsr #8
mov r3, r2
strb r3, [r1, #2]
mov r3, r2, lsr #8
strb r3, [r1, #3]
; Line 265
ldmia sp, {sp, pc}
|$LN6@rice_init|
DCD |shift_16|
|$M4974|
ENDP ; |rice_init|
EXPORT |__$ArrayPad$| [ DATA ]
IMPORT |sprintf|
IMPORT |memcmp|
IMPORT |__security_cookie|
IMPORT |__security_check_cookie|
AREA |.pdata|, PDATA
|$T4989| DCD |$LN39@read_id3_t|
DCD 0x4001ed04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|read_id3_tags| PROC
; Line 552
|$LN39@read_id3_t|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0xFC
|$M4986|
ldr r3, [pc, #0x798]
ldr r3, [r3]
str r3, [sp, #0xB8]
; Line 557
mov r3, #0
str r3, [sp, #0xA0]
; Line 563
mov r2, #2
mvn r1, #0x7F
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xC0]
ldr r3, [sp, #0xC0]
cmp r3, #0
bge |$LN31@read_id3_t|
b |$read_error$4783|
|$LN31@read_id3_t|
; Line 565
mov r2, #0x80
add r1, sp, #0x20
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xC4]
ldr r3, [sp, #0xC4]
cmp r3, #0
bne |$LN30@read_id3_t|
; Line 566
b |$read_error$4783|
|$LN30@read_id3_t|
; Line 568
mov r2, #3
ldr r1, [pc, #0x708]
add r0, sp, #0x20
bl memcmp
str r0, [sp, #0xC8]
ldr r3, [sp, #0xC8]
cmp r3, #0
bne |$LN29@read_id3_t|
; Line 569
mov r2, #0x1E
add r1, sp, #0x23
ldr r3, [sp, #0x104]
add r3, r3, #1, 22
add r0, r3, #0x38
bl memcpy
; Line 570
mov r2, #0x1E
add r1, sp, #0x41
ldr r3, [sp, #0x104]
add r3, r3, #2, 22
add r0, r3, #0x38
bl memcpy
; Line 571
mov r2, #0x1E
add r1, sp, #0x5F
ldr r3, [sp, #0x104]
add r3, r3, #3, 22
add r0, r3, #0x38
bl memcpy
; Line 572
mov r2, #4
add r1, sp, #0x7D
ldr r3, [sp, #0x104]
add r3, r3, #5, 22
add r0, r3, #0x38
bl memcpy
; Line 573
mov r2, #0x1C
add r1, sp, #0x81
ldr r3, [sp, #0x104]
add r3, r3, #1, 20
add r0, r3, #0x38
bl memcpy
; Line 575
ldrb r3, [sp, #0x9F]
cmp r3, #0x93
bls |$LN28@read_id3_t|
mov r3, #0xC
strb r3, [sp, #0x9F]
|$LN28@read_id3_t|
; Line 576
ldrb r2, [sp, #0x9E]
ldr r1, [pc, #0x658]
ldr r3, [sp, #0x104]
add r3, r3, #5, 22
add r0, r3, #0x3D
bl sprintf
; Line 577
ldrb r3, [sp, #0x9F]
cmp r3, #0
beq |$LN27@read_id3_t|
ldrb r3, [sp, #0x9F]
cmp r3, #0xFF
beq |$LN27@read_id3_t|
; Line 578
ldrb r3, [sp, #0x9F]
mov r1, r3
mov r3, #4
mul r2, r1, r3
ldr r3, [pc, #0x618]
add r3, r3, r2
ldr r2, [r3]
ldr r1, [pc, #0x608]
ldr r3, [sp, #0x104]
add r0, r3, #0x51, 26
bl sprintf
|$LN27@read_id3_t|
; Line 579
ldr r3, [sp, #0x104]
add r3, r3, #0x15, 24
add r3, r3, #0x44
ldrb r3, [r3]
orr r1, r3, #1
ldr r3, [sp, #0x104]
add r3, r3, #0x15, 24
add r2, r3, #0x44
and r3, r1, #0xFF
strb r3, [r2]
|$LN29@read_id3_t|
; Line 582
mov r2, #0
mov r1, #0
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xCC]
ldr r3, [sp, #0xCC]
cmp r3, #0
bge |$LN26@read_id3_t|
; Line 583
b |$read_error$4783|
|$LN26@read_id3_t|
; Line 587
mov r2, #0xA
add r1, sp, #0x14
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xD0]
ldr r3, [sp, #0xD0]
cmp r3, #0
bne |$LN25@read_id3_t|
; Line 588
b |$read_error$4783|
|$LN25@read_id3_t|
; Line 590
mov r2, #3
ldr r1, [pc, #0x554]
add r0, sp, #0x14
bl memcmp
str r0, [sp, #0xD4]
ldr r3, [sp, #0xD4]
cmp r3, #0
beq |$LN24@read_id3_t|
; Line 591
mov r2, #0
mov r1, #0
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xD8]
ldr r3, [sp, #0xD8]
cmp r3, #0
bge |$LN23@read_id3_t|
; Line 592
b |$read_error$4783|
|$LN23@read_id3_t|
; Line 593
ldr r0, [sp, #0xB8]
bl __security_check_cookie
mov r3, #0
str r3, [sp, #0xBC]
b |$LN32@read_id3_t|
|$LN24@read_id3_t|
; Line 596
ldrb r3, [sp, #0x1A]
tst r3, #0x80
beq |$LN22@read_id3_t|
b |$file_error$4799|
|$LN22@read_id3_t|
; Line 597
add r0, sp, #0x1A
bl unpack_sint28
str r0, [sp, #0xDC]
ldr r3, [sp, #0xDC]
str r3, [sp]
; Line 599
ldr r0, [sp]
ldr r3, [pc, #0x4C0]
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xE0]
ldr r3, [sp, #0xE0]
str r3, [sp, #0xA0]
ldr r3, [sp, #0xA0]
cmp r3, #0
bne |$LN21@read_id3_t|
; Line 600
ldr r3, [pc, #0x490]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #6
str r3, [r2]
; Line 601
b |$read_done$4802|
|$LN21@read_id3_t|
; Line 606
ldrb r3, [sp, #0x19]
tst r3, #0x80
bne |$LN19@read_id3_t|
ldrb r3, [sp, #0x19]
tst r3, #0x20
bne |$LN19@read_id3_t|
ldrb r3, [sp, #0x18]
mov r3, r3, lsl #8
mov r2, r3, lsl #16
mov r2, r2, lsr #16
ldrb r3, [sp, #0x17]
orr r3, r3, r2
cmp r3, #3
bge |$LN20@read_id3_t|
|$LN19@read_id3_t|
b |$read_done$4802|
|$LN20@read_id3_t|
; Line 608
ldr r2, [sp]
ldr r1, [sp, #0xA0]
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
add r3, r3, #0xC
ldr r3, [r3]
mov lr, pc
mov pc, r3
str r0, [sp, #0xE4]
ldr r3, [sp, #0xE4]
cmp r3, #0
bne |$LN18@read_id3_t|
; Line 609
ldr r0, [sp, #0xA0]
ldr r3, [pc, #0x404]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 610
b |$read_error$4783|
|$LN18@read_id3_t|
; Line 613
ldr r3, [sp, #0xA0]
str r3, [sp, #4]
; Line 616
ldrb r3, [sp, #0x19]
tst r3, #0x40
beq |$LN17@read_id3_t|
; Line 617
ldr r0, [sp, #4]
bl unpack_sint32
str r0, [sp, #0xE8]
ldr r3, [sp, #0xE8]
str r3, [sp, #0xA4]
; Line 618
ldr r2, [sp, #4]
ldr r3, [sp, #0xA4]
add r3, r2, r3
str r3, [sp, #4]
|$LN17@read_id3_t|
|$LN36@read_id3_t|
|$LN16@read_id3_t|
; Line 622
ldr r2, [sp, #4]
ldr r3, [sp, #0xA0]
sub r2, r2, r3
ldr r3, [sp]
cmp r2, r3
bge |$LN15@read_id3_t|
; Line 623
mov r3, #0
str r3, [sp, #0xB0]
; Line 625
mov r3, #0
str r3, [sp, #0xA8]
; Line 628
mov r2, #0xA
ldr r1, [sp, #4]
add r0, sp, #8
bl memcpy
; Line 629
ldr r3, [sp, #4]
add r3, r3, #0xA
str r3, [sp, #4]
; Line 630
add r0, sp, #0xC
bl unpack_sint32
str r0, [sp, #0xEC]
ldr r3, [sp, #0xEC]
str r3, [sp, #0xAC]
; Line 638
add r0, sp, #8
bl get_frame_id
str r0, [sp, #0xF0]
ldr r3, [sp, #0xF0]
str r3, [sp, #0xB4]
ldr r3, [sp, #0xB4]
cmp r3, #0
beq |$LN13@read_id3_t|
ldrh r3, [sp, #0x10]
tst r3, #8
bne |$LN13@read_id3_t|
ldrh r3, [sp, #0x10]
tst r3, #4
bne |$LN13@read_id3_t|
ldrh r3, [sp, #0x10]
tst r3, #2
bne |$LN13@read_id3_t|
ldr r3, [sp, #4]
ldrsb r3, [r3]
cmp r3, #0
beq |$LN14@read_id3_t|
ldr r3, [sp, #4]
ldrsb r3, [r3]
cmp r3, #3
beq |$LN14@read_id3_t|
|$LN13@read_id3_t|
; Line 639
ldr r2, [sp, #4]
ldr r3, [sp, #0xAC]
add r3, r2, r3
str r3, [sp, #4]
; Line 640
b |$LN16@read_id3_t|
|$LN14@read_id3_t|
; Line 643
ldr r3, [sp, #0xAC]
sub r3, r3, #1
str r3, [sp, #0xAC]
ldr r3, [sp, #4]
add r3, r3, #1
str r3, [sp, #4]
; Line 645
ldr r3, [sp, #0xB4]
str r3, [sp, #0xF4]
ldr r3, [sp, #0xF4]
cmp r3, #1
beq |$LN10@read_id3_t|
ldr r3, [sp, #0xF4]
cmp r3, #2
beq |$LN9@read_id3_t|
ldr r3, [sp, #0xF4]
cmp r3, #3
beq |$LN8@read_id3_t|
ldr r3, [sp, #0xF4]
cmp r3, #4
beq |$LN7@read_id3_t|
ldr r3, [sp, #0xF4]
cmp r3, #5
beq |$LN6@read_id3_t|
ldr r3, [sp, #0xF4]
cmp r3, #6
beq |$LN5@read_id3_t|
ldr r3, [sp, #0xF4]
cmp r3, #7
beq |$LN4@read_id3_t|
b |$LN11@read_id3_t|
|$LN10@read_id3_t|
; Line 646
ldr r3, [sp, #0x104]
add r3, r3, #1, 22
add r3, r3, #0x38
str r3, [sp, #0xB0]
; Line 647
mov r3, #3, 24
orr r3, r3, #0xFF
str r3, [sp, #0xA8]
b |$LN11@read_id3_t|
|$LN9@read_id3_t|
; Line 648
ldr r3, [sp, #0x104]
add r3, r3, #2, 22
add r3, r3, #0x38
str r3, [sp, #0xB0]
; Line 649
mov r3, #3, 24
orr r3, r3, #0xFF
str r3, [sp, #0xA8]
b |$LN11@read_id3_t|
|$LN8@read_id3_t|
; Line 650
ldr r3, [sp, #0x104]
add r3, r3, #3, 22
add r3, r3, #0x38
str r3, [sp, #0xB0]
; Line 651
mov r3, #3, 24
orr r3, r3, #0xFF
str r3, [sp, #0xA8]
b |$LN11@read_id3_t|
|$LN7@read_id3_t|
; Line 652
ldr r3, [sp, #0x104]
add r3, r3, #5, 22
add r3, r3, #0x3D
str r3, [sp, #0xB0]
; Line 653
mov r3, #2
str r3, [sp, #0xA8]
b |$LN11@read_id3_t|
|$LN6@read_id3_t|
; Line 654
ldr r3, [sp, #0x104]
add r3, r3, #5, 22
add r3, r3, #0x38
str r3, [sp, #0xB0]
; Line 655
mov r3, #4
str r3, [sp, #0xA8]
b |$LN11@read_id3_t|
|$LN5@read_id3_t|
; Line 656
ldr r3, [sp, #0x104]
add r3, r3, #0x51, 26
str r3, [sp, #0xB0]
; Line 657
mov r3, #0xFF
str r3, [sp, #0xA8]
b |$LN11@read_id3_t|
|$LN4@read_id3_t|
; Line 658
ldr r3, [sp, #0x104]
add r3, r3, #1, 20
add r3, r3, #0x38
str r3, [sp, #0xB0]
; Line 659
mov r3, #3, 24
orr r3, r3, #0xFF
str r3, [sp, #0xA8]
; Line 660
ldr r3, [sp, #0xAC]
sub r3, r3, #3
str r3, [sp, #0xAC]
ldr r3, [sp, #4]
add r3, r3, #3
str r3, [sp, #4]
; Line 663
ldr r3, [sp, #4]
ldrsb r3, [r3]
cmp r3, #0
bne |$LN3@read_id3_t|
ldr r3, [sp, #0xAC]
sub r3, r3, #1
str r3, [sp, #0xAC]
ldr r3, [sp, #4]
add r3, r3, #1
str r3, [sp, #4]
|$LN3@read_id3_t|
|$LN11@read_id3_t|
; Line 667
ldr r2, [sp, #0xAC]
ldr r3, [sp, #0xA8]
cmp r2, r3
bge |$LN2@read_id3_t|
ldr r3, [sp, #0xAC]
str r3, [sp, #0xA8]
|$LN2@read_id3_t|
; Line 668
ldr r2, [sp, #0xA8]
ldr r1, [sp, #4]
ldr r0, [sp, #0xB0]
bl memcpy
ldr r2, [sp, #0xB0]
ldr r3, [sp, #0xA8]
add r2, r2, r3
mov r3, #0
strb r3, [r2]
; Line 669
ldr r2, [sp, #4]
ldr r3, [sp, #0xAC]
add r3, r2, r3
str r3, [sp, #4]
; Line 670
b |$LN36@read_id3_t|
|$LN15@read_id3_t|
; Line 672
ldr r3, [sp, #0x104]
add r3, r3, #0x15, 24
add r3, r3, #0x44
ldrb r3, [r3]
orr r1, r3, #2
ldr r3, [sp, #0x104]
add r3, r3, #0x15, 24
add r2, r3, #0x44
and r3, r1, #0xFF
strb r3, [r2]
|$read_done$4802|
; Line 675
ldr r3, [sp, #0xA0]
cmp r3, #0
beq |$LN1@read_id3_t|
ldr r0, [sp, #0xA0]
ldr r3, [pc, #0xDC]
ldr r3, [r3]
mov lr, pc
mov pc, r3
|$LN1@read_id3_t|
; Line 678
ldrb r3, [sp, #0x19]
tst r3, #0x10
beq |$LN34@read_id3_t|
mov r3, #0x14
str r3, [sp, #0xF8]
b |$LN35@read_id3_t|
|$LN34@read_id3_t|
mov r3, #0xA
str r3, [sp, #0xF8]
|$LN35@read_id3_t|
ldr r2, [sp]
ldr r3, [sp, #0xF8]
add r3, r2, r3
str r3, [sp]
; Line 679
mov r2, #0
ldr r1, [sp]
ldr r3, [sp, #0x104]
ldr r0, [r3]
ldr r3, [sp, #0x104]
ldr r3, [r3]
ldr r3, [r3]
mov lr, pc
mov pc, r3
; Line 680
ldr r3, [sp, #0x104]
add r2, r3, #0x55, 26
ldr r3, [sp]
str r3, [r2]
; Line 682
ldr r0, [sp, #0xB8]
bl __security_check_cookie
ldr r3, [sp]
str r3, [sp, #0xBC]
b |$LN32@read_id3_t|
|$file_error$4799|
; Line 685
ldr r3, [pc, #0x50]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #4
str r3, [r2]
; Line 686
ldr r0, [sp, #0xB8]
bl __security_check_cookie
mvn r3, #0
str r3, [sp, #0xBC]
b |$LN32@read_id3_t|
|$read_error$4783|
; Line 689
ldr r3, [pc, #0x28]
ldr r3, [r3]
add r2, r3, #0x20
mov r3, #5
str r3, [r2]
; Line 690
ldr r0, [sp, #0xB8]
bl __security_check_cookie
mvn r3, #0
str r3, [sp, #0xBC]
|$LN32@read_id3_t|
; Line 691
ldr r0, [sp, #0xBC]
add sp, sp, #0xFC
ldmia sp, {sp, pc}
|$LN40@read_id3_t|
DCD |ttainfo|
DCD |__imp_free_win32|
DCD |__imp_malloc_win32|
DCD |$SG4796|
DCD |$SG4791|
DCD |genre|
DCD |$SG4789|
DCD |$SG4787|
DCD |__security_cookie|
|$M4987|
ENDP ; |read_id3_tags|
AREA |.pdata|, PDATA
|$T4996| DCD |$LN6@unpack_sin|
DCD 0x40003004
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|unpack_sint28| PROC
; Line 477
|$LN6@unpack_sin|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M4993|
; Line 478
mov r3, #0
str r3, [sp]
; Line 480
ldr r3, [sp, #0x10]
ldrsb r3, [r3]
tst r3, #0x80
beq |$LN1@unpack_sin|
mov r3, #0
str r3, [sp, #4]
b |$LN2@unpack_sin|
|$LN1@unpack_sin|
; Line 482
ldr r3, [sp, #0x10]
ldrsb r3, [r3]
and r2, r3, #0x7F
ldr r3, [sp]
orr r3, r3, r2
str r3, [sp]
; Line 483
ldr r3, [sp]
mov r2, r3, lsl #7
ldr r3, [sp, #0x10]
add r3, r3, #1
ldrsb r3, [r3]
and r3, r3, #0x7F
orr r3, r2, r3
str r3, [sp]
; Line 484
ldr r3, [sp]
mov r2, r3, lsl #7
ldr r3, [sp, #0x10]
add r3, r3, #2
ldrsb r3, [r3]
and r3, r3, #0x7F
orr r3, r2, r3
str r3, [sp]
; Line 485
ldr r3, [sp]
mov r2, r3, lsl #7
ldr r3, [sp, #0x10]
add r3, r3, #3
ldrsb r3, [r3]
and r3, r3, #0x7F
orr r3, r2, r3
str r3, [sp]
; Line 487
ldr r3, [sp]
str r3, [sp, #4]
|$LN2@unpack_sin|
; Line 488
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp, {sp, pc}
|$M4994|
ENDP ; |unpack_sint28|
AREA |.pdata|, PDATA
|$T5002| DCD |$LN6@unpack_sin@2|
DCD 0x40002d04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|unpack_sint32| PROC
; Line 490
|$LN6@unpack_sin@2|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #8
|$M4999|
; Line 491
mov r3, #0
str r3, [sp]
; Line 493
ldr r3, [sp, #0x10]
ldrsb r3, [r3]
tst r3, #0x80
beq |$LN1@unpack_sin@2|
mov r3, #0
str r3, [sp, #4]
b |$LN2@unpack_sin@2|
|$LN1@unpack_sin@2|
; Line 495
ldr r3, [sp]
mov r2, r3, lsl #8
ldr r3, [sp, #0x10]
ldrsb r3, [r3]
orr r3, r2, r3
str r3, [sp]
; Line 496
ldr r3, [sp]
mov r2, r3, lsl #8
ldr r3, [sp, #0x10]
add r3, r3, #1
ldrsb r3, [r3]
orr r3, r2, r3
str r3, [sp]
; Line 497
ldr r3, [sp]
mov r2, r3, lsl #8
ldr r3, [sp, #0x10]
add r3, r3, #2
ldrsb r3, [r3]
orr r3, r2, r3
str r3, [sp]
; Line 498
ldr r3, [sp]
mov r2, r3, lsl #8
ldr r3, [sp, #0x10]
add r3, r3, #3
ldrsb r3, [r3]
orr r3, r2, r3
str r3, [sp]
; Line 500
ldr r3, [sp]
str r3, [sp, #4]
|$LN2@unpack_sin@2|
; Line 501
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp, {sp, pc}
|$M5000|
ENDP ; |unpack_sint32|
AREA |.pdata|, PDATA
|$T5008| DCD |$LN12@get_frame_|
DCD 0x40005d04
; Function compile flags: /Odsp
AREA |.text|, CODE, ARM
|get_frame_id| PROC
; Line 503
|$LN12@get_frame_|
mov r12, sp
stmdb sp!, {r0}
stmdb sp!, {r12, lr}
sub sp, sp, #0x20
|$M5005|
; Line 504
mov r2, #4
ldr r1, [pc, #0x154]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #4]
ldr r3, [sp, #4]
cmp r3, #0
bne |$LN7@get_frame_|
mov r3, #1
str r3, [sp]
b |$LN8@get_frame_|
|$LN7@get_frame_|
; Line 505
mov r2, #4
ldr r1, [pc, #0x124]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #8]
ldr r3, [sp, #8]
cmp r3, #0
bne |$LN6@get_frame_|
mov r3, #2
str r3, [sp]
b |$LN8@get_frame_|
|$LN6@get_frame_|
; Line 506
mov r2, #4
ldr r1, [pc, #0xF4]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #0xC]
ldr r3, [sp, #0xC]
cmp r3, #0
bne |$LN5@get_frame_|
mov r3, #3
str r3, [sp]
b |$LN8@get_frame_|
|$LN5@get_frame_|
; Line 507
mov r2, #4
ldr r1, [pc, #0xC4]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #0x10]
ldr r3, [sp, #0x10]
cmp r3, #0
bne |$LN4@get_frame_|
mov r3, #4
str r3, [sp]
b |$LN8@get_frame_|
|$LN4@get_frame_|
; Line 508
mov r2, #4
ldr r1, [pc, #0x94]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #0x14]
ldr r3, [sp, #0x14]
cmp r3, #0
bne |$LN3@get_frame_|
mov r3, #5
str r3, [sp]
b |$LN8@get_frame_|
|$LN3@get_frame_|
; Line 509
mov r2, #4
ldr r1, [pc, #0x64]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #0x18]
ldr r3, [sp, #0x18]
cmp r3, #0
bne |$LN2@get_frame_|
mov r3, #6
str r3, [sp]
b |$LN8@get_frame_|
|$LN2@get_frame_|
; Line 510
mov r2, #4
ldr r1, [pc, #0x34]
ldr r0, [sp, #0x28]
bl memcmp
str r0, [sp, #0x1C]
ldr r3, [sp, #0x1C]
cmp r3, #0
bne |$LN1@get_frame_|
mov r3, #7
str r3, [sp]
b |$LN8@get_frame_|
|$LN1@get_frame_|
; Line 511
mov r3, #0
str r3, [sp]
|$LN8@get_frame_|
; Line 512
ldr r0, [sp]
add sp, sp, #0x20
ldmia sp, {sp, pc}
|$LN13@get_frame_|
DCD |$SG4769|
DCD |$SG4767|
DCD |$SG4765|
DCD |$SG4763|
DCD |$SG4761|
DCD |$SG4759|
DCD |$SG4757|
|$M5006|
ENDP ; |get_frame_id|
END