[*] Binary protection state of libliveMedia.so.52.0.3
No RELRO No Canary found NX disabled DSO No RPATH No RUNPATH Symbols
[*] Function popen tear down of libliveMedia.so.52.0.3
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x6d624 */
| #include <stdint.h>
|
; (fcn) method.MediaSubsession.initiate_int_ () | void method_MediaSubsession_initiate_int_ () {
| /* MediaSubsession::initiate(int) */
0x0006d624 lui gp, 4 |
0x0006d628 addiu gp, gp, 0x2e0c |
0x0006d62c addu gp, gp, t9 | gp += t9;
0x0006d630 addiu sp, sp, -0xe8 |
0x0006d634 sw ra, 0xe4(sp) | *(var_e4h) = ra;
0x0006d638 sw fp, 0xe0(sp) | *(var_e0h) = fp;
0x0006d63c sw s7, 0xdc(sp) | *(var_dch) = s7;
0x0006d640 sw s6, 0xd8(sp) | *(var_d8h) = s6;
0x0006d644 sw s5, 0xd4(sp) | *(var_d4h) = s5;
0x0006d648 sw s4, 0xd0(sp) | *(var_d0h) = s4;
0x0006d64c sw s3, 0xcc(sp) | *(var_cch) = s3;
0x0006d650 sw s2, 0xc8(sp) | *(var_c8h) = s2;
0x0006d654 sw s1, 0xc4(sp) | *(var_c4h) = s1;
0x0006d658 sw s0, 0xc0(sp) | *(var_c0h) = s0;
0x0006d65c lw t8, 0x11c(a0) | t8 = *(a0);
0x0006d660 sw gp, 0x20(sp) | *(var_20h) = gp;
0x0006d664 move s0, a0 | s0 = a0;
| if (t8 == 0) {
0x0006d668 beqz t8, 0x6d6a0 | goto label_11;
| }
0x0006d66c addiu v0, zero, 1 | v0 = 1;
| do {
| label_0:
0x0006d670 lw ra, 0xe4(sp) | ra = *(var_e4h);
0x0006d674 lw fp, 0xe0(sp) | fp = *(var_e0h);
0x0006d678 lw s7, 0xdc(sp) | s7 = *(var_dch);
0x0006d67c lw s6, 0xd8(sp) | s6 = *(var_d8h);
0x0006d680 lw s5, 0xd4(sp) | s5 = *(var_d4h);
0x0006d684 lw s4, 0xd0(sp) | s4 = *(var_d0h);
0x0006d688 lw s3, 0xcc(sp) | s3 = *(var_cch);
0x0006d68c lw s2, 0xc8(sp) | s2 = *(var_c8h);
0x0006d690 lw s1, 0xc4(sp) | s1 = *(var_c4h);
0x0006d694 lw s0, 0xc0(sp) | s0 = *(var_c0h);
0x0006d698 addiu sp, sp, 0xe8 |
0x0006d69c jr ra | return v0;
| label_11:
0x0006d6a0 lw t8, 0x134(a0) | t8 = *(a0);
0x0006d6a4 addiu v0, zero, 1 | v0 = 1;
0x0006d6a8 bnez t8, 0x6d670 |
| } while (t8 != 0);
0x0006d6ac lw t8, 0x34(a0) | t8 = *((a0 + 13));
0x0006d6b0 lw t9, -0x7dd4(gp) | t9 = *(gp);
| if (t8 == 0) {
0x0006d6b4 beqz t8, 0x6dc90 | goto label_12;
| }
0x0006d6b8 addiu s3, sp, 0x28 | s3 = sp + 0x28;
0x0006d6bc move s1, a1 | s1 = a1;
0x0006d6c0 move a0, s3 | a0 = s3;
0x0006d6c4 move a1, s0 | a1 = s0;
0x0006d6c8 jalr t9 | t9 ();
0x0006d6cc lhu t8, 0x28(s0) | t8 = *((s0 + 20));
0x0006d6d0 andi s2, t8, 0xffff | s2 = t8 & 0xffff;
0x0006d6d4 srl s2, s2, 8 | s2 >>= 8;
0x0006d6d8 sll t8, t8, 8 | t8 <<= 8;
0x0006d6dc or s2, s2, t8 | s2 |= t8;
0x0006d6e0 andi s2, s2, 0xffff | s2 &= 0xffff;
0x0006d6e4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (s2 == 0) {
0x0006d6e8 beqz s2, 0x6d894 | goto label_13;
| }
0x0006d6ec lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0006d6f0 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x0006d6f4 lw a0, 0x38(s0) | a0 = *((s0 + 14));
| /* esilref: 'RTP' */
0x0006d6f8 addiu a1, a1, -0x12c4 | a1 += -0x12c4;
0x0006d6fc jalr t9 | t9 ();
0x0006d700 sltiu s4, v0, 1 | s4 = (v0 < 1) ? 1 : 0;
0x0006d704 lw gp, 0x20(sp) | gp = *(var_20h);
| if (s4 != 0) {
0x0006d708 beqz s4, 0x6d718 |
0x0006d70c lbu t8, 0x40(s0) | t8 = *((s0 + 64));
0x0006d710 lw t9, -0x762c(gp) | t9 = *(gp);
| if (t8 == 0) {
0x0006d714 beqz t8, 0x6dd44 | goto label_14;
| }
| }
| label_7:
0x0006d718 addiu s2, s0, 0x48 | s2 = s0 + 0x48;
0x0006d71c lw t9, -0x7ca8(gp) | t9 = *(gp);
0x0006d720 move a0, s2 | a0 = s2;
0x0006d724 jalr t9 | t9 ();
0x0006d728 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d72c lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006d730 addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006d734 lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
| if (v0 != 0) {
0x0006d738 bnez v0, 0x6d850 | goto label_15;
| }
0x0006d73c lw s6, 4(t8) | s6 = *((t8 + 1));
0x0006d740 lhu s7, 0x28(s0) | s7 = *((s0 + 20));
0x0006d744 jalr t9 | t9 ();
0x0006d748 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d74c lw t9, -0x7700(gp) | t9 = *(gp);
0x0006d750 move a0, v0 | a0 = v0;
0x0006d754 sh s7, 0x10(sp) | *(var_10h) = s7;
0x0006d758 move a1, s6 | a1 = s6;
0x0006d75c move a2, s3 | a2 = s3;
0x0006d760 move a3, s2 | a3 = s2;
0x0006d764 move s5, v0 | s5 = v0;
0x0006d768 jalr t9 | t9 ();
0x0006d76c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d770 sw s5, 0x10c(s0) | *(s0) = s5;
0x0006d774 move a0, s5 | a0 = s5;
| do {
0x0006d778 lw a1, -0x7fd0(gp) | a1 = *(gp);
| if (a0 == 0) {
0x0006d77c beqz a0, 0x6df20 | goto label_16;
| }
| if (s4 != 0) {
0x0006d780 beqz s4, 0x6d798 |
0x0006d784 nop |
0x0006d788 lbu t8, 0x40(s0) | t8 = *((s0 + 64));
0x0006d78c lw t9, -0x7ca8(gp) | t9 = *(gp);
| if (t8 == 0) {
0x0006d790 beqz t8, 0x6dcb8 | goto label_17;
| }
0x0006d794 sw a0, 0x110(s0) | *(s0) = a0;
| }
| label_6:
0x0006d798 lw a1, 0xcc(s0) | a1 = *((s0 + 51));
0x0006d79c addiu v0, zero, 0x19 | v0 = 0x19;
0x0006d7a0 ori t8, zero, 0xc800 | t8 = 0xc800;
0x0006d7a4 mult a1, v0 | __asm ("mult a1, v0");
0x0006d7a8 lw v1, 0x1c(s0) | v1 = *((s0 + 7));
0x0006d7ac lw a1, 4(a0) | a1 = *((a0 + 1));
0x0006d7b0 lw t9, -0x73b0(gp) | t9 = *(gp);
0x0006d7b4 lw a0, 4(v1) | a0 = *((v1 + 1));
0x0006d7b8 mflo v0 | __asm ("mflo v0");
0x0006d7bc srl v0, v0, 1 | v0 >>= 1;
0x0006d7c0 sltu a2, v0, t8 | a2 = (v0 < t8) ? 1 : 0;
| if (a2 != 0) {
0x0006d7c4 movz t8, v0, a2 | t8 = v0;
| }
0x0006d7c8 move a2, t8 | a2 = t8;
0x0006d7cc jalr t9 | t9 ();
0x0006d7d0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d7d4 lw t9, -0x7ca8(gp) | t9 = *(gp);
0x0006d7d8 move a0, s2 | a0 = s2;
0x0006d7dc jalr t9 | t9 ();
0x0006d7e0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0006d7e4 bnez v0, 0x6d824 |
0x0006d7e8 lw s4, 0x110(s0) | s4 = *(s0);
0x0006d7ec lw t9, -0x762c(gp) | t9 = *(gp);
| if (s4 == 0) {
0x0006d7f0 beqz s4, 0x6d824 | goto label_18;
| }
0x0006d7f4 addiu a0, sp, 0xac | a0 = sp + 0xac;
0x0006d7f8 move a1, zero | a1 = 0;
0x0006d7fc jalr t9 | t9 ();
0x0006d800 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d804 lhu a2, 0xac(sp) | a2 = *(var_ach);
0x0006d808 move a0, s4 | a0 = s4;
0x0006d80c lw t9, -0x7750(gp) | t9 = *(gp);
0x0006d810 move a1, s2 | a1 = s2;
0x0006d814 sw zero, 0x10(sp) | *(var_10h) = 0;
0x0006d818 addiu a3, zero, -1 | a3 = -1;
0x0006d81c jalr t9 | t9 ();
0x0006d820 lw gp, 0x20(sp) | gp = *(var_20h);
| }
| label_18:
0x0006d824 lw t8, 0x130(s0) | t8 = *(s0);
0x0006d828 addiu v0, zero, 1 | v0 = 1;
| if (t8 == 0) {
0x0006d82c beqz t8, 0x6db6c | goto label_19;
| }
0x0006d830 move v0, zero | v0 = 0;
| if (t8 == v0) {
0x0006d834 beq t8, v0, 0x6ddf4 | goto label_20;
| }
| label_4:
0x0006d838 lw t9, -0x742c(gp) | t9 = *(gp);
0x0006d83c move a0, s3 | a0 = s3;
0x0006d840 sw v0, 0xbc(sp) | *(var_bch) = v0;
0x0006d844 jalr t9 | t9 ();
0x0006d848 lw v0, 0xbc(sp) | v0 = *(var_bch);
0x0006d84c b 0x6d670 | goto label_0;
| label_15:
0x0006d850 lw s7, 4(t8) | s7 = *((t8 + 1));
0x0006d854 lhu s6, 0x28(s0) | s6 = *((s0 + 20));
0x0006d858 jalr t9 | t9 ();
0x0006d85c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d860 addiu t8, zero, 0xff | t8 = 0xff;
0x0006d864 move a0, v0 | a0 = v0;
0x0006d868 lw t9, -0x794c(gp) | t9 = *(gp);
0x0006d86c move a1, s7 | a1 = s7;
0x0006d870 sw t8, 0x10(sp) | *(var_10h) = t8;
0x0006d874 move a2, s3 | a2 = s3;
0x0006d878 move a3, s6 | a3 = s6;
0x0006d87c move s5, v0 | s5 = v0;
0x0006d880 jalr t9 | t9 ();
0x0006d884 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d888 sw s5, 0x10c(s0) | *(s0) = s5;
0x0006d88c move a0, s5 | a0 = s5;
0x0006d890 b 0x6d778 |
| } while (1);
| label_13:
0x0006d894 lw t9, -0x76ec(gp) | t9 = *(gp);
0x0006d898 addiu a0, zero, 1 | a0 = 1;
0x0006d89c jalr t9 | t9 ();
0x0006d8a0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d8a4 move s6, v0 | s6 = v0;
| if (v0 == 0) {
0x0006d8a8 beqz v0, 0x6dc3c | goto label_8;
| }
0x0006d8ac lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006d8b0 addiu v0, sp, 0xac | v0 = sp + 0xac;
0x0006d8b4 lw t9, -0x6e5c(gp) | t9 = *(gp);
0x0006d8b8 move a0, v0 | a0 = v0;
0x0006d8bc lw a1, 4(t8) | a1 = *((t8 + 1));
0x0006d8c0 sw v0, 0xb8(sp) | *(var_b8h) = v0;
0x0006d8c4 jalr t9 | t9 ();
0x0006d8c8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d8cc addiu s2, s0, 0x48 | s2 = s0 + 0x48;
0x0006d8d0 addiu s7, sp, 0xb0 | s7 = sp + 0xb0;
0x0006d8d4 addiu s4, sp, 0xb4 | s4 = sp + 0xb4;
| do {
| label_1:
0x0006d8d8 lw t9, -0x7ca8(gp) | t9 = *(gp);
0x0006d8dc move a0, s2 | a0 = s2;
0x0006d8e0 jalr t9 | t9 ();
0x0006d8e4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d8e8 lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006d8ec move a0, s7 | a0 = s7;
0x0006d8f0 lw t9, -0x762c(gp) | t9 = *(gp);
0x0006d8f4 move a1, zero | a1 = 0;
0x0006d8f8 lw fp, 4(t8) | fp = *((t8 + 1));
| if (v0 != 0) {
0x0006d8fc bnez v0, 0x6d9e8 | goto label_21;
| }
0x0006d900 jalr t9 | t9 ();
0x0006d904 nop |
0x0006d908 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d90c lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
0x0006d910 addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006d914 jalr t9 | t9 ();
0x0006d918 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d91c lhu t8, 0xb0(sp) | t8 = *(var_b0h);
0x0006d920 move a0, v0 | a0 = v0;
0x0006d924 lw t9, -0x7700(gp) | t9 = *(gp);
0x0006d928 move a1, fp | a1 = fp;
0x0006d92c sh t8, 0x10(sp) | *(var_10h) = t8;
0x0006d930 move a2, s3 | a2 = s3;
0x0006d934 move a3, s2 | a3 = s2;
0x0006d938 move s5, v0 | s5 = v0;
0x0006d93c jalr t9 | t9 ();
0x0006d940 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d944 sw s5, 0x10c(s0) | *(s0) = s5;
| label_2:
0x0006d948 lw t9, -0x762c(gp) | t9 = *(gp);
| if (s5 == 0) {
0x0006d94c beqz s5, 0x6dd60 | goto label_22;
| }
0x0006d950 move a0, s4 | a0 = s4;
0x0006d954 move a1, zero | a1 = 0;
0x0006d958 jalr t9 | t9 ();
0x0006d95c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d960 lw v0, 0x1c(s0) | v0 = *((s0 + 7));
0x0006d964 move a2, s4 | a2 = s4;
0x0006d968 lw t8, 0x10c(s0) | t8 = *(s0);
0x0006d96c lw a0, 4(v0) | a0 = *((v0 + 1));
0x0006d970 lw t9, -0x7a1c(gp) | t9 = *(gp);
0x0006d974 lw a1, 4(t8) | a1 = *((t8 + 1));
0x0006d978 jalr t9 | t9 ();
0x0006d97c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0006d980 beqz v0, 0x6dd80 | goto label_23;
| }
0x0006d984 lhu t8, 0xb4(sp) | t8 = *(var_b4h);
0x0006d988 lbu v0, 0x40(s0) | v0 = *((s0 + 64));
0x0006d98c sh t8, 0x28(s0) | *((s0 + 20)) = t8;
| if (v0 != 0) {
0x0006d990 bnez v0, 0x6df10 | goto label_24;
| }
0x0006d994 andi a1, t8, 0xffff | a1 = t8 & 0xffff;
0x0006d998 srl a1, a1, 8 | a1 >>= 8;
0x0006d99c sll t8, t8, 8 | t8 <<= 8;
0x0006d9a0 or a1, a1, t8 | a1 |= t8;
0x0006d9a4 andi a1, a1, 0xffff | a1 &= 0xffff;
0x0006d9a8 andi t8, a1, 1 | t8 = a1 & 1;
0x0006d9ac lw t9, -0x7ca8(gp) | t9 = *(gp);
| if (t8 == 0) {
0x0006d9b0 beqz t8, 0x6da34 | goto label_25;
| }
0x0006d9b4 lw t8, (s6) | t8 = *(s6);
0x0006d9b8 move a0, s6 | a0 = s6;
0x0006d9bc lw t9, 8(t8) | t9 = *((t8 + 2));
0x0006d9c0 lw a2, 0x10c(s0) | a2 = *(s0);
0x0006d9c4 jalr t9 | t9 ();
0x0006d9c8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d9cc beqz v0, 0x6d8d8 |
| } while (v0 == 0);
0x0006d9d0 lw t8, (v0) | t8 = *(v0);
0x0006d9d4 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0006d9d8 move a0, v0 | a0 = v0;
0x0006d9dc jalr t9 | t9 ();
0x0006d9e0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d9e4 b 0x6d8d8 | goto label_1;
| label_21:
0x0006d9e8 jalr t9 | t9 ();
0x0006d9ec nop |
0x0006d9f0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006d9f4 lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
0x0006d9f8 addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006d9fc jalr t9 | t9 ();
0x0006da00 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006da04 addiu t8, zero, 0xff | t8 = 0xff;
0x0006da08 move a0, v0 | a0 = v0;
0x0006da0c lw t9, -0x794c(gp) | t9 = *(gp);
0x0006da10 move a1, fp | a1 = fp;
0x0006da14 lhu a3, 0xb0(sp) | a3 = *(var_b0h);
0x0006da18 move a2, s3 | a2 = s3;
0x0006da1c sw t8, 0x10(sp) | *(var_10h) = t8;
0x0006da20 move s5, v0 | s5 = v0;
0x0006da24 jalr t9 | t9 ();
0x0006da28 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006da2c sw s5, 0x10c(s0) | *(s0) = s5;
0x0006da30 b 0x6d948 | goto label_2;
| label_25:
0x0006da34 move a0, s2 | a0 = s2;
0x0006da38 ori s5, a1, 1 | s5 = a1 | 1;
0x0006da3c jalr t9 | t9 ();
0x0006da40 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006da44 lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006da48 move a0, s7 | a0 = s7;
0x0006da4c lw t9, -0x762c(gp) | t9 = *(gp);
0x0006da50 move a1, s5 | a1 = s5;
0x0006da54 lw fp, 4(t8) | fp = *((t8 + 1));
| if (v0 != 0) {
0x0006da58 bnez v0, 0x6db1c | goto label_26;
| }
0x0006da5c jalr t9 | t9 ();
0x0006da60 nop |
0x0006da64 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006da68 lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
0x0006da6c addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006da70 jalr t9 | t9 ();
0x0006da74 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006da78 lhu t8, 0xb0(sp) | t8 = *(var_b0h);
0x0006da7c move a0, v0 | a0 = v0;
0x0006da80 lw t9, -0x7700(gp) | t9 = *(gp);
0x0006da84 move a1, fp | a1 = fp;
0x0006da88 sh t8, 0x10(sp) | *(var_10h) = t8;
0x0006da8c move a2, s3 | a2 = s3;
0x0006da90 move a3, s2 | a3 = s2;
0x0006da94 move s5, v0 | s5 = v0;
0x0006da98 jalr t9 | t9 ();
0x0006da9c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006daa0 sw s5, 0x110(s0) | *(s0) = s5;
0x0006daa4 move a0, s5 | a0 = s5;
| if (a0 == 0) {
| label_3:
0x0006daa8 beqz a0, 0x6dc7c | goto label_27;
| }
0x0006daac nop |
0x0006dab0 lw t8, 4(a0) | t8 = *((a0 + 1));
| if (t8 >= 0) {
0x0006dab4 bgez t8, 0x6dea8 | goto label_28;
| }
0x0006dab8 nop |
0x0006dabc lw t8, (a0) | t8 = *(a0);
0x0006dac0 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0006dac4 jalr t9 | t9 ();
0x0006dac8 nop |
0x0006dacc lhu t8, 0x28(s0) | t8 = *((s0 + 20));
0x0006dad0 sw zero, 0x110(s0) | *(s0) = 0;
| label_5:
0x0006dad4 lw v0, (s6) | v0 = *(s6);
0x0006dad8 srl a1, t8, 8 | a1 = t8 >> 8;
0x0006dadc sll t8, t8, 8 | t8 <<= 8;
0x0006dae0 lw a2, 0x10c(s0) | a2 = *(s0);
0x0006dae4 or a1, a1, t8 | a1 |= t8;
0x0006dae8 lw t9, 8(v0) | t9 = *((v0 + 2));
0x0006daec move a0, s6 | a0 = s6;
0x0006daf0 andi a1, a1, 0xffff | a1 &= 0xffff;
0x0006daf4 jalr t9 | t9 ();
0x0006daf8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dafc move a0, v0 | a0 = v0;
| if (v0 == 0) {
0x0006db00 beqz v0, 0x6d8d8 | goto label_1;
| }
0x0006db04 lw t8, (v0) | t8 = *(v0);
0x0006db08 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0006db0c jalr t9 | t9 ();
0x0006db10 nop |
0x0006db14 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006db18 b 0x6d8d8 | goto label_1;
| label_26:
0x0006db1c jalr t9 | t9 ();
0x0006db20 nop |
0x0006db24 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006db28 lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
0x0006db2c addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006db30 jalr t9 | t9 ();
0x0006db34 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006db38 move s5, v0 | s5 = v0;
0x0006db3c lw t9, -0x794c(gp) | t9 = *(gp);
0x0006db40 move a0, v0 | a0 = v0;
0x0006db44 lhu a3, 0xb0(sp) | a3 = *(var_b0h);
0x0006db48 addiu v0, zero, 0xff | v0 = 0xff;
0x0006db4c move a1, fp | a1 = fp;
0x0006db50 sw v0, 0x10(sp) | *(var_10h) = v0;
0x0006db54 move a2, s3 | a2 = s3;
0x0006db58 jalr t9 | t9 ();
0x0006db5c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006db60 sw s5, 0x110(s0) | *(s0) = s5;
0x0006db64 move a0, s5 | a0 = s5;
0x0006db68 b 0x6daa8 | goto label_3;
| label_19:
0x0006db6c lw t8, -0x6d54(gp) | t8 = *((gp - 6997));
0x0006db70 addiu a1, zero, 1 | a1 = 1;
0x0006db74 lw a0, -0x7fd0(gp) | a0 = *(gp);
0x0006db78 addiu a2, zero, 0x2b | a2 = 0x2b;
0x0006db7c lw a3, (t8) | a3 = *(t8);
0x0006db80 lw t9, -0x7558(gp) | t9 = sym.imp.fwrite;
| /* str.MediaSubsession::initiate____FLAG_RECVONLY_n */
0x0006db84 addiu a0, a0, -0x1264 | a0 += -0x1264;
0x0006db88 jalr t9 | t9 ();
0x0006db8c lw t8, (s0) | t8 = *(s0);
0x0006db90 move a0, s0 | a0 = s0;
0x0006db94 lw t9, 0x14(t8) | t9 = *((t8 + 5));
0x0006db98 move a1, s1 | a1 = s1;
0x0006db9c jalr t9 | t9 ();
0x0006dba0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0006dba4 beqz v0, 0x6dc3c | goto label_8;
| }
0x0006dba8 lw t8, 0x11c(s0) | t8 = *(s0);
0x0006dbac lw a1, -0x7fd0(gp) | a1 = *(gp);
| if (t8 == 0) {
0x0006dbb0 beqz t8, 0x6df40 | goto label_29;
| }
0x0006dbb4 lw t8, 0x114(s0) | t8 = *(s0);
| if (t8 == 0) {
0x0006dbb8 beqz t8, 0x6dc88 | goto label_30;
| }
0x0006dbbc nop |
0x0006dbc0 lw a1, 0x110(s0) | a1 = *(s0);
0x0006dbc4 addiu v0, zero, 1 | v0 = 1;
| if (a1 == 0) {
0x0006dbc8 beqz a1, 0x6d838 | goto label_4;
| }
0x0006dbcc lw v0, 0xcc(s0) | v0 = *((s0 + 51));
0x0006dbd0 addiu a2, zero, 0x1f4 | a2 = aav.0x000001f4;
| if (v0 != 0) {
0x0006dbd4 beqz v0, 0x6dbf0 |
0x0006dbd8 lui a2, 0xcccc | a2 = 0xcccccccd;
0x0006dbdc ori a2, a2, 0xcccd |
0x0006dbe0 multu v0, a2 | __asm ("multu v0, a2");
0x0006dbe4 mfhi a2 | __asm ("mfhi a2");
0x0006dbe8 srl a2, a2, 4 | a2 >>= 4;
0x0006dbec addu a2, a2, v0 | a2 += v0;
| }
0x0006dbf0 lw v0, 0x1c(s0) | v0 = *((s0 + 7));
0x0006dbf4 lw t9, -0x7068(gp) | t9 = *(gp);
0x0006dbf8 lw a0, 4(v0) | a0 = *((v0 + 1));
0x0006dbfc lw a3, 0x2c(v0) | a3 = *((v0 + 11));
0x0006dc00 sw zero, 0x10(sp) | *(var_10h) = 0;
0x0006dc04 sw t8, 0x14(sp) | *(var_14h) = t8;
0x0006dc08 sw zero, 0x18(sp) | *(var_18h) = 0;
0x0006dc0c jalr t9 | t9 ();
0x0006dc10 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dc14 sw v0, 0x118(s0) | *(s0) = v0;
| if (v0 != 0) {
0x0006dc18 bnez v0, 0x6dc88 | goto label_30;
| }
| label_9:
0x0006dc1c lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006dc20 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0006dc24 lw a0, 4(t8) | a0 = *((t8 + 1));
0x0006dc28 lw t8, (a0) | t8 = *(a0);
0x0006dc2c lw t9, 4(t8) | t9 = *((t8 + 1));
| /* str.Failed_to_create_RTCP_instance */
0x0006dc30 addiu a1, a1, -0x1218 | a1 += -0x1218;
0x0006dc34 jalr t9 | t9 ();
0x0006dc38 lw gp, 0x20(sp) | gp = *(var_20h);
| label_8:
0x0006dc3c lw t9, -0x742c(gp) | t9 = *(gp);
0x0006dc40 move a0, s3 | a0 = s3;
0x0006dc44 jalr t9 | t9 ();
0x0006dc48 lw gp, 0x20(sp) | gp = *(var_20h);
| do {
0x0006dc4c lw t9, -0x79c4(gp) | t9 = *(gp);
0x0006dc50 move a0, s0 | a0 = s0;
0x0006dc54 jalr t9 | t9 ();
0x0006dc58 move a0, s3 | a0 = s3;
0x0006dc5c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dc60 lw t9, -0x762c(gp) | t9 = *(gp);
0x0006dc64 move a1, zero | a1 = 0;
0x0006dc68 jalr t9 | t9 ();
0x0006dc6c move v0, zero | v0 = 0;
0x0006dc70 lhu t8, 0x28(sp) | t8 = *(var_28h);
0x0006dc74 sh t8, 0x28(s0) | *((s0 + 20)) = t8;
0x0006dc78 b 0x6d670 | goto label_0;
| label_27:
0x0006dc7c sw zero, 0x110(s0) | *(s0) = 0;
0x0006dc80 lhu t8, 0x28(s0) | t8 = *((s0 + 20));
0x0006dc84 b 0x6dad4 | goto label_5;
| label_30:
0x0006dc88 addiu v0, zero, 1 | v0 = 1;
0x0006dc8c b 0x6d838 | goto label_4;
| label_12:
0x0006dc90 lw t8, 0x1c(a0) | t8 = *((a0 + 7));
0x0006dc94 addiu s3, sp, 0x28 | s3 = sp + 0x28;
0x0006dc98 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0006dc9c lw a0, 4(t8) | a0 = *((t8 + 1));
0x0006dca0 lw t8, (a0) | t8 = *(a0);
0x0006dca4 lw t9, 4(t8) | t9 = *((t8 + 1));
| /* str.Codec_is_unspecified */
0x0006dca8 addiu a1, a1, -0x12dc | a1 += -0x12dc;
0x0006dcac jalr t9 | t9 ();
0x0006dcb0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dcb4 b 0x6dc4c |
| } while (1);
| label_17:
0x0006dcb8 lhu t8, 0x28(s0) | t8 = *((s0 + 20));
0x0006dcbc move a0, s2 | a0 = s2;
0x0006dcc0 andi s4, t8, 0xffff | s4 = t8 & 0xffff;
0x0006dcc4 srl s4, s4, 8 | s4 >>= 8;
0x0006dcc8 sll t8, t8, 8 | t8 <<= 8;
0x0006dccc or s4, s4, t8 | s4 |= t8;
0x0006dcd0 andi s4, s4, 0xffff | s4 &= 0xffff;
0x0006dcd4 jalr t9 | t9 ();
0x0006dcd8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dcdc lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006dce0 addiu a0, sp, 0xac | a0 = sp + 0xac;
0x0006dce4 lw t9, -0x762c(gp) | t9 = *(gp);
0x0006dce8 move a1, s4 | a1 = s4;
0x0006dcec lw s5, 4(t8) | s5 = *((t8 + 1));
| if (v0 != 0) {
0x0006dcf0 bnez v0, 0x6dec0 | goto label_31;
| }
0x0006dcf4 jalr t9 | t9 ();
0x0006dcf8 nop |
0x0006dcfc lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dd00 lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
0x0006dd04 addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006dd08 jalr t9 | t9 ();
0x0006dd0c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dd10 lhu t8, 0xac(sp) | t8 = *(var_ach);
0x0006dd14 move a0, v0 | a0 = v0;
0x0006dd18 lw t9, -0x7700(gp) | t9 = *(gp);
0x0006dd1c move a1, s5 | a1 = s5;
0x0006dd20 sh t8, 0x10(sp) | *(var_10h) = t8;
0x0006dd24 move a2, s3 | a2 = s3;
0x0006dd28 move a3, s2 | a3 = s2;
0x0006dd2c move s4, v0 | s4 = v0;
0x0006dd30 jalr t9 | t9 ();
0x0006dd34 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dd38 sw s4, 0x110(s0) | *(s0) = s4;
0x0006dd3c lw a0, 0x10c(s0) | a0 = *(s0);
0x0006dd40 b 0x6d798 | goto label_6;
| label_14:
0x0006dd44 addiu a0, sp, 0xac | a0 = sp + 0xac;
0x0006dd48 andi a1, s2, 0xfffe | a1 = s2 & 0xfffe;
0x0006dd4c jalr t9 | t9 ();
0x0006dd50 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dd54 lhu t8, 0xac(sp) | t8 = *(var_ach);
0x0006dd58 sh t8, 0x28(s0) | *((s0 + 20)) = t8;
0x0006dd5c b 0x6d718 | goto label_7;
| label_22:
0x0006dd60 lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006dd64 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0006dd68 lw a0, 4(t8) | a0 = *((t8 + 1));
0x0006dd6c lw t8, (a0) | t8 = *(a0);
0x0006dd70 lw t9, 4(t8) | t9 = *((t8 + 1));
| /* str.MediaSession::initiate__:_unable_to_create_RTP_and_RTCP_sockets */
0x0006dd74 addiu a1, a1, -0x12a4 | a1 += -0x12a4;
0x0006dd78 jalr t9 | t9 ();
0x0006dd7c lw gp, 0x20(sp) | gp = *(var_20h);
| label_23:
0x0006dd80 move s4, zero | s4 = 0;
| label_10:
0x0006dd84 lw t9, -0x787c(gp) | t9 = *(gp);
0x0006dd88 move a0, s6 | a0 = s6;
0x0006dd8c jalr t9 | t9 ();
| if (v0 == 0) {
| do {
0x0006dd90 beqz v0, 0x6ddc0 | goto label_32;
| }
0x0006dd94 nop |
0x0006dd98 lw t8, (v0) | t8 = *(v0);
0x0006dd9c lw t9, 4(t8) | t9 = *((t8 + 1));
0x0006dda0 move a0, v0 | a0 = v0;
0x0006dda4 jalr t9 | t9 ();
0x0006dda8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006ddac lw t9, -0x787c(gp) | t9 = *(gp);
0x0006ddb0 move a0, s6 | a0 = s6;
0x0006ddb4 jalr t9 | t9 ();
0x0006ddb8 b 0x6dd90 |
| } while (1);
0x0006ddbc nop |
| label_32:
0x0006ddc0 lw t8, (s6) | t8 = *(s6);
0x0006ddc4 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0006ddc8 move a0, s6 | a0 = s6;
0x0006ddcc jalr t9 | t9 ();
0x0006ddd0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006ddd4 addiu a0, sp, 0xac | a0 = sp + 0xac;
0x0006ddd8 lw t9, -0x7214(gp) | t9 = *(gp);
| if (s4 == 0) {
0x0006dddc beqz s4, 0x6deb0 | goto label_33;
| }
0x0006dde0 jalr t9 | t9 ();
0x0006dde4 nop |
0x0006dde8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006ddec lw a0, 0x10c(s0) | a0 = *(s0);
0x0006ddf0 b 0x6d798 | goto label_6;
| label_20:
0x0006ddf4 lw t8, -0x6d54(gp) | t8 = *((gp - 6997));
0x0006ddf8 addiu a1, zero, 1 | a1 = 1;
0x0006ddfc lw a0, -0x7fd0(gp) | a0 = *(gp);
0x0006de00 addiu a2, zero, 0x2b | a2 = 0x2b;
0x0006de04 lw a3, (t8) | a3 = *(t8);
0x0006de08 lw t9, -0x7558(gp) | t9 = sym.imp.fwrite;
| /* str.MediaSubsession::initiate____FLAG_SENDONLY_n */
0x0006de0c addiu a0, a0, -0x11f8 | a0 += -aav.0x000011f8;
0x0006de10 jalr t9 | t9 ();
0x0006de14 lw t8, (s0) | t8 = *(s0);
0x0006de18 move a0, s0 | a0 = s0;
0x0006de1c lw t9, 8(t8) | t9 = *((t8 + 2));
0x0006de20 move a1, s1 | a1 = s1;
0x0006de24 jalr t9 | t9 ();
0x0006de28 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0006de2c beqz v0, 0x6dc3c | goto label_8;
| }
0x0006de30 lw t8, 0x134(s0) | t8 = *(s0);
0x0006de34 lw a1, -0x7fd0(gp) | a1 = *(gp);
| if (t8 == 0) {
0x0006de38 beqz t8, 0x6df60 | goto label_34;
| }
0x0006de3c lw a1, 0x110(s0) | a1 = *(s0);
| if (a1 == 0) {
0x0006de40 beqz a1, 0x6de9c | goto label_35;
| }
0x0006de44 nop |
0x0006de48 lw v0, 0xcc(s0) | v0 = *((s0 + 51));
0x0006de4c addiu a2, zero, 0x1f4 | a2 = aav.0x000001f4;
| if (v0 != 0) {
0x0006de50 beqz v0, 0x6de6c |
0x0006de54 addiu v1, zero, 0x14 | v1 = 0x14;
0x0006de58 divu zero, v0, v1 | __asm ("divu zero, v0, v1");
| if (v1 == 0) {
0x0006de5c bnez v1, 0x6de64 |
0x0006de60 break 7 | __asm ("break 7");
| }
0x0006de64 mflo a2 | __asm ("mflo a2");
0x0006de68 addu a2, a2, v0 | a2 += v0;
| }
0x0006de6c lw v1, 0x1c(s0) | v1 = *((s0 + 7));
0x0006de70 lw t9, -0x7068(gp) | t9 = *(gp);
0x0006de74 lw a0, 4(v1) | a0 = *((v1 + 1));
0x0006de78 lw a3, 0x2c(v1) | a3 = *((v1 + 11));
0x0006de7c sw t8, 0x10(sp) | *(var_10h) = t8;
0x0006de80 sw zero, 0x14(sp) | *(var_14h) = 0;
0x0006de84 sw zero, 0x18(sp) | *(var_18h) = 0;
0x0006de88 jalr t9 | t9 ();
0x0006de8c lw gp, 0x20(sp) | gp = *(var_20h);
0x0006de90 sw v0, 0x118(s0) | *(s0) = v0;
| if (v0 == 0) {
0x0006de94 beqz v0, 0x6dc1c | goto label_9;
| }
0x0006de98 lw t8, 0x134(s0) | t8 = *(s0);
| label_35:
0x0006de9c sw t8, 8(s0) | *((s0 + 2)) = t8;
0x0006dea0 addiu v0, zero, 1 | v0 = 1;
0x0006dea4 b 0x6d838 | goto label_4;
| label_28:
0x0006dea8 addiu s4, zero, 1 | s4 = 1;
0x0006deac b 0x6dd84 | goto label_10;
| label_33:
0x0006deb0 jalr t9 | t9 ();
0x0006deb4 nop |
0x0006deb8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006debc b 0x6dc3c | goto label_8;
| label_31:
0x0006dec0 jalr t9 | t9 ();
0x0006dec4 nop |
0x0006dec8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006decc lw t9, -0x7164(gp) | t9 = sym.imp.operator_new_unsigned_int_;
0x0006ded0 addiu a0, zero, 0x158 | a0 = aav.0x00000158;
0x0006ded4 jalr t9 | t9 ();
0x0006ded8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006dedc addiu t8, zero, 0xff | t8 = 0xff;
0x0006dee0 move a0, v0 | a0 = v0;
0x0006dee4 lw t9, -0x794c(gp) | t9 = *(gp);
0x0006dee8 move a1, s5 | a1 = s5;
0x0006deec lhu a3, 0xac(sp) | a3 = *(var_ach);
0x0006def0 move a2, s3 | a2 = s3;
0x0006def4 sw t8, 0x10(sp) | *(var_10h) = t8;
0x0006def8 move s4, v0 | s4 = v0;
0x0006defc jalr t9 | t9 ();
0x0006df00 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006df04 sw s4, 0x110(s0) | *(s0) = s4;
0x0006df08 lw a0, 0x10c(s0) | a0 = *(s0);
0x0006df0c b 0x6d798 | goto label_6;
| label_24:
0x0006df10 lw t8, 0x10c(s0) | t8 = *(s0);
0x0006df14 addiu s4, zero, 1 | s4 = 1;
0x0006df18 sw t8, 0x110(s0) | *(s0) = t8;
0x0006df1c b 0x6dd84 | goto label_10;
| label_16:
0x0006df20 lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006df24 lw a0, 4(t8) | a0 = *((t8 + 1));
0x0006df28 lw t8, (a0) | t8 = *(a0);
0x0006df2c lw t9, 4(t8) | t9 = *((t8 + 1));
| /* str.Failed_to_create_RTP_socket */
0x0006df30 addiu a1, a1, -0x12c0 | a1 += -0x12c0;
0x0006df34 jalr t9 | t9 ();
0x0006df38 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006df3c b 0x6dc3c | goto label_8;
| label_29:
0x0006df40 lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006df44 lw a0, 4(t8) | a0 = *((t8 + 1));
0x0006df48 lw t8, (a0) | t8 = *(a0);
0x0006df4c lw t9, 4(t8) | t9 = *((t8 + 1));
| /* str.Failed_to_create_read_source */
0x0006df50 addiu a1, a1, -0x1238 | a1 += -0x1238;
0x0006df54 jalr t9 | t9 ();
0x0006df58 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006df5c b 0x6dc3c | goto label_8;
| label_34:
0x0006df60 lw t8, 0x1c(s0) | t8 = *((s0 + 7));
0x0006df64 lw a0, 4(t8) | a0 = *((t8 + 1));
0x0006df68 lw t8, (a0) | t8 = *(a0);
0x0006df6c lw t9, 4(t8) | t9 = *((t8 + 1));
| /* str.Failed_to_create_rtp_sink */
0x0006df70 addiu a1, a1, -0x11cc | a1 += -0x11cc;
0x0006df74 jalr t9 | t9 ();
0x0006df78 lw gp, 0x20(sp) | gp = *(var_20h);
0x0006df7c b 0x6dc3c | goto label_8;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x54a18 */
| #include <stdint.h>
|
; (fcn) method.RTPInterface.sendDataOverTCP_int__unsigned_char_const__unsigned_int__unsigned_char_ () | void method_RTPInterface_sendDataOverTCP_int_unsigned_char_const_unsigned_int_unsigned_char_ () {
| /* RTPInterface::sendDataOverTCP(int, unsigned char const*, unsigned int, unsigned char) */
0x00054a18 lui gp, 6 |
0x00054a1c addiu gp, gp, -0x45e8 |
0x00054a20 addu gp, gp, t9 | gp += t9;
0x00054a24 addiu sp, sp, -0x38 |
0x00054a28 sw ra, 0x34(sp) | *(var_34h) = ra;
0x00054a2c sw s6, 0x30(sp) | *(var_30h) = s6;
0x00054a30 sw s5, 0x2c(sp) | *(var_2ch) = s5;
0x00054a34 sw s4, 0x28(sp) | *(var_28h) = s4;
0x00054a38 sw s3, 0x24(sp) | *(var_24h) = s3;
0x00054a3c sw s2, 0x20(sp) | *(var_20h) = s2;
0x00054a40 sw s1, 0x1c(sp) | *(var_1ch) = s1;
0x00054a44 sw s0, 0x18(sp) | *(var_18h) = s0;
0x00054a48 move s1, a3 | s1 = a3;
0x00054a4c lw t9, -0x776c(gp) | t9 = sym.imp.send;
0x00054a50 move s2, a1 | s2 = a1;
0x00054a54 sw gp, 0x10(sp) | *(var_10h) = gp;
0x00054a58 move a1, a2 | a1 = a2;
0x00054a5c move a3, zero | a3 = 0;
0x00054a60 move s3, a2 | s3 = a2;
0x00054a64 move s5, a0 | s5 = a0;
0x00054a68 lbu s6, 0x48(sp) | s6 = *(arg_48h);
0x00054a6c move a0, s2 | a0 = s2;
0x00054a70 move a2, s1 | a2 = s1;
0x00054a74 jalr t9 | t9 ();
0x00054a78 slt t8, v0, s1 | t8 = (v0 < s1) ? 1 : 0;
0x00054a7c lw gp, 0x10(sp) | gp = *(var_10h);
0x00054a80 move s0, v0 | s0 = v0;
| if (t8 == 0) {
0x00054a84 beqz t8, 0x54b4c | goto label_2;
| }
0x00054a88 slti s4, v0, 0 | s4 = (v0 < 0) ? 1 : 0;
0x00054a8c move t8, zero | t8 = 0;
| if (s4 != 0) {
0x00054a90 movz t8, v0, s4 | t8 = v0;
| }
0x00054a94 move s4, t8 | s4 = t8;
0x00054a98 beqz t8, 0x54b14 |
| while (v0 == t8) {
0x00054a9c lw t9, -0x7e28(gp) | t9 = sym.imp.makeSocketBlocking_int__unsigned_int_;
0x00054aa0 move a0, s2 | a0 = s2;
0x00054aa4 addiu a1, zero, 0x1f4 | a1 = aav.0x000001f4;
0x00054aa8 subu s1, s1, s4 | __asm ("subu s1, s1, s4");
0x00054aac jalr t9 | t9 ();
0x00054ab0 move a0, s2 | a0 = s2;
0x00054ab4 lw gp, 0x10(sp) | gp = *(var_10h);
0x00054ab8 addu a1, s3, s4 | a1 = s3 + s4;
0x00054abc move a2, s1 | a2 = s1;
0x00054ac0 lw t9, -0x776c(gp) | t9 = sym.imp.send;
0x00054ac4 move a3, zero | a3 = 0;
0x00054ac8 jalr t9 | t9 ();
0x00054acc lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == s1) {
0x00054ad0 beq v0, s1, 0x54bd0 | goto label_3;
| }
| label_1:
0x00054ad4 lw t9, -0x7d10(gp) | t9 = *(gp);
0x00054ad8 move a0, s5 | a0 = s5;
0x00054adc move a1, s2 | a1 = s2;
0x00054ae0 addiu a2, zero, 0xff | a2 = 0xff;
0x00054ae4 jalr t9 | t9 ();
0x00054ae8 move v0, zero | v0 = 0;
0x00054aec lw ra, 0x34(sp) | ra = *(var_34h);
0x00054af0 lw s6, 0x30(sp) | s6 = *(var_30h);
0x00054af4 lw s5, 0x2c(sp) | s5 = *(var_2ch);
0x00054af8 lw s4, 0x28(sp) | s4 = *(var_28h);
0x00054afc lw s3, 0x24(sp) | s3 = *(var_24h);
0x00054b00 lw s2, 0x20(sp) | s2 = *(var_20h);
0x00054b04 lw s1, 0x1c(sp) | s1 = *(var_1ch);
0x00054b08 lw s0, 0x18(sp) | s0 = *(var_18h);
0x00054b0c addiu sp, sp, 0x38 |
0x00054b10 jr ra | return v0;
| if (s6 == 0) {
0x00054b14 bnez s6, 0x54b78 |
0x00054b18 nop |
0x00054b1c move v0, zero | v0 = 0;
| if (s0 < 0) {
0x00054b20 bltz s0, 0x54ba4 | goto label_4;
| }
| label_0:
0x00054b24 lw ra, 0x34(sp) | ra = *(var_34h);
0x00054b28 lw s6, 0x30(sp) | s6 = *(var_30h);
0x00054b2c lw s5, 0x2c(sp) | s5 = *(var_2ch);
0x00054b30 lw s4, 0x28(sp) | s4 = *(var_28h);
0x00054b34 lw s3, 0x24(sp) | s3 = *(var_24h);
0x00054b38 lw s2, 0x20(sp) | s2 = *(var_20h);
0x00054b3c lw s1, 0x1c(sp) | s1 = *(var_1ch);
0x00054b40 lw s0, 0x18(sp) | s0 = *(var_18h);
0x00054b44 addiu sp, sp, 0x38 |
0x00054b48 jr ra | return v0;
| label_2:
0x00054b4c lw ra, 0x34(sp) | ra = *(var_34h);
0x00054b50 addiu v0, zero, 1 | v0 = 1;
0x00054b54 lw s6, 0x30(sp) | s6 = *(var_30h);
0x00054b58 lw s5, 0x2c(sp) | s5 = *(var_2ch);
0x00054b5c lw s4, 0x28(sp) | s4 = *(var_28h);
0x00054b60 lw s3, 0x24(sp) | s3 = *(var_24h);
0x00054b64 lw s2, 0x20(sp) | s2 = *(var_20h);
0x00054b68 lw s1, 0x1c(sp) | s1 = *(var_1ch);
0x00054b6c lw s0, 0x18(sp) | s0 = *(var_18h);
0x00054b70 addiu sp, sp, 0x38 |
0x00054b74 jr ra | return v0;
| }
0x00054b78 lw t8, 4(s5) | t8 = *((s5 + 1));
0x00054b7c lw a0, 4(t8) | a0 = *((t8 + 1));
0x00054b80 lw t8, (a0) | t8 = *(a0);
0x00054b84 lw t9, 0x20(t8) | t9 = *((t8 + 8));
0x00054b88 jalr t9 | t9 ();
0x00054b8c nop |
0x00054b90 addiu t8, zero, 0xb | t8 = 0xb;
0x00054b94 lw gp, 0x10(sp) | gp = *(var_10h);
0x00054b98 beq v0, t8, 0x54a9c |
| }
0x00054b9c move v0, zero | v0 = 0;
| if (s0 >= 0) {
0x00054ba0 bgez s0, 0x54b24 | goto label_0;
| }
| label_4:
0x00054ba4 lw t8, 4(s5) | t8 = *((s5 + 1));
0x00054ba8 lw a0, 4(t8) | a0 = *((t8 + 1));
0x00054bac lw t8, (a0) | t8 = *(a0);
0x00054bb0 lw t9, 0x20(t8) | t9 = *((t8 + 8));
0x00054bb4 jalr t9 | t9 ();
0x00054bb8 nop |
0x00054bbc addiu t8, zero, 0xb | t8 = 0xb;
0x00054bc0 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != t8) {
0x00054bc4 bne v0, t8, 0x54ad4 | goto label_1;
| }
0x00054bc8 move v0, zero | v0 = 0;
0x00054bcc b 0x54b24 | goto label_0;
| label_3:
0x00054bd0 lw t9, -0x754c(gp) | t9 = *(gp);
0x00054bd4 move a0, s2 | a0 = s2;
0x00054bd8 jalr t9 | t9 ();
0x00054bdc addiu v0, zero, 1 | v0 = 1;
0x00054be0 b 0x54b24 | goto label_0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x5b970 */
| #include <stdint.h>
|
; (fcn) method.RTSPServer::RTSPClientConnection.handleRequestBytes_int_ () | void method_RTSPServer::RTSPClientConnection_handleRequestBytes_int_ () {
| /* RTSPServer::RTSPClientConnection::handleRequestBytes(int) */
0x0005b970 lui gp, 5 |
0x0005b974 addiu gp, gp, 0x4ac0 |
0x0005b978 addu gp, gp, t9 | gp += t9;
0x0005b97c addiu sp, sp, -0x7a0 |
0x0005b980 sw ra, 0x79c(sp) | *(var_79ch) = ra;
0x0005b984 sw fp, 0x798(sp) | *(var_798h) = fp;
0x0005b988 sw s7, 0x794(sp) | *(var_794h) = s7;
0x0005b98c sw s6, 0x790(sp) | *(var_790h) = s6;
0x0005b990 sw s5, 0x78c(sp) | *(var_78ch) = s5;
0x0005b994 sw s4, 0x788(sp) | *(var_788h) = s4;
0x0005b998 sw s3, 0x784(sp) | *(var_784h) = s3;
0x0005b99c sw s2, 0x780(sp) | *(var_780h) = s2;
0x0005b9a0 sw s1, 0x77c(sp) | *(var_77ch) = s1;
0x0005b9a4 sw s0, 0x778(sp) | *(var_778h) = s0;
0x0005b9a8 lui v0, 1 | v0 = 0x10000;
0x0005b9ac addu v0, a0, v0 | v0 = a0 + v0;
0x0005b9b0 move s0, a0 | s0 = a0;
0x0005b9b4 lw t8, -0x6314(v0) | t8 = *(v0);
0x0005b9b8 move t0, a1 | t0 = a1;
0x0005b9bc sw gp, 0x40(sp) | *(var_40h) = gp;
0x0005b9c0 addiu t8, t8, 1 | t8++;
0x0005b9c4 sw t8, -0x6314(v0) | *(v0) = t8;
| if (a1 < 0) {
0x0005b9c8 bltz a1, 0x5c344 | goto label_20;
| }
0x0005b9cc lw v0, -0x632c(v0) | v0 = *((v0 - 6347));
0x0005b9d0 sltu v0, a1, v0 | v0 = (a1 < v0) ? 1 : 0;
0x0005b9d4 lui v1, 1 | v1 = 0x10000;
| if (v0 == 0) {
0x0005b9d8 beqz v0, 0x5c348 | goto label_21;
| }
0x0005b9dc lw s6, -0x7fd0(gp) | s6 = *(gp);
0x0005b9e0 move s2, zero | s2 = 0;
| label_4:
0x0005b9e4 lui t8, 1 | t8 = 0x10000;
0x0005b9e8 addu t8, s0, t8 | t8 = s0 + t8;
0x0005b9ec lw v0, -0x6324(t8) | v0 = *((t8 - 6345));
0x0005b9f0 lw a1, -0x6330(t8) | a1 = *((t8 - 6348));
0x0005b9f4 lw v1, -0x6320(t8) | v1 = *((t8 - 6344));
0x0005b9f8 lw v0, (v0) | v0 = *(v0);
0x0005b9fc addiu s4, a1, 0x90 | s4 = a1 + 0x90;
0x0005ba00 addu s4, s0, s4 | s4 = s0 + s4;
| if (v1 == v0) {
0x0005ba04 beq v1, v0, 0x5bbac | goto label_22;
| }
| if (s2 != 0) {
0x0005ba08 bnez s2, 0x5bbac | goto label_22;
| }
0x0005ba0c nop |
0x0005ba10 addiu a1, zero, 0x20 | a1 = 0x20;
| if (t0 == 0) {
0x0005ba14 beqz t0, 0x5c358 | goto label_23;
| }
0x0005ba18 move t8, s4 | t8 = s4;
0x0005ba1c addu t0, s4, t0 | t0 = s4 + t0;
0x0005ba20 move a2, zero | a2 = 0;
0x0005ba24 addiu t1, zero, 0xd | t1 = 0xd;
| do {
0x0005ba28 lbu v0, (t8) | v0 = *(t8);
0x0005ba2c addiu t8, t8, 1 | t8++;
0x0005ba30 sll v1, v0, 0x18 | v1 = v0 << 0x18;
0x0005ba34 addiu a0, v0, -9 | a0 = v0 + -9;
0x0005ba38 sra v1, v1, 0x18 | v1 >>= 0x18;
0x0005ba3c sltiu a0, a0, 2 | a0 = (a0 < 2) ? 1 : 0;
| if (v1 != a1) {
0x0005ba40 beq v1, a1, 0x5ba5c |
0x0005ba44 addu a3, s4, a2 | a3 = s4 + a2;
| if (a0 != 0) {
0x0005ba48 bnez a0, 0x5ba5c | goto label_24;
| }
| if (v1 == t1) {
0x0005ba4c beq v1, t1, 0x5ba5c | goto label_24;
| }
0x0005ba50 nop |
0x0005ba54 sb v0, (a3) | *(a3) = v0;
0x0005ba58 addiu a2, a2, 1 | a2++;
| }
| label_24:
0x0005ba5c bne t8, t0, 0x5ba28 |
| } while (t8 != t0);
0x0005ba60 nop |
0x0005ba64 move t0, a2 | t0 = a2;
| label_14:
0x0005ba68 lui s3, 1 | s3 = 0x10000;
0x0005ba6c addu s3, s0, s3 | s3 = s0 + s3;
0x0005ba70 lw s2, -0x62ec(s3) | s2 = *(s3);
0x0005ba74 addu s2, a2, s2 | s2 = a2 + s2;
0x0005ba78 andi s1, s2, 3 | s1 = s2 & 3;
0x0005ba7c subu s2, s2, s1 | __asm ("subu s2, s2, s1");
0x0005ba80 move a1, s2 | a1 = s2;
| if (s2 != 0) {
0x0005ba84 bnez s2, 0x5bbb4 | goto label_25;
| }
| label_3:
0x0005ba88 lui t8, 1 | t8 = 0x10000;
0x0005ba8c move v0, s1 | v0 = s1;
0x0005ba90 addu t8, s0, t8 | t8 = s0 + t8;
0x0005ba94 lw a1, -0x6330(t8) | a1 = *((t8 - 6348));
0x0005ba98 sw s1, -0x62ec(t8) | *(t8) = s1;
| label_2:
0x0005ba9c lui t1, 1 | t1 = 0x10000;
0x0005baa0 addu s7, s0, t1 | s7 = s0 + t1;
0x0005baa4 lw t8, -0x6318(s7) | t8 = *((s7 - 6342));
0x0005baa8 addiu t8, t8, 2 | t8 += 2;
| if (v0 != 0) {
0x0005baac bnez v0, 0x5bb2c | goto label_26;
| }
0x0005bab0 addiu s1, s0, 0x90 | s1 = s0 + 0x90;
0x0005bab4 addiu v0, t0, -1 | v0 = t0 + -1;
0x0005bab8 sltu s2, t8, s1 | s2 = (t8 < s1) ? 1 : 0;
0x0005babc addu v0, s4, v0 | v0 = s4 + v0;
| if (s2 == 0) {
0x0005bac0 movn t8, s1, s2 | t8 = s1;
| }
0x0005bac4 move s2, t8 | s2 = t8;
0x0005bac8 sltu t8, t8, v0 | t8 = (t8 < v0) ? 1 : 0;
0x0005bacc lui t8, 1 | t8 = 0x10000;
| if (t8 == 0) {
0x0005bad0 beqz t8, 0x5bb30 | goto label_27;
| }
0x0005bad4 addiu fp, zero, 0xd | fp = 0xd;
0x0005bad8 addiu a0, zero, 0xa | a0 = 0xa;
0x0005badc move t2, s7 | t2 = s7;
0x0005bae0 addiu a3, zero, 2 | a3 = 2;
0x0005bae4 b 0x5baf4 |
| while (t8 != fp) {
| label_0:
0x0005bae8 addiu s2, s2, 1 | s2++;
0x0005baec lui t8, 1 | t8 = 0x10000;
| if (s2 == v0) {
0x0005baf0 beq s2, v0, 0x5bb30 | goto label_27;
| }
| label_1:
0x0005baf4 lbu t8, (s2) | t8 = *(s2);
0x0005baf8 bne t8, fp, 0x5bae8 |
| }
0x0005bafc nop |
0x0005bb00 lbu t8, 1(s2) | t8 = *((s2 + 1));
| if (t8 != a0) {
0x0005bb04 bne t8, a0, 0x5bae8 | goto label_0;
| }
0x0005bb08 nop |
0x0005bb0c lw t8, -0x6318(t2) | t8 = *((t2 - 6342));
0x0005bb10 subu a2, s2, t8 | __asm ("subu a2, s2, t8");
0x0005bb14 addiu t5, zero, 0xc8 | t5 = 0xc8;
| if (a2 == a3) {
0x0005bb18 beq a2, a3, 0x5bc80 | goto label_28;
| }
0x0005bb1c sw s2, -0x6318(t2) | *((t2 - 6342)) = s2;
0x0005bb20 addiu s2, s2, 1 | s2++;
| if (s2 != v0) {
0x0005bb24 bne s2, v0, 0x5baf4 | goto label_1;
| }
0x0005bb28 nop |
| label_26:
0x0005bb2c lui t8, 1 | t8 = 0x10000;
| label_27:
0x0005bb30 addu a1, t0, a1 | a1 = t0 + a1;
0x0005bb34 addu t8, s0, t8 | t8 = s0 + t8;
0x0005bb38 lw v0, -0x632c(t8) | v0 = *((t8 - 6347));
0x0005bb3c sw a1, -0x6330(t8) | *((t8 - 25392)) = a1;
0x0005bb40 subu t0, v0, t0 | __asm ("subu t0, v0, t0");
0x0005bb44 sw t0, -0x632c(t8) | *((t8 - 25388)) = t0;
0x0005bb48 lbu v0, -0x631c(t8) | v0 = *((t8 - 25372));
0x0005bb4c lw t8, -0x6314(t8) | t8 = *(t8);
| label_5:
0x0005bb50 lui v1, 1 | v1 = 0x10000;
0x0005bb54 addiu t8, t8, -1 | t8 += -1;
0x0005bb58 addu v1, s0, v1 | v1 = s0 + v1;
0x0005bb5c sw t8, -0x6314(v1) | *(v1) = t8;
| if (v0 == 0) {
0x0005bb60 bnez v0, 0x5bb7c |
0x0005bb64 lw t9, -0x7cc8(gp) | t9 = *(gp);
| if (t8 != 0) {
0x0005bb68 bnez t8, 0x5c404 | goto label_29;
| }
0x0005bb6c lw t8, (s0) | t8 = *(s0);
0x0005bb70 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0005bb74 move a0, s0 | a0 = s0;
0x0005bb78 jalr t9 | t9 ();
| }
0x0005bb7c lw ra, 0x79c(sp) | ra = *(var_79ch);
0x0005bb80 lw fp, 0x798(sp) | fp = *(var_798h);
0x0005bb84 lw s7, 0x794(sp) | s7 = *(var_794h);
0x0005bb88 lw s6, 0x790(sp) | s6 = *(var_790h);
0x0005bb8c lw s5, 0x78c(sp) | s5 = *(var_78ch);
0x0005bb90 lw s4, 0x788(sp) | s4 = *(var_788h);
0x0005bb94 lw s3, 0x784(sp) | s3 = *(var_784h);
0x0005bb98 lw s2, 0x780(sp) | s2 = *(var_780h);
0x0005bb9c lw s1, 0x77c(sp) | s1 = *(var_77ch);
0x0005bba0 lw s0, 0x778(sp) | s0 = *(var_778h);
0x0005bba4 addiu sp, sp, 0x7a0 |
0x0005bba8 jr ra | return v1;
| label_22:
0x0005bbac lw v0, -0x62ec(t8) | v0 = *(t8);
0x0005bbb0 b 0x5ba9c | goto label_2;
| label_25:
0x0005bbb4 addu a2, s4, a2 | a2 = s4 + a2;
0x0005bbb8 sb zero, (a2) | *(a2) = 0;
0x0005bbbc addiu a3, zero, 1 | a3 = 1;
0x0005bbc0 lw a0, -0x62ec(s3) | a0 = *(s3);
0x0005bbc4 addiu a2, sp, 0x48 | a2 = sp + 0x48;
0x0005bbc8 lw t9, -0x7148(gp) | t9 = *(gp);
0x0005bbcc subu a0, s4, a0 | __asm ("subu a0, s4, a0");
0x0005bbd0 jalr t9 | t9 ();
0x0005bbd4 lw v1, -0x62ec(s3) | v1 = *(s3);
0x0005bbd8 lw t0, 0x48(sp) | t0 = *(var_48h);
0x0005bbdc lw gp, 0x40(sp) | gp = *(var_40h);
0x0005bbe0 subu a2, s4, v1 | __asm ("subu a2, s4, v1");
| if (t0 == 0) {
0x0005bbe4 beqz t0, 0x5bc14 | goto label_30;
| }
0x0005bbe8 move t8, zero | t8 = 0;
| do {
0x0005bbec addu a1, v0, t8 | a1 = v0 + t8;
0x0005bbf0 addu v1, a2, t8 | v1 = a2 + t8;
0x0005bbf4 lbu a1, (a1) | a1 = *(a1);
0x0005bbf8 addiu t8, t8, 1 | t8++;
0x0005bbfc sb a1, (v1) | *(v1) = a1;
0x0005bc00 bne t8, t0, 0x5bbec |
| } while (t8 != t0);
0x0005bc04 lui t8, 1 | t8 = 0x10000;
0x0005bc08 addu a2, a2, t0 | a2 += t0;
0x0005bc0c addu t8, s0, t8 | t8 = s0 + t8;
0x0005bc10 lw v1, -0x62ec(t8) | v1 = *(t8);
| label_30:
0x0005bc14 move t8, zero | t8 = 0;
| if (s1 == 0) {
0x0005bc18 beqz s1, 0x5bc58 | goto label_31;
| }
0x0005bc1c lui a0, 1 | a0 = 0x10000;
0x0005bc20 addu a0, s0, a0 | a0 = s0 + a0;
0x0005bc24 b 0x5bc2c |
| while (t8 != s1) {
0x0005bc28 lw v1, -0x62ec(a0) | v1 = *(a0);
0x0005bc2c addu a3, s4, t8 | a3 = s4 + t8;
0x0005bc30 subu v1, s2, v1 | __asm ("subu v1, s2, v1");
0x0005bc34 addu v1, a3, v1 | v1 = a3 + v1;
0x0005bc38 addu a3, a2, t8 | a3 = a2 + t8;
0x0005bc3c lbu v1, (v1) | v1 = *(v1);
0x0005bc40 addiu t8, t8, 1 | t8++;
0x0005bc44 sb v1, (a3) | *(a3) = v1;
0x0005bc48 bne t8, s1, 0x5bc28 |
| }
0x0005bc4c lui t8, 1 | t8 = 0x10000;
0x0005bc50 addu t8, s0, t8 | t8 = s0 + t8;
0x0005bc54 lw v1, -0x62ec(t8) | v1 = *(t8);
| label_31:
0x0005bc58 addu t0, s1, t0 | t0 = s1 + t0;
0x0005bc5c subu t0, t0, v1 | __asm ("subu t0, t0, v1");
| if (v0 == 0) {
0x0005bc60 beqz v0, 0x5ba88 | goto label_3;
| }
0x0005bc64 lw t9, -0x792c(gp) | t9 = sym.imp.operator_delete___void_;
0x0005bc68 move a0, v0 | a0 = v0;
0x0005bc6c sw t0, 0x76c(sp) | *(var_76ch) = t0;
0x0005bc70 jalr t9 | t9 ();
0x0005bc74 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005bc78 lw t0, 0x76c(sp) | t0 = *(var_76ch);
0x0005bc7c b 0x5ba88 | goto label_3;
| label_28:
0x0005bc80 lw a0, -0x632c(s7) | a0 = *((s7 - 6347));
0x0005bc84 addu a1, t0, a1 | a1 = t0 + a1;
0x0005bc88 addu v0, s0, a1 | v0 = s0 + a1;
0x0005bc8c subu a0, a0, t0 | __asm ("subu a0, a0, t0");
0x0005bc90 addiu t3, sp, 0x430 | t3 = sp + aav.0x00000430;
0x0005bc94 sw a0, -0x632c(s7) | *((s7 - 6347)) = a0;
0x0005bc98 addiu t4, sp, 0x368 | t4 = sp + aav.0x00000368;
0x0005bc9c sw a1, -0x6330(s7) | *((s7 - 6348)) = a1;
0x0005bca0 addiu v1, sp, 0x5c0 | v1 = sp + aav.0x000005c0;
0x0005bca4 sb zero, 0x90(v0) | *((v0 + 144)) = 0;
0x0005bca8 addiu s3, sp, 0x688 | s3 = sp + aav.0x00000688;
0x0005bcac sw zero, 0x750(sp) | *(var_750h) = 0;
0x0005bcb0 addiu s5, sp, 0x4f8 | s5 = sp + aav.0x000004f8;
0x0005bcb4 sb zero, 2(t8) | *((t8 + 2)) = 0;
0x0005bcb8 addiu t8, sp, 0x2a0 | t8 = sp + aav.0x000002a0;
0x0005bcbc lw a1, -0x6318(s7) | a1 = *((s7 - 6342));
0x0005bcc0 move a0, s1 | a0 = s1;
0x0005bcc4 lw t9, -0x7c04(gp) | t9 = sym.parseRTSPRequestString_char_const__unsigned_int__char__unsigned_int__char__unsigned_int__char__unsigned_int__char__unsigned_int__char__unsigned_int__char__unsigned_int__unsigned_int_;
0x0005bcc8 move a2, s3 | a2 = s3;
0x0005bccc sw t8, 0x75c(sp) | *(var_75ch) = t8;
0x0005bcd0 addiu a1, a1, 2 | a1 += 2;
0x0005bcd4 sw t8, 0x30(sp) | *(var_30h) = t8;
0x0005bcd8 addiu t8, sp, 0x750 | t8 = sp + aav.0x00000750;
0x0005bcdc sw t5, 0x14(sp) | *(var_14h) = t5;
0x0005bce0 subu a1, a1, s1 | __asm ("subu a1, a1, s1");
0x0005bce4 sw t5, 0x1c(sp) | *(var_1ch) = t5;
0x0005bce8 addiu a3, zero, 0xc8 | a3 = 0xc8;
0x0005bcec sw t3, 0x20(sp) | *(var_20h) = t3;
0x0005bcf0 sw t5, 0x24(sp) | *(var_24h) = t5;
0x0005bcf4 sw t4, 0x28(sp) | *(var_28h) = t4;
0x0005bcf8 sw t5, 0x2c(sp) | *(var_2ch) = t5;
0x0005bcfc sw t5, 0x34(sp) | *(var_34h) = t5;
0x0005bd00 sw t8, 0x38(sp) | *(var_38h) = t8;
0x0005bd04 sw t0, 0x76c(sp) | *(var_76ch) = t0;
0x0005bd08 sw t2, 0x768(sp) | *(var_768h) = t2;
0x0005bd0c sw t3, 0x770(sp) | *(var_770h) = t3;
0x0005bd10 sw t4, 0x764(sp) | *(var_764h) = t4;
0x0005bd14 sw t5, 0x760(sp) | *(var_760h) = t5;
0x0005bd18 sw v1, 0x758(sp) | *(var_758h) = v1;
0x0005bd1c sw v1, 0x10(sp) | *(var_10h) = v1;
0x0005bd20 sw s5, 0x18(sp) | *(var_18h) = s5;
0x0005bd24 jalr t9 | t9 ();
0x0005bd28 lw t8, -0x6318(s7) | t8 = *((s7 - 6342));
0x0005bd2c lw gp, 0x40(sp) | gp = *(var_40h);
0x0005bd30 sb fp, 2(t8) | *((t8 + 2)) = fp;
0x0005bd34 lw t0, 0x76c(sp) | t0 = *(var_76ch);
0x0005bd38 lw t2, 0x768(sp) | t2 = *(var_768h);
0x0005bd3c lw t3, 0x770(sp) | t3 = *(var_770h);
0x0005bd40 lw t4, 0x764(sp) | t4 = *(var_764h);
0x0005bd44 lw t5, 0x760(sp) | t5 = *(var_760h);
| if (v0 == 0) {
0x0005bd48 beqz v0, 0x5be74 | goto label_32;
| }
0x0005bd4c lw t8, 0x750(sp) | t8 = *(var_750h);
0x0005bd50 addu t0, s4, t0 | t0 = s4 + t0;
0x0005bd54 addiu t8, t8, 2 | t8 += 2;
0x0005bd58 addu s2, s2, t8 | s2 += t8;
0x0005bd5c sltu t0, t0, s2 | t0 = (t0 < s2) ? 1 : 0;
| if (t0 != 0) {
0x0005bd60 bnez t0, 0x5c3dc | goto label_33;
| }
0x0005bd64 nop |
0x0005bd68 lb s4, 0x368(sp) | s4 = *(var_368h);
0x0005bd6c sltu s4, zero, s4 | s4 = (0 < s4) ? 1 : 0;
0x0005bd70 move s2, zero | s2 = 0;
| if (s4 != 0) {
0x0005bd74 bnez s4, 0x5c068 | goto label_34;
| }
| label_8:
0x0005bd78 lui t8, 1 | t8 = 0x10000;
0x0005bd7c lb v0, 0x2a0(sp) | v0 = *(var_2a0h);
0x0005bd80 addu t8, s0, t8 | t8 = s0 + t8;
0x0005bd84 sw t3, -0x6310(t8) | *((t8 - 25360)) = t3;
0x0005bd88 sw zero, -0x630c(t8) | *(t8) = 0;
| if (v0 != 0) {
0x0005bd8c beqz v0, 0x5bd98 |
0x0005bd90 addiu v0, sp, 0x2a0 | v0 = sp + aav.0x000002a0;
0x0005bd94 sw v0, -0x630c(t8) | *(t8) = v0;
| }
0x0005bd98 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x0005bd9c move a0, s3 | a0 = s3;
| /* str.OPTIONS */
0x0005bda0 addiu a1, s6, -0x2d40 | a1 = s6 + -0x2d40;
0x0005bda4 jalr t9 | t9 ();
0x0005bda8 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != 0) {
0x0005bdac bnez v0, 0x5bf28 | goto label_35;
| }
0x0005bdb0 lw t8, (s0) | t8 = *(s0);
0x0005bdb4 move a0, s0 | a0 = s0;
| if (s4 != 0) {
0x0005bdb8 beqz s4, 0x5bdc4 |
| if (s2 == 0) {
0x0005bdbc beqz s2, 0x5c32c | goto label_36;
| }
0x0005bdc0 nop |
| }
0x0005bdc4 lw t9, 0xc(t8) | t9 = *((t8 + 3));
0x0005bdc8 jalr t9 | t9 ();
0x0005bdcc nop |
0x0005bdd0 lw gp, 0x40(sp) | gp = *(var_40h);
| do {
| label_9:
0x0005bdd4 lw t9, -0x7ecc(gp) | t9 = sym.imp.strlen;
| label_6:
0x0005bdd8 addiu s2, s0, 0x4eb0 | s2 = s0 + 0x4eb0;
0x0005bddc move a0, s2 | a0 = s2;
0x0005bde0 jalr t9 | t9 ();
0x0005bde4 lui t8, 1 | t8 = 0x10000;
0x0005bde8 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005bdec addu t8, s0, t8 | t8 = s0 + t8;
0x0005bdf0 lw a0, -0x6320(t8) | a0 = *((t8 - 6344));
0x0005bdf4 move a1, s2 | a1 = s2;
0x0005bdf8 lw t9, -0x776c(gp) | t9 = sym.imp.send;
0x0005bdfc move a2, v0 | a2 = v0;
0x0005be00 move a3, zero | a3 = 0;
0x0005be04 jalr t9 | t9 ();
0x0005be08 lw gp, 0x40(sp) | gp = *(var_40h);
| label_7:
0x0005be0c lui s3, 1 | s3 = 0x10000;
0x0005be10 move a0, s0 | a0 = s0;
0x0005be14 addu s3, s0, s3 | s3 = s0 + s3;
0x0005be18 lw s4, -0x6318(s3) | s4 = *((s3 - 6342));
0x0005be1c lw t8, 0x750(sp) | t8 = *(var_750h);
0x0005be20 addiu s4, s4, 4 | s4 += 4;
0x0005be24 lw s2, -0x6330(s3) | s2 = *((s3 - 6348));
0x0005be28 subu s4, s4, s1 | __asm ("subu s4, s4, s1");
0x0005be2c lw t9, -0x7300(gp) | t9 = *(gp);
0x0005be30 addu s4, s4, t8 | s4 += t8;
0x0005be34 subu s2, s2, s4 | __asm ("subu s2, s2, s4");
0x0005be38 jalr t9 | t9 ();
0x0005be3c lw gp, 0x40(sp) | gp = *(var_40h);
| if (s2 <= 0) {
0x0005be40 blez s2, 0x5bf1c | goto label_37;
| }
0x0005be44 lw t9, -0x712c(gp) | t9 = sym.imp.memmove;
0x0005be48 addiu a1, s4, 0x90 | a1 = s4 + 0x90;
0x0005be4c move a0, s1 | a0 = s1;
0x0005be50 addu a1, s0, a1 | a1 = s0 + a1;
0x0005be54 move a2, s2 | a2 = s2;
0x0005be58 jalr t9 | t9 ();
0x0005be5c lw t8, -0x632c(s3) | t8 = *((s3 - 6347));
0x0005be60 sltu t8, s2, t8 | t8 = (s2 < t8) ? 1 : 0;
0x0005be64 lw gp, 0x40(sp) | gp = *(var_40h);
| if (t8 == 0) {
0x0005be68 beqz t8, 0x5c340 | goto label_38;
| }
0x0005be6c move t0, s2 | t0 = s2;
0x0005be70 b 0x5b9e4 | goto label_4;
| label_32:
0x0005be74 lw t8, -0x6318(s7) | t8 = *((s7 - 6342));
0x0005be78 addiu s2, sp, 0x1d8 | s2 = sp + aav.0x000001d8;
0x0005be7c addiu s4, sp, 0x48 | s4 = sp + 0x48;
0x0005be80 move a0, s0 | a0 = s0;
0x0005be84 sb zero, (t8) | *(t8) = 0;
0x0005be88 move a1, s3 | a1 = s3;
0x0005be8c lw t8, (s0) | t8 = *(s0);
0x0005be90 addiu a2, zero, 0xc8 | a2 = 0xc8;
0x0005be94 sw t5, 0x10(sp) | *(var_10h) = t5;
0x0005be98 sw s2, 0x14(sp) | *(var_14h) = s2;
0x0005be9c sw t5, 0x18(sp) | *(var_18h) = t5;
0x0005bea0 sw s4, 0x1c(sp) | *(var_1ch) = s4;
0x0005bea4 sw t5, 0x20(sp) | *(var_20h) = t5;
0x0005bea8 lw t9, 0x34(t8) | t9 = *((t8 + 13));
0x0005beac move a3, s5 | a3 = s5;
0x0005beb0 jalr t9 | t9 ();
0x0005beb4 lw t8, -0x6318(s7) | t8 = *((s7 - 6342));
0x0005beb8 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005bebc sb fp, (t8) | *(t8) = fp;
| if (v0 == 0) {
0x0005bec0 beqz v0, 0x5c130 | goto label_39;
| }
0x0005bec4 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x0005bec8 move a0, s3 | a0 = s3;
| /* str.OPTIONS */
0x0005becc addiu a1, s6, -0x2d40 | a1 = s6 + -0x2d40;
0x0005bed0 jalr t9 | t9 ();
0x0005bed4 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005bed8 beqz v0, 0x5c1c4 | goto label_40;
| }
0x0005bedc lb t8, 0x1d8(sp) | t8 = *(var_1d8h);
0x0005bee0 lw t8, -0x7fd0(gp) | t8 = *(gp);
| if (t8 != 0) {
0x0005bee4 bnez t8, 0x5c148 | goto label_41;
| }
0x0005bee8 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005beec move a0, s4 | a0 = s4;
0x0005bef0 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.application_x_rtsp_tunnelled */
0x0005bef4 addiu a1, a1, -0x2c6c | a1 += -0x2c6c;
0x0005bef8 jalr t9 | t9 ();
0x0005befc move a0, s0 | a0 = s0;
| if (v0 != 0) {
0x0005bf00 bnez v0, 0x5c360 | goto label_42;
| }
| label_10:
0x0005bf04 lw t8, (s0) | t8 = *(s0);
0x0005bf08 lw t9, 0x38(t8) | t9 = *((t8 + 14));
0x0005bf0c move a0, s0 | a0 = s0;
0x0005bf10 jalr t9 | t9 ();
0x0005bf14 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005bf18 b 0x5bdd4 |
| } while (1);
| label_37:
0x0005bf1c lbu v0, -0x631c(s3) | v0 = *((s3 - 25372));
0x0005bf20 lw t8, -0x6314(s3) | t8 = *(s3);
0x0005bf24 b 0x5bb50 | goto label_5;
| label_35:
0x0005bf28 lb s7, 0x5c0(sp) | s7 = *(var_5c0h);
0x0005bf2c lw a1, -0x7fd0(gp) | a1 = *(gp);
| if (s7 == 0) {
0x0005bf30 bnez s7, 0x5bf48 |
0x0005bf34 lb v0, 0x4f8(sp) | v0 = *(var_4f8h);
0x0005bf38 addiu t8, zero, 0x2a | t8 = 0x2a;
0x0005bf3c lb t8, 0x4f9(sp) | t8 = *(var_4f9h);
| if (v0 == t8) {
0x0005bf40 beq v0, t8, 0x5c1dc | goto label_43;
| }
| label_11:
0x0005bf44 lw a1, -0x7fd0(gp) | a1 = *(gp);
| }
0x0005bf48 move a0, s3 | a0 = s3;
0x0005bf4c lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.DESCRIBE */
0x0005bf50 addiu a1, a1, -0x2d28 | a1 += -0x2d28;
0x0005bf54 jalr t9 | t9 ();
0x0005bf58 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005bf5c beqz v0, 0x5c10c | goto label_44;
| }
0x0005bf60 lw fp, -0x7fd0(gp) | fp = *(gp);
0x0005bf64 move a0, s3 | a0 = s3;
0x0005bf68 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.SETUP */
0x0005bf6c addiu a1, fp, -0x2d1c | a1 = fp + -0x2d1c;
0x0005bf70 jalr t9 | t9 ();
0x0005bf74 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != 0) {
0x0005bf78 bnez v0, 0x5c0a4 | goto label_45;
| }
| if (s4 != 0) {
0x0005bf7c bnez s4, 0x5c31c | goto label_46;
| }
0x0005bf80 nop |
0x0005bf84 sb zero, 0x48(sp) | *(var_48h) = 0;
| if (s7 != 0) {
0x0005bf88 bnez s7, 0x5c398 | goto label_47;
| }
0x0005bf8c addiu s4, sp, 0x48 | s4 = sp + 0x48;
| label_15:
0x0005bf90 lw t9, -0x7170(gp) | t9 = sym.imp.strcat;
0x0005bf94 move a0, s4 | a0 = s4;
0x0005bf98 move a1, s5 | a1 = s5;
0x0005bf9c jalr t9 | t9 ();
0x0005bfa0 move a0, s0 | a0 = s0;
0x0005bfa4 lw gp, 0x40(sp) | gp = *(var_40h);
| /* str.SETUP */
0x0005bfa8 addiu a1, fp, -0x2d1c | a1 = fp + -0x2d1c;
0x0005bfac move a2, s4 | a2 = s4;
0x0005bfb0 lw t9, -0x759c(gp) | t9 = *(gp);
0x0005bfb4 move a3, s1 | a3 = s1;
0x0005bfb8 jalr t9 | t9 ();
0x0005bfbc lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != 0) {
0x0005bfc0 bnez v0, 0x5c304 | goto label_48;
| }
0x0005bfc4 lw t9, -0x7ecc(gp) | t9 = sym.imp.strlen;
| if (s2 == 0) {
0x0005bfc8 beqz s2, 0x5bdd8 | goto label_6;
| }
0x0005bfcc lui s3, 1 | s3 = 0x10000;
| label_13:
0x0005bfd0 move a1, s0 | a1 = s0;
0x0005bfd4 addu s3, s0, s3 | s3 = s0 + s3;
0x0005bfd8 addiu a2, sp, 0x5c0 | a2 = sp + aav.0x000005c0;
0x0005bfdc lw v0, -0x62fc(s3) | v0 = *((s3 - 6335));
0x0005bfe0 move a3, s5 | a3 = s5;
0x0005bfe4 lw t8, (s2) | t8 = *(s2);
0x0005bfe8 move a0, s2 | a0 = s2;
0x0005bfec sw v0, 0x1c(s2) | *((s2 + 7)) = v0;
0x0005bff0 sw s1, 0x10(sp) | *(var_10h) = s1;
0x0005bff4 lw t9, 8(t8) | t9 = *((t8 + 2));
0x0005bff8 addiu s4, s0, 0x4eb0 | s4 = s0 + 0x4eb0;
0x0005bffc jalr t9 | t9 ();
0x0005c000 move a0, s4 | a0 = s4;
0x0005c004 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c008 lw t9, -0x7ecc(gp) | t9 = sym.imp.strlen;
0x0005c00c lbu s7, 0x19(s2) | s7 = *((s2 + 25));
0x0005c010 jalr t9 | t9 ();
0x0005c014 move a1, s4 | a1 = s4;
0x0005c018 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c01c move a2, v0 | a2 = v0;
0x0005c020 lw a0, -0x6320(s3) | a0 = *((s3 - 6344));
0x0005c024 lw t9, -0x776c(gp) | t9 = sym.imp.send;
0x0005c028 move a3, zero | a3 = 0;
0x0005c02c jalr t9 | t9 ();
0x0005c030 lw gp, 0x40(sp) | gp = *(var_40h);
| if (s7 == 0) {
0x0005c034 beqz s7, 0x5be0c | goto label_7;
| }
0x0005c038 lw t8, (s2) | t8 = *(s2);
0x0005c03c move a0, s2 | a0 = s2;
0x0005c040 lw a2, -0x7fd0(gp) | a2 = *(gp);
0x0005c044 move a1, s0 | a1 = s0;
0x0005c048 sw s5, 0x10(sp) | *(var_10h) = s5;
0x0005c04c addiu a3, sp, 0x5c0 | a3 = sp + aav.0x000005c0;
0x0005c050 sw s1, 0x14(sp) | *(var_14h) = s1;
0x0005c054 lw t9, 0xc(t8) | t9 = *((t8 + 3));
| /* str.PLAY */
0x0005c058 addiu a2, a2, -0x2d08 | a2 += -0x2d08;
0x0005c05c jalr t9 | t9 ();
0x0005c060 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c064 b 0x5be0c | goto label_7;
| label_34:
0x0005c068 lw t9, -0x75b8(gp) | t9 = *(gp);
0x0005c06c move a1, t4 | a1 = t4;
0x0005c070 lw a0, -0x6328(s7) | a0 = *(s7);
0x0005c074 sw t3, 0x770(sp) | *(var_770h) = t3;
0x0005c078 jalr t9 | t9 ();
0x0005c07c lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c080 move s2, v0 | s2 = v0;
0x0005c084 lw t3, 0x770(sp) | t3 = *(var_770h);
| if (v0 == 0) {
0x0005c088 beqz v0, 0x5bd78 | goto label_8;
| }
0x0005c08c lw t9, -0x79b0(gp) | t9 = *(gp);
0x0005c090 move a0, v0 | a0 = v0;
0x0005c094 jalr t9 | t9 ();
0x0005c098 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c09c lw t3, 0x770(sp) | t3 = *(var_770h);
0x0005c0a0 b 0x5bd78 | goto label_8;
| label_45:
0x0005c0a4 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c0a8 move a0, s3 | a0 = s3;
0x0005c0ac lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.TEARDOWN */
0x0005c0b0 addiu a1, a1, -0x2d14 | a1 += -aav.0x00002d14;
0x0005c0b4 jalr t9 | t9 ();
0x0005c0b8 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != 0) {
0x0005c0bc beqz v0, 0x5c0dc |
0x0005c0c0 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c0c4 move a0, s3 | a0 = s3;
0x0005c0c8 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.PLAY */
0x0005c0cc addiu a1, a1, -0x2d08 | a1 += -0x2d08;
0x0005c0d0 jalr t9 | t9 ();
0x0005c0d4 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != 0) {
0x0005c0d8 bnez v0, 0x5c230 | goto label_49;
| }
| }
| label_12:
0x0005c0dc move a1, s0 | a1 = s0;
| if (s2 == 0) {
0x0005c0e0 beqz s2, 0x5c324 | goto label_50;
| }
0x0005c0e4 lw t8, (s2) | t8 = *(s2);
0x0005c0e8 move a0, s2 | a0 = s2;
0x0005c0ec sw s5, 0x10(sp) | *(var_10h) = s5;
0x0005c0f0 sw s1, 0x14(sp) | *(var_14h) = s1;
0x0005c0f4 move a2, s3 | a2 = s3;
0x0005c0f8 lw t9, 0xc(t8) | t9 = *((t8 + 3));
0x0005c0fc addiu a3, sp, 0x5c0 | a3 = sp + aav.0x000005c0;
0x0005c100 jalr t9 | t9 ();
0x0005c104 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c108 b 0x5bdd4 | goto label_9;
| label_44:
0x0005c10c lw t8, (s0) | t8 = *(s0);
0x0005c110 move a0, s0 | a0 = s0;
0x0005c114 addiu a1, sp, 0x5c0 | a1 = sp + aav.0x000005c0;
0x0005c118 move a2, s5 | a2 = s5;
0x0005c11c lw t9, 0x18(t8) | t9 = *((t8 + 6));
0x0005c120 move a3, s1 | a3 = s1;
0x0005c124 jalr t9 | t9 ();
0x0005c128 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c12c b 0x5bdd4 | goto label_9;
| label_39:
0x0005c130 lw t8, (s0) | t8 = *(s0);
0x0005c134 lw t9, 0x20(t8) | t9 = *((t8 + 8));
0x0005c138 move a0, s0 | a0 = s0;
0x0005c13c jalr t9 | t9 ();
0x0005c140 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c144 b 0x5bdd4 | goto label_9;
| label_41:
0x0005c148 move a0, s3 | a0 = s3;
0x0005c14c lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* esilref: 'GET' */
0x0005c150 addiu a1, t8, -0x2c4c | a1 = t8 + -0x2c4c;
0x0005c154 jalr t9 | t9 ();
0x0005c158 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c15c beqz v0, 0x5c37c | goto label_51;
| }
0x0005c160 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c164 move a0, s3 | a0 = s3;
0x0005c168 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.POST */
0x0005c16c addiu a1, a1, -0x2c48 | a1 += -0x2c48;
0x0005c170 jalr t9 | t9 ();
0x0005c174 move a0, s0 | a0 = s0;
| if (v0 != 0) {
0x0005c178 bnez v0, 0x5bf04 | goto label_10;
| }
0x0005c17c lw a3, -0x6330(s7) | a3 = *((s7 - 6348));
0x0005c180 lw a2, -0x6318(s7) | a2 = *((s7 - 6342));
0x0005c184 move a1, s2 | a1 = s2;
0x0005c188 lw t8, (s0) | t8 = *(s0);
0x0005c18c addiu a3, a3, 0x90 | a3 += 0x90;
0x0005c190 addiu a2, a2, 4 | a2 += 4;
0x0005c194 addu a3, s0, a3 | a3 = s0 + a3;
0x0005c198 lw t9, 0x48(t8) | t9 = *((t8 + 18));
0x0005c19c subu a3, a3, a2 | __asm ("subu a3, a3, a2");
0x0005c1a0 jalr t9 | t9 ();
0x0005c1a4 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c1a8 beqz v0, 0x5bdd4 | goto label_9;
| }
0x0005c1ac lui t8, 1 | t8 = 0x10000;
0x0005c1b0 move v0, zero | v0 = 0;
0x0005c1b4 addu t8, s0, t8 | t8 = s0 + t8;
0x0005c1b8 sb zero, -0x631c(t8) | *((t8 - 25372)) = 0;
0x0005c1bc lw t8, -0x6314(t8) | t8 = *(t8);
0x0005c1c0 b 0x5bb50 | goto label_5;
| label_40:
0x0005c1c4 lw t8, (s0) | t8 = *(s0);
0x0005c1c8 lw t9, 0x40(t8) | t9 = *((t8 + 16));
0x0005c1cc move a0, s0 | a0 = s0;
0x0005c1d0 jalr t9 | t9 ();
0x0005c1d4 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c1d8 b 0x5bdd4 | goto label_9;
| label_43:
0x0005c1dc move a0, s3 | a0 = s3;
| if (t8 != 0) {
0x0005c1e0 bnez t8, 0x5bf44 | goto label_11;
| }
0x0005c1e4 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c1e8 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.GET_PARAMETER */
0x0005c1ec addiu a1, a1, -0x2d38 | a1 += -0x2d38;
0x0005c1f0 jalr t9 | t9 ();
0x0005c1f4 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c1f8 beqz v0, 0x5c3c0 | goto label_52;
| }
0x0005c1fc lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c200 move a0, s3 | a0 = s3;
0x0005c204 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* esilref: 'SET_PARAMETER' */
0x0005c208 addiu a1, a1, -0x3100 | a1 += -aav.0x00003100;
0x0005c20c jalr t9 | t9 ();
0x0005c210 move a0, s0 | a0 = s0;
0x0005c214 lw t8, (s0) | t8 = *(s0);
| if (v0 != 0) {
0x0005c218 bnez v0, 0x5c3f0 | goto label_53;
| }
0x0005c21c lw t9, 0x14(t8) | t9 = *((t8 + 5));
0x0005c220 move a1, s1 | a1 = s1;
0x0005c224 jalr t9 | t9 ();
0x0005c228 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c22c b 0x5bdd4 | goto label_9;
| label_49:
0x0005c230 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c234 move a0, s3 | a0 = s3;
0x0005c238 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.PAUSE */
0x0005c23c addiu a1, a1, -0x2d00 | a1 += -0x2d00;
0x0005c240 jalr t9 | t9 ();
0x0005c244 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c248 beqz v0, 0x5c0dc | goto label_12;
| }
0x0005c24c lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c250 move a0, s3 | a0 = s3;
0x0005c254 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.GET_PARAMETER */
0x0005c258 addiu a1, a1, -0x2d38 | a1 += -0x2d38;
0x0005c25c jalr t9 | t9 ();
0x0005c260 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c264 beqz v0, 0x5c0dc | goto label_12;
| }
0x0005c268 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c26c move a0, s3 | a0 = s3;
0x0005c270 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* esilref: 'SET_PARAMETER' */
0x0005c274 addiu a1, a1, -0x3100 | a1 += -aav.0x00003100;
0x0005c278 jalr t9 | t9 ();
0x0005c27c lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c280 beqz v0, 0x5c0dc | goto label_12;
| }
0x0005c284 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c288 move a0, s3 | a0 = s3;
0x0005c28c lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.REGISTER */
0x0005c290 addiu a1, a1, -0x2eb0 | a1 += -0x2eb0;
0x0005c294 jalr t9 | t9 ();
0x0005c298 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != 0) {
0x0005c29c bnez v0, 0x5c3e8 | goto label_54;
| }
0x0005c2a0 lw t9, -0x71a8(gp) | t9 = sym.imp.strDupSize_char_const_;
0x0005c2a4 move a0, s1 | a0 = s1;
0x0005c2a8 jalr t9 | t9 ();
0x0005c2ac move a0, s1 | a0 = s1;
0x0005c2b0 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c2b4 move a2, v0 | a2 = v0;
0x0005c2b8 move s7, v0 | s7 = v0;
0x0005c2bc lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c2c0 lw t9, -0x6ec0(gp) | t9 = sym.imp.sscanf;
| /* esilref: '&*s &s' */
0x0005c2c4 addiu a1, a1, -0x2cf8 | a1 += -0x2cf8;
0x0005c2c8 jalr t9 | t9 ();
0x0005c2cc addiu t8, zero, 1 | t8 = 1;
0x0005c2d0 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == t8) {
0x0005c2d4 beq v0, t8, 0x5c43c | goto label_55;
| }
0x0005c2d8 lw t8, (s0) | t8 = *(s0);
0x0005c2dc lw t9, 0x20(t8) | t9 = *((t8 + 8));
0x0005c2e0 move a0, s0 | a0 = s0;
0x0005c2e4 jalr t9 | t9 ();
0x0005c2e8 lw gp, 0x40(sp) | gp = *(var_40h);
| label_17:
0x0005c2ec lw t9, -0x792c(gp) | t9 = sym.imp.operator_delete___void_;
| if (s7 == 0) {
0x0005c2f0 beqz s7, 0x5bdd4 | goto label_9;
| }
0x0005c2f4 move a0, s7 | a0 = s7;
0x0005c2f8 jalr t9 | t9 ();
0x0005c2fc lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c300 b 0x5bdd4 | goto label_9;
| label_48:
0x0005c304 lui t8, 1 | t8 = 0x10000;
0x0005c308 addu t8, s0, t8 | t8 = s0 + t8;
0x0005c30c lw t9, -0x7708(gp) | t9 = *(gp);
0x0005c310 lw a0, -0x6328(t8) | a0 = *(t8);
0x0005c314 jalr t9 | t9 ();
0x0005c318 move s2, v0 | s2 = v0;
| label_46:
0x0005c31c lui s3, 1 | s3 = 0x10000;
| if (s2 != 0) {
0x0005c320 bnez s2, 0x5bfd0 | goto label_13;
| }
| label_50:
0x0005c324 lw t8, (s0) | t8 = *(s0);
0x0005c328 move a0, s0 | a0 = s0;
| label_36:
0x0005c32c lw t9, 0x2c(t8) | t9 = *((t8 + 11));
0x0005c330 jalr t9 | t9 ();
0x0005c334 nop |
0x0005c338 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c33c b 0x5bdd4 | goto label_9;
| label_38:
0x0005c340 lw t8, -0x6314(s3) | t8 = *(s3);
| label_20:
0x0005c344 lui v1, 1 | v1 = 0x10000;
| label_21:
0x0005c348 move v0, zero | v0 = 0;
0x0005c34c addu v1, s0, v1 | v1 = s0 + v1;
0x0005c350 sb zero, -0x631c(v1) | *((v1 - 25372)) = 0;
0x0005c354 b 0x5bb50 | goto label_5;
| label_23:
0x0005c358 move a2, zero | a2 = 0;
0x0005c35c b 0x5ba68 | goto label_14;
| label_42:
0x0005c360 lw t8, (s0) | t8 = *(s0);
0x0005c364 move a1, s5 | a1 = s5;
0x0005c368 lw t9, 0x4c(t8) | t9 = *((t8 + 19));
0x0005c36c move a2, s1 | a2 = s1;
0x0005c370 jalr t9 | t9 ();
0x0005c374 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c378 b 0x5bdd4 | goto label_9;
| label_51:
0x0005c37c lw t8, (s0) | t8 = *(s0);
0x0005c380 move a0, s0 | a0 = s0;
0x0005c384 lw t9, 0x44(t8) | t9 = *((t8 + 17));
0x0005c388 move a1, s2 | a1 = s2;
0x0005c38c jalr t9 | t9 ();
0x0005c390 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c394 b 0x5bdd4 | goto label_9;
| label_47:
0x0005c398 lw t9, -0x7098(gp) | t9 = *(gp);
0x0005c39c addiu s4, sp, 0x48 | s4 = sp + 0x48;
0x0005c3a0 move a0, s4 | a0 = s4;
0x0005c3a4 addiu a1, sp, 0x5c0 | a1 = sp + aav.0x000005c0;
0x0005c3a8 jalr t9 | t9 ();
0x0005c3ac addiu t8, zero, 0x2f | t8 = 0x2f;
0x0005c3b0 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c3b4 sb t8, (v0) | *(v0) = t8;
0x0005c3b8 sb zero, 1(v0) | *((v0 + 1)) = 0;
0x0005c3bc b 0x5bf90 | goto label_15;
| label_52:
0x0005c3c0 lw t8, (s0) | t8 = *(s0);
0x0005c3c4 move a0, s0 | a0 = s0;
0x0005c3c8 lw t9, 0x10(t8) | t9 = *((t8 + 4));
0x0005c3cc move a1, s1 | a1 = s1;
0x0005c3d0 jalr t9 | t9 ();
0x0005c3d4 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c3d8 b 0x5bdd4 | goto label_9;
| label_33:
0x0005c3dc lbu v0, -0x631c(t2) | v0 = *((t2 - 25372));
0x0005c3e0 lw t8, -0x6314(t2) | t8 = *(t2);
0x0005c3e4 b 0x5bb50 | goto label_5;
| label_54:
0x0005c3e8 lw t8, (s0) | t8 = *(s0);
0x0005c3ec move a0, s0 | a0 = s0;
| label_53:
0x0005c3f0 lw t9, 0x24(t8) | t9 = *((t8 + 9));
0x0005c3f4 jalr t9 | t9 ();
0x0005c3f8 nop |
0x0005c3fc lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c400 b 0x5bdd4 | goto label_9;
| label_29:
0x0005c404 move a0, s0 | a0 = s0;
0x0005c408 jalr t9 | t9 ();
0x0005c40c lw ra, 0x79c(sp) | ra = *(var_79ch);
0x0005c410 lw fp, 0x798(sp) | fp = *(var_798h);
0x0005c414 lw s7, 0x794(sp) | s7 = *(var_794h);
0x0005c418 lw s6, 0x790(sp) | s6 = *(var_790h);
0x0005c41c lw s5, 0x78c(sp) | s5 = *(var_78ch);
0x0005c420 lw s4, 0x788(sp) | s4 = *(var_788h);
0x0005c424 lw s3, 0x784(sp) | s3 = *(var_784h);
0x0005c428 lw s2, 0x780(sp) | s2 = *(var_780h);
0x0005c42c lw s1, 0x77c(sp) | s1 = *(var_77ch);
0x0005c430 lw s0, 0x778(sp) | s0 = *(var_778h);
0x0005c434 addiu sp, sp, 0x7a0 |
0x0005c438 jr ra | return v1;
| label_55:
0x0005c43c lb t8, 0x90(s0) | t8 = *((s0 + 144));
0x0005c440 addiu s3, zero, 0xd | s3 = 0xd;
| if (t8 == 0) {
0x0005c444 beqz t8, 0x5c4a4 | goto label_56;
| }
0x0005c448 move s2, s1 | s2 = s1;
0x0005c44c addiu s4, zero, 0xa | s4 = 0xa;
0x0005c450 b 0x5c474 |
| while (t8 != s3) {
| label_16:
0x0005c454 jalr t9 | t9 ();
0x0005c458 nop |
0x0005c45c lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c460 beqz v0, 0x5c4d4 | goto label_57;
| }
0x0005c464 addiu s2, s2, 1 | s2++;
0x0005c468 lb t8, (s2) | t8 = *(s2);
| if (t8 == 0) {
0x0005c46c beqz t8, 0x5c4a4 | goto label_56;
| }
0x0005c470 nop |
0x0005c474 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c478 move a0, s2 | a0 = s2;
0x0005c47c lw t9, -0x745c(gp) | t9 = sym.imp.strncasecmp;
0x0005c480 addiu a2, zero, 0xa | a2 = 0xa;
| /* str.Transport: */
0x0005c484 addiu a1, a1, -0x2cf0 | a1 += -0x2cf0;
0x0005c488 bne t8, s3, 0x5c454 |
| }
0x0005c48c lb t8, 1(s2) | t8 = *((s2 + 1));
| if (t8 != s4) {
0x0005c490 bne t8, s4, 0x5c454 | goto label_16;
| }
0x0005c494 nop |
0x0005c498 lb t8, 2(s2) | t8 = *((s2 + 2));
| if (t8 != s3) {
0x0005c49c bne t8, s3, 0x5c454 | goto label_16;
| }
0x0005c4a0 nop |
| label_56:
0x0005c4a4 lw t8, (s0) | t8 = *(s0);
0x0005c4a8 move a0, s0 | a0 = s0;
0x0005c4ac sw zero, 0x10(sp) | *(var_10h) = 0;
0x0005c4b0 move a1, s7 | a1 = s7;
0x0005c4b4 sw zero, 0x14(sp) | *(var_14h) = 0;
0x0005c4b8 move a2, s5 | a2 = s5;
0x0005c4bc sw zero, 0x18(sp) | *(var_18h) = 0;
0x0005c4c0 lw t9, 0x1c(t8) | t9 = *((t8 + 7));
0x0005c4c4 move a3, s1 | a3 = s1;
0x0005c4c8 jalr t9 | t9 ();
0x0005c4cc lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c4d0 b 0x5c2ec | goto label_17;
| label_57:
0x0005c4d4 lb v0, 0xa(s2) | v0 = *((s2 + 10));
0x0005c4d8 addiu t8, zero, 0x20 | t8 = 0x20;
0x0005c4dc addiu s2, s2, 0xa | s2 += 0xa;
| if (v0 != t8) {
0x0005c4e0 bne v0, t8, 0x5c4f8 | goto label_58;
| }
0x0005c4e4 addiu s2, s2, 1 | s2++;
| do {
0x0005c4e8 lb v0, (s2) | v0 = *(s2);
0x0005c4ec addiu s2, s2, 1 | s2++;
0x0005c4f0 beq v0, t8, 0x5c4e8 |
| } while (v0 == t8);
0x0005c4f4 addiu s2, s2, -1 | s2 += -1;
| label_58:
0x0005c4f8 lw t9, -0x71a8(gp) | t9 = sym.imp.strDupSize_char_const_;
0x0005c4fc move a0, s2 | a0 = s2;
0x0005c500 move s4, zero | s4 = 0;
0x0005c504 move fp, zero | fp = 0;
0x0005c508 jalr t9 | t9 ();
0x0005c50c addiu v1, v0, 0x11 | v1 = v0 + 0x11;
0x0005c510 move s3, v0 | s3 = v0;
0x0005c514 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c518 sw zero, 0x758(sp) | *(var_758h) = 0;
0x0005c51c sw v1, 0x75c(sp) | *(var_75ch) = v1;
0x0005c520 lw t8, -0x7fd0(gp) | t8 = *(gp);
| label_18:
0x0005c524 move a0, s2 | a0 = s2;
0x0005c528 lw t9, -0x6ec0(gp) | t9 = sym.imp.sscanf;
0x0005c52c move a2, s3 | a2 = s3;
| /* str.____r_n_ */
0x0005c530 addiu a1, t8, -0x2c74 | a1 = t8 + -0x2c74;
0x0005c534 jalr t9 | t9 ();
0x0005c538 addiu t8, zero, 1 | t8 = 1;
0x0005c53c lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 != t8) {
0x0005c540 bne v0, t8, 0x5c644 | goto label_59;
| }
0x0005c544 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c548 move a0, s3 | a0 = s3;
0x0005c54c lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.reuse_connection */
0x0005c550 addiu a1, a1, -0x2ce4 | a1 += -0x2ce4;
0x0005c554 jalr t9 | t9 ();
0x0005c558 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c55c beqz v0, 0x5c6a4 | goto label_60;
| }
0x0005c560 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c564 move a0, s3 | a0 = s3;
0x0005c568 lw t9, -0x745c(gp) | t9 = sym.imp.strncasecmp;
0x0005c56c addiu a2, zero, 0x1f | a2 = 0x1f;
| /* str.preferred_delivery_protocoludp */
0x0005c570 addiu a1, a1, -0x2cd0 | a1 += -0x2cd0;
0x0005c574 jalr t9 | t9 ();
0x0005c578 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c57c beqz v0, 0x5c69c | goto label_61;
| }
0x0005c580 lw t8, -0x7fd0(gp) | t8 = *(gp);
0x0005c584 move a0, s3 | a0 = s3;
0x0005c588 lw t9, -0x745c(gp) | t9 = sym.imp.strncasecmp;
0x0005c58c addiu a2, zero, 0x27 | a2 = 0x27;
| /* str.preferred_delivery_protocolinterleaved */
0x0005c590 addiu a1, t8, -0x2cb0 | a1 = t8 + -0x2cb0;
0x0005c594 jalr t9 | t9 ();
0x0005c598 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c59c beqz v0, 0x5c6b0 | goto label_62;
| }
0x0005c5a0 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0005c5a4 move a0, s3 | a0 = s3;
0x0005c5a8 lw t9, -0x745c(gp) | t9 = sym.imp.strncasecmp;
0x0005c5ac addiu a2, zero, 0x11 | a2 = 0x11;
| /* str.proxy_url_suffix */
0x0005c5b0 addiu a1, a1, -0x2c88 | a1 += -0x2c88;
0x0005c5b4 jalr t9 | t9 ();
0x0005c5b8 lw gp, 0x40(sp) | gp = *(var_40h);
| if (v0 == 0) {
0x0005c5bc bnez v0, 0x5c5e8 |
0x0005c5c0 lw t9, -0x792c(gp) | t9 = sym.imp.operator_delete___void_;
| if (s4 != 0) {
0x0005c5c4 beqz s4, 0x5c5d4 |
0x0005c5c8 move a0, s4 | a0 = s4;
0x0005c5cc jalr t9 | t9 ();
0x0005c5d0 lw gp, 0x40(sp) | gp = *(var_40h);
| }
0x0005c5d4 lw t9, -0x70ec(gp) | t9 = *(gp);
0x0005c5d8 lw a0, 0x75c(sp) | a0 = *(var_75ch);
0x0005c5dc jalr t9 | t9 ();
0x0005c5e0 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c5e4 move s4, v0 | s4 = v0;
| }
| label_19:
0x0005c5e8 lw t9, -0x7ecc(gp) | t9 = sym.imp.strlen;
0x0005c5ec move a0, s3 | a0 = s3;
0x0005c5f0 jalr t9 | t9 ();
0x0005c5f4 addiu v1, zero, 0x3b | v1 = 0x3b;
0x0005c5f8 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c5fc addu s2, s2, v0 | s2 += v0;
0x0005c600 addiu a0, zero, 9 | a0 = 9;
0x0005c604 addiu v0, zero, 0x20 | v0 = 0x20;
| do {
0x0005c608 lb t8, (s2) | t8 = *(s2);
| if (t8 != v1) {
0x0005c60c beq t8, v1, 0x5c624 |
0x0005c610 nop |
| if (t8 == v0) {
0x0005c614 beq t8, v0, 0x5c624 | goto label_63;
| }
0x0005c618 nop |
| if (t8 != a0) {
0x0005c61c bne t8, a0, 0x5c62c | goto label_64;
| }
0x0005c620 nop |
| }
| label_63:
0x0005c624 addiu s2, s2, 1 | s2++;
0x0005c628 b 0x5c608 |
| } while (1);
| label_64:
0x0005c62c addiu v0, zero, 0xd | v0 = 0xd;
| if (t8 == 0) {
0x0005c630 beqz t8, 0x5c644 | goto label_59;
| }
0x0005c634 addiu v0, zero, 0xa | v0 = 0xa;
| if (t8 == v0) {
0x0005c638 beq t8, v0, 0x5c644 | goto label_59;
| }
0x0005c63c lw t8, -0x7fd0(gp) | t8 = *(gp);
| if (t8 != v0) {
0x0005c640 bne t8, v0, 0x5c524 | goto label_18;
| }
| label_59:
0x0005c644 lw t9, -0x792c(gp) | t9 = sym.imp.operator_delete___void_;
| if (s3 != 0) {
0x0005c648 beqz s3, 0x5c654 |
0x0005c64c move a0, s3 | a0 = s3;
0x0005c650 jalr t9 | t9 ();
| }
0x0005c654 lw v1, 0x758(sp) | v1 = *(var_758h);
0x0005c658 move a0, s0 | a0 = s0;
0x0005c65c lw t8, (s0) | t8 = *(s0);
0x0005c660 move a1, s7 | a1 = s7;
0x0005c664 sw v1, 0x10(sp) | *(var_10h) = v1;
0x0005c668 move a2, s5 | a2 = s5;
0x0005c66c sw fp, 0x14(sp) | *(var_14h) = fp;
0x0005c670 sw s4, 0x18(sp) | *(var_18h) = s4;
0x0005c674 lw t9, 0x1c(t8) | t9 = *((t8 + 7));
0x0005c678 move a3, s1 | a3 = s1;
0x0005c67c jalr t9 | t9 ();
0x0005c680 lw gp, 0x40(sp) | gp = *(var_40h);
| if (s4 == 0) {
0x0005c684 beqz s4, 0x5c2ec | goto label_17;
| }
0x0005c688 lw t9, -0x792c(gp) | t9 = sym.imp.operator_delete___void_;
0x0005c68c move a0, s4 | a0 = s4;
0x0005c690 jalr t9 | t9 ();
0x0005c694 lw gp, 0x40(sp) | gp = *(var_40h);
0x0005c698 b 0x5c2ec | goto label_17;
| label_61:
0x0005c69c move fp, zero | fp = 0;
0x0005c6a0 b 0x5c5e8 | goto label_19;
| label_60:
0x0005c6a4 addiu v1, zero, 1 | v1 = 1;
0x0005c6a8 sw v1, 0x758(sp) | *(var_758h) = v1;
0x0005c6ac b 0x5c5e8 | goto label_19;
| label_62:
0x0005c6b0 addiu fp, zero, 1 | fp = 1;
0x0005c6b4 b 0x5c5e8 | goto label_19;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x5ff1c */
| #include <stdint.h>
|
; (fcn) method.RTSPServer::RTSPClientSession.handleCmd_withinSession_RTSPServer::RTSPClientConnection__char_const__char_const__char_const__char_const_ () | void method_RTSPServer::RTSPClientSession_handleCmd_withinSession_RTSPServer::RTSPClientConnection_char_const_char_const_char_const_char_const_ () {
| /* RTSPServer::RTSPClientSession::handleCmd_withinSession(RTSPServer::RTSPClientConnection*, char const*, char const*, char const*, char const*) */
0x0005ff1c lui gp, 5 |
0x0005ff20 addiu gp, gp, 0x514 |
0x0005ff24 addu gp, gp, t9 | gp += t9;
0x0005ff28 addiu sp, sp, -0x48 |
0x0005ff2c sw ra, 0x44(sp) | *(var_44h) = ra;
0x0005ff30 sw s6, 0x40(sp) | *(var_40h) = s6;
0x0005ff34 sw s5, 0x3c(sp) | *(var_3ch) = s5;
0x0005ff38 sw s4, 0x38(sp) | *(var_38h) = s4;
0x0005ff3c sw s3, 0x34(sp) | *(var_34h) = s3;
0x0005ff40 sw s2, 0x30(sp) | *(var_30h) = s2;
0x0005ff44 sw s1, 0x2c(sp) | *(var_2ch) = s1;
0x0005ff48 sw s0, 0x28(sp) | *(var_28h) = s0;
0x0005ff4c move s4, a0 | s4 = a0;
0x0005ff50 lw s0, 0xc(a0) | s0 = *((a0 + 3));
0x0005ff54 move s5, a1 | s5 = a1;
0x0005ff58 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0005ff5c lw s1, 0x58(sp) | s1 = *(arg_58h);
| if (s0 == 0) {
0x0005ff60 beqz s0, 0x602d4 | goto label_4;
| }
0x0005ff64 lb t8, (s1) | t8 = *(s1);
0x0005ff68 move s3, a2 | s3 = a2;
0x0005ff6c move s2, a3 | s2 = a3;
| if (t8 == 0) {
0x0005ff70 beqz t8, 0x60298 | goto label_5;
| }
0x0005ff74 lw s6, 0x3c(s0) | s6 = *((s0 + 15));
0x0005ff78 move a1, a3 | a1 = a3;
0x0005ff7c lw t9, -0x6ff0(gp) | t9 = *(gp);
0x0005ff80 move a0, s6 | a0 = s6;
0x0005ff84 jalr t9 | t9 ();
0x0005ff88 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x0005ff8c beqz v0, 0x60018 |
0x0005ff90 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x0005ff94 move a0, s6 | a0 = s6;
0x0005ff98 move a1, s1 | a1 = s1;
0x0005ff9c jalr t9 | t9 ();
0x0005ffa0 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0005ffa4 beqz v0, 0x600e8 | goto label_2;
| }
0x0005ffa8 lb t8, (s2) | t8 = *(s2);
0x0005ffac lw t9, -0x7ecc(gp) | t9 = sym.imp.strlen;
| if (t8 != 0) {
0x0005ffb0 beqz t8, 0x5ffe0 |
0x0005ffb4 move a0, s2 | a0 = s2;
0x0005ffb8 jalr t9 | t9 ();
0x0005ffbc move a0, s6 | a0 = s6;
0x0005ffc0 lw gp, 0x10(sp) | gp = *(var_10h);
0x0005ffc4 move a1, s2 | a1 = s2;
0x0005ffc8 move a2, v0 | a2 = v0;
0x0005ffcc lw t9, -0x7188(gp) | t9 = *(gp);
0x0005ffd0 move s0, v0 | s0 = v0;
0x0005ffd4 jalr t9 | t9 ();
0x0005ffd8 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0005ffdc beqz v0, 0x600bc | goto label_6;
| }
| }
| label_0:
0x0005ffe0 lw t8, (s5) | t8 = *(s5);
0x0005ffe4 lw t9, 0x28(t8) | t9 = *((t8 + 10));
0x0005ffe8 move a0, s5 | a0 = s5;
0x0005ffec jalr t9 | t9 ();
0x0005fff0 lw ra, 0x44(sp) | ra = *(var_44h);
| label_1:
0x0005fff4 lw s6, 0x40(sp) | s6 = *(var_40h);
0x0005fff8 lw s5, 0x3c(sp) | s5 = *(var_3ch);
0x0005fffc lw s4, 0x38(sp) | s4 = *(var_38h);
0x00060000 invalid |
0x00060004 lw s2, 0x30(sp) | s2 = *(var_30h);
0x00060008 lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x0006000c lw s0, 0x28(sp) | s0 = *(var_28h);
0x00060010 addiu sp, sp, 0x48 |
0x00060014 jr ra | return v0;
| }
0x00060018 lw t9, -0x73b8(gp) | t9 = *(gp);
0x0006001c addiu s2, sp, 0x18 | s2 = sp + 0x18;
0x00060020 move a0, s2 | a0 = s2;
0x00060024 move a1, s0 | a1 = s0;
0x00060028 jalr t9 | t9 ();
0x0006002c lw gp, 0x10(sp) | gp = *(var_10h);
0x00060030 b 0x60060 |
| while (v0 != 0) {
0x00060034 lw t8, (s0) | t8 = *(s0);
0x00060038 lw t9, 0x28(t8) | t9 = *((t8 + 10));
0x0006003c move a0, s0 | a0 = s0;
0x00060040 jalr t9 | t9 ();
0x00060044 lw gp, 0x10(sp) | gp = *(var_10h);
0x00060048 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x0006004c move a0, v0 | a0 = v0;
0x00060050 move a1, s1 | a1 = s1;
0x00060054 jalr t9 | t9 ();
0x00060058 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0006005c beqz v0, 0x600f0 | goto label_7;
| }
0x00060060 lw t9, -0x6f90(gp) | t9 = *(gp);
0x00060064 move a0, s2 | a0 = s2;
0x00060068 jalr t9 | t9 ();
0x0006006c move s0, v0 | s0 = v0;
0x00060070 bnez v0, 0x60034 |
| }
0x00060074 lw t8, (s5) | t8 = *(s5);
0x00060078 lw t9, 0x28(t8) | t9 = *((t8 + 10));
0x0006007c move a0, s5 | a0 = s5;
0x00060080 jalr t9 | t9 ();
0x00060084 lw gp, 0x10(sp) | gp = *(var_10h);
0x00060088 lw t9, -0x7564(gp) | t9 = *(gp);
0x0006008c move a0, s2 | a0 = s2;
0x00060090 jalr t9 | t9 ();
0x00060094 lw ra, 0x44(sp) | ra = *(var_44h);
0x00060098 lw s6, 0x40(sp) | s6 = *(var_40h);
0x0006009c lw s5, 0x3c(sp) | s5 = *(var_3ch);
0x000600a0 lw s4, 0x38(sp) | s4 = *(var_38h);
0x000600a4 lw s3, 0x34(sp) | s3 = *(var_34h);
0x000600a8 lw s2, 0x30(sp) | s2 = *(var_30h);
0x000600ac lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x000600b0 lw s0, 0x28(sp) | s0 = *(var_28h);
0x000600b4 addiu sp, sp, 0x48 |
0x000600b8 jr ra | return v0;
| label_6:
0x000600bc addu t8, s6, s0 | t8 = s6 + s0;
0x000600c0 lb v0, (t8) | v0 = *(t8);
0x000600c4 addiu t8, zero, 0x2f | t8 = 0x2f;
0x000600c8 lw t9, -0x6ff0(gp) | t9 = *(gp);
| if (v0 != t8) {
0x000600cc bne v0, t8, 0x5ffe0 | goto label_0;
| }
0x000600d0 addiu a0, s0, 1 | a0 = s0 + 1;
0x000600d4 addu a0, s6, a0 | a0 = s6 + a0;
0x000600d8 move a1, s1 | a1 = s1;
0x000600dc jalr t9 | t9 ();
0x000600e0 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x000600e4 bnez v0, 0x5ffe0 | goto label_0;
| }
| label_2:
0x000600e8 move s0, zero | s0 = 0;
0x000600ec b 0x60100 | goto label_3;
| label_7:
0x000600f0 lw t9, -0x7564(gp) | t9 = *(gp);
0x000600f4 move a0, s2 | a0 = s2;
0x000600f8 jalr t9 | t9 ();
0x000600fc lw gp, 0x10(sp) | gp = *(var_10h);
| label_3:
0x00060100 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00060104 move a0, s3 | a0 = s3;
0x00060108 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.TEARDOWN */
0x0006010c addiu a1, a1, -0x2d14 | a1 += -aav.0x00002d14;
0x00060110 jalr t9 | t9 ();
0x00060114 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00060118 beqz v0, 0x601d0 | goto label_8;
| }
0x0006011c lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00060120 move a0, s3 | a0 = s3;
0x00060124 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.PLAY */
0x00060128 addiu a1, a1, -0x2d08 | a1 += -0x2d08;
0x0006012c jalr t9 | t9 ();
0x00060130 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00060134 beqz v0, 0x60210 | goto label_9;
| }
0x00060138 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x0006013c move a0, s3 | a0 = s3;
0x00060140 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.PAUSE */
0x00060144 addiu a1, a1, -0x2d00 | a1 += -0x2d00;
0x00060148 jalr t9 | t9 ();
0x0006014c lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00060150 beqz v0, 0x60254 | goto label_10;
| }
0x00060154 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00060158 move a0, s3 | a0 = s3;
0x0006015c lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* str.GET_PARAMETER */
0x00060160 addiu a1, a1, -0x2d38 | a1 += -0x2d38;
0x00060164 jalr t9 | t9 ();
0x00060168 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0006016c beqz v0, 0x60274 | goto label_11;
| }
0x00060170 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00060174 move a0, s3 | a0 = s3;
0x00060178 lw t9, -0x6ff0(gp) | t9 = *(gp);
| /* esilref: 'SET_PARAMETER' */
0x0006017c addiu a1, a1, -0x3100 | a1 += -aav.0x00003100;
0x00060180 jalr t9 | t9 ();
0x00060184 lw ra, 0x44(sp) | ra = *(var_44h);
| if (v0 != 0) {
0x00060188 bnez v0, 0x5fff4 | goto label_1;
| }
0x0006018c lw t8, (s4) | t8 = *(s4);
0x00060190 move a0, s4 | a0 = s4;
0x00060194 lw a3, 0x5c(sp) | a3 = *(arg_5ch);
0x00060198 move a1, s5 | a1 = s5;
0x0006019c lw t9, 0x20(t8) | t9 = *((t8 + 8));
0x000601a0 move a2, s0 | a2 = s0;
0x000601a4 jalr t9 | t9 ();
0x000601a8 lw ra, 0x44(sp) | ra = *(var_44h);
0x000601ac lw s6, 0x40(sp) | s6 = *(var_40h);
0x000601b0 lw s5, 0x3c(sp) | s5 = *(var_3ch);
0x000601b4 lw s4, 0x38(sp) | s4 = *(var_38h);
0x000601b8 lw s3, 0x34(sp) | s3 = *(var_34h);
0x000601bc lw s2, 0x30(sp) | s2 = *(var_30h);
0x000601c0 lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x000601c4 lw s0, 0x28(sp) | s0 = *(var_28h);
0x000601c8 addiu sp, sp, 0x48 |
0x000601cc jr ra | return v0;
| label_8:
0x000601d0 lw t8, (s4) | t8 = *(s4);
0x000601d4 move a0, s4 | a0 = s4;
0x000601d8 move a1, s5 | a1 = s5;
0x000601dc lw t9, 0x10(t8) | t9 = *((t8 + 4));
0x000601e0 move a2, s0 | a2 = s0;
0x000601e4 jalr t9 | t9 ();
0x000601e8 lw ra, 0x44(sp) | ra = *(var_44h);
0x000601ec lw s6, 0x40(sp) | s6 = *(var_40h);
0x000601f0 lw s5, 0x3c(sp) | s5 = *(var_3ch);
0x000601f4 lw s4, 0x38(sp) | s4 = *(var_38h);
0x000601f8 lw s3, 0x34(sp) | s3 = *(var_34h);
0x000601fc lw s2, 0x30(sp) | s2 = *(var_30h);
0x00060200 lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x00060204 lw s0, 0x28(sp) | s0 = *(var_28h);
0x00060208 addiu sp, sp, 0x48 |
0x0006020c jr ra | return v0;
| label_9:
0x00060210 lw t8, (s4) | t8 = *(s4);
0x00060214 move a0, s4 | a0 = s4;
0x00060218 lw a3, 0x5c(sp) | a3 = *(arg_5ch);
0x0006021c move a1, s5 | a1 = s5;
0x00060220 lw t9, 0x14(t8) | t9 = *((t8 + 5));
0x00060224 move a2, s0 | a2 = s0;
0x00060228 jalr t9 | t9 ();
0x0006022c lw ra, 0x44(sp) | ra = *(var_44h);
0x00060230 lw s6, 0x40(sp) | s6 = *(var_40h);
0x00060234 lw s5, 0x3c(sp) | s5 = *(var_3ch);
0x00060238 lw s4, 0x38(sp) | s4 = *(var_38h);
0x0006023c lw s3, 0x34(sp) | s3 = *(var_34h);
0x00060240 lw s2, 0x30(sp) | s2 = *(var_30h);
0x00060244 lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x00060248 lw s0, 0x28(sp) | s0 = *(var_28h);
0x0006024c addiu sp, sp, 0x48 |
0x00060250 jr ra | return v0;
| label_10:
0x00060254 lw t8, (s4) | t8 = *(s4);
0x00060258 move a0, s4 | a0 = s4;
0x0006025c move a1, s5 | a1 = s5;
0x00060260 lw t9, 0x18(t8) | t9 = *((t8 + 6));
0x00060264 move a2, s0 | a2 = s0;
0x00060268 jalr t9 | t9 ();
0x0006026c lw ra, 0x44(sp) | ra = *(var_44h);
0x00060270 b 0x5fff4 | goto label_1;
| label_11:
0x00060274 lw t8, (s4) | t8 = *(s4);
0x00060278 move a0, s4 | a0 = s4;
0x0006027c lw a3, 0x5c(sp) | a3 = *(arg_5ch);
0x00060280 move a1, s5 | a1 = s5;
0x00060284 lw t9, 0x1c(t8) | t9 = *((t8 + 7));
0x00060288 move a2, s0 | a2 = s0;
0x0006028c jalr t9 | t9 ();
0x00060290 lw ra, 0x44(sp) | ra = *(var_44h);
0x00060294 b 0x5fff4 | goto label_1;
| label_5:
0x00060298 lw s0, 0x3c(s0) | s0 = *((s0 + 15));
0x0006029c move a1, s1 | a1 = s1;
0x000602a0 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x000602a4 move a0, s0 | a0 = s0;
0x000602a8 jalr t9 | t9 ();
0x000602ac lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x000602b0 beqz v0, 0x600e8 | goto label_2;
| }
0x000602b4 lw t9, -0x6ff0(gp) | t9 = *(gp);
0x000602b8 move a0, s0 | a0 = s0;
0x000602bc move a1, s2 | a1 = s2;
0x000602c0 jalr t9 | t9 ();
0x000602c4 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x000602c8 bnez v0, 0x5ffe0 | goto label_0;
| }
0x000602cc move s0, zero | s0 = 0;
0x000602d0 b 0x60100 | goto label_3;
| label_4:
0x000602d4 lw t8, (a1) | t8 = *(a1);
0x000602d8 lw t9, 0x24(t8) | t9 = *((t8 + 9));
0x000602dc move a0, a1 | a0 = a1;
0x000602e0 jalr t9 | t9 ();
0x000602e4 lw ra, 0x44(sp) | ra = *(var_44h);
0x000602e8 b 0x5fff4 | goto label_1;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x4f16c */
| #include <stdint.h>
|
; (fcn) method.ReorderingPacketBuffer.reset__ () | void method_ReorderingPacketBuffer_reset_ () {
| /* ReorderingPacketBuffer::reset() */
0x0004f16c addiu sp, sp, -0x20 |
0x0004f170 sw ra, 0x1c(sp) | *(var_1ch) = ra;
0x0004f174 sw s0, 0x18(sp) | *(var_18h) = s0;
0x0004f178 lbu t8, 0x1c(a0) | t8 = *((a0 + 28));
0x0004f17c move s0, a0 | s0 = a0;
| if (t8 != 0) {
0x0004f180 beqz t8, 0x4f1a0 |
0x0004f184 lw a0, 0x18(a0) | a0 = *((a0 + 6));
| if (a0 == 0) {
0x0004f188 beqz a0, 0x4f1a0 | goto label_0;
| }
0x0004f18c nop |
0x0004f190 lw t8, (a0) | t8 = *(a0);
0x0004f194 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0004f198 jalr t9 | t9 ();
0x0004f19c nop |
| }
| label_0:
0x0004f1a0 lw a0, 0x10(s0) | a0 = *((s0 + 4));
| if (a0 != 0) {
0x0004f1a4 beqz a0, 0x4f1bc |
0x0004f1a8 nop |
0x0004f1ac lw t8, (a0) | t8 = *(a0);
0x0004f1b0 lw t9, 4(t8) | t9 = *((t8 + 1));
0x0004f1b4 jalr t9 | t9 ();
0x0004f1b8 nop |
| }
0x0004f1bc sb zero, 0xc(s0) | *((s0 + 12)) = 0;
0x0004f1c0 sw zero, 0x18(s0) | *((s0 + 6)) = 0;
0x0004f1c4 sw zero, 0x14(s0) | *((s0 + 5)) = 0;
0x0004f1c8 sw zero, 0x10(s0) | *((s0 + 4)) = 0;
0x0004f1cc lw ra, 0x1c(sp) | ra = *(var_1ch);
0x0004f1d0 lw s0, 0x18(sp) | s0 = *(var_18h);
0x0004f1d4 addiu sp, sp, 0x20 |
0x0004f1d8 jr ra | return;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x76de4 */
| #include <stdint.h>
|
; (fcn) method.StreamParser.afterGettingBytes1_unsigned_int__timeval_ () | void method_StreamParser_afterGettingBytes1_unsigned_int_timeval_ () {
| /* StreamParser::afterGettingBytes1(unsigned int, timeval) */
0x00076de4 lui gp, 4 |
0x00076de8 addiu gp, gp, -0x69b4 |
0x00076dec addu gp, gp, t9 | gp += t9;
0x00076df0 addiu sp, sp, -0x30 |
0x00076df4 sw ra, 0x2c(sp) | *(var_2ch) = ra;
0x00076df8 sw s2, 0x28(sp) | *(var_28h) = s2;
0x00076dfc sw s1, 0x24(sp) | *(var_24h) = s1;
0x00076e00 sw s0, 0x20(sp) | *(var_20h) = s0;
0x00076e04 lui s2, 0xf | s2 = 0xf0000;
0x00076e08 lw t8, 0x38(a0) | t8 = *((a0 + 14));
0x00076e0c addiu v1, s2, 0x3e59 | v1 = s2 + 0x3e59;
0x00076e10 sw gp, 0x18(sp) | *(var_18h) = gp;
0x00076e14 move s0, a0 | s0 = a0;
0x00076e18 addu v0, a1, t8 | v0 = a1 + t8;
0x00076e1c move s1, a1 | s1 = a1;
0x00076e20 sltu v1, v0, v1 | v1 = (v0 < v1) ? 1 : 0;
0x00076e24 sw a2, 0x38(sp) | *(arg_38h) = a2;
0x00076e28 sw a3, 0x3c(sp) | *(arg_3ch) = a3;
| if (v1 == 0) {
0x00076e2c bnez v1, 0x76ebc |
0x00076e30 lw t8, 4(a0) | t8 = *((a0 + 1));
0x00076e34 addiu s2, s2, 0x3e58 | s2 += 0x3e58;
0x00076e38 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076e3c lw a0, 4(t8) | a0 = *((t8 + 1));
0x00076e40 lw t8, (a0) | t8 = *(a0);
0x00076e44 lw t9, 0x24(t8) | t9 = *((t8 + 9));
| /* str.StreamParser::afterGettingBytes___warning:_read_ */
0x00076e48 addiu a1, a1, -0x948 | a1 += -0x948;
0x00076e4c jalr t9 | t9 ();
0x00076e50 move a1, s1 | a1 = s1;
0x00076e54 lw t8, (v0) | t8 = *(v0);
0x00076e58 lw t9, 0x2c(t8) | t9 = *((t8 + 11));
0x00076e5c move a0, v0 | a0 = v0;
0x00076e60 jalr t9 | t9 ();
0x00076e64 lw gp, 0x18(sp) | gp = *(var_18h);
0x00076e68 move a0, v0 | a0 = v0;
0x00076e6c lw t8, (v0) | t8 = *(v0);
0x00076e70 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076e74 lw t9, 0x24(t8) | t9 = *((t8 + 9));
| /* str._bytes__expected_no_more_than_ */
0x00076e78 addiu a1, a1, -0x914 | a1 += -aav.0x00000914;
0x00076e7c jalr t9 | t9 ();
0x00076e80 lw t8, (v0) | t8 = *(v0);
0x00076e84 move a0, v0 | a0 = v0;
0x00076e88 lw a1, 0x38(s0) | a1 = *((s0 + 14));
0x00076e8c lw t9, 0x2c(t8) | t9 = *((t8 + 11));
0x00076e90 subu a1, s2, a1 | __asm ("subu a1, s2, a1");
0x00076e94 jalr t9 | t9 ();
0x00076e98 lw gp, 0x18(sp) | gp = *(var_18h);
0x00076e9c move a0, v0 | a0 = v0;
0x00076ea0 lw t8, (v0) | t8 = *(v0);
0x00076ea4 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076ea8 lw t9, 0x24(t8) | t9 = *((t8 + 9));
0x00076eac addiu a1, a1, -0x1758 | a1 += -0x1758;
0x00076eb0 jalr t9 | t9 ();
0x00076eb4 lw t8, 0x38(s0) | t8 = *((s0 + 14));
0x00076eb8 addu v0, s1, t8 | v0 = s1 + t8;
| }
0x00076ebc lw v1, (s0) | v1 = *(s0);
0x00076ec0 move a0, s0 | a0 = s0;
0x00076ec4 lw s2, 0x24(s0) | s2 = *((s0 + 9));
0x00076ec8 lw t9, 0xc(v1) | t9 = *((v1 + 3));
0x00076ecc addu s2, s2, t8 | s2 += t8;
0x00076ed0 lw v1, 0x38(sp) | v1 = *(arg_38h);
0x00076ed4 lw t8, 0x3c(sp) | t8 = *(arg_3ch);
0x00076ed8 sw v1, 0x40(s0) | *((s0 + 16)) = v1;
0x00076edc sw v0, 0x38(s0) | *((s0 + 14)) = v0;
0x00076ee0 sw t8, 0x44(s0) | *((s0 + 17)) = t8;
0x00076ee4 jalr t9 | t9 ();
0x00076ee8 move a1, s2 | a1 = s2;
0x00076eec lw t8, 0x3c(sp) | t8 = *(arg_3ch);
0x00076ef0 move a2, s1 | a2 = s1;
0x00076ef4 lw a0, 0x14(s0) | a0 = *((s0 + 5));
0x00076ef8 lw t9, 0x10(s0) | t9 = *((s0 + 4));
0x00076efc lw a3, 0x38(sp) | a3 = *(arg_38h);
0x00076f00 sw t8, 0x10(sp) | *(var_10h) = t8;
0x00076f04 jalr t9 | t9 ();
0x00076f08 lw ra, 0x2c(sp) | ra = *(var_2ch);
0x00076f0c lw s2, 0x28(sp) | s2 = *(var_28h);
0x00076f10 lw s1, 0x24(sp) | s1 = *(var_24h);
0x00076f14 lw s0, 0x20(sp) | s0 = *(var_20h);
0x00076f18 addiu sp, sp, 0x30 |
0x00076f1c jr ra | return v0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x769c4 */
| #include <stdint.h>
|
; (fcn) method.StreamParser.ensureValidBytes1_unsigned_int_ () | void method_StreamParser_ensureValidBytes1_unsigned_int_ () {
| /* StreamParser::ensureValidBytes1(unsigned int) */
0x000769c4 lui gp, 4 |
0x000769c8 addiu gp, gp, -0x6594 |
0x000769cc addu gp, gp, t9 | gp += t9;
0x000769d0 addiu sp, sp, -0x40 |
0x000769d4 sw ra, 0x3c(sp) | *(var_3ch) = ra;
0x000769d8 sw s4, 0x38(sp) | *(var_38h) = s4;
0x000769dc sw s3, 0x34(sp) | *(var_34h) = s3;
0x000769e0 sw s2, 0x30(sp) | *(var_30h) = s2;
0x000769e4 sw s1, 0x2c(sp) | *(var_2ch) = s1;
0x000769e8 sw s0, 0x28(sp) | *(var_28h) = s0;
0x000769ec move s0, a0 | s0 = a0;
0x000769f0 lw a0, 4(a0) | a0 = *((a0 + 1));
0x000769f4 move s1, a1 | s1 = a1;
0x000769f8 sw gp, 0x20(sp) | *(var_20h) = gp;
0x000769fc lui s2, 0xf | s2 = 0xf0000;
0x00076a00 lw t8, (a0) | t8 = *(a0);
0x00076a04 lw t9, 0x50(t8) | t9 = *((t8 + 20));
0x00076a08 addiu s3, s2, 0x3e59 | s3 = s2 + 0x3e59;
0x00076a0c jalr t9 | t9 ();
0x00076a10 lw t8, 0x30(s0) | t8 = *((s0 + 12));
0x00076a14 sltu v1, v0, s1 | v1 = (v0 < s1) ? 1 : 0;
| if (v1 != 0) {
0x00076a18 movz s1, v0, v1 | s1 = v0;
| }
0x00076a1c addu t8, s1, t8 | t8 = s1 + t8;
0x00076a20 sltu t8, t8, s3 | t8 = (t8 < s3) ? 1 : 0;
0x00076a24 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076a28 beqz t8, 0x76a94 |
| while (s3 != 0) {
| label_0:
0x00076a2c lw t8, 0x38(s0) | t8 = *((s0 + 14));
0x00076a30 lui a2, 0xf | a2 = 0xf0000;
0x00076a34 lw a1, 0x24(s0) | a1 = *((s0 + 9));
0x00076a38 addiu a2, a2, 0x3e58 | a2 += 0x3e58;
0x00076a3c subu a2, a2, t8 | __asm ("subu a2, a2, t8");
0x00076a40 addu a1, a1, t8 | a1 += t8;
0x00076a44 lw t8, -0x7978(gp) | t8 = *(gp);
0x00076a48 lw a0, 4(s0) | a0 = *((s0 + 1));
0x00076a4c lw t9, -0x7f80(gp) | t9 = *(gp);
0x00076a50 lw a3, -0x7780(gp) | a3 = *(gp);
0x00076a54 sw t8, 0x14(sp) | *(var_14h) = t8;
0x00076a58 sw s0, 0x10(sp) | *(var_10h) = s0;
0x00076a5c sw s0, 0x18(sp) | *(var_18h) = s0;
0x00076a60 jalr t9 | t9 ();
0x00076a64 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076a68 lw t9, -0x7960(gp) | t9 = sym.imp.__cxa_allocate_exception;
0x00076a6c addiu a0, zero, 4 | a0 = 4;
0x00076a70 jalr t9 | t9 ();
0x00076a74 addiu t8, zero, 1 | t8 = 1;
0x00076a78 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076a7c move a0, v0 | a0 = v0;
0x00076a80 sw t8, (v0) | *(v0) = t8;
0x00076a84 lw a1, -0x6e74(gp) | a1 = *((gp - 7069));
0x00076a88 lw t9, -0x6e70(gp) | t9 = sym.imp.__cxa_throw;
0x00076a8c move a2, zero | a2 = 0;
0x00076a90 jalr t9 | t9 ();
0x00076a94 lbu v0, 0x20(s0) | v0 = *((s0 + 32));
0x00076a98 lw v1, 0x28(s0) | v1 = *((s0 + 10));
0x00076a9c addiu v0, v0, 1 | v0++;
0x00076aa0 andi v0, v0, 1 | v0 &= 1;
0x00076aa4 lw s4, 0x38(s0) | s4 = *((s0 + 14));
0x00076aa8 addiu t8, v0, 6 | t8 = v0 + 6;
0x00076aac sll t8, t8, 2 | t8 <<= 2;
0x00076ab0 lw a1, 0x24(s0) | a1 = *((s0 + 9));
0x00076ab4 addu t8, s0, t8 | t8 = s0 + t8;
0x00076ab8 subu s4, s4, v1 | __asm ("subu s4, s4, v1");
0x00076abc lw t8, (t8) | t8 = *(t8);
0x00076ac0 addu a1, a1, v1 | a1 += v1;
0x00076ac4 lw t9, -0x712c(gp) | t9 = sym.imp.memmove;
0x00076ac8 move a2, s4 | a2 = s4;
0x00076acc move a0, t8 | a0 = t8;
0x00076ad0 sw t8, 0x24(s0) | *((s0 + 9)) = t8;
0x00076ad4 sb v0, 0x20(s0) | *((s0 + 32)) = v0;
0x00076ad8 jalr t9 | t9 ();
0x00076adc lw v0, 0x30(s0) | v0 = *((s0 + 12));
0x00076ae0 lw t8, 0x28(s0) | t8 = *((s0 + 10));
0x00076ae4 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076ae8 subu t8, v0, t8 | __asm ("subu t8, v0, t8");
0x00076aec addu v0, s1, t8 | v0 = s1 + t8;
0x00076af0 sltu s3, v0, s3 | s3 = (v0 < s3) ? 1 : 0;
0x00076af4 sw s4, 0x38(s0) | *((s0 + 14)) = s4;
0x00076af8 sw t8, 0x30(s0) | *((s0 + 12)) = t8;
0x00076afc sw zero, 0x28(s0) | *((s0 + 10)) = 0;
0x00076b00 bnez s3, 0x76a2c |
| }
0x00076b04 lw t8, 4(s0) | t8 = *((s0 + 1));
0x00076b08 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076b0c lw a0, 4(t8) | a0 = *((t8 + 1));
0x00076b10 lw t8, (a0) | t8 = *(a0);
0x00076b14 lw t9, 0x24(t8) | t9 = *((t8 + 9));
| /* str.StreamParser_internal_error__ */
0x00076b18 addiu a1, a1, -0x970 | a1 += -0x970;
0x00076b1c jalr t9 | t9 ();
0x00076b20 lw t8, (v0) | t8 = *(v0);
0x00076b24 move a0, v0 | a0 = v0;
0x00076b28 lw t9, 0x2c(t8) | t9 = *((t8 + 11));
0x00076b2c lw a1, 0x30(s0) | a1 = *((s0 + 12));
0x00076b30 jalr t9 | t9 ();
0x00076b34 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076b38 move a0, v0 | a0 = v0;
0x00076b3c lw t8, (v0) | t8 = *(v0);
0x00076b40 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076b44 lw t9, 0x24(t8) | t9 = *((t8 + 9));
| /* esilref: ' + ' */
0x00076b48 addiu a1, a1, -0x950 | a1 += -0x950;
0x00076b4c jalr t9 | t9 ();
0x00076b50 move a1, s1 | a1 = s1;
0x00076b54 lw t8, (v0) | t8 = *(v0);
0x00076b58 lw t9, 0x2c(t8) | t9 = *((t8 + 11));
0x00076b5c move a0, v0 | a0 = v0;
0x00076b60 jalr t9 | t9 ();
0x00076b64 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076b68 move a0, v0 | a0 = v0;
0x00076b6c lw t8, (v0) | t8 = *(v0);
0x00076b70 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076b74 lw t9, 0x24(t8) | t9 = *((t8 + 9));
| /* esilref: ' > ' */
0x00076b78 addiu a1, a1, -0x94c | a1 += -0x94c;
0x00076b7c jalr t9 | t9 ();
0x00076b80 addiu a1, s2, 0x3e58 | a1 = s2 + 0x3e58;
0x00076b84 lw t8, (v0) | t8 = *(v0);
0x00076b88 lw t9, 0x28(t8) | t9 = *((t8 + 10));
0x00076b8c move a0, v0 | a0 = v0;
0x00076b90 jalr t9 | t9 ();
0x00076b94 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076b98 move a0, v0 | a0 = v0;
0x00076b9c lw t8, (v0) | t8 = *(v0);
0x00076ba0 lw a1, -0x7fd0(gp) | a1 = *(gp);
0x00076ba4 lw t9, 0x24(t8) | t9 = *((t8 + 9));
| /* esilref: ')
' */
0x00076ba8 addiu a1, a1, -0x61d0 | a1 += -aav.0x000061d0;
0x00076bac jalr t9 | t9 ();
0x00076bb0 lw t8, 4(s0) | t8 = *((s0 + 1));
0x00076bb4 lw a0, 4(t8) | a0 = *((t8 + 1));
0x00076bb8 lw t8, (a0) | t8 = *(a0);
0x00076bbc lw t9, 0x1c(t8) | t9 = *((t8 + 7));
0x00076bc0 jalr t9 | t9 ();
0x00076bc4 nop |
0x00076bc8 lw gp, 0x20(sp) | gp = *(var_20h);
0x00076bcc b 0x76a2c | goto label_0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libliveMedia.so.52.0.3 @ 0x2f8a8 */
| #include <stdint.h>
|
; (fcn) sym.__do_global_dtors_aux () | void do_global_dtors_aux () {
0x0002f8a8 lui gp, 8 |
0x0002f8ac addiu gp, gp, 0xb88 |
0x0002f8b0 addu gp, gp, t9 | gp += t9;
0x0002f8b4 addiu sp, sp, -0x30 |
0x0002f8b8 sw ra, 0x2c(sp) | *(var_2ch) = ra;
0x0002f8bc sw s3, 0x28(sp) | *(var_28h) = s3;
0x0002f8c0 sw s2, 0x24(sp) | *(var_24h) = s2;
0x0002f8c4 sw s1, 0x20(sp) | *(var_20h) = s1;
0x0002f8c8 sw s0, 0x1c(sp) | *(var_1ch) = s0;
0x0002f8cc lw t8, -0x7fe4(gp) | t8 = *((gp - 8185));
0x0002f8d0 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0002f8d4 lbu v0, -0x5d10(t8) | v0 = *((t8 - 23824));
0x0002f8d8 move s1, t8 | s1 = t8;
| if (v0 != 0) {
0x0002f8dc bnez v0, 0x2f964 | goto label_0;
| }
0x0002f8e0 lw t8, -0x768c(gp) | t8 = *((gp - 7587));
0x0002f8e4 lw t8, -0x7fe0(gp) | t8 = *(gp);
| if (t8 != 0) {
0x0002f8e8 beqz t8, 0x2f8fc |
0x0002f8ec lw t9, -0x768c(gp) | t9 = *((gp - 7587));
0x0002f8f0 lw a0, (t8) | a0 = *(t8);
0x0002f8f4 jalr t9 | t9 ();
0x0002f8f8 lw gp, 0x10(sp) | gp = *(var_10h);
| }
0x0002f8fc lw v0, -0x7fd8(gp) | v0 = *((gp - 8182));
0x0002f900 lw s2, -0x7fdc(gp) | s2 = *(gp);
| /* obj.__DTOR_LIST__ */
0x0002f904 addiu v0, v0, 0xbbc | v0 += 0xbbc;
0x0002f908 subu s2, s2, v0 | __asm ("subu s2, s2, v0");
0x0002f90c move s3, v0 | s3 = v0;
0x0002f910 sra s2, s2, 2 | s2 >>= 2;
0x0002f914 lw s0, -0x7fe4(gp) | s0 = *((gp - 8185));
0x0002f918 addiu s2, s2, -1 | s2 += -1;
| do {
0x0002f91c lw v0, -0x5d0c(s0) | v0 = *(s0);
0x0002f920 sltu t8, v0, s2 | t8 = (v0 < s2) ? 1 : 0;
0x0002f924 addiu v0, v0, 1 | v0++;
| if (t8 == 0) {
0x0002f928 beqz t8, 0x2f94c | goto label_1;
| }
0x0002f92c sw v0, -0x5d0c(s0) | *(s0) = v0;
0x0002f930 sll v0, v0, 2 | v0 <<= 2;
0x0002f934 addu v0, s3, v0 | v0 = s3 + v0;
0x0002f938 lw t9, (v0) | t9 = *(v0);
0x0002f93c jalr t9 | t9 ();
0x0002f940 nop |
0x0002f944 lw gp, 0x10(sp) | gp = *(var_10h);
0x0002f948 b 0x2f91c |
| } while (1);
| label_1:
0x0002f94c lw t9, -0x7fd4(gp) | t9 = *((gp - 8181));
| /* entry0 */
0x0002f950 addiu t9, t9, -0x7f0 | t9 += -aav.0x000007f0;
0x0002f954 jalr t9 | t9 ();
0x0002f958 nop |
0x0002f95c addiu t8, zero, 1 | t8 = 1;
0x0002f960 sb t8, -0x5d10(s1) | *((s1 - 23824)) = t8;
| label_0:
0x0002f964 lw ra, 0x2c(sp) | ra = *(var_2ch);
0x0002f968 lw s3, 0x28(sp) | s3 = *(var_28h);
0x0002f96c lw s2, 0x24(sp) | s2 = *(var_24h);
0x0002f970 lw s1, 0x20(sp) | s1 = *(var_20h);
0x0002f974 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x0002f978 addiu sp, sp, 0x30 |
0x0002f97c jr ra | return v0;
| }
[*] Function popen used 1 times libliveMedia.so.52.0.3