; 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