; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727 TTL g:\MyPrograme\VS2005\GPSVersion2\tcpmp\ffmpeg\libavcodec\tscc.c CODE32 AREA |.drectve|, DRECTVE DCB "-defaultlib:LIBCMT " DCB "-defaultlib:OLDNAMES " EXPORT |tscc_decoder| [ DATA ] AREA |.data|, DATA |$SG3055| DCB "Camtasia warning: no End-of-picture code", 0xa, 0x0 % 2 |$SG3077| DCB "get_buffer() failed", 0xa, 0x0 % 3 |$SG3079| DCB "Inflate reset error: %d", 0xa, 0x0 % 3 |$SG3081| DCB "Inflate error: %d", 0xa, 0x0 % 1 |$SG3106| DCB "Camtasia error: unknown depth %i bpp", 0xa, 0x0 % 2 |$SG3110| DCB "Can't allocate decompression buffer.", 0xa, 0x0 % 2 |$SG3112| DCB "1.2.1", 0x0 % 2 |$SG3114| DCB "Inflate init error: %d", 0xa, 0x0 |$SG3122| DCB "camtasia", 0x0 % 3 |tscc_decoder| DCD |$SG3122| DCD 0x0 DCD 0x39 DCD 0x118 DCD |decode_init| DCD 0x0 DCD |decode_end| DCD |decode_frame| DCD 0x2 % 16 IMPORT |memcpy| IMPORT |inflate| IMPORT |inflateReset| IMPORT |av_log| IMPORT |memcpy| AREA |.pdata|, PDATA |$T3133| DCD |$LN12@decode_fra| DCD 0x4000ae04 ; Function compile flags: /Odsp AREA |.text|, CODE, ARM |decode_frame| PROC ; File g:\myprograme\vs2005\gpsversion2\tcpmp\ffmpeg\libavcodec\tscc.c ; Line 171 |$LN12@decode_fra| mov r12, sp stmdb sp!, {r0 - r3} stmdb sp!, {r12, lr} sub sp, sp, #0x24 |$M3130| ; Line 172 ldr r3, [sp, #0x2C] add r3, r3, #0x88 ldr r3, [r3] str r3, [sp, #0x10] ; Line 173 ldr r3, [sp, #0x38] str r3, [sp] ; Line 178 ldr r3, [sp, #0x3C] str r3, [sp, #8] ; Line 180 ldr r3, [sp, #0x10] add r3, r3, #8 ldr r3, [r3] cmp r3, #0 beq |$LN7@decode_fra| ; Line 181 ldr r3, [sp, #0x10] add r1, r3, #8 ldr r0, [sp, #0x2C] ldr r3, [sp, #0x2C] add r3, r3, #0x42, 30 ldr r3, [r3] mov lr, pc mov pc, r3 |$LN7@decode_fra| ; Line 183 ldr r3, [sp, #0x10] add r2, r3, #0x58 mov r3, #1 str r3, [r2] ; Line 184 ldr r3, [sp, #0x10] add r2, r3, #0xBC mov r3, #1 str r3, [r2] ; Line 185 ldr r3, [sp, #0x10] add r1, r3, #8 ldr r0, [sp, #0x2C] ldr r3, [sp, #0x2C] add r3, r3, #0x41, 30 ldr r3, [r3] mov lr, pc mov pc, r3 str r0, [sp, #0x18] ldr r3, [sp, #0x18] cmp r3, #0 bge |$LN6@decode_fra| ; Line 186 ldr r2, [pc, #0x1F8] mov r1, #0 ldr r0, [sp, #0x2C] bl av_log ; Line 187 mvn r3, #0 str r3, [sp, #0x14] b |$LN8@decode_fra| |$LN6@decode_fra| ; Line 190 ldr r3, [sp, #0x10] add r3, r3, #8 ldr r3, [r3] str r3, [sp, #0xC] ; Line 193 ldr r3, [sp, #0x10] add r0, r3, #0xE0 bl inflateReset str r0, [sp, #0x1C] ldr r3, [sp, #0x1C] str r3, [sp, #4] ; Line 194 ldr r3, [sp, #4] cmp r3, #0 beq |$LN5@decode_fra| ; Line 195 ldr r3, [sp, #4] ldr r2, [pc, #0x1A0] mov r1, #0 ldr r0, [sp, #0x2C] bl av_log ; Line 196 mvn r3, #0 str r3, [sp, #0x14] b |$LN8@decode_fra| |$LN5@decode_fra| ; Line 198 ldr r3, [sp, #0x10] add r2, r3, #0xE0 ldr r3, [sp] str r3, [r2] ; Line 199 ldr r3, [sp, #0x10] add r2, r3, #0xE4 ldr r3, [sp, #8] str r3, [r2] ; Line 200 ldr r3, [sp, #0x10] add r1, r3, #0xD8 ldr r3, [sp, #0x10] add r2, r3, #0xEC ldr r3, [r1] str r3, [r2] ; Line 201 ldr r3, [sp, #0x10] add r1, r3, #0xD4 ldr r3, [sp, #0x10] add r2, r3, #0xF0 ldr r3, [r1] str r3, [r2] ; Line 202 mov r1, #4 ldr r3, [sp, #0x10] add r0, r3, #0xE0 bl inflate str r0, [sp, #0x20] ldr r3, [sp, #0x20] str r3, [sp, #4] ; Line 204 ldr r3, [sp, #4] cmp r3, #0 beq |$LN4@decode_fra| ldr r3, [sp, #4] cmp r3, #1 beq |$LN4@decode_fra| ldr r3, [sp, #4] cmn r3, #3 beq |$LN4@decode_fra| ; Line 205 ldr r3, [sp, #4] ldr r2, [pc, #0xEC] mov r1, #0 ldr r0, [sp, #0x2C] bl av_log ; Line 206 mvn r3, #0 str r3, [sp, #0x14] b |$LN8@decode_fra| |$LN4@decode_fra| ; Line 210 ldr r3, [sp, #4] cmn r3, #3 beq |$LN3@decode_fra| ; Line 211 ldr r3, [sp, #0x10] add r3, r3, #0xF0 ldr r1, [r3] ldr r0, [sp, #0x10] bl decode_rle |$LN3@decode_fra| ; Line 214 ldr r3, [sp, #0x10] ldr r3, [r3] add r3, r3, #0x34 ldr r3, [r3] cmp r3, #0xE bne |$LN2@decode_fra| ; Line 215 mov r2, #1, 22 ldr r3, [sp, #0x10] ldr r3, [r3] add r3, r3, #0x92, 30 ldr r3, [r3] add r1, r3, #4 ldr r3, [sp, #0x10] add r3, r3, #0xC ldr r0, [r3] bl memcpy ; Line 216 ldr r3, [sp, #0x10] ldr r3, [r3] add r3, r3, #0x92, 30 ldr r3, [r3] ldr r3, [r3] cmp r3, #0 beq |$LN1@decode_fra| ; Line 217 ldr r3, [sp, #0x10] add r2, r3, #0xB8 mov r3, #1 str r3, [r2] ; Line 218 ldr r3, [sp, #0x10] ldr r3, [r3] add r3, r3, #0x92, 30 ldr r2, [r3] mov r3, #0 str r3, [r2] |$LN1@decode_fra| |$LN2@decode_fra| ; Line 227 ldr r2, [sp, #0x34] mov r3, #0xC8 str r3, [r2] ; Line 228 ldr r3, [sp, #0x10] add r1, r3, #8 ldr r0, [sp, #0x30] mov r2, #0xC8 bl memcpy ; Line 231 ldr r3, [sp, #0x3C] str r3, [sp, #0x14] |$LN8@decode_fra| ; Line 232 ldr r0, [sp, #0x14] add sp, sp, #0x24 ldmia sp, {sp, pc} |$LN13@decode_fra| DCD |$SG3081| DCD |$SG3079| DCD |$SG3077| |$M3131| ENDP ; |decode_frame| IMPORT |__imp___rt_sdiv| AREA |.pdata|, PDATA |$T3150| DCD |$LN41@decode_rle| DCD 0x4001b304 ; Function compile flags: /Odsp AREA |.text|, CODE, ARM |decode_rle| PROC ; Line 77 |$LN41@decode_rle| mov r12, sp stmdb sp!, {r0, r1} stmdb sp!, {r4, r12, lr} sub sp, sp, #0x3C |$M3147| ; Line 78 ldr r3, [sp, #0x48] add r3, r3, #0xD8 ldr r3, [r3] str r3, [sp, #0x18] ; Line 80 ldr r3, [sp, #0x48] add r3, r3, #0xDC ldr r3, [r3] str r3, [sp, #8] mov r3, #0 str r3, [sp, #0x1C] ; Line 82 ldr r3, [sp, #0x48] add r0, r3, #8 ldr r3, [sp, #0x48] add r3, r3, #0xDC ldr r3, [r3] sub r1, r3, #1 ldr r3, [sp, #0x48] add r3, r3, #0x18 ldr r3, [r3] mul r2, r1, r3 ldr r3, [r0] add r3, r3, r2 str r3, [sp, #0xC] ; Line 83 ldr r3, [sp, #0x48] add r0, r3, #8 ldr r3, [sp, #0x48] add r2, r3, #0xDC ldr r3, [sp, #0x48] add r3, r3, #0x18 ldr r1, [r2] ldr r3, [r3] mul r2, r1, r3 ldr r3, [r0] add r3, r3, r2 str r3, [sp] |$LN38@decode_rle| |$LN37@decode_rle| |$LN36@decode_rle| |$LN35@decode_rle| |$LN32@decode_rle| ; Line 84 ldr r3, [sp, #0x48] add r3, r3, #0xD8 ldr r2, [r3] ldr r3, [sp, #0x4C] add r2, r2, r3 ldr r3, [sp, #0x18] cmp r3, r2 bcs |$LN31@decode_rle| ; Line 85 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x14] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 86 ldr r3, [sp, #0x14] cmp r3, #0 bne |$LN30@decode_rle| ; Line 87 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x10] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 88 ldr r3, [sp, #0x10] cmp r3, #0 bne |$LN29@decode_rle| ; Line 89 ldr r3, [sp, #8] sub r3, r3, #1 str r3, [sp, #8] ldr r3, [sp, #0x48] add r0, r3, #8 ldr r3, [sp, #0x48] add r3, r3, #0x18 ldr r1, [sp, #8] ldr r3, [r3] mul r2, r1, r3 ldr r3, [r0] add r3, r3, r2 str r3, [sp, #0xC] ; Line 90 ldr r3, [sp, #8] cmp r3, #0 bge |$LN28@decode_rle| ; Line 91 mvn r3, #0 str r3, [sp, #0x30] b |$LN33@decode_rle| |$LN28@decode_rle| ; Line 92 mov r3, #0 str r3, [sp, #0x1C] b |$LN32@decode_rle| ; Line 93 b |$LN27@decode_rle| |$LN29@decode_rle| ; Line 94 ldr r3, [sp, #0x10] cmp r3, #1 bne |$LN26@decode_rle| ; Line 95 mov r3, #0 str r3, [sp, #0x30] b |$LN33@decode_rle| b |$LN25@decode_rle| |$LN26@decode_rle| ; Line 96 ldr r3, [sp, #0x10] cmp r3, #2 bne |$LN24@decode_rle| ; Line 97 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x14] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 98 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x10] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 99 ldr r2, [sp, #8] ldr r3, [sp, #0x10] sub r3, r2, r3 str r3, [sp, #8] ; Line 100 ldr r3, [sp, #8] cmp r3, #0 bge |$LN23@decode_rle| ; Line 101 mvn r3, #0 str r3, [sp, #0x30] b |$LN33@decode_rle| |$LN23@decode_rle| ; Line 102 ldr r2, [sp, #0x1C] ldr r3, [sp, #0x14] add r3, r2, r3 str r3, [sp, #0x1C] ; Line 103 ldr r3, [sp, #0x48] add r0, r3, #8 ldr r3, [sp, #0x48] add r3, r3, #0x18 ldr r1, [sp, #8] ldr r3, [r3] mul r2, r1, r3 ldr r3, [r0] add r4, r3, r2 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r1, [r3] mov r0, #8 ldr r3, [pc, #0x49C] ldr r3, [r3] mov lr, pc mov pc, r3 ldr r2, [sp, #0x1C] mul r3, r2, r0 add r3, r4, r3 str r3, [sp, #0xC] ; Line 104 b |$LN35@decode_rle| |$LN24@decode_rle| |$LN25@decode_rle| |$LN27@decode_rle| ; Line 107 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r1, [r3] mov r0, #8 ldr r3, [pc, #0x468] ldr r3, [r3] mov lr, pc mov pc, r3 ldr r3, [sp, #0x10] mul r2, r3, r0 ldr r3, [sp, #0xC] add r2, r3, r2 ldr r3, [sp] cmp r2, r3 bls |$LN22@decode_rle| ; Line 108 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r1, [r3] mov r0, #8 ldr r3, [pc, #0x42C] ldr r3, [r3] mov lr, pc mov pc, r3 ldr r3, [sp, #0x10] mul r2, r3, r0 ldr r3, [sp, #0x18] add r3, r3, r2 str r3, [sp, #0x18] ; Line 109 b |$LN36@decode_rle| |$LN22@decode_rle| ; Line 111 mov r3, #0 str r3, [sp, #4] b |$LN21@decode_rle| |$LN20@decode_rle| ldr r3, [sp, #4] add r3, r3, #1 str r3, [sp, #4] |$LN21@decode_rle| ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r1, [r3] mov r0, #8 ldr r3, [pc, #0x3DC] ldr r3, [r3] mov lr, pc mov pc, r3 ldr r3, [sp, #0x10] mul r2, r3, r0 ldr r3, [sp, #4] cmp r3, r2 bge |$LN19@decode_rle| ; Line 112 ldr r3, [sp, #0x18] ldrb r2, [r3] ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 113 b |$LN20@decode_rle| |$LN19@decode_rle| ; Line 115 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r3, [r3] cmp r3, #8 bne |$LN18@decode_rle| ldr r3, [sp, #0x10] tst r3, #1 beq |$LN18@decode_rle| ; Line 116 ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] |$LN18@decode_rle| ; Line 118 ldr r2, [sp, #0x1C] ldr r3, [sp, #0x10] add r3, r2, r3 str r3, [sp, #0x1C] ; Line 119 b |$LN17@decode_rle| |$LN30@decode_rle| ; Line 121 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r3, [r3] str r3, [sp, #0x34] ldr r3, [sp, #0x34] cmp r3, #8 beq |$LN14@decode_rle| ldr r3, [sp, #0x34] cmp r3, #0x10 beq |$LN13@decode_rle| ldr r3, [sp, #0x34] cmp r3, #0x18 beq |$LN12@decode_rle| ldr r3, [sp, #0x34] cmp r3, #0x20 beq |$LN11@decode_rle| b |$LN15@decode_rle| |$LN14@decode_rle| ; Line 122 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x20] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 123 b |$LN15@decode_rle| |$LN13@decode_rle| ; Line 124 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x20] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 125 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x24] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 126 b |$LN15@decode_rle| |$LN12@decode_rle| ; Line 127 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x20] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 128 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x24] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 129 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x28] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 130 b |$LN15@decode_rle| |$LN11@decode_rle| ; Line 131 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x20] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 132 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x24] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 133 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x28] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] ; Line 134 ldr r3, [sp, #0x18] ldrb r3, [r3] str r3, [sp, #0x2C] ldr r3, [sp, #0x18] add r3, r3, #1 str r3, [sp, #0x18] |$LN15@decode_rle| ; Line 137 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r1, [r3] mov r0, #8 ldr r3, [pc, #0x1FC] ldr r3, [r3] mov lr, pc mov pc, r3 ldr r3, [sp, #0x14] mul r2, r3, r0 ldr r3, [sp, #0xC] add r2, r3, r2 ldr r3, [sp] cmp r2, r3 bls |$LN10@decode_rle| ; Line 138 b |$LN37@decode_rle| |$LN10@decode_rle| ; Line 139 mov r3, #0 str r3, [sp, #4] b |$LN9@decode_rle| |$LN8@decode_rle| ldr r3, [sp, #4] add r3, r3, #1 str r3, [sp, #4] |$LN9@decode_rle| ldr r2, [sp, #4] ldr r3, [sp, #0x14] cmp r2, r3 bge |$LN7@decode_rle| ; Line 140 ldr r3, [sp, #0x48] add r3, r3, #0xD0 ldr r3, [r3] str r3, [sp, #0x38] ldr r3, [sp, #0x38] cmp r3, #8 beq |$LN4@decode_rle| ldr r3, [sp, #0x38] cmp r3, #0x10 beq |$LN3@decode_rle| ldr r3, [sp, #0x38] cmp r3, #0x18 beq |$LN2@decode_rle| ldr r3, [sp, #0x38] cmp r3, #0x20 beq |$LN1@decode_rle| b |$LN5@decode_rle| |$LN4@decode_rle| ; Line 141 ldr r3, [sp, #0x20] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 142 b |$LN5@decode_rle| |$LN3@decode_rle| ; Line 143 ldr r3, [sp, #0x20] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 144 ldr r3, [sp, #0x24] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 145 b |$LN5@decode_rle| |$LN2@decode_rle| ; Line 146 ldr r3, [sp, #0x20] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 147 ldr r3, [sp, #0x24] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 148 ldr r3, [sp, #0x28] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 149 b |$LN5@decode_rle| |$LN1@decode_rle| ; Line 150 ldr r3, [sp, #0x20] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 151 ldr r3, [sp, #0x24] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 152 ldr r3, [sp, #0x28] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] ; Line 153 ldr r3, [sp, #0x2C] and r2, r3, #0xFF ldr r3, [sp, #0xC] strb r2, [r3] ldr r3, [sp, #0xC] add r3, r3, #1 str r3, [sp, #0xC] |$LN5@decode_rle| ; Line 156 b |$LN8@decode_rle| |$LN7@decode_rle| ; Line 157 ldr r2, [sp, #0x1C] ldr r3, [sp, #0x14] add r3, r2, r3 str r3, [sp, #0x1C] |$LN17@decode_rle| ; Line 159 b |$LN38@decode_rle| |$LN31@decode_rle| ; Line 161 ldr r2, [pc, #0x20] mov r1, #0 ldr r3, [sp, #0x48] ldr r0, [r3] bl av_log ; Line 162 mov r3, #1 str r3, [sp, #0x30] |$LN33@decode_rle| ; Line 163 ldr r0, [sp, #0x30] add sp, sp, #0x3C ldmia sp, {r4, sp, pc} |$LN42@decode_rle| DCD |$SG3055| DCD |__imp___rt_sdiv| |$M3148| ENDP ; |decode_rle| IMPORT |inflateInit_| IMPORT |av_malloc| IMPORT |memset| IMPORT |avcodec_check_dimensions| AREA |.pdata|, PDATA |$T3158| DCD |$LN16@decode_ini| DCD 0x4000bf04 ; Function compile flags: /Odsp AREA |.text|, CODE, ARM |decode_init| PROC ; Line 242 |$LN16@decode_ini| mov r12, sp stmdb sp!, {r0} stmdb sp!, {r4, r12, lr} sub sp, sp, #0x1C |$M3155| ; Line 243 ldr r3, [sp, #0x28] add r3, r3, #0x88 ldr r3, [r3] str r3, [sp, #4] ; Line 246 ldr r2, [sp, #0x28] ldr r3, [sp, #4] str r2, [r3] ; Line 247 ldr r3, [sp, #0x28] add r2, r3, #0x43, 30 mov r3, #0 str r3, [r2] ; Line 249 ldr r3, [sp, #4] add r2, r3, #8 mov r3, #0 str r3, [r2] ; Line 250 ldr r3, [sp, #0x28] add r1, r3, #0x2C ldr r3, [sp, #4] add r2, r3, #0xDC ldr r3, [r1] str r3, [r2] ; Line 252 ldr r3, [sp, #0x28] add r3, r3, #0x28 ldr r2, [r3] ldr r3, [sp, #0x28] add r3, r3, #0x2C ldr r1, [r3] ldr r0, [sp, #0x28] bl avcodec_check_dimensions str r0, [sp, #0xC] ldr r3, [sp, #0xC] cmp r3, #0 bge |$LN11@decode_ini| ; Line 253 mov r3, #1 str r3, [sp, #8] b |$LN12@decode_ini| |$LN11@decode_ini| ; Line 258 mov r2, #0x38 mov r1, #0 ldr r3, [sp, #4] add r0, r3, #0xE0 bl memset ; Line 263 ldr r3, [sp, #0x28] add r3, r3, #0x62, 30 ldr r3, [r3] str r3, [sp, #0x10] ldr r3, [sp, #0x10] cmp r3, #8 beq |$LN8@decode_ini| ldr r3, [sp, #0x10] cmp r3, #0x10 beq |$LN7@decode_ini| ldr r3, [sp, #0x10] cmp r3, #0x18 beq |$LN6@decode_ini| ldr r3, [sp, #0x10] cmp r3, #0x20 beq |$LN5@decode_ini| b |$LN4@decode_ini| |$LN8@decode_ini| ; Line 264 ldr r3, [sp, #0x28] add r2, r3, #0x34 mov r3, #0xE str r3, [r2] b |$LN9@decode_ini| |$LN7@decode_ini| ; Line 265 ldr r3, [sp, #0x28] add r2, r3, #0x34 mov r3, #0xA str r3, [r2] b |$LN9@decode_ini| |$LN6@decode_ini| ; Line 267 ldr r3, [sp, #0x28] add r2, r3, #0x34 mov r3, #3 str r3, [r2] ; Line 268 b |$LN9@decode_ini| |$LN5@decode_ini| ; Line 269 ldr r3, [sp, #0x28] add r2, r3, #0x34 mov r3, #6 str r3, [r2] b |$LN9@decode_ini| |$LN4@decode_ini| ; Line 270 ldr r3, [sp, #0x28] add r3, r3, #0x62, 30 ldr r3, [r3] ldr r2, [pc, #0x19C] mov r1, #0 ldr r0, [sp, #0x28] bl av_log ; Line 271 mvn r3, #0 str r3, [sp, #8] b |$LN12@decode_ini| |$LN9@decode_ini| ; Line 273 ldr r3, [sp, #0x28] add r1, r3, #0x62, 30 ldr r3, [sp, #4] add r2, r3, #0xD0 ldr r3, [r1] str r3, [r2] ; Line 274 ldr r3, [sp, #0x28] add r2, r3, #0x28 ldr r3, [sp, #4] add r3, r3, #0xD0 ldr r2, [r2] ldr r3, [r3] mul r4, r2, r3 ldr r3, [sp, #0x28] add r3, r3, #0x28 ldr r3, [r3] add r1, r3, #0xFE mov r0, #0xFF ldr r3, [pc, #0x134] ldr r3, [r3] mov lr, pc mov pc, r3 add r3, r4, r0 add r2, r3, #2 ldr r3, [sp, #0x28] add r3, r3, #0x2C ldr r3, [r3] mul r3, r2, r3 add r2, r3, #2 ldr r3, [sp, #4] add r3, r3, #0xD4 str r2, [r3] ; Line 277 ldr r3, [sp, #4] add r3, r3, #0xD4 ldr r3, [r3] cmp r3, #0 beq |$LN3@decode_ini| ; Line 278 ldr r3, [sp, #4] add r3, r3, #0xD4 ldr r0, [r3] bl av_malloc str r0, [sp, #0x14] ldr r3, [sp, #4] add r2, r3, #0xD8 ldr r3, [sp, #0x14] str r3, [r2] ldr r3, [sp, #4] add r3, r3, #0xD8 ldr r3, [r3] cmp r3, #0 bne |$LN2@decode_ini| ; Line 279 ldr r2, [pc, #0xAC] mov r1, #0 ldr r0, [sp, #0x28] bl av_log ; Line 280 mov r3, #1 str r3, [sp, #8] b |$LN12@decode_ini| |$LN2@decode_ini| |$LN3@decode_ini| ; Line 285 ldr r3, [sp, #4] add r2, r3, #1, 24 mov r3, #0 str r3, [r2] ; Line 286 ldr r3, [sp, #4] add r2, r3, #0x41, 30 mov r3, #0 str r3, [r2] ; Line 287 ldr r3, [sp, #4] add r2, r3, #0x42, 30 mov r3, #0 str r3, [r2] ; Line 288 mov r2, #0x38 ldr r1, [pc, #0x58] ldr r3, [sp, #4] add r0, r3, #0xE0 bl inflateInit_ str r0, [sp, #0x18] ldr r3, [sp, #0x18] str r3, [sp] ; Line 289 ldr r3, [sp] cmp r3, #0 beq |$LN1@decode_ini| ; Line 290 ldr r3, [sp] ldr r2, [pc, #0x28] mov r1, #0 ldr r0, [sp, #0x28] bl av_log ; Line 291 mov r3, #1 str r3, [sp, #8] b |$LN12@decode_ini| |$LN1@decode_ini| ; Line 295 mov r3, #0 str r3, [sp, #8] |$LN12@decode_ini| ; Line 296 ldr r0, [sp, #8] add sp, sp, #0x1C ldmia sp, {r4, sp, pc} |$LN17@decode_ini| DCD |$SG3114| DCD |$SG3112| DCD |$SG3110| DCD |__imp___rt_sdiv| DCD |$SG3106| |$M3156| ENDP ; |decode_init| IMPORT |inflateEnd| IMPORT |av_freep| AREA |.pdata|, PDATA |$T3165| DCD |$LN6@decode_end| DCD 0x40002004 ; Function compile flags: /Odsp AREA |.text|, CODE, ARM |decode_end| PROC ; Line 306 |$LN6@decode_end| mov r12, sp stmdb sp!, {r0} stmdb sp!, {r12, lr} sub sp, sp, #8 |$M3162| ; Line 307 ldr r3, [sp, #0x10] add r3, r3, #0x88 ldr r3, [r3] str r3, [sp] ; Line 309 ldr r3, [sp] add r0, r3, #0xD8 bl av_freep ; Line 311 ldr r3, [sp] add r3, r3, #8 ldr r3, [r3] cmp r3, #0 beq |$LN1@decode_end| ; Line 312 ldr r3, [sp] add r1, r3, #8 ldr r0, [sp, #0x10] ldr r3, [sp, #0x10] add r3, r3, #0x42, 30 ldr r3, [r3] mov lr, pc mov pc, r3 |$LN1@decode_end| ; Line 314 ldr r3, [sp] add r0, r3, #0xE0 bl inflateEnd ; Line 317 mov r3, #0 str r3, [sp, #4] ; Line 318 ldr r0, [sp, #4] add sp, sp, #8 ldmia sp, {sp, pc} |$M3163| ENDP ; |decode_end| END