[*] Binary protection state of video-scene-provider
No RELRO No Canary found NX disabled No PIE RPATH No RUNPATH No Symbols
[*] Function printf tear down of video-scene-provider
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/share/addon/packages/autostart/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk_extract/data.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider/usr/bin/video-scene-provider @ 0x4078ac */
| #include <stdint.h>
|
; (fcn) fcn.004078ac () | void fcn_004078ac () {
0x004078ac addiu sp, sp, -0x38 |
0x004078b0 lw v0, 0x30(a0) | v0 = *((a0 + 12));
0x004078b4 sw s0, 0x1c(sp) | *(var_1ch) = s0;
0x004078b8 sll v0, v0, 2 | v0 <<= 2;
0x004078bc move s0, a0 | s0 = a0;
0x004078c0 lw a0, 0x34(a0) | a0 = *((a0 + 13));
0x004078c4 addiu v0, v0, -4 | v0 += -4;
0x004078c8 sw ra, 0x34(sp) | *(var_34h) = ra;
0x004078cc lwx a0, v0(a0) | __asm ("lwx a0, v0(a0)");
0x004078d0 sw s1, 0x20(sp) | *(var_20h) = s1;
0x004078d4 sw s5, 0x30(sp) | *(var_30h) = s5;
0x004078d8 move s1, a1 | s1 = a1;
0x004078dc sw s4, 0x2c(sp) | *(var_2ch) = s4;
0x004078e0 sw s3, 0x28(sp) | *(var_28h) = s3;
0x004078e4 sw s2, 0x24(sp) | *(var_24h) = s2;
0x004078e8 jal 0x45a390 | fcn_0045a390 ();
0x004078ec lw a2, 0x30(s0) | a2 = *((s0 + 12));
0x004078f0 lw a1, 0x34(s0) | a1 = *((s0 + 13));
0x004078f4 addiu a2, a2, -1 | a2 += -1;
0x004078f8 sll a2, a2, 2 | a2 <<= 2;
0x004078fc addiu a0, a1, 4 | a0 = a1 + 4;
0x00407900 jal 0x482340 | fcn_00482340 ();
0x00407904 lw v1, 0x18(s0) | v1 = *((s0 + 6));
0x00407908 lw v0, 0x20(s0) | v0 = *((s0 + 8));
| if (v1 == v0) {
0x0040790c beql v1, v0, 0x407a40 | goto label_2;
| }
0x00407910 lw v1, 0x1c(s0) | v1 = *((s0 + 7));
0x00407914 lw v0, 0x34(s0) | v0 = *((s0 + 13));
| do {
0x00407918 move a0, s1 | a0 = s1;
0x0040791c sw s1, (v0) | *(v0) = s1;
0x00407920 jal 0x4596dc | fcn_004596dc ();
0x00407924 lw a0, 0x40(s0) | a0 = *((s0 + 16));
| if (a0 == 0) {
0x00407928 beql a0, zero, 0x407aa0 | goto label_3;
| }
0x0040792c lw a2, 0x30(s0) | a2 = *((s0 + 12));
0x00407930 move a2, v0 | a2 = v0;
| label_0:
0x00407934 move a3, v1 | a3 = v1;
0x00407938 jal 0x40e990 | fcn_0040e990 ();
0x0040793c lw a2, 0x30(s0) | a2 = *((s0 + 12));
0x00407940 lw a1, 0x3c(s0) | a1 = *((s0 + 15));
0x00407944 addiu a2, a2, -1 | a2 += -1;
0x00407948 addiu a0, a1, 1 | a0 = a1 + 1;
0x0040794c move s1, v0 | s1 = v0;
0x00407950 jal 0x482340 | fcn_00482340 ();
0x00407954 lw a0, 0x44(s0) | a0 = *((s0 + 17));
0x00407958 lw s4, 0x3c(s0) | s4 = *((s0 + 15));
0x0040795c lw s3, (a0) | s3 = *(a0);
| if (s1 == 0) {
0x00407960 beqz s1, 0x407ac4 | goto label_4;
| }
0x00407964 move v1, zero | v1 = 0;
| if (s3 != 0) {
0x00407968 beqz s3, 0x4079e4 |
0x0040796c move a0, s1 | a0 = s1;
0x00407970 jal 0x461c88 | fcn_00461c88 ();
0x00407974 move a0, s3 | a0 = s3;
0x00407978 move s2, v0 | s2 = v0;
0x0040797c jal 0x461c88 | fcn_00461c88 ();
0x00407980 move a1, v0 | a1 = v0;
0x00407984 move a0, s2 | a0 = s2;
0x00407988 jal 0x4711a8 | fcn_004711a8 ();
0x0040798c move a0, s1 | a0 = s1;
0x00407990 sltu s2, zero, v0 | s2 = (0 < v0) ? 1 : 0;
0x00407994 jal 0x461d48 | fcn_00461d48 ();
0x00407998 move a0, s3 | a0 = s3;
0x0040799c move s5, v0 | s5 = v0;
0x004079a0 jal 0x461d48 | fcn_00461d48 ();
0x004079a4 move a1, v0 | a1 = v0;
0x004079a8 move a0, s5 | a0 = s5;
0x004079ac jal 0x4711a8 | fcn_004711a8 ();
0x004079b0 sltu v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
0x004079b4 move a0, s1 | a0 = s1;
0x004079b8 or s2, s2, v0 | s2 |= v0;
0x004079bc jal 0x461e08 | fcn_00461e08 ();
0x004079c0 move a0, s3 | a0 = s3;
0x004079c4 move s3, v0 | s3 = v0;
0x004079c8 jal 0x461e08 | fcn_00461e08 ();
0x004079cc move a1, v0 | a1 = v0;
0x004079d0 move a0, s3 | a0 = s3;
0x004079d4 jal 0x4711a8 | fcn_004711a8 ();
0x004079d8 sltu v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
0x004079dc lw a0, 0x44(s0) | a0 = *((s0 + 17));
0x004079e0 or v1, s2, v0 | v1 = s2 | v0;
| }
| label_1:
0x004079e4 lw v0, 0x30(s0) | v0 = *((s0 + 12));
0x004079e8 sb v1, (s4) | *(s4) = v1;
0x004079ec sll v0, v0, 2 | v0 <<= 2;
0x004079f0 addiu v0, v0, -4 | v0 += -4;
0x004079f4 lwx a0, v0(a0) | __asm ("lwx a0, v0(a0)");
0x004079f8 jal 0x462244 | fcn_00462244 ();
0x004079fc lw a2, 0x30(s0) | a2 = *((s0 + 12));
0x00407a00 lw a1, 0x44(s0) | a1 = *((s0 + 17));
0x00407a04 addiu a2, a2, -1 | a2 += -1;
0x00407a08 sll a2, a2, 2 | a2 <<= 2;
0x00407a0c addiu a0, a1, 4 | a0 = a1 + 4;
0x00407a10 jal 0x482340 | fcn_00482340 ();
0x00407a14 lw v0, 0x44(s0) | v0 = *((s0 + 17));
0x00407a18 lw ra, 0x34(sp) | ra = *(var_34h);
0x00407a1c lw s5, 0x30(sp) | s5 = *(var_30h);
0x00407a20 sw s1, (v0) | *(v0) = s1;
0x00407a24 lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x00407a28 lw s3, 0x28(sp) | s3 = *(var_28h);
0x00407a2c lw s2, 0x24(sp) | s2 = *(var_24h);
0x00407a30 lw s1, 0x20(sp) | s1 = *(var_20h);
0x00407a34 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00407a38 addiu sp, sp, 0x38 |
0x00407a3c jr ra | return v1;
| label_2:
0x00407a40 lw v0, 0x24(s0) | v0 = *((s0 + 9));
0x00407a44 lw v0, 0x34(s0) | v0 = *((s0 + 13));
0x00407a48 bnel v1, v0, 0x407918 |
| } while (v1 == v0);
0x00407a4c lw v1, (s0) | v1 = *(s0);
0x00407a50 lw a0, 0x2c(s0) | a0 = *((s0 + 11));
0x00407a54 lw a2, 0x28(s0) | a2 = *((s0 + 10));
0x00407a58 sra v0, v1, 0x1f | v0 = v1 >> 0x1f;
0x00407a5c mult a0, v1 | __asm ("mult a0, v1");
0x00407a60 madd a2, v0 | __asm ("madd a2, v0");
0x00407a64 mflo v0 | __asm ("mflo v0");
0x00407a68 multu a2, v1 | __asm ("multu a2, v1");
0x00407a6c mfhi a3 | __asm ("mfhi a3");
0x00407a70 mflo a2 | __asm ("mflo a2");
0x00407a74 move a0, s1 | a0 = s1;
0x00407a78 addu a3, v0, a3 | a3 = v0 + a3;
0x00407a7c jal 0x459700 | fcn_00459700 ();
0x00407a80 lw v0, 0x34(s0) | v0 = *((s0 + 13));
0x00407a84 move a0, s1 | a0 = s1;
0x00407a88 sw s1, (v0) | *(v0) = s1;
0x00407a8c jal 0x4596dc | fcn_004596dc ();
0x00407a90 lw a0, 0x40(s0) | a0 = *((s0 + 16));
0x00407a94 move a2, v0 | a2 = v0;
| if (a0 != 0) {
0x00407a98 bnez a0, 0x407934 | goto label_0;
| }
0x00407a9c lw a2, 0x30(s0) | a2 = *((s0 + 12));
| label_3:
0x00407aa0 lw a1, 0x3c(s0) | a1 = *((s0 + 15));
0x00407aa4 addiu a2, a2, -1 | a2 += -1;
0x00407aa8 addiu a0, a1, 1 | a0 = a1 + 1;
0x00407aac jal 0x482340 | fcn_00482340 ();
0x00407ab0 move s1, zero | s1 = 0;
0x00407ab4 lw s4, 0x3c(s0) | s4 = *((s0 + 15));
0x00407ab8 lw a0, 0x44(s0) | a0 = *((s0 + 17));
0x00407abc move v1, zero | v1 = 0;
0x00407ac0 b 0x4079e4 | goto label_1;
| label_4:
0x00407ac4 move v1, zero | v1 = 0;
0x00407ac8 b 0x4079e4 | goto label_1;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/share/addon/packages/autostart/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk_extract/data.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider/usr/bin/video-scene-provider @ 0x407cbc */
| #include <stdint.h>
|
; (fcn) fcn.00407cbc () | void fcn_00407cbc () {
| if (a0 == 0) {
0x00407cbc beqz a0, 0x407d68 | goto label_0;
| }
0x00407cc0 nop |
0x00407cc4 addiu sp, sp, -0x28 |
0x00407cc8 sw s0, 0x18(sp) | *(var_18h) = s0;
0x00407ccc move s0, a0 | s0 = a0;
0x00407cd0 lw a0, 0x38(a0) | a0 = *((a0 + 14));
0x00407cd4 sw ra, 0x24(sp) | *(var_24h) = ra;
0x00407cd8 sw s2, 0x20(sp) | *(var_20h) = s2;
0x00407cdc sw s1, 0x1c(sp) | *(var_1ch) = s1;
0x00407ce0 jal 0x464588 | fcn_00464588 ();
0x00407ce4 lw v0, 0x30(s0) | v0 = *((s0 + 12));
| if (v0 <= 0) {
0x00407ce8 blez v0, 0x407d44 | goto label_1;
| }
0x00407cec nop |
0x00407cf0 move s1, zero | s1 = 0;
0x00407cf4 lw a0, 0x34(s0) | a0 = *((s0 + 13));
| do {
0x00407cf8 sll s2, s1, 2 | s2 = s1 << 2;
0x00407cfc lwx a0, s2(a0) | __asm ("lwx a0, s2(a0)");
0x00407d00 addiu s1, s1, 1 | s1++;
| if (a0 != 0) {
0x00407d04 beqz a0, 0x407d10 |
0x00407d08 jal 0x45a390 | fcn_0045a390 ();
0x00407d0c nop |
| }
0x00407d10 lw a0, 0x44(s0) | a0 = *((s0 + 17));
0x00407d14 lwx a0, s2(a0) | __asm ("lwx a0, s2(a0)");
0x00407d18 jal 0x462244 | fcn_00462244 ();
0x00407d1c lw v0, 0x30(s0) | v0 = *((s0 + 12));
0x00407d20 slt v0, s1, v0 | v0 = (s1 < v0) ? 1 : 0;
0x00407d24 lw a0, 0x34(s0) | a0 = *((s0 + 13));
0x00407d28 bnel v0, zero, 0x407cf8 |
| } while (v0 == 0);
0x00407d2c lw a0, 0x34(s0) | a0 = *((s0 + 13));
0x00407d30 jal 0x481d20 | fcn_00481d20 ();
0x00407d34 lw a0, 0x3c(s0) | a0 = *((s0 + 15));
0x00407d38 jal 0x481d20 | fcn_00481d20 ();
0x00407d3c lw a0, 0x44(s0) | a0 = *((s0 + 17));
0x00407d40 jal 0x481d20 | fcn_00481d20 ();
| label_1:
0x00407d44 lw a0, 0x40(s0) | a0 = *((s0 + 16));
0x00407d48 jal 0x40e950 | fcn_0040e950 ();
0x00407d4c lw ra, 0x24(sp) | ra = *(var_24h);
0x00407d50 lw s2, 0x20(sp) | s2 = *(var_20h);
0x00407d54 lw s1, 0x1c(sp) | s1 = *(var_1ch);
0x00407d58 move a0, s0 | a0 = s0;
0x00407d5c lw s0, 0x18(sp) | s0 = *(var_18h);
0x00407d60 j 0x481d20 | void (*0x481d20)() ();
0x00407d64 addiu sp, sp, 0x28 |
| label_0:
0x00407d68 jr ra | return v0;
0x00407d6c nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/share/addon/packages/autostart/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk_extract/data.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider/usr/bin/video-scene-provider @ 0x410168 */
| #include <stdint.h>
|
; (fcn) fcn.00410168 () | void fcn_00410168 () {
0x00410168 addiu sp, sp, -0x160 |
0x0041016c sw ra, 0x15c(sp) | *(var_15ch) = ra;
0x00410170 sw fp, 0x158(sp) | *(var_158h) = fp;
0x00410174 sw s7, 0x154(sp) | *(var_154h) = s7;
0x00410178 sw s6, 0x150(sp) | *(var_150h) = s6;
0x0041017c sw s5, 0x14c(sp) | *(var_14ch) = s5;
0x00410180 sw s4, 0x148(sp) | *(var_148h) = s4;
0x00410184 sw s3, 0x144(sp) | *(var_144h) = s3;
0x00410188 sw s2, 0x140(sp) | *(var_140h) = s2;
0x0041018c sw s1, 0x13c(sp) | *(var_13ch) = s1;
0x00410190 sw s0, 0x138(sp) | *(var_138h) = s0;
| if (a0 == 0) {
0x00410194 beqz a0, 0x41024c | goto label_16;
| }
0x00410198 lw s1, 0x3c(a0) | s1 = *((a0 + 15));
0x0041019c sltiu v0, s1, 0x33 | v0 = (s1 < 0x33) ? 1 : 0;
0x004101a0 move s0, a0 | s0 = a0;
| if (v0 == 0) {
0x004101a4 beqz v0, 0x410290 | goto label_17;
| }
0x004101a8 lw a0, 0x160(a0) | a0 = *((a0 + 88));
0x004101ac jal 0x471248 | fcn_00471248 ();
0x004101b0 slt v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
0x004101b4 addiu a0, zero, 0x32 | a0 = 0x32;
0x004101b8 move a1, v0 | a1 = v0;
0x004101bc lw v1, 0x34(s0) | v1 = *((s0 + 13));
| if (s1 == a0) {
0x004101c0 beq s1, a0, 0x4103f8 | goto label_18;
| }
0x004101c4 addu v1, v1, v0 | v1 += v0;
| if (s1 != 0) {
0x004101c8 bnez s1, 0x410350 | goto label_19;
| }
0x004101cc sb v0, (s0) | *(s0) = v0;
0x004101d0 addiu v0, zero, 1 | v0 = 1;
0x004101d4 sw v0, 0x3c(s0) | *((s0 + 15)) = v0;
0x004101d8 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
0x004101dc sw v1, 0x34(s0) | *((s0 + 13)) = v1;
0x004101e0 sw zero, 0x44(s0) | *((s0 + 17)) = 0;
0x004101e4 sw zero, 0x40(s0) | *((s0 + 16)) = 0;
| if (v0 == 0) {
0x004101e8 beqz v0, 0x4102c4 | goto label_20;
| }
0x004101ec lw v0, 0x50(s0) | v0 = *((s0 + 20));
| do {
0x004101f0 slt v1, v0, v1 | v1 = (v0 < v1) ? 1 : 0;
0x004101f4 xori v0, v1, 1 | v0 = v1 ^ 1;
0x004101f8 sb v1, 0x48(s0) | *((s0 + 72)) = v1;
0x004101fc sb v0, 0x49(s0) | *((s0 + 73)) = v0;
| if (v0 == 0) {
0x00410200 beqz v0, 0x4102d8 | goto label_7;
| }
| label_0:
0x00410204 lw v0, 0x90(s0) | v0 = *((s0 + 36));
0x00410208 sltiu v1, v0, 0xb | v1 = (v0 < 0xb) ? 1 : 0;
0x0041020c addiu a0, zero, 0xa | a0 = 0xa;
| if (v1 == 0) {
0x00410210 beqz v1, 0x41054c | goto label_21;
| }
0x00410214 lbu v1, 0x48(s0) | v1 = *((s0 + 72));
| if (v0 == a0) {
0x00410218 beq v0, a0, 0x4108f4 | goto label_22;
| }
0x0041021c lw s1, 0x98(s0) | s1 = *((s0 + 38));
| if (v0 == 0) {
0x00410220 bnel v0, zero, 0x410578 | goto label_23;
| }
0x00410224 sb v1, 0x5c(s0) | *((s0 + 92)) = v1;
0x00410228 sw zero, 0x98(s0) | *((s0 + 38)) = 0;
0x0041022c sw zero, 0x94(s0) | *((s0 + 37)) = 0;
0x00410230 move a0, zero | a0 = 0;
0x00410234 jal 0x4821a0 | fcn_004821a0 ();
0x00410238 lw v1, 0x90(s0) | v1 = *((s0 + 36));
0x0041023c sw v0, 0x68(s0) | *((s0 + 26)) = v0;
0x00410240 addiu v1, v1, 1 | v1++;
0x00410244 sw v1, 0x90(s0) | *((s0 + 36)) = v1;
0x00410248 b 0x4102d8 | goto label_7;
| label_16:
0x0041024c lui v0, 0x49 | v0 = 0x490000;
0x00410250 lw v0, 0x3b60(v0) | v0 = *((v0 + 3800));
0x00410254 slti v0, v0, -2 | v0 = (v0 < -2) ? 1 : 0;
0x00410258 lui v0, 0x49 | v0 = 0x490000;
| if (v0 == 0) {
0x0041025c beqz v0, 0x410470 | goto label_24;
| }
0x00410260 lw ra, 0x15c(sp) | ra = *(var_15ch);
| label_2:
0x00410264 lw fp, 0x158(sp) | fp = *(var_158h);
0x00410268 lw s7, 0x154(sp) | s7 = *(var_154h);
0x0041026c lw s6, 0x150(sp) | s6 = *(var_150h);
0x00410270 lw s5, 0x14c(sp) | s5 = *(var_14ch);
0x00410274 lw s4, 0x148(sp) | s4 = *(var_148h);
0x00410278 lw s3, 0x144(sp) | s3 = *(var_144h);
0x0041027c lw s2, 0x140(sp) | s2 = *(var_140h);
0x00410280 lw s1, 0x13c(sp) | s1 = *(var_13ch);
0x00410284 lw s0, 0x138(sp) | s0 = *(var_138h);
0x00410288 addiu sp, sp, 0x160 |
0x0041028c jr ra | return v0;
| label_17:
0x00410290 lui v0, 0x49 | v0 = 0x490000;
0x00410294 lw v0, 0x3b60(v0) | v0 = *((v0 + 3800));
0x00410298 slti v0, v0, -2 | v0 = (v0 < -2) ? 1 : 0;
0x0041029c lui v0, 0x49 | v0 = 0x490000;
| if (v0 == 0) {
0x004102a0 beqz v0, 0x4104f4 | goto label_25;
| }
0x004102a4 addiu a2, zero, 0x164 | a2 = 0x164;
| label_5:
0x004102a8 move a1, zero | a1 = 0;
0x004102ac move a0, s0 | a0 = s0;
0x004102b0 jal 0x481be0 | fcn_00481be0 ();
0x004102b4 move v1, zero | v1 = 0;
| label_1:
0x004102b8 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
0x004102bc lw v0, 0x50(s0) | v0 = *((s0 + 20));
0x004102c0 bnel v0, zero, 0x4101f0 |
| } while (v0 == 0);
| label_20:
0x004102c4 lw v0, 0x4c(s0) | v0 = *((s0 + 19));
0x004102c8 slt v0, v0, v1 | v0 = (v0 < v1) ? 1 : 0;
0x004102cc sb v0, 0x48(s0) | *((s0 + 72)) = v0;
0x004102d0 sb v0, 0x49(s0) | *((s0 + 73)) = v0;
| if (v0 != 0) {
0x004102d4 bnez v0, 0x410204 | goto label_0;
| }
| label_7:
0x004102d8 addiu a0, sp, 0x124 | a0 = sp + 0x124;
| label_6:
0x004102dc move a1, zero | a1 = 0;
0x004102e0 jal 0x481cd0 | fcn_00481cd0 ();
0x004102e4 lw v0, 0x58(s0) | v0 = *((s0 + 22));
0x004102e8 lw v1, 0x128(sp) | v1 = *(var_128h);
0x004102ec lw a0, 0x54(s0) | a0 = *((s0 + 21));
0x004102f0 subu v1, v1, v0 | __asm ("subu v1, v1, v0");
0x004102f4 lw v0, 0x124(sp) | v0 = *(var_124h);
0x004102f8 subu v0, v0, a0 | __asm ("subu v0, v0, a0");
| if (v1 < 0) {
0x004102fc bltz v1, 0x4103f0 | goto label_26;
| }
| label_3:
0x00410300 lbu v1, 0x49(s0) | v1 = *((s0 + 73));
0x00410304 lw v0, 0x38(s0) | v0 = *((s0 + 14));
| if (v1 == 0) {
0x00410308 bnel v1, zero, 0x410380 | goto label_27;
| }
0x0041030c slti v0, v0, 0xe11 | v0 = (v0 < 0xe11) ? 1 : 0;
0x00410310 lbu v0, 0x4a(s0) | v0 = *((s0 + 74));
| if (v0 != 0) {
0x00410314 bnel v0, zero, 0x410374 |
0x00410318 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
| if (v0 == 0) {
0x0041031c beql v0, zero, 0x410374 | goto label_28;
| }
0x00410320 lbu v0, 0x4a(s0) | v0 = *((s0 + 74));
0x00410324 lw v0, 0x38(s0) | v0 = *((s0 + 14));
0x00410328 addiu v1, zero, 1 | v1 = 1;
0x0041032c addiu v1, zero, 2 | v1 = 2;
| if (v0 == v1) {
0x00410330 beq v0, v1, 0x4105bc | goto label_29;
| }
0x00410334 lui a3, 0x47 | a3 = 0x470000;
| if (v0 != v1) {
0x00410338 bne v0, v1, 0x410394 | goto label_30;
| }
0x0041033c lui v0, 0x49 | v0 = 0x490000;
0x00410340 lw a0, 0x3b68(v0) | a0 = *((v0 + 3802));
0x00410344 lw a2, 0x15c(s0) | a2 = *((s0 + 87));
| /* str.Critical */
0x00410348 addiu a3, a3, 0x7070 | a3 += 0x7070;
0x0041034c b 0x4104e0 | goto label_8;
| label_19:
0x00410350 lw v0, 0x44(s0) | v0 = *((s0 + 17));
0x00410354 addiu s1, s1, 1 | s1++;
0x00410358 addiu v0, v0, 1 | v0++;
0x0041035c addu a0, s0, v0 | a0 = s0 + v0;
0x00410360 sw v1, 0x34(s0) | *((s0 + 13)) = v1;
0x00410364 sw v0, 0x44(s0) | *((s0 + 17)) = v0;
0x00410368 sb a1, (a0) | *(a0) = a1;
0x0041036c sw s1, 0x3c(s0) | *((s0 + 15)) = s1;
0x00410370 b 0x4102b8 | goto label_1;
| }
| label_28:
0x00410374 lw ra, 0x15c(sp) | ra = *(var_15ch);
| if (v0 == 0) {
0x00410378 beqz v0, 0x410264 | goto label_2;
| }
0x0041037c lw v0, 0x38(s0) | v0 = *((s0 + 14));
| label_27:
0x00410380 addiu v1, zero, 1 | v1 = 1;
0x00410384 addiu v1, zero, 2 | v1 = 2;
| if (v0 == v1) {
0x00410388 beq v0, v1, 0x410448 | goto label_31;
| }
0x0041038c lui v1, 0x49 | v1 = 0x490000;
| if (v0 == v1) {
0x00410390 beq v0, v1, 0x4104c8 | goto label_32;
| }
| label_30:
0x00410394 lui v0, 0x49 | v0 = 0x490000;
| if (v0 == 0) {
0x00410398 beqz v0, 0x410630 | goto label_33;
| }
0x0041039c lw v0, 0x3b60(v0) | v0 = *((v0 + 3800));
0x004103a0 slti v0, v0, -2 | v0 = (v0 < -2) ? 1 : 0;
0x004103a4 lui v0, 0x49 | v0 = 0x490000;
| if (v0 == 0) {
0x004103a8 beqz v0, 0x410764 | goto label_34;
| }
0x004103ac lw v0, 0x124(sp) | v0 = *(var_124h);
| do {
| label_4:
0x004103b0 lw ra, 0x15c(sp) | ra = *(var_15ch);
0x004103b4 sw v0, 0x54(s0) | *((s0 + 21)) = v0;
0x004103b8 lw v0, 0x128(sp) | v0 = *(var_128h);
0x004103bc sb zero, 0x4a(s0) | *((s0 + 74)) = 0;
0x004103c0 sw v0, 0x58(s0) | *((s0 + 22)) = v0;
0x004103c4 lw fp, 0x158(sp) | fp = *(var_158h);
0x004103c8 lw s7, 0x154(sp) | s7 = *(var_154h);
0x004103cc lw s6, 0x150(sp) | s6 = *(var_150h);
0x004103d0 lw s5, 0x14c(sp) | s5 = *(var_14ch);
0x004103d4 lw s4, 0x148(sp) | s4 = *(var_148h);
0x004103d8 lw s3, 0x144(sp) | s3 = *(var_144h);
0x004103dc lw s2, 0x140(sp) | s2 = *(var_140h);
0x004103e0 lw s1, 0x13c(sp) | s1 = *(var_13ch);
0x004103e4 lw s0, 0x138(sp) | s0 = *(var_138h);
0x004103e8 addiu sp, sp, 0x160 |
0x004103ec jr ra | return v0;
| label_26:
0x004103f0 addiu v0, v0, -1 | v0 += -1;
0x004103f4 b 0x410300 | goto label_3;
| label_18:
0x004103f8 lw a3, 0x40(s0) | a3 = *((s0 + 16));
0x004103fc lui a0, 0x51eb | a0 = 0x51eb0000;
0x00410400 addiu a2, a3, 1 | a2 = a3 + 1;
0x00410404 ori a0, a0, 0x851f | a0 |= 0x851f;
0x00410408 mult a2, a0 | __asm ("mult a2, a0");
0x0041040c mfhi a0 | __asm ("mfhi a0");
0x00410410 addu t0, s0, a3 | t0 = s0 + a3;
0x00410414 sra t1, a2, 0x1f | t1 = a2 >> 0x1f;
0x00410418 lbu t2, (t0) | t2 = *(t0);
0x0041041c sra a0, a0, 4 | a0 >>= 4;
0x00410420 subu a1, v0, t2 | __asm ("subu a1, v0, t2");
0x00410424 subu a0, a0, t1 | __asm ("subu a0, a0, t1");
0x00410428 addu v1, a1, v1 | v1 = a1 + v1;
0x0041042c mul a1, a0, s1 | __asm ("mul a1, a0, s1");
0x00410430 sw v1, 0x34(s0) | *((s0 + 13)) = v1;
0x00410434 sb v0, (t0) | *(t0) = v0;
0x00410438 sw a3, 0x44(s0) | *((s0 + 17)) = a3;
0x0041043c subu s1, a2, a1 | __asm ("subu s1, a2, a1");
0x00410440 sw s1, 0x40(s0) | *((s0 + 16)) = s1;
0x00410444 b 0x4102b8 | goto label_1;
| label_31:
0x00410448 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
0x0041044c lw a1, 0x15c(s0) | a1 = *((s0 + 87));
| if (v0 != 0) {
0x00410450 bnez v0, 0x410624 | goto label_35;
| }
0x00410454 lui a2, 0x47 | a2 = "Good";
| /* str.Good */
0x00410458 addiu a2, a2, 0x707c |
| label_9:
0x0041045c lui a0, 0x47 | a0 = "Scene %d status: %s\n";
| /* str.Scene__d_status:__s_n */
0x00410460 addiu a0, a0, 0x70d4 |
0x00410464 jal 0x482020 | fcn_00482020 ();
0x00410468 lw v0, 0x124(sp) | v0 = *(var_124h);
0x0041046c b 0x4103b0 |
| } while (1);
| label_24:
0x00410470 lui a0, 0x47 | a0 = 0x476f98;
| /* esilref: 'scene_degrad_stats.c' */
0x00410474 addiu a0, a0, 0x6f98 |
0x00410478 lw s0, 0x3b6c(v0) | s0 = *((v0 + 3803));
0x0041047c jal 0x481ad0 | fcn_00481ad0 ();
0x00410480 lui v1, 0x47 | v1 = "NULL argument degrad_stats";
| /* str.NULL_argument_degrad_stats */
0x00410484 addiu v1, v1, 0x7084 |
0x00410488 lui a2, 0x47 | a2 = 0x470000;
0x0041048c move a1, v0 | a1 = v0;
0x00410490 sw v1, 0x10(sp) | *(var_10h) = v1;
0x00410494 addiu a3, zero, 0xc0 | a3 = 0xc0;
| /* str.scene_degrad_stats_analyze */
0x00410498 addiu a2, a2, 0x71f8 | a2 += 0x71f8;
0x0041049c move t9, s0 | t9 = s0;
0x004104a0 addiu a0, zero, -2 | a0 = -2;
0x004104a4 jalr t9 | t9 ();
0x004104a8 lui v0, 0x49 | v0 = 0x490000;
0x004104ac lw v0, 0x3b70(v0) | v0 = *((v0 + 3804));
| if (v0 <= 0) {
0x004104b0 blezl v0, 0x410264 | goto label_2;
| }
0x004104b4 lw ra, 0x15c(sp) | ra = *(var_15ch);
0x004104b8 jal 0x481b40 | fcn_00481b40 ();
0x004104bc nop |
0x004104c0 lw ra, 0x15c(sp) | ra = *(var_15ch);
0x004104c4 b 0x410264 | goto label_2;
| label_32:
0x004104c8 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
0x004104cc lw a0, 0x3b68(v1) | a0 = *((v1 + 3802));
0x004104d0 lw a2, 0x15c(s0) | a2 = *((s0 + 87));
| if (v0 != 0) {
0x004104d4 bnez v0, 0x4105b0 | goto label_36;
| }
0x004104d8 lui a3, 0x47 | a3 = "Good";
| /* str.Good */
0x004104dc addiu a3, a3, 0x707c |
| label_8:
0x004104e0 lui a1, 0x47 | a1 = "Scene %d status: %s\n";
| /* str.Scene__d_status:__s_n */
0x004104e4 addiu a1, a1, 0x70d4 |
0x004104e8 jal 0x482180 | fcn_00482180 ();
0x004104ec lw v0, 0x124(sp) | v0 = *(var_124h);
0x004104f0 b 0x4103b0 | goto label_4;
| label_25:
0x004104f4 lui a0, 0x47 | a0 = 0x476f98;
| /* esilref: 'scene_degrad_stats.c' */
0x004104f8 addiu a0, a0, 0x6f98 |
0x004104fc lw s1, 0x3b6c(v0) | s1 = *((v0 + 3803));
0x00410500 jal 0x481ad0 | fcn_00481ad0 ();
0x00410504 lui v1, 0x47 | v1 = "Invalid parameter n_data";
| /* str.Invalid_parameter_n_data */
0x00410508 addiu v1, v1, 0x70a0 |
0x0041050c lui a2, 0x47 | a2 = 0x470000;
0x00410510 move a1, v0 | a1 = v0;
0x00410514 sw v1, 0x10(sp) | *(var_10h) = v1;
0x00410518 addiu a3, zero, 0xf7 | a3 = 0xf7;
| /* str.scene_degrad_stats_push */
0x0041051c addiu a2, a2, 0x71e0 | a2 += 0x71e0;
0x00410520 move t9, s1 | t9 = s1;
0x00410524 addiu a0, zero, -2 | a0 = -2;
0x00410528 jalr t9 | t9 ();
0x0041052c lui v0, 0x49 | v0 = 0x490000;
0x00410530 lw v0, 0x3b70(v0) | v0 = *((v0 + 3804));
| if (v0 <= 0) {
0x00410534 blezl v0, 0x4102a8 | goto label_5;
| }
0x00410538 addiu a2, zero, 0x164 | a2 = 0x164;
0x0041053c jal 0x481b40 | fcn_00481b40 ();
0x00410540 nop |
0x00410544 addiu a2, zero, 0x164 | a2 = 0x164;
0x00410548 b 0x4102a8 | goto label_5;
| label_21:
0x0041054c lui v0, 0x49 | v0 = 0x490000;
0x00410550 lw v0, 0x3b60(v0) | v0 = *((v0 + 3800));
0x00410554 slti v0, v0, -2 | v0 = (v0 < -2) ? 1 : 0;
| if (v0 == 0) {
0x00410558 beql v0, zero, 0x4105cc | goto label_37;
| }
0x0041055c lui v0, 0x49 | v0 = 0x490000;
0x00410560 addiu a2, zero, 0x40 | a2 = 0x40;
| do {
| label_10:
0x00410564 move a1, zero | a1 = 0;
0x00410568 addiu a0, s0, 0x5c | a0 = s0 + 0x5c;
0x0041056c jal 0x481be0 | fcn_00481be0 ();
0x00410570 addiu a0, sp, 0x124 | a0 = sp + 0x124;
0x00410574 b 0x4102dc | goto label_6;
| label_23:
0x00410578 move a0, zero | a0 = 0;
0x0041057c addiu v0, s1, 1 | v0 = s1 + 1;
0x00410580 addu a1, s0, v0 | a1 = s0 + v0;
0x00410584 sw v0, 0x98(s0) | *((s0 + 38)) = v0;
0x00410588 sb v1, 0x5c(a1) | *((a1 + 92)) = v1;
0x0041058c jal 0x4821a0 | fcn_004821a0 ();
0x00410590 addiu v1, s1, 3 | v1 = s1 + 3;
0x00410594 lw a0, 0x90(s0) | a0 = *((s0 + 36));
0x00410598 sll v1, v1, 2 | v1 <<= 2;
0x0041059c addu v1, s0, v1 | v1 = s0 + v1;
0x004105a0 addiu a0, a0, 1 | a0++;
0x004105a4 sw v0, 0x60(v1) | *((v1 + 24)) = v0;
0x004105a8 sw a0, 0x90(s0) | *((s0 + 36)) = a0;
0x004105ac b 0x4102d8 | goto label_7;
| label_36:
0x004105b0 lui a3, 0x47 | a3 = "Critical";
| /* str.Critical */
0x004105b4 addiu a3, a3, 0x7070 |
0x004105b8 b 0x4104e0 | goto label_8;
| label_29:
0x004105bc lui a2, 0x47 | a2 = 0x470000;
0x004105c0 lw a1, 0x15c(s0) | a1 = *((s0 + 87));
| /* str.Critical */
0x004105c4 addiu a2, a2, 0x7070 | a2 += 0x7070;
0x004105c8 b 0x41045c | goto label_9;
| label_37:
0x004105cc lui a0, 0x47 | a0 = 0x476f98;
| /* esilref: 'scene_degrad_stats.c' */
0x004105d0 addiu a0, a0, 0x6f98 |
0x004105d4 lw s1, 0x3b6c(v0) | s1 = *((v0 + 3803));
0x004105d8 jal 0x481ad0 | fcn_00481ad0 ();
0x004105dc lui v1, 0x47 | v1 = "Invalid argument n_data";
| /* str.Invalid_argument_n_data */
0x004105e0 addiu v1, v1, 0x70bc |
0x004105e4 lui a2, 0x47 | a2 = 0x470000;
0x004105e8 move a1, v0 | a1 = v0;
0x004105ec sw v1, 0x10(sp) | *(var_10h) = v1;
0x004105f0 addiu a3, zero, 0x122 | a3 = 0x122;
| /* str.scene_degrad_switch_push */
0x004105f4 addiu a2, a2, 0x71c4 | a2 += 0x71c4;
0x004105f8 move t9, s1 | t9 = s1;
0x004105fc addiu a0, zero, -2 | a0 = -2;
0x00410600 jalr t9 | t9 ();
0x00410604 lui v0, 0x49 | v0 = 0x490000;
0x00410608 lw v0, 0x3b70(v0) | v0 = *((v0 + 3804));
0x0041060c blezl v0, 0x410564 |
| } while (v0 <= 0);
0x00410610 addiu a2, zero, 0x40 | a2 = 0x40;
0x00410614 jal 0x481b40 | fcn_00481b40 ();
0x00410618 nop |
0x0041061c addiu a2, zero, 0x40 | a2 = 0x40;
0x00410620 b 0x410564 | goto label_10;
| label_35:
0x00410624 lui a2, 0x47 | a2 = "Critical";
| /* str.Critical */
0x00410628 addiu a2, a2, 0x7070 |
0x0041062c b 0x41045c | goto label_9;
| label_33:
0x00410630 addiu v0, s0, 0xdc | v0 = s0 + 0xdc;
0x00410634 lui a1, 0x47 | a1 = 0x470000;
0x00410638 move a2, v0 | a2 = v0;
| /* str._s.tmp */
0x0041063c addiu a1, a1, 0x70ec | a1 += 0x70ec;
0x00410640 addiu a0, sp, 0x30 | a0 = sp + 0x30;
0x00410644 sw v0, 0x130(sp) | *(var_130h) = v0;
0x00410648 jal 0x481930 | fcn_00481930 ();
0x0041064c move a1, zero | a1 = 0;
0x00410650 addiu a0, sp, 0x30 | a0 = sp + 0x30;
0x00410654 jal 0x481d80 | fcn_00481d80 ();
| if (v0 == 0) {
0x00410658 beqz v0, 0x410944 | goto label_38;
| }
0x0041065c nop |
0x00410660 lui a1, 0x47 | a1 = 0x4770f4;
| label_14:
0x00410664 addiu a1, a1, 0x70f4 |
0x00410668 addiu a0, sp, 0x30 | a0 = sp + 0x30;
0x0041066c jal 0x482290 | fcn_00482290 ();
0x00410670 move s2, v0 | s2 = v0;
| if (v0 == 0) {
0x00410674 beqz v0, 0x410848 | goto label_39;
| }
0x00410678 lw v1, 0x90(s0) | v1 = *((s0 + 36));
0x0041067c lw fp, 0x94(s0) | fp = *((s0 + 37));
| if (v1 <= 0) {
0x00410680 blez v1, 0x4107bc | goto label_40;
| }
0x00410684 lui s5, 0x47 | s5 = 0x470000;
0x00410688 lui s4, 0x47 | s4 = 0x470000;
0x0041068c lui s3, 0x47 | s3 = 0x470000;
0x00410690 addiu s6, s0, 0x5c | s6 = s0 + 0x5c;
0x00410694 addiu s1, sp, 0xb8 | s1 = sp + 0xb8;
| /* str.Critical */
0x00410698 addiu s5, s5, 0x7070 | s5 += 0x7070;
| /* str.Good */
0x0041069c addiu s4, s4, 0x707c | s4 += 0x707c;
| /* str._04d__02d__02d__02d:_02d:_02d___Scene_status:__s_n */
0x004106a0 addiu s3, s3, 0x70f8 | s3 += 0x70f8;
0x004106a4 b 0x4106d4 |
| while (v1 == 0) {
| label_11:
0x004106a8 move a3, s2 | a3 = s2;
0x004106ac addiu a1, zero, 1 | a1 = 1;
0x004106b0 move a0, s1 | a0 = s1;
0x004106b4 jal 0x482140 | fcn_00482140 ();
0x004106b8 lw v1, 0x90(s0) | v1 = *((s0 + 36));
0x004106bc lw v0, 0x94(s0) | v0 = *((s0 + 37));
0x004106c0 addiu fp, fp, 1 | fp++;
0x004106c4 addu v0, v1, v0 | v0 = v1 + v0;
0x004106c8 slt v0, fp, v0 | v0 = (fp < v0) ? 1 : 0;
| if (v0 == 0) {
0x004106cc beql v0, zero, 0x4107c4 | goto label_41;
| }
0x004106d0 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
0x004106d4 div zero, fp, v1 | __asm ("div zero, fp, v1");
0x004106d8 teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x004106dc addiu a1, sp, 0xf8 | a1 = sp + 0xf8;
0x004106e0 mfhi v1 | __asm ("mfhi v1");
0x004106e4 addiu a0, v1, 3 | a0 = v1 + 3;
0x004106e8 addu v1, s0, v1 | v1 = s0 + v1;
0x004106ec sll a0, a0, 2 | a0 <<= 2;
0x004106f0 lbu s7, 0x5c(v1) | s7 = *((v1 + 92));
0x004106f4 addu a0, s6, a0 | a0 = s6 + a0;
0x004106f8 jal 0x481960 | fcn_00481960 ();
0x004106fc move v1, s4 | v1 = s4;
| if (s7 == 0) {
0x00410700 movn v1, s5, s7 | v1 = s5;
| }
0x00410704 sw v1, 0x24(sp) | *(var_24h) = v1;
0x00410708 lw v1, 0xf8(sp) | v1 = *(var_f8h);
0x0041070c lw v0, 0x108(sp) | v0 = *(var_108h);
0x00410710 sw v1, 0x20(sp) | *(var_20h) = v1;
0x00410714 lw v1, 0xfc(sp) | v1 = *(var_fch);
0x00410718 lw a3, 0x10c(sp) | a3 = *(var_10ch);
0x0041071c sw v1, 0x1c(sp) | *(var_1ch) = v1;
0x00410720 lw v1, 0x100(sp) | v1 = *(var_100h);
0x00410724 addiu v0, v0, 1 | v0++;
0x00410728 sw v1, 0x18(sp) | *(var_18h) = v1;
0x0041072c lw v1, 0x104(sp) | v1 = *(var_104h);
0x00410730 addiu a3, a3, 0x76c | a3 += 0x76c;
0x00410734 sw v1, 0x14(sp) | *(var_14h) = v1;
0x00410738 move a2, s3 | a2 = s3;
0x0041073c addiu a1, zero, 0x40 | a1 = 0x40;
0x00410740 move a0, s1 | a0 = s1;
0x00410744 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00410748 jal 0x4824d0 | fcn_004824d0 ();
0x0041074c slti v1, v0, 0x40 | v1 = (v0 < 0x40) ? 1 : 0;
0x00410750 move a2, v0 | a2 = v0;
0x00410754 bnel v1, zero, 0x4106a8 |
| }
0x00410758 sb zero, 0xf7(sp) | *(var_f7h) = 0;
0x0041075c addiu a2, zero, 0x3f | a2 = 0x3f;
0x00410760 b 0x4106a8 | goto label_11;
| label_34:
0x00410764 lui a0, 0x47 | a0 = 0x476f98;
| /* esilref: 'scene_degrad_stats.c' */
0x00410768 addiu a0, a0, 0x6f98 |
0x0041076c lw s1, 0x3b6c(v0) | s1 = *((v0 + 3803));
0x00410770 jal 0x481ad0 | fcn_00481ad0 ();
0x00410774 lui v1, 0x47 | v1 = "Not yet implemented\n";
| /* str.Not_yet_implemented_n */
0x00410778 addiu v1, v1, 0x714c |
0x0041077c lui a2, 0x47 | a2 = 0x470000;
0x00410780 move a1, v0 | a1 = v0;
0x00410784 sw v1, 0x10(sp) | *(var_10h) = v1;
0x00410788 addiu a3, zero, 0x1c4 | a3 = 0x1c4;
| /* str.scene_degrad_stats_printer */
0x0041078c addiu a2, a2, 0x71a8 | a2 += 0x71a8;
0x00410790 move t9, s1 | t9 = s1;
0x00410794 addiu a0, zero, -2 | a0 = -2;
0x00410798 jalr t9 | t9 ();
0x0041079c lui v0, 0x49 | v0 = 0x490000;
0x004107a0 lw v0, 0x3b70(v0) | v0 = *((v0 + 3804));
| if (v0 <= 0) {
0x004107a4 blezl v0, 0x4103b0 | goto label_4;
| }
0x004107a8 lw v0, 0x124(sp) | v0 = *(var_124h);
| label_12:
0x004107ac jal 0x481b40 | fcn_00481b40 ();
0x004107b0 nop |
0x004107b4 lw v0, 0x124(sp) | v0 = *(var_124h);
0x004107b8 b 0x4103b0 | goto label_4;
| label_40:
0x004107bc addiu s1, sp, 0xb8 | s1 = sp + 0xb8;
0x004107c0 lbu v0, 0x48(s0) | v0 = *((s0 + 72));
| label_41:
0x004107c4 lui a3, 0x47 | a3 = 0x470000;
| if (v0 == 0) {
0x004107c8 beqz v0, 0x41093c | goto label_42;
| }
0x004107cc lui a3, 0x47 | a3 = "Critical";
| /* str.Critical */
0x004107d0 addiu a3, a3, 0x7070 |
| label_13:
0x004107d4 lui a2, 0x47 | a2 = "\nCurrently - Scene status: %s\n";
| /* str._nCurrently___Scene_status:__s_n */
0x004107d8 addiu a2, a2, 0x712c |
0x004107dc addiu a1, zero, 0x40 | a1 = 0x40;
0x004107e0 move a0, s1 | a0 = s1;
0x004107e4 jal 0x4824d0 | fcn_004824d0 ();
0x004107e8 move a2, v0 | a2 = v0;
0x004107ec move a3, s2 | a3 = s2;
0x004107f0 addiu a1, zero, 1 | a1 = 1;
0x004107f4 move a0, s1 | a0 = s1;
0x004107f8 jal 0x482140 | fcn_00482140 ();
0x004107fc move a0, s2 | a0 = s2;
0x00410800 jal 0x481dc0 | fcn_00481dc0 ();
0x00410804 lui v0, 0x49 | v0 = 0x490000;
| if (v0 != 0) {
0x00410808 bnez v0, 0x4108c4 | goto label_43;
| }
0x0041080c move a0, s2 | a0 = s2;
0x00410810 jal 0x4818a0 | fcn_004818a0 ();
0x00410814 move a0, v0 | a0 = v0;
0x00410818 jal 0x481ef0 | fcn_00481ef0 ();
0x0041081c lui v0, 0x49 | v0 = 0x490000;
| if (v0 != 0) {
0x00410820 bnez v0, 0x4108c4 | goto label_43;
| }
0x00410824 move a0, s2 | a0 = s2;
0x00410828 jal 0x481f10 | fcn_00481f10 ();
0x0041082c lui v0, 0x49 | v0 = 0x490000;
| if (v0 != 0) {
0x00410830 bnez v0, 0x41084c | goto label_44;
| }
0x00410834 lw a1, 0x130(sp) | a1 = *(var_130h);
0x00410838 addiu a0, sp, 0x30 | a0 = sp + 0x30;
0x0041083c jal 0x481bd0 | fcn_00481bd0 ();
0x00410840 lw v0, 0x124(sp) | v0 = *(var_124h);
| if (v0 == 0) {
0x00410844 beqz v0, 0x4103b0 | goto label_4;
| }
| label_39:
0x00410848 lui v0, 0x49 | v0 = 0x490000;
| label_44:
0x0041084c lw v0, 0x3b60(v0) | v0 = *((v0 + 3800));
0x00410850 slti v0, v0, -2 | v0 = (v0 < -2) ? 1 : 0;
0x00410854 lw v0, 0x124(sp) | v0 = *(var_124h);
| if (v0 != 0) {
0x00410858 bnez v0, 0x4103b0 | goto label_4;
| }
0x0041085c lui v0, 0x49 | v0 = 0x490000;
0x00410860 lui a0, 0x47 | a0 = 0x476f98;
| /* esilref: 'scene_degrad_stats.c' */
0x00410864 addiu a0, a0, 0x6f98 |
0x00410868 lw s1, 0x3b6c(v0) | s1 = *((v0 + 3803));
0x0041086c jal 0x481ad0 | fcn_00481ad0 ();
0x00410870 move s2, v0 | s2 = v0;
0x00410874 jal 0x4818d0 | fcn_004818d0 ();
0x00410878 lw a0, (v0) | a0 = *(v0);
0x0041087c jal 0x481990 | fcn_00481990 ();
0x00410880 sw v0, 0x14(sp) | *(var_14h) = v0;
0x00410884 lui v0, 0x47 | v0 = "Failed to write scene state: %s";
| /* str.Failed_to_write_scene_state:__s */
0x00410888 addiu v0, v0, 0x7164 |
0x0041088c lui a2, 0x47 | a2 = 0x470000;
0x00410890 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00410894 addiu a3, zero, 0x1a0 | a3 = 0x1a0;
| /* str.scene_degrad_stats_report_printer */
0x00410898 addiu a2, a2, 0x7184 | a2 += 0x7184;
0x0041089c move a1, s2 | a1 = s2;
0x004108a0 move t9, s1 | t9 = s1;
0x004108a4 addiu a0, zero, -2 | a0 = -2;
0x004108a8 jalr t9 | t9 ();
0x004108ac lui v0, 0x49 | v0 = 0x490000;
0x004108b0 lw v0, 0x3b70(v0) | v0 = *((v0 + 3804));
| if (v0 <= 0) {
0x004108b4 blezl v0, 0x4103b0 | goto label_4;
| }
0x004108b8 lw v0, 0x124(sp) | v0 = *(var_124h);
0x004108bc b 0x4107ac | goto label_12;
0x004108c0 nop |
| label_43:
0x004108c4 lw v0, 0x3b60(v0) | v0 = *((v0 + 3800));
0x004108c8 slti v0, v0, -2 | v0 = (v0 < -2) ? 1 : 0;
0x004108cc lui v0, 0x49 | v0 = 0x490000;
| if (v0 == 0) {
0x004108d0 beqz v0, 0x410954 | goto label_45;
| }
| label_15:
0x004108d4 move a0, s2 | a0 = s2;
0x004108d8 jal 0x482010 | fcn_00482010 ();
| if (v0 < 0) {
0x004108dc bltzl v0, 0x4103b0 | goto label_4;
| }
0x004108e0 lw v0, 0x124(sp) | v0 = *(var_124h);
0x004108e4 move a0, s2 | a0 = s2;
0x004108e8 jal 0x481f10 | fcn_00481f10 ();
0x004108ec lw v0, 0x124(sp) | v0 = *(var_124h);
0x004108f0 b 0x4103b0 | goto label_4;
| label_22:
0x004108f4 lw s1, 0x94(s0) | s1 = *((s0 + 37));
0x004108f8 move a0, zero | a0 = 0;
0x004108fc addu v0, s0, s1 | v0 = s0 + s1;
0x00410900 sb v1, 0x5c(v0) | *((v0 + 92)) = v1;
0x00410904 jal 0x4821a0 | fcn_004821a0 ();
0x00410908 lw a1, 0x94(s0) | a1 = *((s0 + 37));
0x0041090c lw v1, 0x90(s0) | v1 = *((s0 + 36));
0x00410910 addiu a0, a1, 1 | a0 = a1 + 1;
0x00410914 div zero, a0, v1 | __asm ("div zero, a0, v1");
0x00410918 teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x0041091c addiu v1, s1, 2 | v1 = s1 + 2;
0x00410920 sll v1, v1, 2 | v1 <<= 2;
0x00410924 addu v1, s0, v1 | v1 = s0 + v1;
0x00410928 sw v0, 0x60(v1) | *((v1 + 24)) = v0;
0x0041092c sw a1, 0x98(s0) | *((s0 + 38)) = a1;
0x00410930 mfhi a0 | __asm ("mfhi a0");
0x00410934 sw a0, 0x94(s0) | *((s0 + 37)) = a0;
0x00410938 b 0x4102d8 | goto label_7;
| /* str.Good */
| label_42:
0x0041093c addiu a3, a3, 0x707c | a3 += 0x707c;
0x00410940 b 0x4107d4 | goto label_13;
| label_38:
0x00410944 addiu a0, sp, 0x30 | a0 = sp + 0x30;
0x00410948 jal 0x4821b0 | fcn_004821b0 ();
0x0041094c lui a1, 0x47 | a1 = 0x470000;
0x00410950 b 0x410664 | goto label_14;
| label_45:
0x00410954 lui a0, 0x47 | a0 = 0x476f98;
| /* esilref: 'scene_degrad_stats.c' */
0x00410958 addiu a0, a0, 0x6f98 |
0x0041095c lw s1, 0x3b6c(v0) | s1 = *((v0 + 3803));
0x00410960 jal 0x481ad0 | fcn_00481ad0 ();
0x00410964 move s3, v0 | s3 = v0;
0x00410968 jal 0x4818d0 | fcn_004818d0 ();
0x0041096c lw a0, (v0) | a0 = *(v0);
0x00410970 jal 0x481990 | fcn_00481990 ();
0x00410974 sw v0, 0x14(sp) | *(var_14h) = v0;
0x00410978 lui v0, 0x47 | v0 = "Failed to write scene state: %s";
| /* str.Failed_to_write_scene_state:__s */
0x0041097c addiu v0, v0, 0x7164 |
0x00410980 lui a2, 0x47 | a2 = 0x470000;
0x00410984 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00410988 addiu a3, zero, 0x1a0 | a3 = 0x1a0;
| /* str.scene_degrad_stats_report_printer */
0x0041098c addiu a2, a2, 0x7184 | a2 += 0x7184;
0x00410990 move a1, s3 | a1 = s3;
0x00410994 move t9, s1 | t9 = s1;
0x00410998 addiu a0, zero, -2 | a0 = -2;
0x0041099c jalr t9 | t9 ();
0x004109a0 lui v0, 0x49 | v0 = 0x490000;
0x004109a4 lw v0, 0x3b70(v0) | v0 = *((v0 + 3804));
| if (v0 <= 0) {
0x004109a8 blez v0, 0x4108d4 | goto label_15;
| }
0x004109ac nop |
0x004109b0 jal 0x481b40 | fcn_00481b40 ();
0x004109b4 nop |
0x004109b8 b 0x4108d4 | goto label_15;
0x004109bc nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/share/addon/packages/autostart/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk_extract/data.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider/usr/bin/video-scene-provider @ 0x4598d4 */
| #include <stdint.h>
|
; (fcn) sym.av_image_read_pixels_lc () | void av_image_read_pixels_lc () {
0x004598d4 lui gp, 4 |
0x004598d8 addiu gp, gp, 0x1e8c |
0x004598dc addu gp, gp, t9 | gp += t9;
| if (a0 == 0) {
0x004598e0 beqz a0, 0x459a9c | goto label_4;
| }
0x004598e4 nop |
0x004598e8 addiu sp, sp, -0x30 |
0x004598ec sw s0, 0x18(sp) | *(var_18h_2) = s0;
0x004598f0 sll s0, a1, 1 | s0 = a1 << 1;
0x004598f4 addu v0, s0, a1 | v0 = s0 + a1;
0x004598f8 addu v1, v0, a2 | v1 = v0 + a2;
0x004598fc sll t0, v1, 2 | t0 = v1 << 2;
0x00459900 addu s0, a0, t0 | s0 = a0 + t0;
0x00459904 sw gp, 0x10(sp) | *(var_18h) = gp;
0x00459908 sw ra, 0x2c(sp) | *(var_34h) = ra;
0x0045990c sw s4, 0x28(sp) | *(var_30h) = s4;
0x00459910 sw s3, 0x24(sp) | *(var_2ch) = s3;
0x00459914 sw s2, 0x20(sp) | *(var_28h) = s2;
0x00459918 sw s1, 0x1c(sp) | *(var_24h) = s1;
0x0045991c lw t2, 0x40(s0) | t2 = *((s0 + 16));
| if (a3 != 0) {
0x00459920 beqz a3, 0x459934 |
0x00459924 move t1, zero | t1 = 0;
| if (t2 == 0) {
0x00459928 beqz t2, 0x459a50 | goto label_5;
| }
0x0045992c lw t1, (t2) | t1 = *(t2);
0x00459930 sw t1, (a3) | *(a3) = t1;
| }
| label_2:
0x00459934 move s2, a0 | s2 = a0;
| if (t2 == 0) {
0x00459938 beqz t2, 0x4599c4 | goto label_6;
| }
0x0045993c lw a0, -0x7f44(gp) | a0 = *(gp);
0x00459940 move s1, a1 | s1 = a1;
0x00459944 lbu a1, (a0) | a1 = *(a0);
0x00459948 move s3, a2 | s3 = a2;
| if (a1 != 0) {
0x0045994c bnez a1, 0x4599e8 | goto label_7;
| }
0x00459950 lbu a3, 0x18(s2) | a3 = *((s2 + 24));
0x00459954 lw s4, 0xc(t2) | s4 = *((t2 + 3));
| if (s1 == a3) {
0x00459958 beq s1, a3, 0x459a5c | goto label_8;
| }
| do {
0x0045995c sll t4, a3, 1 | t4 = a3 << 1;
0x00459960 addu t5, t4, a3 | t5 = t4 + a3;
0x00459964 addu t6, t5, s3 | t6 = t5 + s3;
0x00459968 addiu t7, t6, 0x10 | t7 = t6 + 0x10;
0x0045996c sll t8, t7, 2 | t8 = t7 << 2;
0x00459970 lwx ra, t8(s2) | __asm ("lwx ra, t8(s2)");
0x00459974 lw t3, (t2) | t3 = *(t2);
| if (ra == 0) {
0x00459978 beqz ra, 0x459a44 | goto label_9;
| }
0x0045997c lbu t0, 0xa(ra) | t0 = *((ra + 10));
| label_0:
0x00459980 lw t1, -0x7f18(gp) | t1 = *(gp);
0x00459984 addiu s0, t0, -3 | s0 = t0 + -3;
0x00459988 sll v1, s0, 2 | v1 = s0 << 2;
0x0045998c lwx s3, v1(t1) | __asm ("lwx s3, v1(t1)");
0x00459990 mul v0, t3, s3 | __asm ("mul v0, t3, s3");
| label_1:
0x00459994 lw s1, -0x7f30(gp) | s1 = *(gp);
0x00459998 lwx s2, v1(s1) | __asm ("lwx s2, v1(s1)");
0x0045999c addu a0, v0, s2 | a0 = v0 + s2;
| label_3:
0x004599a0 lw ra, 0x2c(sp) | ra = *(var_34h);
0x004599a4 addu v0, s4, a0 | v0 = s4 + a0;
0x004599a8 lw s3, 0x24(sp) | s3 = *(var_2ch);
0x004599ac lw s4, 0x28(sp) | s4 = *(var_30h);
0x004599b0 lw s2, 0x20(sp) | s2 = *(var_28h);
0x004599b4 lw s1, 0x1c(sp) | s1 = *(var_24h);
0x004599b8 lw s0, 0x18(sp) | s0 = *(var_18h_2);
0x004599bc addiu sp, sp, 0x30 |
0x004599c0 jr ra | return v0;
| label_6:
0x004599c4 lw ra, 0x2c(sp) | ra = *(var_34h);
0x004599c8 lw s4, 0x28(sp) | s4 = *(var_30h);
0x004599cc lw s3, 0x24(sp) | s3 = *(var_2ch);
0x004599d0 lw s2, 0x20(sp) | s2 = *(var_28h);
0x004599d4 lw s1, 0x1c(sp) | s1 = *(var_24h);
0x004599d8 lw s0, 0x18(sp) | s0 = *(var_18h_2);
0x004599dc move v0, zero | v0 = 0;
0x004599e0 addiu sp, sp, 0x30 |
0x004599e4 jr ra | return v0;
| label_7:
0x004599e8 lw t9, -0x7fe8(gp) | t9 = *(gp);
0x004599ec addiu a0, t2, 0x10 | a0 = t2 + 0x10;
0x004599f0 jalr t9 | t9 ();
0x004599f4 lw gp, 0x10(sp) | gp = *(var_18h);
0x004599f8 lw a2, 0x40(s0) | a2 = *((s0 + 16));
0x004599fc lw t9, -0x7fdc(gp) | t9 = *(gp);
0x00459a00 addiu a0, a2, 0x10 | a0 = a2 + 0x10;
0x00459a04 lw s4, 0xc(a2) | s4 = *((a2 + 3));
0x00459a08 jalr t9 | t9 ();
0x00459a0c lbu a3, 0x18(s2) | a3 = *((s2 + 24));
0x00459a10 lw gp, 0x10(sp) | gp = *(var_18h);
| if (a3 == s1) {
0x00459a14 beq a3, s1, 0x459a58 | goto label_10;
| }
0x00459a18 lw t2, 0x40(s0) | t2 = *((s0 + 16));
0x00459a1c move t3, zero | t3 = 0;
0x00459a20 bnez t2, 0x45995c |
| } while (t2 != 0);
0x00459a24 sll t4, a3, 1 | t4 = a3 << 1;
0x00459a28 addu t5, t4, a3 | t5 = t4 + a3;
0x00459a2c addu t6, t5, s3 | t6 = t5 + s3;
0x00459a30 addiu t7, t6, 0x10 | t7 = t6 + 0x10;
0x00459a34 sll t8, t7, 2 | t8 = t7 << 2;
0x00459a38 lwx ra, t8(s2) | __asm ("lwx ra, t8(s2)");
0x00459a3c lbu t0, 0xa(ra) | t0 = *((ra + 10));
| if (ra == 0) {
0x00459a40 bnel ra, zero, 0x459980 | goto label_0;
| }
| label_9:
0x00459a44 move v0, zero | v0 = 0;
0x00459a48 move v1, zero | v1 = 0;
0x00459a4c b 0x459994 | goto label_1;
| label_5:
0x00459a50 sw t1, (a3) | *(a3) = t1;
0x00459a54 b 0x459934 | goto label_2;
| label_10:
0x00459a58 move a3, s1 | a3 = s1;
| label_8:
0x00459a5c sll a1, a3, 1 | a1 = a3 << 1;
0x00459a60 addu a2, a1, a3 | a2 = a1 + a3;
0x00459a64 addu t9, a2, s3 | t9 = a2 + s3;
0x00459a68 addiu a3, t9, 0x10 | a3 = t9 + 0x10;
0x00459a6c sll t2, a3, 2 | t2 = a3 << 2;
0x00459a70 lwx t3, t2(s2) | __asm ("lwx t3, t2(s2)");
0x00459a74 move t4, zero | t4 = 0;
| if (t3 != 0) {
0x00459a78 beqz t3, 0x459a80 |
0x00459a7c lw t4, (t3) | t4 = *(t3);
| }
0x00459a80 sll t5, s3, 2 | t5 = s3 << 2;
0x00459a84 addu t6, s2, t5 | t6 = s2 + t5;
0x00459a88 lw t7, 0x30(t6) | t7 = *((t6 + 12));
0x00459a8c lw t8, 0x20(t6) | t8 = *((t6 + 8));
0x00459a90 mul ra, t4, t7 | __asm ("mul ra, t4, t7");
0x00459a94 addu a0, ra, t8 | a0 = ra + t8;
0x00459a98 b 0x4599a0 | goto label_3;
| label_4:
0x00459a9c move v0, zero | v0 = 0;
0x00459aa0 jr ra | return v0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/share/addon/packages/autostart/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider.opk.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider_r2.8.16_mips32r2el-nf.opk_extract/data.tar.gz_extract/gzip.uncompressed_extract/axis-video-scene-provider/usr/bin/video-scene-provider @ 0x467c88 */
| #include <stdint.h>
|
; (fcn) sym.av_logic_double () | void av_logic_double () {
0x00467c88 lui gp, 3 |
0x00467c8c addiu gp, gp, 0x3ad8 |
0x00467c90 addu gp, gp, t9 | gp += t9;
0x00467c94 addiu sp, sp, -0x88 |
0x00467c98 sw gp, 0x20(sp) | *(var_20h) = gp;
0x00467c9c sw ra, 0x84(sp) | *(var_84h) = ra;
0x00467ca0 sw fp, 0x80(sp) | *(var_80h) = fp;
0x00467ca4 sw s7, 0x7c(sp) | *(var_7ch) = s7;
0x00467ca8 sw s6, 0x78(sp) | *(var_78h) = s6;
0x00467cac sw s5, 0x74(sp) | *(var_74h) = s5;
0x00467cb0 sw s4, 0x70(sp) | *(var_70h) = s4;
0x00467cb4 sw s3, 0x6c(sp) | *(var_6ch) = s3;
0x00467cb8 sw s2, 0x68(sp) | *(var_68h) = s2;
0x00467cbc sw s1, 0x64(sp) | *(var_64h) = s1;
0x00467cc0 sw s0, 0x60(sp) | *(var_60h) = s0;
0x00467cc4 sltiu v0, a2, 3 | v0 = (a2 < 3) ? 1 : 0;
| if (a0 != 0) {
0x00467cc8 beqz a0, 0x467f8c |
0x00467ccc move s0, a2 | s0 = a2;
| if (v0 != 0) {
0x00467cd0 beqz v0, 0x467f8c |
0x00467cd4 lbu t0, 0x18(a0) | t0 = *((a0 + 24));
0x00467cd8 move s7, a0 | s7 = a0;
0x00467cdc sll v1, t0, 1 | v1 = t0 << 1;
0x00467ce0 addu a0, v1, t0 | a0 = v1 + t0;
0x00467ce4 addu a2, a0, a2 | a2 = a0 + a2;
0x00467ce8 addiu t1, a2, 0x10 | t1 = a2 + 0x10;
0x00467cec sll t2, t1, 2 | t2 = t1 << 2;
0x00467cf0 lwx t3, t2(s7) | __asm ("lwx t3, t2(s7)");
| if (t3 == 0) {
0x00467cf4 beql t3, zero, 0x467f90 | goto label_27;
| }
0x00467cf8 lw v1, -0x7fe0(gp) | v1 = *(gp);
0x00467cfc move s2, a1 | s2 = a1;
| if (a1 == 0) {
0x00467d00 beqz a1, 0x467f8c | goto label_28;
| }
0x00467d04 lbu a1, 0x18(a1) | a1 = *((a1 + 24));
0x00467d08 sll t4, a1, 1 | t4 = a1 << 1;
0x00467d0c addu t5, t4, a1 | t5 = t4 + a1;
0x00467d10 addu t6, t5, s0 | t6 = t5 + s0;
0x00467d14 addiu t7, t6, 0x10 | t7 = t6 + 0x10;
0x00467d18 sll s1, t7, 2 | s1 = t7 << 2;
0x00467d1c lwx s4, s1(s2) | __asm ("lwx s4, s1(s2)");
0x00467d20 lw s3, 0x98(sp) | s3 = *(arg_98h);
| if (s4 == 0) {
0x00467d24 beqz s4, 0x467f8c | goto label_28;
| }
0x00467d28 addiu fp, s3, -0x13 | fp = s3 + -0x13;
0x00467d2c sltiu s5, fp, 0xb | s5 = (fp < 0xb) ? 1 : 0;
| if (s5 == 0) {
0x00467d30 beql s5, zero, 0x4680b0 | goto label_29;
| }
0x00467d34 lw t5, -0x7fe0(gp) | t5 = *(gp);
0x00467d38 lw a0, -0x7fe0(gp) | a0 = *(gp);
| if (t0 != a1) {
0x00467d3c bne t0, a1, 0x4680f0 | goto label_30;
| }
0x00467d40 lbu s6, 0xa(t3) | s6 = *((t3 + 10));
0x00467d44 lbu t8, 0xa(s4) | t8 = *((s4 + 10));
0x00467d48 lw t9, -0x7e18(gp) | t9 = sym.av_clip;
| if (s6 != t8) {
0x00467d4c bne s6, t8, 0x467fd8 | goto label_31;
| }
0x00467d50 addiu s4, sp, 0x38 | s4 = sp + 0x38;
0x00467d54 addiu s3, sp, 0x28 | s3 = sp + 0x28;
0x00467d58 move s1, a3 | s1 = a3;
0x00467d5c move a2, s7 | a2 = s7;
0x00467d60 move a3, s2 | a3 = s2;
0x00467d64 move a1, s3 | a1 = s3;
0x00467d68 move a0, s4 | a0 = s4;
0x00467d6c bal 0x46f6dc | sym_av_clip ();
0x00467d70 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00467d74 beqz v0, 0x467fa0 | goto label_32;
| }
0x00467d78 lbu s6, 0x18(s7) | s6 = *((s7 + 24));
| if (s1 == 0) {
0x00467d7c beqz s1, 0x468130 | goto label_33;
| }
0x00467d80 sll s1, s6, 1 | s1 = s6 << 1;
0x00467d84 addu t5, s1, s6 | t5 = s1 + s6;
0x00467d88 addu a0, t5, s0 | a0 = t5 + s0;
0x00467d8c lw t7, -0x7fe4(gp) | t7 = *((gp - 8185));
0x00467d90 addiu t6, a0, 0x10 | t6 = a0 + 0x10;
0x00467d94 sll s4, t6, 2 | s4 = t6 << 2;
0x00467d98 sll a3, fp, 2 | a3 = fp << 2;
0x00467d9c addiu ra, t7, 0x31dc | ra = t7 + 0x31dc;
0x00467da0 lwx t8, s4(s7) | __asm ("lwx t8, s4(s7)");
0x00467da4 lwx v0, a3(ra) | __asm ("lwx v0, a3(ra)");
0x00467da8 sw v0, 0x4c(sp) | *(var_4ch) = v0;
| if (t8 == 0) {
0x00467dac beqz t8, 0x4686a8 | goto label_34;
| }
0x00467db0 lbu s5, 0xa(t8) | s5 = *((t8 + 10));
0x00467db4 addiu t0, s5, -3 | t0 = s5 + -3;
| label_6:
0x00467db8 move a1, s6 | a1 = s6;
0x00467dbc lw s6, -0x7eac(gp) | s6 = *(gp);
0x00467dc0 lw t9, -0x7eec(gp) | t9 = sym.av_image_detach;
0x00467dc4 sll fp, t0, 2 | fp = t0 << 2;
0x00467dc8 addiu s3, zero, 1 | s3 = 1;
0x00467dcc sw s3, 0x10(sp) | *(var_10h) = s3;
0x00467dd0 move a2, s0 | a2 = s0;
0x00467dd4 addiu a3, zero, -1 | a3 = -1;
0x00467dd8 move a0, s7 | a0 = s7;
0x00467ddc lw s3, 0x10(s7) | s3 = *((s7 + 4));
0x00467de0 lwx s1, fp(s6) | __asm ("lwx s1, fp(s6)");
0x00467de4 bal 0x45a6a8 | sym_av_image_detach ();
0x00467de8 lbu a1, 0x18(s7) | a1 = *((s7 + 24));
0x00467dec sll a2, a1, 1 | a2 = a1 << 1;
0x00467df0 addu t1, a2, a1 | t1 = a2 + a1;
0x00467df4 addu v1, t1, s0 | v1 = t1 + s0;
0x00467df8 addiu t3, v1, 0x10 | t3 = v1 + 0x10;
0x00467dfc sll t2, t3, 2 | t2 = t3 << 2;
0x00467e00 lwx t4, t2(s7) | __asm ("lwx t4, t2(s7)");
0x00467e04 lw gp, 0x20(sp) | gp = *(var_20h);
| if (t4 == 0) {
0x00467e08 beqz t4, 0x4686b4 | goto label_35;
| }
0x00467e0c lw t5, -0x7f44(gp) | t5 = *(gp);
0x00467e10 lw t6, (t4) | t6 = *(t4);
0x00467e14 lbu a0, (t5) | a0 = *(t5);
0x00467e18 move s6, t6 | s6 = t6;
| if (a0 != 0) {
0x00467e1c bnez a0, 0x46838c | goto label_36;
| }
0x00467e20 lw fp, 0xc(t4) | fp = *((t4 + 3));
| label_4:
0x00467e24 sll ra, s0, 2 | ra = s0 << 2;
0x00467e28 addu t5, s7, ra | t5 = s7 + ra;
0x00467e2c lw a0, 0x30(t5) | a0 = *((t5 + 12));
0x00467e30 lw t9, 0x20(t5) | t9 = *((t5 + 8));
0x00467e34 mul s4, t6, a0 | __asm ("mul s4, t6, a0");
0x00467e38 addu a3, s4, t9 | a3 = s4 + t9;
0x00467e3c addu t7, fp, a3 | t7 = fp + a3;
0x00467e40 sw t7, 0x50(sp) | *(var_50h) = t7;
| label_7:
0x00467e44 lbu t8, 0x18(s2) | t8 = *((s2 + 24));
0x00467e48 lw fp, 0x3c(sp) | fp = *(var_3ch);
0x00467e4c sll v0, t8, 1 | v0 = t8 << 1;
0x00467e50 addu t0, v0, t8 | t0 = v0 + t8;
0x00467e54 addu a1, t0, s0 | a1 = t0 + s0;
0x00467e58 addiu a2, a1, 0x10 | a2 = a1 + 0x10;
0x00467e5c sll t1, a2, 2 | t1 = a2 << 2;
0x00467e60 lwx t3, t1(s2) | __asm ("lwx t3, t1(s2)");
0x00467e64 lw v1, 0x38(sp) | v1 = *(var_38h);
| if (t3 == 0) {
0x00467e68 beqz t3, 0x4686c0 | goto label_37;
| }
0x00467e6c lw t2, -0x7f44(gp) | t2 = *(gp);
0x00467e70 lw v0, (t3) | v0 = *(t3);
0x00467e74 lbu t4, (t2) | t4 = *(t2);
0x00467e78 sw v0, 0x48(sp) | *(var_48h) = v0;
| if (t4 != 0) {
0x00467e7c bnez t4, 0x4686fc | goto label_38;
| }
0x00467e80 lw s4, 0xc(t3) | s4 = *((t3 + 3));
| label_10:
0x00467e84 sll s0, s0, 2 | s0 <<= 2;
0x00467e88 addu ra, s2, s0 | ra = s2 + s0;
0x00467e8c lw s2, 0x30(ra) | s2 = *((ra + 12));
0x00467e90 lw t4, 0x20(ra) | t4 = *((ra + 8));
0x00467e94 mul t9, v0, s2 | __asm ("mul t9, v0, s2");
0x00467e98 addu t6, t9, t4 | t6 = t9 + t4;
0x00467e9c addu s2, s4, t6 | s2 = s4 + t6;
| label_8:
0x00467ea0 lw t5, 0x28(sp) | t5 = *(var_28h);
0x00467ea4 lw t7, 0x2c(sp) | t7 = *(var_2ch);
0x00467ea8 mul a3, s1, t5 | __asm ("mul a3, s1, t5");
0x00467eac lw a0, 0x48(sp) | a0 = *(var_48h);
0x00467eb0 mul s4, a0, t7 | __asm ("mul s4, a0, t7");
0x00467eb4 move a1, a3 | a1 = a3;
| if (a3 < 0) {
0x00467eb8 bgez a3, 0x467ec0 |
0x00467ebc addiu a1, a3, 7 | a1 = a3 + 7;
| }
0x00467ec0 lui t0, 0x8000 | t0 = 0x80000000;
0x00467ec4 sra a2, a1, 3 | a2 = a1 >> 3;
0x00467ec8 addiu t1, t0, 7 | t1 = t0 + 7;
0x00467ecc addu t8, s4, a2 | t8 = s4 + a2;
0x00467ed0 and s0, a3, t1 | s0 = a3 & t1;
0x00467ed4 addu s4, s2, t8 | s4 = s2 + t8;
| if (s0 < 0) {
0x00467ed8 bgez s0, 0x467eec |
0x00467edc addiu t3, s0, -1 | t3 = s0 + -1;
0x00467ee0 addiu t2, zero, -8 | t2 = -8;
0x00467ee4 or v0, t3, t2 | v0 = t3 | t2;
0x00467ee8 addiu s0, v0, 1 | s0 = v0 + 1;
| }
0x00467eec lw ra, 0x40(sp) | ra = *(var_40h);
0x00467ef0 lw t4, 0x38(sp) | t4 = *(var_38h);
| if (s3 == ra) {
0x00467ef4 beq s3, ra, 0x4686a0 | goto label_39;
| }
0x00467ef8 lw t9, -0x7d10(gp) | t9 = *((gp - 8004));
0x00467efc mul s2, s1, t4 | __asm ("mul s2, s1, t4");
0x00467f00 lw t6, (t9) | t6 = *(t9);
0x00467f04 sll t5, t6, 3 | t5 = t6 << 3;
0x00467f08 divu zero, s2, t5 | __asm ("divu zero, s2, t5");
0x00467f0c teq t5, zero, 7 | __asm ("teq t5, zero, 7");
0x00467f10 mfhi a3 | __asm ("mfhi a3");
0x00467f14 mul t7, ra, s1 | __asm ("mul t7, ra, s1");
| if (a3 != 0) {
0x00467f18 bnez a3, 0x468478 | goto label_40;
| }
0x00467f1c divu zero, t7, t5 | __asm ("divu zero, t7, t5");
0x00467f20 teq t5, zero, 7 | __asm ("teq t5, zero, 7");
0x00467f24 mfhi a0 | __asm ("mfhi a0");
| if (a0 != 0) {
0x00467f28 bnez a0, 0x468478 | goto label_40;
| }
0x00467f2c nop |
| label_5:
0x00467f30 mul a3, s1, v1 | __asm ("mul a3, s1, v1");
| if (a3 >= 0) {
0x00467f34 bltzl a3, 0x467f3c |
0x00467f38 addiu a3, a3, 7 | a3 += 7;
| }
0x00467f3c mul fp, fp, s6 | __asm ("mul fp, fp, s6");
0x00467f40 sra a0, a3, 3 | a0 = a3 >> 3;
0x00467f44 lw t4, 0x44(sp) | t4 = *(var_44h);
0x00467f48 lw t6, 0x48(sp) | t6 = *(var_48h);
0x00467f4c move a3, s4 | a3 = s4;
0x00467f50 lw s4, 0x50(sp) | s4 = *(var_50h);
0x00467f54 addu s2, fp, a0 | s2 = fp + a0;
0x00467f58 lw t9, 0x4c(sp) | t9 = *(var_4ch);
0x00467f5c sw t4, 0x1c(sp) | *(var_1ch) = t4;
0x00467f60 sw t7, 0x18(sp) | *(var_18h) = t7;
0x00467f64 sw s0, 0x14(sp) | *(var_14h) = s0;
0x00467f68 sw t6, 0x10(sp) | *(var_10h) = t6;
0x00467f6c move a2, zero | a2 = 0;
0x00467f70 move a1, s6 | a1 = s6;
0x00467f74 addu a0, s4, s2 | a0 = s4 + s2;
0x00467f78 jalr t9 | t9 ();
0x00467f7c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x00467f80 bltz v0, 0x4683f8 | goto label_41;
| }
0x00467f84 move s1, s7 | s1 = s7;
0x00467f88 b 0x467fa4 |
| }
| } else {
| label_28:
0x00467f8c lw v1, -0x7fe0(gp) | v1 = *(gp);
| label_27:
0x00467f90 lw v0, (v1) | v0 = *(v1);
0x00467f94 slti t8, v0, -2 | t8 = (v0 < -2) ? 1 : 0;
0x00467f98 lw s7, -0x7fbc(gp) | s7 = *((gp - 8175));
| if (t8 == 0) {
0x00467f9c beqz t8, 0x468084 | goto label_42;
| }
| label_32:
0x00467fa0 move s1, zero | s1 = 0;
| }
| do {
| label_0:
0x00467fa4 lw ra, 0x84(sp) | ra = *(var_84h);
| label_2:
0x00467fa8 move v0, s1 | v0 = s1;
0x00467fac lw fp, 0x80(sp) | fp = *(var_80h);
0x00467fb0 lw s7, 0x7c(sp) | s7 = *(var_7ch);
0x00467fb4 lw s6, 0x78(sp) | s6 = *(var_78h);
0x00467fb8 lw s5, 0x74(sp) | s5 = *(var_74h);
0x00467fbc lw s4, 0x70(sp) | s4 = *(var_70h);
0x00467fc0 lw s3, 0x6c(sp) | s3 = *(var_6ch);
0x00467fc4 lw s2, 0x68(sp) | s2 = *(var_68h);
0x00467fc8 lw s1, 0x64(sp) | s1 = *(var_64h);
0x00467fcc lw s0, 0x60(sp) | s0 = *(var_60h);
0x00467fd0 addiu sp, sp, 0x88 |
0x00467fd4 jr ra | return v0;
| label_31:
0x00467fd8 lw s7, -0x7fe0(gp) | s7 = *(gp);
0x00467fdc lw s1, (s7) | s1 = *(s7);
0x00467fe0 slti t0, s1, -2 | t0 = (s1 < -2) ? 1 : 0;
0x00467fe4 move s1, zero | s1 = 0;
0x00467fe8 bnez t0, 0x467fa4 |
| } while (t0 != 0);
0x00467fec lw t1, -0x7fbc(gp) | t1 = *((gp - 8175));
0x00467ff0 lw t3, -0x7fc4(gp) | t3 = *(gp);
0x00467ff4 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x00467ff8 addiu a0, t1, 0xbb4 | a0 = t1 + 0xbb4;
0x00467ffc lw s3, (t3) | s3 = *(t3);
0x00468000 jalr t9 | t9 ();
0x00468004 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468008 lw t2, -0x7fbc(gp) | t2 = *((gp - 8175));
| /* str.Data_type_mismatch */
0x0046800c addiu a3, t2, 0x8d8 | a3 = t2 + 0x8d8;
0x00468010 sw a3, 0x10(sp) | *(var_10h) = a3;
0x00468014 addiu a3, zero, 0xaa | a3 = 0xaa;
| label_1:
0x00468018 lw t3, -0x7fbc(gp) | t3 = *((gp - 8175));
0x0046801c move t9, s3 | t9 = s3;
| /* str.av_logic_double */
0x00468020 addiu a2, t3, 0xcc4 | a2 = t3 + 0xcc4;
0x00468024 move a1, v0 | a1 = v0;
0x00468028 addiu a0, zero, -2 | a0 = -2;
0x0046802c jalr t9 | t9 ();
0x00468030 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468034 lw s3, -0x7fb8(gp) | s3 = *(gp);
0x00468038 lw t2, (s3) | t2 = *(s3);
0x0046803c move s1, zero | s1 = 0;
| if (t2 <= 0) {
0x00468040 blez t2, 0x467fa4 | goto label_0;
| }
0x00468044 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x00468048 jalr t9 | t9 ();
0x0046804c nop |
0x00468050 lw ra, 0x84(sp) | ra = *(var_84h);
0x00468054 move v0, s1 | v0 = s1;
0x00468058 lw fp, 0x80(sp) | fp = *(var_80h);
0x0046805c lw s7, 0x7c(sp) | s7 = *(var_7ch);
0x00468060 lw s6, 0x78(sp) | s6 = *(var_78h);
0x00468064 lw s5, 0x74(sp) | s5 = *(var_74h);
0x00468068 lw s4, 0x70(sp) | s4 = *(var_70h);
0x0046806c lw s3, 0x6c(sp) | s3 = *(var_6ch);
0x00468070 lw s2, 0x68(sp) | s2 = *(var_68h);
0x00468074 lw s1, 0x64(sp) | s1 = *(var_64h);
0x00468078 lw s0, 0x60(sp) | s0 = *(var_60h);
0x0046807c addiu sp, sp, 0x88 |
0x00468080 jr ra | return v0;
| label_42:
0x00468084 lw s1, -0x7fc4(gp) | s1 = *(gp);
0x00468088 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x0046808c addiu a0, s7, 0xbb4 | a0 = s7 + 0xbb4;
0x00468090 lw s3, (s1) | s3 = *(s1);
0x00468094 jalr t9 | t9 ();
0x00468098 lw gp, 0x20(sp) | gp = *(var_20h);
0x0046809c addiu a3, zero, 0x97 | a3 = 0x97;
0x004680a0 lw t0, -0x7fbc(gp) | t0 = *((gp - 8175));
| /* str.Invalid_image_channel_selection */
0x004680a4 addiu t1, t0, 0x84c | t1 = t0 + 0x84c;
0x004680a8 sw t1, 0x10(sp) | *(var_10h) = t1;
0x004680ac b 0x468018 | goto label_1;
| label_29:
0x004680b0 lw t7, (t5) | t7 = *(t5);
0x004680b4 slti a2, t7, -2 | a2 = (t7 < -2) ? 1 : 0;
0x004680b8 move s1, zero | s1 = 0;
| if (a2 != 0) {
0x004680bc bnez a2, 0x467fa4 | goto label_0;
| }
0x004680c0 lw ra, -0x7fbc(gp) | ra = *((gp - 8175));
0x004680c4 lw s6, -0x7fc4(gp) | s6 = *(gp);
0x004680c8 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x004680cc addiu a0, ra, 0xbb4 | a0 = ra + 0xbb4;
0x004680d0 lw s3, (s6) | s3 = *(s6);
0x004680d4 jalr t9 | t9 ();
0x004680d8 lw gp, 0x20(sp) | gp = *(var_20h);
0x004680dc addiu a3, zero, 0x9d | a3 = 0x9d;
0x004680e0 lw s5, -0x7fbc(gp) | s5 = *((gp - 8175));
| /* str.Invalid_operation_argument */
0x004680e4 addiu s0, s5, 0xc1c | s0 = s5 + 0xc1c;
0x004680e8 sw s0, 0x10(sp) | *(var_10h) = s0;
0x004680ec b 0x468018 | goto label_1;
| label_30:
0x004680f0 lw fp, (a0) | fp = *(a0);
0x004680f4 slti s2, fp, -2 | s2 = (fp < -2) ? 1 : 0;
0x004680f8 move s1, zero | s1 = 0;
| if (s2 != 0) {
0x004680fc bnez s2, 0x467fa4 | goto label_0;
| }
0x00468100 lw t4, -0x7fbc(gp) | t4 = *((gp - 8175));
0x00468104 lw t6, -0x7fc4(gp) | t6 = *(gp);
0x00468108 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x0046810c addiu a0, t4, 0xbb4 | a0 = t4 + 0xbb4;
0x00468110 lw s3, (t6) | s3 = *(t6);
0x00468114 jalr t9 | t9 ();
0x00468118 lw gp, 0x20(sp) | gp = *(var_20h);
0x0046811c addiu a3, zero, 0xa3 | a3 = 0xa3;
0x00468120 lw s4, -0x7fbc(gp) | s4 = *((gp - 8175));
| /* str.Level_of_Detail_mismatch */
0x00468124 addiu a1, s4, 0x86c | a1 = s4 + 0x86c;
0x00468128 sw a1, 0x10(sp) | *(var_10h) = a1;
0x0046812c b 0x468018 | goto label_1;
| label_33:
0x00468130 lw ra, 0x98(sp) | ra = *(arg_98h);
0x00468134 addiu a3, zero, 0x13 | a3 = 0x13;
0x00468138 sll v0, s6, 1 | v0 = s6 << 1;
| if (ra == a3) {
0x0046813c beq ra, a3, 0x468770 | goto label_43;
| }
0x00468140 addu t0, v0, s6 | t0 = v0 + s6;
0x00468144 addu v1, t0, s0 | v1 = t0 + s0;
0x00468148 addiu a0, v1, 0x10 | a0 = v1 + 0x10;
0x0046814c sll a2, a0, 2 | a2 = a0 << 2;
0x00468150 lw t2, -0x7fe4(gp) | t2 = *((gp - 8185));
0x00468154 sll t1, fp, 2 | t1 = fp << 2;
0x00468158 addiu a1, t2, 0x31dc | a1 = t2 + 0x31dc;
0x0046815c lwx t3, a2(s7) | __asm ("lwx t3, a2(s7)");
0x00468160 lwx s3, t1(a1) | __asm ("lwx s3, t1(a1)");
| if (t3 == 0) {
0x00468164 beqz t3, 0x468384 | goto label_44;
| }
0x00468168 lbu t5, 0xa(t3) | t5 = *((t3 + 10));
0x0046816c addiu t4, t5, -3 | t4 = t5 + -3;
| label_3:
0x00468170 move a0, s7 | a0 = s7;
0x00468174 lw s7, -0x7eac(gp) | s7 = *(gp);
0x00468178 lw t9, -0x7ec4(gp) | t9 = sym.av_image_copy;
0x0046817c sll t6, t4, 2 | t6 = t4 << 2;
0x00468180 move a2, s4 | a2 = s4;
0x00468184 move a1, s6 | a1 = s6;
0x00468188 lwx s4, t6(s7) | __asm ("lwx s4, t6(s7)");
0x0046818c bal 0x45b684 | sym_av_image_copy ();
0x00468190 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468194 move s1, v0 | s1 = v0;
0x00468198 addiu t7, zero, 1 | t7 = 1;
0x0046819c lw t9, -0x7eec(gp) | t9 = sym.av_image_detach;
0x004681a0 addiu a3, zero, -1 | a3 = -1;
0x004681a4 move a1, s6 | a1 = s6;
0x004681a8 move a0, v0 | a0 = v0;
0x004681ac sw t7, 0x10(sp) | *(var_10h) = t7;
0x004681b0 move a2, s0 | a2 = s0;
0x004681b4 bal 0x45a6a8 | sym_av_image_detach ();
0x004681b8 lbu a0, 0x18(s1) | a0 = *((s1 + 24));
0x004681bc sll fp, a0, 1 | fp = a0 << 1;
0x004681c0 addu s5, fp, a0 | s5 = fp + a0;
0x004681c4 addu t8, s5, s0 | t8 = s5 + s0;
0x004681c8 addiu s6, t8, 0x10 | s6 = t8 + 0x10;
0x004681cc sll a3, s6, 2 | a3 = s6 << 2;
0x004681d0 lwx t1, a3(s1) | __asm ("lwx t1, a3(s1)");
0x004681d4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (t1 == 0) {
0x004681d8 beqz t1, 0x4686cc | goto label_45;
| }
0x004681dc lw s7, -0x7f44(gp) | s7 = *(gp);
0x004681e0 lbu t3, (s7) | t3 = *(s7);
0x004681e4 lw t9, -0x7fe8(gp) | t9 = *(gp);
| if (t3 != 0) {
0x004681e8 bnez t3, 0x468a98 | goto label_46;
| }
0x004681ec lw fp, 0xc(t1) | fp = *((t1 + 3));
0x004681f0 lw v1, (t1) | v1 = *(t1);
| label_22:
0x004681f4 sll s6, s0, 2 | s6 = s0 << 2;
0x004681f8 lbu ra, 0x18(s2) | ra = *((s2 + 24));
0x004681fc addu a1, s1, s6 | a1 = s1 + s6;
0x00468200 sll t2, ra, 1 | t2 = ra << 1;
0x00468204 lw t6, 0x30(a1) | t6 = *((a1 + 12));
0x00468208 addu t3, t2, ra | t3 = t2 + ra;
0x0046820c addu t9, t3, s0 | t9 = t3 + s0;
0x00468210 mul s5, v1, t6 | __asm ("mul s5, v1, t6");
0x00468214 addiu t4, t9, 0x10 | t4 = t9 + 0x10;
0x00468218 sll t5, t4, 2 | t5 = t4 << 2;
0x0046821c lw t7, 0x20(a1) | t7 = *((a1 + 8));
0x00468220 lwx t2, t5(s2) | __asm ("lwx t2, t5(s2)");
0x00468224 addu t8, s5, t7 | t8 = s5 + t7;
0x00468228 addu fp, fp, t8 | fp += t8;
| if (t2 == 0) {
0x0046822c beqz t2, 0x468b70 | goto label_47;
| }
| label_9:
0x00468230 lbu v0, (s7) | v0 = *(s7);
0x00468234 lw t9, -0x7fe8(gp) | t9 = *(gp);
| if (v0 != 0) {
0x00468238 bnez v0, 0x468b00 | goto label_48;
| }
0x0046823c lw s5, 0xc(t2) | s5 = *((t2 + 3));
0x00468240 lw a3, (t2) | a3 = *(t2);
| label_23:
0x00468244 addu s2, s2, s6 | s2 += s6;
0x00468248 sll ra, a0, 1 | ra = a0 << 1;
0x0046824c lw t9, 0x30(s2) | t9 = *((s2 + 12));
0x00468250 addu v0, ra, a0 | v0 = ra + a0;
0x00468254 addu s0, v0, s0 | s0 = v0 + s0;
0x00468258 mul v1, a3, t9 | __asm ("mul v1, a3, t9");
0x0046825c addiu s6, s0, 0x10 | s6 = s0 + 0x10;
0x00468260 sll t0, s6, 2 | t0 = s6 << 2;
0x00468264 lw a2, 0x20(s2) | a2 = *((s2 + 8));
0x00468268 lwx t1, t0(s1) | __asm ("lwx t1, t0(s1)");
0x0046826c addu t3, v1, a2 | t3 = v1 + a2;
0x00468270 addu s0, s5, t3 | s0 = s5 + t3;
| if (t1 == 0) {
0x00468274 beqz t1, 0x468b68 | goto label_49;
| }
0x00468278 lw a1, (t1) | a1 = *(t1);
| label_24:
0x0046827c move s2, zero | s2 = 0;
| if (t2 != 0) {
0x00468280 beqz t2, 0x468288 |
0x00468284 lw s2, (t2) | s2 = *(t2);
| }
| label_25:
0x00468288 lw t2, 0x28(sp) | t2 = *(var_28h);
0x0046828c lw t4, 0x2c(sp) | t4 = *(var_2ch);
0x00468290 mul s5, s4, t2 | __asm ("mul s5, s4, t2");
0x00468294 mul t5, s2, t4 | __asm ("mul t5, s2, t4");
0x00468298 move a0, s5 | a0 = s5;
| if (s5 < 0) {
0x0046829c bgez s5, 0x4682a4 |
0x004682a0 addiu a0, s5, 7 | a0 = s5 + 7;
| }
0x004682a4 lw t6, 0x30(sp) | t6 = *(var_30h);
0x004682a8 lui t8, 0x8000 | t8 = 0x80000000;
0x004682ac mul s4, s4, t6 | __asm ("mul s4, s4, t6");
0x004682b0 sra a3, a0, 3 | a3 = a0 >> 3;
0x004682b4 addiu s7, t8, 7 | s7 = t8 + 7;
0x004682b8 lw ra, 0x44(sp) | ra = *(var_44h);
0x004682bc addu t7, t5, a3 | t7 = t5 + a3;
0x004682c0 and t0, s5, s7 | t0 = s5 & s7;
0x004682c4 addu a3, s0, t7 | a3 = s0 + t7;
0x004682c8 sw ra, 0x1c(sp) | *(var_1ch) = ra;
0x004682cc sw s4, 0x18(sp) | *(var_18h) = s4;
| if (t0 < 0) {
0x004682d0 bgez t0, 0x4682e4 |
0x004682d4 addiu v0, t0, -1 | v0 = t0 + -1;
0x004682d8 addiu s0, zero, -8 | s0 = -8;
0x004682dc or s6, v0, s0 | s6 = v0 | s0;
0x004682e0 addiu t0, s6, 1 | t0 = s6 + 1;
| }
0x004682e4 sw t0, 0x14(sp) | *(var_14h) = t0;
0x004682e8 sw s2, 0x10(sp) | *(var_10h) = s2;
0x004682ec move a2, zero | a2 = 0;
0x004682f0 move t9, s3 | t9 = s3;
0x004682f4 move a0, fp | a0 = fp;
0x004682f8 jalr t9 | t9 ();
0x004682fc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 >= 0) {
0x00468300 bgez v0, 0x467fa4 | goto label_0;
| }
0x00468304 lw fp, -0x7fe0(gp) | fp = *(gp);
0x00468308 lw s3, (fp) | s3 = *(fp);
0x0046830c slti a1, s3, -2 | a1 = (s3 < -2) ? 1 : 0;
0x00468310 lw ra, 0x84(sp) | ra = *(var_84h);
| if (a1 != 0) {
0x00468314 bnez a1, 0x467fa8 | goto label_2;
| }
0x00468318 lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0046831c lw s2, -0x7fbc(gp) | s2 = *((gp - 8175));
0x00468320 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x00468324 addiu a0, s2, 0xbb4 | a0 = s2 + 0xbb4;
0x00468328 lw s5, (a2) | s5 = *(a2);
0x0046832c jalr t9 | t9 ();
0x00468330 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468334 addiu a3, zero, 0x15a | a3 = 0x15a;
0x00468338 move a1, v0 | a1 = v0;
0x0046833c lw t1, -0x7fbc(gp) | t1 = *((gp - 8175));
0x00468340 lw t3, -0x7fbc(gp) | t3 = *((gp - 8175));
| /* str.blit_failed */
0x00468344 addiu v1, t1, 0xc50 | v1 = t1 + 0xc50;
0x00468348 sw v1, 0x10(sp) | *(var_10h) = v1;
| /* str.av_logic_double_copy */
0x0046834c addiu a2, t3, 0xc94 | a2 = t3 + 0xc94;
0x00468350 move t9, s5 | t9 = s5;
0x00468354 addiu a0, zero, -2 | a0 = -2;
0x00468358 jalr t9 | t9 ();
0x0046835c lw gp, 0x20(sp) | gp = *(var_20h);
0x00468360 lw t2, -0x7fb8(gp) | t2 = *(gp);
0x00468364 lw t4, (t2) | t4 = *(t2);
| if (t4 <= 0) {
0x00468368 blezl t4, 0x467fa8 | goto label_2;
| }
0x0046836c lw ra, 0x84(sp) | ra = *(var_84h);
0x00468370 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x00468374 jalr t9 | t9 ();
0x00468378 nop |
0x0046837c lw ra, 0x84(sp) | ra = *(var_84h);
0x00468380 b 0x467fa8 | goto label_2;
| label_44:
0x00468384 move t4, zero | t4 = 0;
0x00468388 b 0x468170 | goto label_3;
| label_36:
0x0046838c lw t9, -0x7fe8(gp) | t9 = *(gp);
0x00468390 addiu a0, t4, 0x10 | a0 = t4 + 0x10;
0x00468394 jalr t9 | t9 ();
0x00468398 lbu t6, 0x18(s7) | t6 = *((s7 + 24));
0x0046839c lw gp, 0x20(sp) | gp = *(var_20h);
0x004683a0 sll s4, t6, 1 | s4 = t6 << 1;
0x004683a4 addu a3, s4, t6 | a3 = s4 + t6;
0x004683a8 addu t7, a3, s0 | t7 = a3 + s0;
0x004683ac addiu t8, t7, 0x10 | t8 = t7 + 0x10;
0x004683b0 sll v0, t8, 2 | v0 = t8 << 2;
0x004683b4 lw t9, -0x7fdc(gp) | t9 = *(gp);
0x004683b8 lwx t0, v0(s7) | __asm ("lwx t0, v0(s7)");
0x004683bc addiu a0, t0, 0x10 | a0 = t0 + 0x10;
0x004683c0 lw fp, 0xc(t0) | fp = *((t0 + 3));
0x004683c4 jalr t9 | t9 ();
0x004683c8 lbu a1, 0x18(s7) | a1 = *((s7 + 24));
0x004683cc lw gp, 0x20(sp) | gp = *(var_20h);
0x004683d0 sll a2, a1, 1 | a2 = a1 << 1;
0x004683d4 addu t1, a2, a1 | t1 = a2 + a1;
0x004683d8 addu v1, t1, s0 | v1 = t1 + s0;
0x004683dc addiu t3, v1, 0x10 | t3 = v1 + 0x10;
0x004683e0 sll t2, t3, 2 | t2 = t3 << 2;
0x004683e4 lwx t4, t2(s7) | __asm ("lwx t4, t2(s7)");
0x004683e8 move t6, zero | t6 = 0;
| if (t4 == 0) {
0x004683ec beqz t4, 0x467e24 | goto label_4;
| }
0x004683f0 lw t6, (t4) | t6 = *(t4);
0x004683f4 b 0x467e24 | goto label_4;
| label_41:
0x004683f8 lw a1, -0x7fe0(gp) | a1 = *(gp);
0x004683fc lw t5, (a1) | t5 = *(a1);
0x00468400 slti t7, t5, -2 | t7 = (t5 < -2) ? 1 : 0;
0x00468404 move s1, s7 | s1 = s7;
| if (t7 != 0) {
0x00468408 bnez t7, 0x467fa4 | goto label_0;
| }
0x0046840c lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00468410 lw ra, -0x7fc4(gp) | ra = *(gp);
0x00468414 lw t9, -0x7fc0(gp) | t9 = *(gp);
0x00468418 lw s6, (ra) | s6 = *(ra);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x0046841c addiu a0, a2, 0xbb4 | a0 = a2 + 0xbb4;
0x00468420 jalr t9 | t9 ();
0x00468424 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468428 move a1, v0 | a1 = v0;
0x0046842c addiu a3, zero, 0xed | a3 = 0xed;
0x00468430 lw s5, -0x7fbc(gp) | s5 = *((gp - 8175));
0x00468434 lw v1, -0x7fbc(gp) | v1 = *((gp - 8175));
| /* str.blit_failed */
0x00468438 addiu s0, s5, 0xc50 | s0 = s5 + 0xc50;
0x0046843c sw s0, 0x10(sp) | *(var_10h) = s0;
| /* str.av_logic_double_inplace */
0x00468440 addiu a2, v1, 0xcac | a2 = v1 + 0xcac;
0x00468444 move t9, s6 | t9 = s6;
0x00468448 addiu a0, zero, -2 | a0 = -2;
0x0046844c jalr t9 | t9 ();
0x00468450 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468454 lw v0, -0x7fb8(gp) | v0 = *(gp);
0x00468458 lw t8, (v0) | t8 = *(v0);
0x0046845c move s1, s7 | s1 = s7;
| if (t8 <= 0) {
0x00468460 blez t8, 0x467fa4 | goto label_0;
| }
0x00468464 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x00468468 jalr t9 | t9 ();
0x0046846c nop |
0x00468470 lw ra, 0x84(sp) | ra = *(var_84h);
0x00468474 b 0x467fa8 | goto label_2;
| label_40:
0x00468478 divu zero, t5, s1 | __asm ("divu zero, t5, s1");
0x0046847c teq s1, zero, 7 | __asm ("teq s1, zero, 7");
0x00468480 addiu v1, zero, 4 | v1 = 4;
0x00468484 mflo fp | __asm ("mflo fp");
0x00468488 divu zero, t4, fp | __asm ("divu zero, t4, fp");
0x0046848c teq fp, zero, 7 | __asm ("teq fp, zero, 7");
0x00468490 mfhi s2 | __asm ("mfhi s2");
| if (s5 == v1) {
0x00468494 beq s5, v1, 0x468ba0 | goto label_50;
| }
0x00468498 addiu a1, zero, 5 | a1 = 5;
0x0046849c addiu a2, zero, 6 | a2 = 6;
| if (s5 == a1) {
0x004684a0 beq s5, a1, 0x468bc0 | goto label_51;
| }
| if (s5 == a2) {
0x004684a4 beql s5, a2, 0x468bc8 | goto label_52;
| }
0x004684a8 addu s5, s3, s2 | s5 = s3 + s2;
0x004684ac move a0, zero | a0 = 0;
| label_26:
0x004684b0 lw t9, -0x7f34(gp) | t9 = *(gp);
0x004684b4 mul fp, s1, s2 | __asm ("mul fp, s1, s2");
0x004684b8 jalr t9 | t9 ();
0x004684bc lui t8, 0x8000 | t8 = 0x80000000;
0x004684c0 addiu t0, t8, 7 | t0 = t8 + 7;
0x004684c4 and s3, fp, t0 | s3 = fp & t0;
0x004684c8 lw gp, 0x20(sp) | gp = *(var_20h);
0x004684cc move s5, v0 | s5 = v0;
| if (s3 < 0) {
0x004684d0 bgez s3, 0x4684e4 |
0x004684d4 addiu t1, s3, -1 | t1 = s3 + -1;
0x004684d8 addiu t3, zero, -8 | t3 = -8;
0x004684dc or t2, t1, t3 | t2 = t1 | t3;
0x004684e0 addiu s3, t2, 1 | s3 = t2 + 1;
| }
0x004684e4 lw ra, 0x44(sp) | ra = *(var_44h);
0x004684e8 lw t9, -0x7e50(gp) | t9 = sym.av_malloc_buf;
0x004684ec mul a0, s5, ra | __asm ("mul a0, s5, ra");
0x004684f0 bal 0x46f680 | sym_av_malloc_buf ();
0x004684f4 nop |
0x004684f8 move a3, fp | a3 = fp;
0x004684fc lw gp, 0x20(sp) | gp = *(var_20h);
0x00468500 move fp, v0 | fp = v0;
| if (a3 < 0) {
0x00468504 bgez a3, 0x46850c |
0x00468508 addiu a3, a3, 7 | a3 += 7;
| }
0x0046850c lw t4, 0x38(sp) | t4 = *(var_38h);
0x00468510 sra a0, a3, 3 | a0 = a3 >> 3;
0x00468514 subu t6, t4, s2 | __asm ("subu t6, t4, s2");
0x00468518 mul v1, t6, s1 | __asm ("mul v1, t6, s1");
0x0046851c addu s2, fp, a0 | s2 = fp + a0;
| if (v1 < 0) {
0x00468520 bgez v1, 0x468528 |
0x00468524 addiu v1, v1, 7 | v1 += 7;
| }
0x00468528 lw t5, 0x3c(sp) | t5 = *(var_3ch);
0x0046852c sra a1, v1, 3 | a1 = v1 >> 3;
0x00468530 mul t7, s6, t5 | __asm ("mul t7, s6, t5");
0x00468534 lw v0, 0x50(sp) | v0 = *(var_50h);
0x00468538 lw t0, 0x44(sp) | t0 = *(var_44h);
0x0046853c lw t9, -0x7ef8(gp) | t9 = sym.imp.rapp_bitblt_copy_bin;
0x00468540 sll v1, s5, 3 | v1 = s5 << 3;
0x00468544 addu a2, t7, a1 | a2 = t7 + a1;
0x00468548 addu a3, v0, a2 | a3 = v0 + a2;
0x0046854c sw a3, 0x50(sp) | *(var_50h) = a3;
0x00468550 sw v1, 0x54(sp) | *(var_54h) = v1;
0x00468554 sw t0, 0x1c(sp) | *(var_1ch) = t0;
0x00468558 sw v1, 0x18(sp) | *(var_18h) = v1;
0x0046855c sw zero, 0x14(sp) | *(var_14h) = 0;
0x00468560 sw s6, 0x10(sp) | *(var_10h) = s6;
0x00468564 move a2, zero | a2 = 0;
0x00468568 move a1, s5 | a1 = s5;
0x0046856c move a0, fp | a0 = fp;
0x00468570 jalr t9 | t9 ();
0x00468574 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x00468578 bltz v0, 0x468a14 | goto label_53;
| }
| label_21:
0x0046857c lw v0, 0x40(sp) | v0 = *(var_40h);
| label_20:
0x00468580 lw v1, 0x44(sp) | v1 = *(var_44h);
0x00468584 mul a3, s1, v0 | __asm ("mul a3, s1, v0");
0x00468588 lw t9, -0x7cc4(gp) | t9 = sym.imp.rapp_pad_align_bin;
0x0046858c sw zero, 0x14(sp) | *(var_14h) = 0;
0x00468590 sw v1, 0x10(sp) | *(var_10h) = v1;
0x00468594 move a2, s3 | a2 = s3;
0x00468598 move a1, s5 | a1 = s5;
0x0046859c move a0, s2 | a0 = s2;
0x004685a0 jalr t9 | t9 ();
0x004685a4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x004685a8 bltz v0, 0x468990 | goto label_54;
| }
| label_19:
0x004685ac lw t5, 0x44(sp) | t5 = *(var_44h);
| label_18:
0x004685b0 lw t7, 0x54(sp) | t7 = *(var_54h);
0x004685b4 lw t9, -0x7d6c(gp) | t9 = *((gp - 8027));
0x004685b8 lw a0, 0x50(sp) | a0 = *(var_50h);
0x004685bc sw t5, 0x1c(sp) | *(var_1ch) = t5;
0x004685c0 sw t7, 0x18(sp) | *(var_18h) = t7;
0x004685c4 sw zero, 0x14(sp) | *(var_14h) = 0;
0x004685c8 sw s5, 0x10(sp) | *(var_10h) = s5;
0x004685cc move a3, fp | a3 = fp;
0x004685d0 move a2, zero | a2 = 0;
0x004685d4 move a1, s6 | a1 = s6;
0x004685d8 jalr t9 | t9 ();
0x004685dc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x004685e0 bltz v0, 0x46890c | goto label_55;
| }
0x004685e4 lw ra, 0x40(sp) | ra = *(var_40h);
| label_17:
0x004685e8 lw a1, 0x44(sp) | a1 = *(var_44h);
0x004685ec mul a0, s1, ra | __asm ("mul a0, s1, ra");
0x004685f0 sw s0, 0x14(sp) | *(var_14h) = s0;
0x004685f4 lw s0, 0x48(sp) | s0 = *(var_48h);
0x004685f8 lw t9, 0x4c(sp) | t9 = *(var_4ch);
0x004685fc sw a1, 0x1c(sp) | *(var_1ch) = a1;
0x00468600 sw a0, 0x18(sp) | *(var_18h) = a0;
0x00468604 sw s0, 0x10(sp) | *(var_10h) = s0;
0x00468608 move a3, s4 | a3 = s4;
0x0046860c move a2, s3 | a2 = s3;
0x00468610 move a1, s5 | a1 = s5;
0x00468614 move a0, s2 | a0 = s2;
0x00468618 jalr t9 | t9 ();
0x0046861c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x00468620 bltz v0, 0x46888c | goto label_56;
| }
| label_16:
0x00468624 lw t2, 0x40(sp) | t2 = *(var_40h);
| label_15:
0x00468628 lw t9, -0x7cc4(gp) | t9 = sym.imp.rapp_pad_align_bin;
0x0046862c mul a3, s1, t2 | __asm ("mul a3, s1, t2");
0x00468630 lw s1, 0x44(sp) | s1 = *(var_44h);
0x00468634 sw zero, 0x14(sp) | *(var_14h) = 0;
0x00468638 sw s1, 0x10(sp) | *(var_10h) = s1;
0x0046863c move a2, s3 | a2 = s3;
0x00468640 move a1, s5 | a1 = s5;
0x00468644 move a0, s2 | a0 = s2;
0x00468648 jalr t9 | t9 ();
0x0046864c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x00468650 bltz v0, 0x46880c | goto label_57;
| }
| label_14:
0x00468654 lw ra, 0x44(sp) | ra = *(var_44h);
| label_13:
0x00468658 lw v0, 0x54(sp) | v0 = *(var_54h);
0x0046865c lw t9, -0x7cfc(gp) | t9 = *((gp - 7999));
0x00468660 lw a0, 0x50(sp) | a0 = *(var_50h);
0x00468664 sw ra, 0x1c(sp) | *(var_1ch) = ra;
0x00468668 sw v0, 0x18(sp) | *(var_18h) = v0;
0x0046866c sw zero, 0x14(sp) | *(var_14h) = 0;
0x00468670 sw s5, 0x10(sp) | *(var_10h) = s5;
0x00468674 move a3, fp | a3 = fp;
0x00468678 move a2, zero | a2 = 0;
0x0046867c move a1, s6 | a1 = s6;
0x00468680 jalr t9 | t9 ();
0x00468684 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 < 0) {
0x00468688 bltz v0, 0x46878c | goto label_58;
| }
| label_12:
0x0046868c lw t9, -0x7e54(gp) | t9 = sym.av_free_buf;
| label_11:
0x00468690 move a0, fp | a0 = fp;
0x00468694 bal 0x46f6c4 | sym_av_free_buf ();
0x00468698 move s1, s7 | s1 = s7;
0x0046869c b 0x467fa4 | goto label_0;
| label_39:
0x004686a0 mul t7, s3, s1 | __asm ("mul t7, s3, s1");
0x004686a4 b 0x467f30 | goto label_5;
| label_34:
0x004686a8 move t0, zero | t0 = 0;
0x004686ac addiu s5, zero, 3 | s5 = 3;
0x004686b0 b 0x467db8 | goto label_6;
| label_35:
0x004686b4 move s6, zero | s6 = 0;
0x004686b8 sw zero, 0x50(sp) | *(var_50h) = 0;
0x004686bc b 0x467e44 | goto label_7;
| label_37:
0x004686c0 sw zero, 0x48(sp) | *(var_48h) = 0;
0x004686c4 move s2, zero | s2 = 0;
0x004686c8 b 0x467ea0 | goto label_8;
| label_45:
0x004686cc lbu ra, 0x18(s2) | ra = *((s2 + 24));
0x004686d0 sll v0, ra, 1 | v0 = ra << 1;
0x004686d4 addu t0, v0, ra | t0 = v0 + ra;
0x004686d8 addu v1, t0, s0 | v1 = t0 + s0;
0x004686dc addiu a2, v1, 0x10 | a2 = v1 + 0x10;
0x004686e0 sll t1, a2, 2 | t1 = a2 << 2;
0x004686e4 lwx t2, t1(s2) | __asm ("lwx t2, t1(s2)");
0x004686e8 lw s7, -0x7f44(gp) | s7 = *(gp);
| if (t2 == 0) {
0x004686ec beqz t2, 0x468bd0 | goto label_59;
| }
0x004686f0 move fp, zero | fp = 0;
0x004686f4 sll s6, s0, 2 | s6 = s0 << 2;
0x004686f8 b 0x468230 | goto label_9;
| label_38:
0x004686fc lw t9, -0x7fe8(gp) | t9 = *(gp);
0x00468700 addiu a0, t3, 0x10 | a0 = t3 + 0x10;
0x00468704 sw v1, 0x54(sp) | *(var_54h) = v1;
0x00468708 jalr t9 | t9 ();
0x0046870c lbu v1, 0x18(s2) | v1 = *((s2 + 24));
0x00468710 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468714 sll t6, v1, 1 | t6 = v1 << 1;
0x00468718 addu t5, t6, v1 | t5 = t6 + v1;
0x0046871c addu a0, t5, s0 | a0 = t5 + s0;
0x00468720 addiu s4, a0, 0x10 | s4 = a0 + 0x10;
0x00468724 sll a3, s4, 2 | a3 = s4 << 2;
0x00468728 lw t9, -0x7fdc(gp) | t9 = *(gp);
0x0046872c lwx t7, a3(s2) | __asm ("lwx t7, a3(s2)");
0x00468730 addiu a0, t7, 0x10 | a0 = t7 + 0x10;
0x00468734 lw s4, 0xc(t7) | s4 = *((t7 + 3));
0x00468738 jalr t9 | t9 ();
0x0046873c lbu t8, 0x18(s2) | t8 = *((s2 + 24));
0x00468740 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468744 sll t0, t8, 1 | t0 = t8 << 1;
0x00468748 addu a1, t0, t8 | a1 = t0 + t8;
0x0046874c addu a2, a1, s0 | a2 = a1 + s0;
0x00468750 addiu t1, a2, 0x10 | t1 = a2 + 0x10;
0x00468754 sll t3, t1, 2 | t3 = t1 << 2;
0x00468758 move v0, zero | v0 = 0;
0x0046875c lwx t2, t3(s2) | __asm ("lwx t2, t3(s2)");
0x00468760 lw v1, 0x54(sp) | v1 = *(var_54h);
| if (t2 == 0) {
0x00468764 beqz t2, 0x467e84 | goto label_10;
| }
0x00468768 lw v0, (t2) | v0 = *(t2);
0x0046876c b 0x467e84 | goto label_10;
| label_43:
0x00468770 lw t9, -0x7ec4(gp) | t9 = sym.av_image_copy;
0x00468774 move a2, s3 | a2 = s3;
0x00468778 move a1, s6 | a1 = s6;
0x0046877c move a0, s2 | a0 = s2;
0x00468780 bal 0x45b684 | sym_av_image_copy ();
0x00468784 move s1, v0 | s1 = v0;
0x00468788 b 0x467fa4 | goto label_0;
| label_58:
0x0046878c lw s6, -0x7fe0(gp) | s6 = *(gp);
0x00468790 lw s5, (s6) | s5 = *(s6);
0x00468794 slti s0, s5, -2 | s0 = (s5 < -2) ? 1 : 0;
0x00468798 lw t9, -0x7e54(gp) | t9 = sym.av_free_buf;
| if (s0 != 0) {
0x0046879c bnez s0, 0x468690 | goto label_11;
| }
0x004687a0 lw v1, -0x7fbc(gp) | v1 = *((gp - 8175));
0x004687a4 lw t8, -0x7fc4(gp) | t8 = *(gp);
0x004687a8 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x004687ac addiu a0, v1, 0xbb4 | a0 = v1 + 0xbb4;
0x004687b0 lw s1, (t8) | s1 = *(t8);
0x004687b4 jalr t9 | t9 ();
0x004687b8 lw gp, 0x20(sp) | gp = *(var_20h);
0x004687bc addiu a3, zero, 0x12b | a3 = 0x12b;
0x004687c0 move a1, v0 | a1 = v0;
0x004687c4 lw t0, -0x7fbc(gp) | t0 = *((gp - 8175));
0x004687c8 lw t3, -0x7fbc(gp) | t3 = *((gp - 8175));
| /* str.rapp_bitblt_or_bin_failed */
0x004687cc addiu t1, t0, 0xc78 | t1 = t0 + 0xc78;
0x004687d0 sw t1, 0x10(sp) | *(var_10h) = t1;
| /* str.av_logic_double_inplace */
0x004687d4 addiu a2, t3, 0xcac | a2 = t3 + 0xcac;
0x004687d8 move t9, s1 | t9 = s1;
0x004687dc addiu a0, zero, -2 | a0 = -2;
0x004687e0 jalr t9 | t9 ();
0x004687e4 lw gp, 0x20(sp) | gp = *(var_20h);
0x004687e8 lw t2, -0x7fb8(gp) | t2 = *(gp);
0x004687ec lw s3, (t2) | s3 = *(t2);
0x004687f0 lw t9, -0x7e54(gp) | t9 = sym.av_free_buf;
| if (s3 <= 0) {
0x004687f4 blez s3, 0x468690 | goto label_11;
| }
0x004687f8 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x004687fc jalr t9 | t9 ();
0x00468800 nop |
0x00468804 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468808 b 0x46868c | goto label_12;
| label_57:
0x0046880c lw s3, -0x7fe0(gp) | s3 = *(gp);
0x00468810 lw s2, (s3) | s2 = *(s3);
0x00468814 slti t4, s2, -2 | t4 = (s2 < -2) ? 1 : 0;
0x00468818 lw ra, 0x44(sp) | ra = *(var_44h);
| if (t4 != 0) {
0x0046881c bnez t4, 0x468658 | goto label_13;
| }
0x00468820 lw a3, -0x7fbc(gp) | a3 = *((gp - 8175));
0x00468824 lw t6, -0x7fc4(gp) | t6 = *(gp);
0x00468828 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x0046882c addiu a0, a3, 0xbb4 | a0 = a3 + 0xbb4;
0x00468830 lw s4, (t6) | s4 = *(t6);
0x00468834 jalr t9 | t9 ();
0x00468838 lw gp, 0x20(sp) | gp = *(var_20h);
0x0046883c addiu a3, zero, 0x122 | a3 = 0x122;
0x00468840 move t9, s4 | t9 = s4;
0x00468844 lw a0, -0x7fbc(gp) | a0 = *((gp - 8175));
0x00468848 lw t5, -0x7fbc(gp) | t5 = *((gp - 8175));
| /* str.rapp_pad_align_bin_failed */
0x0046884c addiu a1, a0, -0x308 | a1 = a0 + -0x308;
0x00468850 sw a1, 0x10(sp) | *(var_10h) = a1;
| /* str.av_logic_double_inplace */
0x00468854 addiu a2, t5, 0xcac | a2 = t5 + 0xcac;
0x00468858 move a1, v0 | a1 = v0;
0x0046885c addiu a0, zero, -2 | a0 = -2;
0x00468860 jalr t9 | t9 ();
0x00468864 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468868 lw t7, -0x7fb8(gp) | t7 = *(gp);
0x0046886c lw a2, (t7) | a2 = *(t7);
0x00468870 lw ra, 0x44(sp) | ra = *(var_44h);
| if (a2 <= 0) {
0x00468874 blez a2, 0x468658 | goto label_13;
| }
0x00468878 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x0046887c jalr t9 | t9 ();
0x00468880 nop |
0x00468884 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468888 b 0x468654 | goto label_14;
| label_56:
0x0046888c lw s4, -0x7fe0(gp) | s4 = *(gp);
0x00468890 lw t5, (s4) | t5 = *(s4);
0x00468894 slti t7, t5, -2 | t7 = (t5 < -2) ? 1 : 0;
0x00468898 lw t2, 0x40(sp) | t2 = *(var_40h);
| if (t7 != 0) {
0x0046889c bnez t7, 0x468628 | goto label_15;
| }
0x004688a0 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x004688a4 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x004688a8 lw t9, -0x7fc0(gp) | t9 = *(gp);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x004688ac addiu a0, a2, 0xbb4 | a0 = a2 + 0xbb4;
0x004688b0 lw s0, (v0) | s0 = *(v0);
0x004688b4 jalr t9 | t9 ();
0x004688b8 lw gp, 0x20(sp) | gp = *(var_20h);
0x004688bc addiu a3, zero, 0x11a | a3 = 0x11a;
0x004688c0 move a1, v0 | a1 = v0;
0x004688c4 lw v1, -0x7fbc(gp) | v1 = *((gp - 8175));
0x004688c8 lw t0, -0x7fbc(gp) | t0 = *((gp - 8175));
| /* str.blit_failed */
0x004688cc addiu t8, v1, 0xc50 | t8 = v1 + 0xc50;
0x004688d0 sw t8, 0x10(sp) | *(var_10h) = t8;
| /* str.av_logic_double_inplace */
0x004688d4 addiu a2, t0, 0xcac | a2 = t0 + 0xcac;
0x004688d8 move t9, s0 | t9 = s0;
0x004688dc addiu a0, zero, -2 | a0 = -2;
0x004688e0 jalr t9 | t9 ();
0x004688e4 lw gp, 0x20(sp) | gp = *(var_20h);
0x004688e8 lw t1, -0x7fb8(gp) | t1 = *(gp);
0x004688ec lw t3, (t1) | t3 = *(t1);
0x004688f0 lw t2, 0x40(sp) | t2 = *(var_40h);
| if (t3 <= 0) {
0x004688f4 blez t3, 0x468628 | goto label_15;
| }
0x004688f8 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x004688fc jalr t9 | t9 ();
0x00468900 nop |
0x00468904 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468908 b 0x468624 | goto label_16;
| label_55:
0x0046890c lw a2, -0x7fe0(gp) | a2 = *(gp);
0x00468910 lw v0, (a2) | v0 = *(a2);
0x00468914 slti v1, v0, -2 | v1 = (v0 < -2) ? 1 : 0;
0x00468918 lw ra, 0x40(sp) | ra = *(var_40h);
| if (v1 != 0) {
0x0046891c bnez v1, 0x4685e8 | goto label_17;
| }
0x00468920 lw t0, -0x7fc4(gp) | t0 = *(gp);
0x00468924 lw t8, -0x7fbc(gp) | t8 = *((gp - 8175));
0x00468928 lw t9, -0x7fc0(gp) | t9 = *(gp);
0x0046892c lw t1, (t0) | t1 = *(t0);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x00468930 addiu a0, t8, 0xbb4 | a0 = t8 + 0xbb4;
0x00468934 sw t1, 0x58(sp) | *(var_58h) = t1;
0x00468938 jalr t9 | t9 ();
0x0046893c lw gp, 0x20(sp) | gp = *(var_20h);
0x00468940 lw t9, 0x58(sp) | t9 = *(var_58h);
0x00468944 addiu a3, zero, 0x111 | a3 = 0x111;
0x00468948 lw t3, -0x7fbc(gp) | t3 = *((gp - 8175));
0x0046894c lw t4, -0x7fbc(gp) | t4 = *((gp - 8175));
| /* str.rapp_bitblt_andn_bin_failed */
0x00468950 addiu t2, t3, 0xc5c | t2 = t3 + 0xc5c;
0x00468954 sw t2, 0x10(sp) | *(var_10h) = t2;
| /* str.av_logic_double_inplace */
0x00468958 addiu a2, t4, 0xcac | a2 = t4 + 0xcac;
0x0046895c move a1, v0 | a1 = v0;
0x00468960 addiu a0, zero, -2 | a0 = -2;
0x00468964 jalr t9 | t9 ();
0x00468968 lw gp, 0x20(sp) | gp = *(var_20h);
0x0046896c lw a3, -0x7fb8(gp) | a3 = *(gp);
0x00468970 lw t6, (a3) | t6 = *(a3);
| if (t6 <= 0) {
0x00468974 blezl t6, 0x4685e8 | goto label_17;
| }
0x00468978 lw ra, 0x40(sp) | ra = *(var_40h);
0x0046897c lw t9, -0x7fb4(gp) | t9 = *(gp);
0x00468980 jalr t9 | t9 ();
0x00468984 nop |
0x00468988 lw ra, 0x40(sp) | ra = *(var_40h);
0x0046898c b 0x4685e8 | goto label_17;
| label_54:
0x00468990 lw t8, -0x7fe0(gp) | t8 = *(gp);
0x00468994 lw t0, (t8) | t0 = *(t8);
0x00468998 slti t1, t0, -2 | t1 = (t0 < -2) ? 1 : 0;
0x0046899c lw t5, 0x44(sp) | t5 = *(var_44h);
| if (t1 != 0) {
0x004689a0 bnez t1, 0x4685b0 | goto label_18;
| }
0x004689a4 lw t2, -0x7fc4(gp) | t2 = *(gp);
0x004689a8 lw t3, -0x7fbc(gp) | t3 = *((gp - 8175));
0x004689ac lw t9, -0x7fc0(gp) | t9 = *(gp);
0x004689b0 lw ra, (t2) | ra = *(t2);
0x004689b4 sw ra, 0x58(sp) | *(var_58h) = ra;
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x004689b8 addiu a0, t3, 0xbb4 | a0 = t3 + 0xbb4;
0x004689bc jalr t9 | t9 ();
0x004689c0 lw gp, 0x20(sp) | gp = *(var_20h);
0x004689c4 lw t9, 0x58(sp) | t9 = *(var_58h);
0x004689c8 move a1, v0 | a1 = v0;
0x004689cc lw a3, -0x7fbc(gp) | a3 = *((gp - 8175));
0x004689d0 lw t6, -0x7fbc(gp) | t6 = *((gp - 8175));
| /* str.rapp_pad_align_bin_failed */
0x004689d4 addiu t4, a3, -0x308 | t4 = a3 + -0x308;
0x004689d8 addiu a0, zero, -2 | a0 = -2;
0x004689dc sw t4, 0x10(sp) | *(var_10h) = t4;
0x004689e0 addiu a3, zero, 0x108 | a3 = 0x108;
| /* str.av_logic_double_inplace */
0x004689e4 addiu a2, t6, 0xcac | a2 = t6 + 0xcac;
0x004689e8 jalr t9 | t9 ();
0x004689ec lw gp, 0x20(sp) | gp = *(var_20h);
0x004689f0 lw a0, -0x7fb8(gp) | a0 = *(gp);
0x004689f4 lw a1, (a0) | a1 = *(a0);
0x004689f8 lw t5, 0x44(sp) | t5 = *(var_44h);
| if (a1 <= 0) {
0x004689fc blez a1, 0x4685b0 | goto label_18;
| }
0x00468a00 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x00468a04 jalr t9 | t9 ();
0x00468a08 nop |
0x00468a0c lw gp, 0x20(sp) | gp = *(var_20h);
0x00468a10 b 0x4685ac | goto label_19;
| label_53:
0x00468a14 lw t3, -0x7fe0(gp) | t3 = *(gp);
0x00468a18 lw t2, (t3) | t2 = *(t3);
0x00468a1c slti ra, t2, -2 | ra = (t2 < -2) ? 1 : 0;
0x00468a20 lw v0, 0x40(sp) | v0 = *(var_40h);
| if (ra != 0) {
0x00468a24 bnez ra, 0x468580 | goto label_20;
| }
0x00468a28 lw t4, -0x7fc4(gp) | t4 = *(gp);
0x00468a2c lw a3, -0x7fbc(gp) | a3 = *((gp - 8175));
0x00468a30 lw t9, -0x7fc0(gp) | t9 = *(gp);
0x00468a34 lw t6, (t4) | t6 = *(t4);
| /* str._home_svcj_workspace_TECH_CTA_VIDEO_SCENE_RELEASE_imported_vision_vision_vision_operation_av_logic.c */
0x00468a38 addiu a0, a3, 0xbb4 | a0 = a3 + 0xbb4;
0x00468a3c sw t6, 0x58(sp) | *(var_58h) = t6;
0x00468a40 jalr t9 | t9 ();
0x00468a44 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468a48 lw t9, 0x58(sp) | t9 = *(var_58h);
0x00468a4c addiu a3, zero, 0x100 | a3 = 0x100;
0x00468a50 lw a0, -0x7fbc(gp) | a0 = *((gp - 8175));
0x00468a54 lw t5, -0x7fbc(gp) | t5 = *((gp - 8175));
| /* str.rapp_bitblt_copy_bin_failed */
0x00468a58 addiu a1, a0, -0x324 | a1 = a0 + -0x324;
0x00468a5c sw a1, 0x10(sp) | *(var_10h) = a1;
| /* str.av_logic_double_inplace */
0x00468a60 addiu a2, t5, 0xcac | a2 = t5 + 0xcac;
0x00468a64 move a1, v0 | a1 = v0;
0x00468a68 addiu a0, zero, -2 | a0 = -2;
0x00468a6c jalr t9 | t9 ();
0x00468a70 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468a74 lw t7, -0x7fb8(gp) | t7 = *(gp);
0x00468a78 lw a2, (t7) | a2 = *(t7);
0x00468a7c lw v0, 0x40(sp) | v0 = *(var_40h);
| if (a2 <= 0) {
0x00468a80 blez a2, 0x468580 | goto label_20;
| }
0x00468a84 lw t9, -0x7fb4(gp) | t9 = *(gp);
0x00468a88 jalr t9 | t9 ();
0x00468a8c nop |
0x00468a90 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468a94 b 0x46857c | goto label_21;
| label_46:
0x00468a98 addiu a0, t1, 0x10 | a0 = t1 + 0x10;
0x00468a9c jalr t9 | t9 ();
0x00468aa0 lbu a0, 0x18(s1) | a0 = *((s1 + 24));
0x00468aa4 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468aa8 sll a1, a0, 1 | a1 = a0 << 1;
0x00468aac addu t4, a1, a0 | t4 = a1 + a0;
0x00468ab0 addu t5, t4, s0 | t5 = t4 + s0;
0x00468ab4 addiu t6, t5, 0x10 | t6 = t5 + 0x10;
0x00468ab8 sll t7, t6, 2 | t7 = t6 << 2;
0x00468abc lw t9, -0x7fdc(gp) | t9 = *(gp);
0x00468ac0 lwx s5, t7(s1) | __asm ("lwx s5, t7(s1)");
0x00468ac4 addiu a0, s5, 0x10 | a0 = s5 + 0x10;
0x00468ac8 lw fp, 0xc(s5) | fp = *((s5 + 3));
0x00468acc jalr t9 | t9 ();
0x00468ad0 lbu a0, 0x18(s1) | a0 = *((s1 + 24));
0x00468ad4 lw gp, 0x20(sp) | gp = *(var_20h);
0x00468ad8 sll t8, a0, 1 | t8 = a0 << 1;
0x00468adc addu a3, t8, a0 | a3 = t8 + a0;
0x00468ae0 addu v0, a3, s0 | v0 = a3 + s0;
0x00468ae4 addiu t0, v0, 0x10 | t0 = v0 + 0x10;
0x00468ae8 sll a2, t0, 2 | a2 = t0 << 2;
0x00468aec lwx t1, a2(s1) | __asm ("lwx t1, a2(s1)");
0x00468af0 move v1, zero | v1 = 0;
| if (t1 == 0) {
0x00468af4 beqz t1, 0x4681f4 | goto label_22;
| }
0x00468af8 lw v1, (t1) | v1 = *(t1);
0x00468afc b 0x4681f4 | goto label_22;
| label_48:
0x00468b00 addiu a0, t2, 0x10 | a0 = t2 + 0x10;
0x00468b04 jalr t9 | t9 ();
0x00468b08 lbu t0, 0x18(s2) | t0 = *((s2 + 24));
0x00468b0c lw gp, 0x20(sp) | gp = *(var_20h);
0x00468b10 sll a2, t0, 1 | a2 = t0 << 1;
0x00468b14 addu t1, a2, t0 | t1 = a2 + t0;
0x00468b18 addu v1, t1, s0 | v1 = t1 + s0;
0x00468b1c addiu t2, v1, 0x10 | t2 = v1 + 0x10;
0x00468b20 sll t3, t2, 2 | t3 = t2 << 2;
0x00468b24 lw t9, -0x7fdc(gp) | t9 = *(gp);
0x00468b28 lwx a1, t3(s2) | __asm ("lwx a1, t3(s2)");
0x00468b2c addiu a0, a1, 0x10 | a0 = a1 + 0x10;
0x00468b30 lw s5, 0xc(a1) | s5 = *((a1 + 3));
0x00468b34 jalr t9 | t9 ();
0x00468b38 lbu t4, 0x18(s2) | t4 = *((s2 + 24));
0x00468b3c lbu a0, 0x18(s1) | a0 = *((s1 + 24));
0x00468b40 sll t5, t4, 1 | t5 = t4 << 1;
0x00468b44 addu t6, t5, t4 | t6 = t5 + t4;
0x00468b48 addu t7, t6, s0 | t7 = t6 + s0;
0x00468b4c addiu t8, t7, 0x10 | t8 = t7 + 0x10;
0x00468b50 sll s7, t8, 2 | s7 = t8 << 2;
0x00468b54 lwx t2, s7(s2) | __asm ("lwx t2, s7(s2)");
0x00468b58 move a3, zero | a3 = 0;
| if (t2 == 0) {
0x00468b5c beqz t2, 0x468244 | goto label_23;
| }
0x00468b60 lw a3, (t2) | a3 = *(t2);
0x00468b64 b 0x468244 | goto label_23;
| label_49:
0x00468b68 move a1, zero | a1 = 0;
0x00468b6c b 0x46827c | goto label_24;
| label_47:
0x00468b70 sll s2, a0, 1 | s2 = a0 << 1;
0x00468b74 addu s7, s2, a0 | s7 = s2 + a0;
0x00468b78 addu s0, s7, s0 | s0 = s7 + s0;
0x00468b7c addiu s6, s0, 0x10 | s6 = s0 + 0x10;
0x00468b80 sll a0, s6, 2 | a0 = s6 << 2;
0x00468b84 lwx a3, a0(s1) | __asm ("lwx a3, a0(s1)");
| if (a3 != 0) {
0x00468b88 beql a3, zero, 0x468be4 |
0x00468b8c move a1, zero | a1 = 0;
0x00468b90 lw a1, (a3) | a1 = *(a3);
0x00468b94 move s0, zero | s0 = 0;
0x00468b98 move s2, zero | s2 = 0;
0x00468b9c b 0x468288 | goto label_25;
| label_50:
0x00468ba0 addu s3, s3, s2 | s3 += s2;
0x00468ba4 addiu v0, s3, 7 | v0 = s3 + 7;
| if (v0 >= 0) {
0x00468ba8 bltzl v0, 0x468bb8 |
0x00468bac addiu v0, s3, 0xe | v0 = s3 + 0xe;
0x00468bb0 sra a0, v0, 3 | a0 = v0 >> 3;
0x00468bb4 b 0x4684b0 | goto label_26;
| }
0x00468bb8 sra a0, v0, 3 | a0 = v0 >> 3;
0x00468bbc b 0x4684b0 | goto label_26;
| label_51:
0x00468bc0 addu a0, s3, s2 | a0 = s3 + s2;
0x00468bc4 b 0x4684b0 | goto label_26;
| label_52:
0x00468bc8 sll a0, s5, 1 | a0 = s5 << 1;
0x00468bcc b 0x4684b0 | goto label_26;
| label_59:
0x00468bd0 move fp, zero | fp = 0;
0x00468bd4 move a1, zero | a1 = 0;
0x00468bd8 move s0, zero | s0 = 0;
0x00468bdc move s2, zero | s2 = 0;
0x00468be0 b 0x468288 | goto label_25;
| }
0x00468be4 move s0, zero | s0 = 0;
0x00468be8 move s2, zero | s2 = 0;
0x00468bec b 0x468288 | goto label_25;
| }
[*] Function printf used 1 times video-scene-provider