[*] Binary protection state of tampering
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of tampering
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/tampering @ 0x2d38 */
| #include <stdint.h>
|
; (fcn) fcn.00002d38 () | void fcn_00002d38 () {
0x00002d38 lui gp, 2 |
0x00002d3c addiu gp, gp, -0xcd8 |
0x00002d40 addu gp, gp, t9 | gp += t9;
0x00002d44 addiu sp, sp, -0x58 |
0x00002d48 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002d4c sw s3, 0x44(sp) | *(var_44h) = s3;
0x00002d50 lw s3, -0x7e5c(gp) | s3 = *((gp - 8087));
0x00002d54 lw v1, 0x68(sp) | v1 = *(arg_68h);
0x00002d58 sw s5, 0x4c(sp) | *(var_4ch) = s5;
0x00002d5c sw s2, 0x40(sp) | *(var_40h) = s2;
0x00002d60 lw t0, (s3) | t0 = *(s3);
0x00002d64 move s5, a1 | s5 = a1;
0x00002d68 move s2, a2 | s2 = a2;
0x00002d6c lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002d70 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002d74 sw gp, 0x18(sp) | *(var_18h) = gp;
0x00002d78 lw t9, -0x7edc(gp) | t9 = sym.imp.config_getstr;
0x00002d7c addiu v0, v0, -0x701c | v0 += -0x701c;
0x00002d80 sw s6, 0x50(sp) | *(var_50h) = s6;
0x00002d84 sw s4, 0x48(sp) | *(var_48h) = s4;
0x00002d88 sw s1, 0x3c(sp) | *(var_3ch) = s1;
0x00002d8c sw ra, 0x54(sp) | *(var_54h) = ra;
0x00002d90 sw s0, 0x38(sp) | *(var_38h) = s0;
0x00002d94 move s4, a3 | s4 = a3;
0x00002d98 sw v0, (v1) | *(v1) = v0;
0x00002d9c move a3, v1 | a3 = v1;
0x00002da0 addiu a2, a2, -0x7004 | a2 += -0x7004;
0x00002da4 addiu a1, a1, -0x6ffc | a1 += -0x6ffc;
0x00002da8 sw t0, 0x34(sp) | *(var_34h) = t0;
0x00002dac move s1, a0 | s1 = a0;
0x00002db0 lw s6, 0x6c(sp) | s6 = *(arg_6ch);
0x00002db4 jalr t9 | t9 ();
0x00002db8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002dbc beqz v0, 0x2ed8 | goto label_9;
| }
| label_0:
0x00002dc0 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002dc4 lw t9, -0x7eec(gp) | t9 = sym.imp.__snprintf_chk
0x00002dc8 addiu s0, sp, 0x24 | s0 = sp + 0x24;
0x00002dcc addiu v0, v0, -0x6f60 | v0 += -0x6f60;
0x00002dd0 addiu a3, zero, 0xf | a3 = 0xf;
0x00002dd4 addiu a2, zero, 1 | a2 = 1;
0x00002dd8 addiu a1, zero, 0xf | a1 = 0xf;
0x00002ddc move a0, s0 | a0 = s0;
0x00002de0 sw zero, 0x14(sp) | *(var_14h) = 0;
0x00002de4 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00002de8 jalr t9 | t9 ();
0x00002dec lw gp, 0x18(sp) | gp = *(var_18h);
0x00002df0 move a3, s2 | a3 = s2;
0x00002df4 move a1, s0 | a1 = s0;
0x00002df8 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002dfc lw t9, -0x7edc(gp) | t9 = sym.imp.config_getstr;
0x00002e00 addiu a2, a2, -0x70f0 | a2 += -0x70f0;
0x00002e04 move a0, s1 | a0 = s1;
0x00002e08 jalr t9 | t9 ();
0x00002e0c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002e10 bnez v0, 0x2e20 |
0x00002e14 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002e18 addiu v0, v0, -0x6f94 | v0 += -0x6f94;
0x00002e1c sw v0, (s2) | *(s2) = v0;
| }
0x00002e20 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002e24 lw t9, -0x7edc(gp) | t9 = sym.imp.config_getstr;
0x00002e28 move a3, s4 | a3 = s4;
0x00002e2c addiu a2, a2, -0x6f84 | a2 += -0x6f84;
0x00002e30 move a1, s0 | a1 = s0;
0x00002e34 move a0, s1 | a0 = s1;
0x00002e38 jalr t9 | t9 ();
0x00002e3c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002e40 bnez v0, 0x2e50 |
0x00002e44 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002e48 addiu v0, v0, -0x6f78 | v0 += -0x6f78;
0x00002e4c sw v0, (s4) | *(s4) = v0;
| }
0x00002e50 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002e54 lw t9, -0x7d90(gp) | t9 = sym.imp.config_getflt;
0x00002e58 move a3, s6 | a3 = s6;
0x00002e5c addiu a2, a2, -0x6f70 | a2 += -0x6f70;
0x00002e60 move a1, s0 | a1 = s0;
0x00002e64 move a0, s1 | a0 = s1;
0x00002e68 jalr t9 | t9 ();
0x00002e6c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002e70 beqz v0, 0x2ec8 |
| while (1) {
0x00002e74 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002e78 lw t9, -0x7e8c(gp) | t9 = sym.imp.strstr;
0x00002e7c lw a0, (s2) | a0 = *(s2);
0x00002e80 addiu a1, a1, -0x6f68 | a1 += -0x6f68;
0x00002e84 jalr t9 | t9 ();
0x00002e88 lw a0, 0x34(sp) | a0 = *(var_34h);
0x00002e8c lw v1, (s3) | v1 = *(s3);
0x00002e90 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x00002e94 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002e98 sw v0, (s5) | *(s5) = v0;
| if (a0 != v1) {
0x00002e9c bne a0, v1, 0x2f28 | goto label_10;
| }
0x00002ea0 lw ra, 0x54(sp) | ra = *(var_54h);
0x00002ea4 lw s6, 0x50(sp) | s6 = *(var_50h);
0x00002ea8 lw s5, 0x4c(sp) | s5 = *(var_4ch);
0x00002eac lw s4, 0x48(sp) | s4 = *(var_48h);
0x00002eb0 lw s3, 0x44(sp) | s3 = *(var_44h);
0x00002eb4 lw s2, 0x40(sp) | s2 = *(var_40h);
0x00002eb8 lw s1, 0x3c(sp) | s1 = *(var_3ch);
0x00002ebc lw s0, 0x38(sp) | s0 = *(var_38h);
0x00002ec0 addiu sp, sp, 0x58 |
0x00002ec4 jr ra | return v0;
0x00002ec8 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002ecc lw v0, -0x6880(v0) | v0 = *((v0 - 6688));
0x00002ed0 sw v0, (s6) | *(s6) = v0;
0x00002ed4 b 0x2e74 |
| }
| label_9:
0x00002ed8 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002edc lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002ee0 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002ee4 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00002ee8 addiu a3, zero, 0x382 | a3 = 0x382;
0x00002eec addiu a2, a2, -0x6a3c | a2 += -0x6a3c;
0x00002ef0 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x00002ef4 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00002ef8 bal 0x4510 | sym_dbg_add ();
0x00002efc lw gp, 0x18(sp) | gp = *(var_18h);
0x00002f00 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002f04 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00002f08 addiu a0, a0, -0x6fd8 | a0 += -0x6fd8;
0x00002f0c bal 0x4510 | sym_dbg_add ();
0x00002f10 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002f14 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00002f18 addiu a0, zero, 1 | a0 = 1;
0x00002f1c bal 0x45d8 | sym_dbg_print ();
0x00002f20 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002f24 b 0x2dc0 | goto label_0;
| label_10:
0x00002f28 lw t9, -0x7ea4(gp) | t9 = sym.imp.__stack_chk_fail;
0x00002f2c jalr t9 | t9 ();
0x00002f30 nop |
0x00002f34 lui gp, 2 |
0x00002f38 addiu gp, gp, -0xed4 |
0x00002f3c addu gp, gp, t9 | gp += t9;
0x00002f40 addiu sp, sp, -0x50 |
0x00002f44 lw t9, -0x7ed4(gp) | t9 = sym.imp.config_open;
0x00002f48 sw s1, 0x40(sp) | *(var_40h_2) = s1;
0x00002f4c lw s1, -0x7e5c(gp) | s1 = *((gp - 8087));
0x00002f50 sw s3, 0x48(sp) | *(var_48h_2) = s3;
0x00002f54 move s3, a0 | s3 = a0;
0x00002f58 lw v0, (s1) | v0 = *(s1);
0x00002f5c lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002f60 sw gp, 0x18(sp) | *(var_18h_2) = gp;
0x00002f64 sw ra, 0x4c(sp) | *(var_4ch_2) = ra;
0x00002f68 sw s2, 0x44(sp) | *(var_44h_2) = s2;
0x00002f6c sw s0, 0x3c(sp) | *(var_3ch_2) = s0;
0x00002f70 addiu a0, a0, -0x6f54 | a0 += -0x6f54;
0x00002f74 sw v0, 0x34(sp) | *(var_34h_2) = v0;
0x00002f78 jalr t9 | t9 ();
0x00002f7c nop |
0x00002f80 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00002f84 beqz v0, 0x3108 | goto label_11;
| }
0x00002f88 move s0, v0 | s0 = v0;
| if (s3 >= 0) {
0x00002f8c bltz s3, 0x2fe4 |
0x00002f90 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002f94 lw t9, -0x7eec(gp) | t9 = sym.imp.__snprintf_chk
0x00002f98 addiu s2, sp, 0x28 | s2 = sp + 0x28;
0x00002f9c addiu v0, v0, -0x6f3c | v0 += -0x6f3c;
0x00002fa0 addiu a3, zero, 0xa | a3 = 0xa;
0x00002fa4 addiu a2, zero, 1 | a2 = 1;
0x00002fa8 addiu a1, zero, 0xa | a1 = 0xa;
0x00002fac move a0, s2 | a0 = s2;
0x00002fb0 sw s3, 0x14(sp) | *(var_14h_2) = s3;
0x00002fb4 sw v0, 0x10(sp) | *(var_10h_3) = v0;
0x00002fb8 jalr t9 | t9 ();
0x00002fbc lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00002fc0 addiu a3, sp, 0x24 | a3 = sp + 0x24;
0x00002fc4 move a1, s2 | a1 = s2;
0x00002fc8 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002fcc lw t9, -0x7edc(gp) | t9 = sym.imp.config_getstr;
0x00002fd0 addiu a2, a2, -0x6f30 | a2 += -0x6f30;
0x00002fd4 move a0, s0 | a0 = s0;
0x00002fd8 jalr t9 | t9 ();
0x00002fdc lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00002fe0 bnez v0, 0x3024 | goto label_12;
| }
| }
0x00002fe4 addiu s2, zero, -1 | s2 = -1;
| do {
| label_1:
0x00002fe8 lw t9, -0x7dc4(gp) | t9 = sym.imp.config_close;
0x00002fec move a0, s0 | a0 = s0;
0x00002ff0 jalr t9 | t9 ();
0x00002ff4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_2:
0x00002ff8 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00002ffc lw v1, (s1) | v1 = *(s1);
0x00003000 move v0, s2 | v0 = s2;
| if (a0 != v1) {
0x00003004 bne a0, v1, 0x3110 | goto label_13;
| }
0x00003008 lw ra, 0x4c(sp) | ra = *(var_4ch_2);
0x0000300c lw s3, 0x48(sp) | s3 = *(var_48h_2);
0x00003010 lw s2, 0x44(sp) | s2 = *(var_44h_2);
0x00003014 lw s1, 0x40(sp) | s1 = *(var_40h_2);
0x00003018 lw s0, 0x3c(sp) | s0 = *(var_3ch_2);
0x0000301c addiu sp, sp, 0x50 |
0x00003020 jr ra | return v0;
| label_12:
0x00003024 lw s3, 0x24(sp) | s3 = *(var_24h_3);
0x00003028 addiu v0, zero, 0x54 | v0 = 0x54;
0x0000302c lb v1, (s3) | v1 = *(s3);
0x00003030 addiu s2, zero, -1 | s2 = -1;
0x00003034 bne v1, v0, 0x2fe8 |
| } while (v1 != v0);
0x00003038 lw t9, -0x7e30(gp) | t9 = sym.imp.__ctype_b_loc;
0x0000303c jalr t9 | t9 ();
0x00003040 nop |
0x00003044 lb s2, 1(s3) | s2 = *((s3 + 1));
0x00003048 lw v0, (v0) | v0 = *(v0);
0x0000304c sll v1, s2, 1 | v1 = s2 << 1;
0x00003050 addu v0, v0, v1 | v0 += v1;
0x00003054 lhu v0, (v0) | v0 = *(v0);
0x00003058 andi v0, v0, 0x800 | v0 &= 0x800;
0x0000305c lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003060 beqz v0, 0x30e0 | goto label_14;
| }
0x00003064 lw t9, -0x7f08(gp) | t9 = sym.imp.strdup;
0x00003068 addiu a0, s3, 1 | a0 = s3 + 1;
0x0000306c jalr t9 | t9 ();
0x00003070 move s2, v0 | s2 = v0;
0x00003074 addiu v1, v0, 1 | v1 = v0 + 1;
0x00003078 lbu v0, (v0) | v0 = *(v0);
0x0000307c addiu v0, v0, -0x30 | v0 += -0x30;
0x00003080 sltiu v0, v0, 0xa | v0 = (v0 < 0xa) ? 1 : 0;
0x00003084 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003088 beqz v0, 0x30d8 | goto label_15;
| }
| do {
0x0000308c move a3, v1 | a3 = v1;
0x00003090 lbu v0, (a3) | v0 = *(a3);
0x00003094 addiu v0, v0, -0x30 | v0 += -0x30;
0x00003098 sltiu v0, v0, 0xa | v0 = (v0 < 0xa) ? 1 : 0;
0x0000309c addiu v1, v1, 1 | v1++;
0x000030a0 bnez v0, 0x308c |
| } while (v0 != 0);
| do {
0x000030a4 lw t9, -0x7e0c(gp) | t9 = sym.imp.strtol;
0x000030a8 move a0, s2 | a0 = s2;
0x000030ac addiu a2, zero, 0xa | a2 = 0xa;
0x000030b0 move a1, zero | a1 = 0;
0x000030b4 sb zero, (a3) | *(a3) = 0;
0x000030b8 jalr t9 | t9 ();
0x000030bc lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000030c0 move a0, s2 | a0 = s2;
0x000030c4 lw t9, -0x7e10(gp) | t9 = sym.imp.free;
0x000030c8 move s2, v0 | s2 = v0;
0x000030cc jalr t9 | t9 ();
0x000030d0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000030d4 b 0x2fe8 | goto label_1;
| label_15:
0x000030d8 move a3, s2 | a3 = s2;
0x000030dc b 0x30a4 |
| } while (1);
| label_14:
0x000030e0 lw t9, -0x7dc4(gp) | t9 = sym.imp.config_close;
0x000030e4 xori s2, s2, 0x78 | s2 ^= 0x78;
0x000030e8 addiu v1, zero, -1 | v1 = -1;
0x000030ec addiu v0, zero, -2 | v0 = -2;
| if (s2 == 0) {
0x000030f0 movn v0, v1, s2 | v0 = v1;
| }
0x000030f4 move a0, s0 | a0 = s0;
0x000030f8 move s2, v0 | s2 = v0;
0x000030fc jalr t9 | t9 ();
0x00003100 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003104 b 0x2ff8 | goto label_2;
| label_11:
0x00003108 addiu s2, zero, -1 | s2 = -1;
0x0000310c b 0x2ff8 | goto label_2;
| label_13:
0x00003110 lw t9, -0x7ea4(gp) | t9 = sym.imp.__stack_chk_fail;
0x00003114 jalr t9 | t9 ();
0x00003118 nop |
0x0000311c lui gp, 2 |
0x00003120 addiu gp, gp, -0x10bc |
0x00003124 addu gp, gp, t9 | gp += t9;
0x00003128 addiu sp, sp, -0x40 |
0x0000312c lw t9, -0x7e04(gp) | t9 = sym.imp.gettimeofday;
0x00003130 sw s1, 0x2c(sp) | *(var_2ch) = s1;
0x00003134 lw s1, -0x7e5c(gp) | s1 = *((gp - 8087));
0x00003138 sw s0, 0x28(sp) | *(var_28h) = s0;
0x0000313c lw s0, -0x7fc0(gp) | s0 = *(gp);
0x00003140 lw v0, (s1) | v0 = *(s1);
0x00003144 sw gp, 0x10(sp) | *(var_10h_2) = gp;
0x00003148 sw s4, 0x38(sp) | *(var_38h_2) = s4;
0x0000314c sw s3, 0x34(sp) | *(var_34h_3) = s3;
0x00003150 sw s2, 0x30(sp) | *(var_30h) = s2;
0x00003154 sw ra, 0x3c(sp) | *(var_3ch_3) = ra;
0x00003158 move s4, a0 | s4 = a0;
0x0000315c move s3, a1 | s3 = a1;
0x00003160 addiu a0, sp, 0x1c | a0 = sp + 0x1c;
0x00003164 move a1, zero | a1 = 0;
0x00003168 sw v0, 0x24(sp) | *(var_24h_2) = v0;
0x0000316c move s2, a2 | s2 = a2;
0x00003170 jalr t9 | t9 ();
0x00003174 lbu v0, (s0) | v0 = *(s0);
0x00003178 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (v0 != 0) {
0x0000317c bnez v0, 0x3238 | goto label_16;
| }
0x00003180 lw t9, -0x7fbc(gp) | t9 = sym.tamp_event_subscriptions_changed;
| if (s4 == 0) {
0x00003184 beqz s4, 0x325c | goto label_17;
| }
| label_3:
0x00003188 lw v0, -0x7fb8(gp) | v0 = *(gp);
0x0000318c lbu v0, (v0) | v0 = *(v0);
0x00003190 lw v0, -0x7fb4(gp) | v0 = *(gp);
| if (v0 == 0) {
0x00003194 beqz v0, 0x32f0 | goto label_18;
| }
0x00003198 addiu v0, zero, 1 | v0 = 1;
| label_6:
0x0000319c sb v0, (s3) | *(s3) = v0;
0x000031a0 lw v0, -0x7fb0(gp) | v0 = *(gp);
0x000031a4 lw a0, (v0) | a0 = *(v0);
| if (a0 == 0) {
0x000031a8 beqz a0, 0x320c | goto label_5;
| }
0x000031ac nop |
0x000031b0 lw v0, 4(a0) | v0 = *((a0 + 1));
| label_4:
0x000031b4 addiu v1, zero, -2 | v1 = -2;
0x000031b8 addiu a2, zero, 1 | a2 = 1;
| if (v0 == v1) {
0x000031bc beq v0, v1, 0x332c | goto label_19;
| }
0x000031c0 addiu a1, zero, -2 | a1 = -2;
0x000031c4 b 0x31d0 |
| while (a0 == 0) {
| if (v0 == a1) {
0x000031c8 beql v0, a1, 0x3330 | goto label_20;
| }
0x000031cc lbu v0, (s0) | v0 = *(s0);
0x000031d0 sll v1, v0, 1 | v1 = v0 << 1;
| if (v0 >= 0) {
0x000031d4 bltz v0, 0x31f4 |
0x000031d8 addu v1, v1, v0 | v1 += v0;
0x000031dc sll v1, v1, 2 | v1 <<= 2;
0x000031e0 lbux v1, v1(s0) | __asm ("lbux v1, v1(s0)");
0x000031e4 lw a0, 8(a0) | a0 = *((a0 + 2));
| if (v1 == 0) {
0x000031e8 bnel v1, zero, 0x31f8 | goto label_21;
| }
0x000031ec addu v0, s3, v0 | v0 = s3 + v0;
0x000031f0 sb a2, (v0) | *(v0) = a2;
| }
0x000031f4 lw a0, 8(a0) | a0 = *((a0 + 2));
| label_21:
0x000031f8 lw v0, 4(a0) | v0 = *((a0 + 1));
0x000031fc bnel a0, zero, 0x31c8 |
| }
| do {
0x00003200 lbu v0, (s3) | v0 = *(s3);
| label_7:
0x00003204 lw t9, -0x7fac(gp) | t9 = sym.ct_reset;
| if (v0 == 0) {
0x00003208 beqz v0, 0x328c | goto label_22;
| }
| label_5:
0x0000320c lw v1, 0x24(sp) | v1 = *(var_24h_2);
0x00003210 lw v0, (s1) | v0 = *(s1);
0x00003214 lw ra, 0x3c(sp) | ra = *(var_3ch_3);
| if (v1 != v0) {
0x00003218 bne v1, v0, 0x3360 | goto label_23;
| }
0x0000321c lw s4, 0x38(sp) | s4 = *(var_38h_2);
0x00003220 lw s3, 0x34(sp) | s3 = *(var_34h_3);
0x00003224 lw s2, 0x30(sp) | s2 = *(var_30h);
0x00003228 lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x0000322c lw s0, 0x28(sp) | s0 = *(var_28h);
0x00003230 addiu sp, sp, 0x40 |
0x00003234 jr ra | return v0;
| label_16:
0x00003238 lw v0, 4(s0) | v0 = *((s0 + 1));
0x0000323c lw v1, 0x1c(sp) | v1 = *(var_1ch);
| if (v0 != 0) {
0x00003240 beqz v0, 0x3250 |
0x00003244 slt v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
| if (v0 == 0) {
0x00003248 beql v0, zero, 0x3340 | goto label_24;
| }
0x0000324c lw v1, 8(s0) | v1 = *((s0 + 2));
| }
| label_8:
0x00003250 lw v0, -0x7fb0(gp) | v0 = *(gp);
| if (s4 != 0) {
0x00003254 bnez s4, 0x3278 | goto label_25;
| }
0x00003258 lw t9, -0x7fbc(gp) | t9 = sym.tamp_event_subscriptions_changed;
| label_17:
0x0000325c bal 0x2c28 | sym_tamp_event_subscriptions_changed ();
0x00003260 nop |
0x00003264 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x00003268 beqz v0, 0x3200 |
| } while (v0 == 0);
0x0000326c lbu v0, (s0) | v0 = *(s0);
0x00003270 lw v0, -0x7fb0(gp) | v0 = *(gp);
| if (v0 == 0) {
0x00003274 beqz v0, 0x3188 | goto label_3;
| }
| label_25:
0x00003278 sb zero, (s3) | *(s3) = 0;
0x0000327c lw a0, (v0) | a0 = *(v0);
0x00003280 lw v0, 4(a0) | v0 = *((a0 + 1));
| if (a0 == 0) {
0x00003284 bnel a0, zero, 0x31b4 | goto label_4;
| }
0x00003288 lw t9, -0x7fac(gp) | t9 = sym.ct_reset;
| label_22:
0x0000328c lw a0, (s2) | a0 = *(s2);
0x00003290 bal 0x509c | sym_ct_reset ();
0x00003294 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (v0 != 0) {
0x00003298 bnez v0, 0x320c | goto label_5;
| }
0x0000329c lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x000032a0 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x000032a4 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000032a8 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000032ac addiu a3, zero, 0x52c | a3 = 0x52c;
0x000032b0 addiu a2, a2, -0x6a74 | a2 += -0x6a74;
0x000032b4 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x000032b8 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x000032bc bal 0x4510 | sym_dbg_add ();
0x000032c0 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000032c4 move a1, zero | a1 = 0;
0x000032c8 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000032cc lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000032d0 addiu a0, a0, -0x6f28 | a0 += -0x6f28;
0x000032d4 bal 0x4510 | sym_dbg_add ();
0x000032d8 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000032dc lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x000032e0 addiu a0, zero, 1 | a0 = 1;
0x000032e4 bal 0x45d8 | sym_dbg_print ();
0x000032e8 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000032ec b 0x320c | goto label_5;
| label_18:
0x000032f0 lbu v0, (v0) | v0 = *(v0);
0x000032f4 addiu v0, zero, 1 | v0 = 1;
| if (v0 != 0) {
0x000032f8 bnez v0, 0x319c | goto label_6;
| }
0x000032fc lw t9, -0x7fa8(gp) | t9 = sym.channel_active_subscription;
0x00003300 move a0, zero | a0 = 0;
0x00003304 bal 0x2c44 | sym_channel_active_subscription ();
0x00003308 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x0000330c sltu v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
0x00003310 sb v0, (s3) | *(s3) = v0;
0x00003314 lw v1, -0x7fb0(gp) | v1 = *(gp);
0x00003318 lw a0, (v1) | a0 = *(v1);
0x0000331c lw v0, 4(a0) | v0 = *((a0 + 1));
| if (a0 == 0) {
0x00003320 bnel a0, zero, 0x31b4 | goto label_4;
| }
0x00003324 b 0x3204 | goto label_7;
0x00003328 nop |
| label_19:
0x0000332c lbu v0, (s0) | v0 = *(s0);
| label_20:
0x00003330 addiu v0, zero, 1 | v0 = 1;
| if (v0 != 0) {
0x00003334 bnez v0, 0x320c | goto label_5;
| }
0x00003338 sb v0, (s3) | *(s3) = v0;
0x0000333c b 0x320c | goto label_5;
| label_24:
0x00003340 lw v0, 0x20(sp) | v0 = *(var_20h);
0x00003344 slt v0, v1, v0 | v0 = (v1 < v0) ? 1 : 0;
| if (v0 == 0) {
0x00003348 beqz v0, 0x3250 | goto label_8;
| }
0x0000334c nop |
0x00003350 sb zero, (s0) | *(s0) = 0;
0x00003354 sw zero, 4(s0) | *((s0 + 1)) = 0;
0x00003358 sw zero, 8(s0) | *((s0 + 2)) = 0;
0x0000335c b 0x3188 | goto label_3;
| label_23:
0x00003360 lw t9, -0x7ea4(gp) | t9 = sym.imp.__stack_chk_fail;
0x00003364 jalr t9 | t9 ();
0x00003368 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/tampering @ 0x35d0 */
| #include <stdint.h>
|
; (fcn) fcn.000035d0 () | void fcn_000035d0 () {
0x000035d0 lui gp, 2 |
0x000035d4 addiu gp, gp, -0x1570 |
0x000035d8 addu gp, gp, t9 | gp += t9;
0x000035dc lw v0, -0x7e5c(gp) | v0 = *((gp - 8087));
0x000035e0 addiu sp, sp, -0x288 |
0x000035e4 lw t9, -0x7fa4(gp) | t9 = sym.init_socket;
0x000035e8 sw s0, 0x260(sp) | *(var_260h) = s0;
0x000035ec sw v0, 0x60(sp) | *(var_60h) = v0;
0x000035f0 lw s0, -0x7fcc(gp) | s0 = *((gp - 8179));
0x000035f4 lw v0, (v0) | v0 = *(v0);
0x000035f8 sw gp, 0x18(sp) | *(var_18h_2) = gp;
0x000035fc sw a0, 0x40(sp) | *(var_40h) = a0;
0x00003600 sw ra, 0x284(sp) | *(var_284h) = ra;
0x00003604 sw fp, 0x280(sp) | *(var_280h) = fp;
0x00003608 sw s7, 0x27c(sp) | *(var_27ch) = s7;
0x0000360c sw s6, 0x278(sp) | *(var_278h) = s6;
0x00003610 sw s5, 0x274(sp) | *(var_274h) = s5;
0x00003614 sw s4, 0x270(sp) | *(var_270h) = s4;
0x00003618 sw s3, 0x26c(sp) | *(var_26ch) = s3;
0x0000361c sw s2, 0x268(sp) | *(var_268h) = s2;
0x00003620 sw s1, 0x264(sp) | *(var_264h) = s1;
0x00003624 addiu a0, s0, -0x6ecc | a0 = s0 + -0x6ecc;
0x00003628 sw a1, 0x44(sp) | *(var_44h) = a1;
0x0000362c sw v0, 0x25c(sp) | *(var_25ch) = v0;
0x00003630 bal 0x336c | sym_init_socket ();
0x00003634 nop |
0x00003638 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 <= 0) {
0x0000363c blez v0, 0x3dc4 | goto label_16;
| }
0x00003640 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00003644 lw t9, -0x7dbc(gp) | t9 = sym.imp.system;
0x00003648 addiu a0, a0, -0x6e84 | a0 += -0x6e84;
0x0000364c move s3, v0 | s3 = v0;
0x00003650 jalr t9 | t9 ();
0x00003654 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003658 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000365c lw t9, -0x7dbc(gp) | t9 = sym.imp.system;
0x00003660 lw s2, -0x7fcc(gp) | s2 = *((gp - 8179));
0x00003664 addiu a0, a0, -0x6e70 | a0 += -0x6e70;
0x00003668 jalr t9 | t9 ();
0x0000366c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003670 lw t9, -0x7f0c(gp) | t9 = sym.imp.getpwnam;
0x00003674 addiu a0, s2, -0x7104 | a0 = s2 + -0x7104;
0x00003678 jalr t9 | t9 ();
0x0000367c move s0, v0 | s0 = v0;
0x00003680 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003684 beqz v0, 0x43b0 | goto label_17;
| }
0x00003688 lw t9, -0x7db4(gp) | t9 = sym.imp.getgrnam;
0x0000368c addiu a0, s2, -0x7104 | a0 = s2 + -0x7104;
0x00003690 jalr t9 | t9 ();
0x00003694 move s1, v0 | s1 = v0;
0x00003698 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x0000369c beqz v0, 0x4388 | goto label_18;
| }
0x000036a0 lw t9, -0x7f04(gp) | t9 = sym.imp.setgid;
0x000036a4 lw a0, 8(v0) | a0 = *((v0 + 2));
0x000036a8 jalr t9 | t9 ();
0x000036ac lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 < 0) {
0x000036b0 bltz v0, 0x4408 | goto label_19;
| }
0x000036b4 lw t9, -0x7e88(gp) | t9 = sym.imp.initgroups;
0x000036b8 lw a1, 8(s1) | a1 = *((s1 + 2));
0x000036bc lw a0, (s0) | a0 = *(s0);
0x000036c0 jalr t9 | t9 ();
0x000036c4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 < 0) {
0x000036c8 bltz v0, 0x43d8 | goto label_20;
| }
0x000036cc lw t9, -0x7e3c(gp) | t9 = sym.imp.setuid;
0x000036d0 lw a0, 8(s0) | a0 = *((s0 + 2));
0x000036d4 jalr t9 | t9 ();
0x000036d8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 < 0) {
0x000036dc bltz v0, 0x430c | goto label_21;
| }
0x000036e0 lw s0, -0x7fc0(gp) | s0 = *(gp);
0x000036e4 lw t9, -0x7df0(gp) | t9 = sym.imp.mainloop_start;
0x000036e8 sw s0, 0x80(sp) | *(var_80h) = s0;
0x000036ec jalr t9 | t9 ();
0x000036f0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000036f4 lw s1, -0x7fb4(gp) | s1 = *(gp);
0x000036f8 lw s2, -0x7fb8(gp) | s2 = *(gp);
0x000036fc lw t9, -0x7fa0(gp) | t9 = sym.tamp_event_init;
0x00003700 sw s1, 0x7c(sp) | *(var_7ch) = s1;
0x00003704 sw s2, 0x78(sp) | *(var_78h) = s2;
0x00003708 bal 0x25b8 | sym_tamp_event_init ();
0x0000370c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003710 sb zero, (s0) | *(s0) = 0;
0x00003714 sb zero, (s1) | *(s1) = 0;
0x00003718 lw t9, -0x7f9c(gp) | t9 = sym.ct_create;
0x0000371c sb zero, 0xa8(sp) | *(var_a8h_2) = 0;
0x00003720 sb zero, (s2) | *(s2) = 0;
0x00003724 bal 0x49c0 | sym_ct_create ();
0x00003728 sw v0, 0xac(sp) | *(var_ach_2) = v0;
0x0000372c lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003730 beqz v0, 0x4130 | goto label_22;
| }
0x00003734 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00003738 addiu v0, zero, 1 | v0 = 1;
0x0000373c sllv s4, v0, s3 | s4 = v0 << s3;
0x00003740 sw v0, -0x5cbc(a0) | *((a0 - 5935)) = v0;
0x00003744 addiu v0, zero, 0x14 | v0 = 0x14;
0x00003748 sw v0, 0x54(sp) | *(var_54h) = v0;
0x0000374c addiu v0, zero, 0x32 | v0 = 0x32;
0x00003750 sw v0, 0x5c(sp) | *(var_5ch) = v0;
0x00003754 addiu v0, zero, 1 | v0 = 1;
0x00003758 sw v0, 0x58(sp) | *(var_58h) = v0;
0x0000375c addiu v0, sp, 0x9c | v0 = sp + 0x9c;
0x00003760 lw v1, -0x7fcc(gp) | v1 = *((gp - 8179));
0x00003764 sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x00003768 addiu v0, sp, 0xb4 | v0 = sp + 0xb4;
0x0000376c sw v0, 0x48(sp) | *(var_48h) = v0;
0x00003770 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00003774 lw v1, -0x687c(v1) | v1 = *((v1 - 6687));
0x00003778 addiu v0, v0, -0x6d38 | v0 += -0x6d38;
0x0000377c sw v0, 0x6c(sp) | *(var_6ch) = v0;
0x00003780 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00003784 sw v1, 0x50(sp) | *(var_50h) = v1;
0x00003788 lw v1, -0x7fdc(gp) | v1 = *((gp - 8183));
0x0000378c addiu v0, v0, 0x2f34 | v0 += 0x2f34;
0x00003790 sw a0, 0x28(sp) | *(var_28h) = a0;
0x00003794 sw v1, 0x3c(sp) | *(var_3ch) = v1;
0x00003798 sw v0, 0x84(sp) | *(var_84h) = v0;
0x0000379c lw v1, -0x7fcc(gp) | v1 = *((gp - 8179));
0x000037a0 lw v0, 0x28(sp) | v0 = *(var_28h);
0x000037a4 lw s7, -0x7fcc(gp) | s7 = *((gp - 8179));
0x000037a8 lw v1, -0x6870(v1) | v1 = *(v1);
0x000037ac lw v0, -0x5cbc(v0) | v0 = *((v0 - 5935));
0x000037b0 sw v1, 0x70(sp) | *(var_70h) = v1;
0x000037b4 sw zero, 0x24(sp) | *(var_24h) = 0;
0x000037b8 addiu s6, sp, 0xa0 | s6 = sp + 0xa0;
0x000037bc addiu fp, sp, 0xdc | fp = sp + 0xdc;
0x000037c0 addiu s5, sp, 0x15c | s5 = sp + 0x15c;
| if (v0 != 0) {
0x000037c4 bnez v0, 0x3c44 | goto label_23;
| }
| label_5:
0x000037c8 lw t9, -0x7d98(gp) | t9 = sym.imp.fps_create;
| label_4:
0x000037cc lw a1, -0x6874(s7) | a1 = *((s7 - 6685));
0x000037d0 move a0, zero | a0 = 0;
0x000037d4 jalr t9 | t9 ();
0x000037d8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000037dc move a0, v0 | a0 = v0;
0x000037e0 lw t9, -0x7dc8(gp) | t9 = sym.imp.fps_measure;
0x000037e4 move s0, v0 | s0 = v0;
0x000037e8 jalr t9 | t9 ();
0x000037ec lbu v0, 0xa8(sp) | v0 = *(var_a8h_2);
0x000037f0 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x000037f4 bnez v0, 0x3b54 | goto label_24;
| }
0x000037f8 lw t9, -0x7f18(gp) | t9 = sym.imp.av_watch_collect;
| label_2:
0x000037fc sw zero, 0x24(sp) | *(var_24h) = 0;
0x00003800 jalr t9 | t9 ();
0x00003804 lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_3:
0x00003808 lw t9, -0x7e7c(gp) | t9 = sym.imp.fps_get_remtime;
0x0000380c move a0, s0 | a0 = s0;
0x00003810 move a1, s6 | a1 = s6;
0x00003814 jalr t9 | t9 ();
0x00003818 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000381c move a0, s0 | a0 = s0;
0x00003820 lw t9, -0x7ed8(gp) | t9 = sym.imp.fps_delete;
0x00003824 addiu s0, s3, 1 | s0 = s3 + 1;
0x00003828 jalr t9 | t9 ();
0x0000382c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003830 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00003834 lw s2, -0x7fd0(gp) | s2 = *((gp - 8180));
0x00003838 sw v0, 0x64(sp) | *(var_64h) = v0;
0x0000383c lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00003840 sw v0, 0x74(sp) | *(var_74h) = v0;
0x00003844 addiu v0, sp, 0xac | v0 = sp + 0xac;
0x00003848 sw v0, 0x38(sp) | *(var_38h) = v0;
0x0000384c addiu v0, sp, 0xa8 | v0 = sp + 0xa8;
0x00003850 sw v0, 0x34(sp) | *(var_34h) = v0;
0x00003854 addiu v0, s2, 0x311c | v0 = s2 + 0x311c;
0x00003858 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0000385c lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00003860 addiu v0, v0, -0x6c84 | v0 += -0x6c84;
0x00003864 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x00003868 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x0000386c addiu v0, v0, -0x6c80 | v0 += -0x6c80;
0x00003870 sw v0, 0x68(sp) | *(var_68h) = v0;
| label_0:
0x00003874 move v0, fp | v0 = fp;
| label_1:
0x00003878 sw zero, (v0) | *(v0) = 0;
| do {
0x0000387c addiu v0, v0, 4 | v0 += 4;
0x00003880 sw zero, (v0) | *(v0) = 0;
0x00003884 bnel s5, v0, 0x387c |
| } while (s5 == v0);
0x00003888 lw t9, -0x7f1c(gp) | t9 = sym.imp.__fdelt_chk;
0x0000388c move a0, s3 | a0 = s3;
0x00003890 jalr t9 | t9 ();
0x00003894 sll v0, v0, 2 | v0 <<= 2;
0x00003898 addiu v1, sp, 0x260 | v1 = sp + 0x260;
0x0000389c addu v0, v1, v0 | v0 = v1 + v0;
0x000038a0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000038a4 lw v1, -0x184(v0) | v1 = *(v0);
0x000038a8 sw s6, 0x10(sp) | *(var_10h) = s6;
0x000038ac lw t9, -0x7e78(gp) | t9 = sym.imp.select;
0x000038b0 or v1, v1, s4 | v1 |= s4;
0x000038b4 move a3, zero | a3 = 0;
0x000038b8 move a2, zero | a2 = 0;
0x000038bc move a1, fp | a1 = fp;
0x000038c0 move a0, s0 | a0 = s0;
0x000038c4 sw v1, -0x184(v0) | *(v0) = v1;
0x000038c8 jalr t9 | t9 ();
0x000038cc lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x000038d0 beqz v0, 0x3c1c | goto label_25;
| }
0x000038d4 lw t9, -0x7f1c(gp) | t9 = sym.imp.__fdelt_chk;
| if (v0 <= 0) {
0x000038d8 blez v0, 0x3874 | goto label_0;
| }
0x000038dc move a0, s3 | a0 = s3;
0x000038e0 jalr t9 | t9 ();
0x000038e4 sll v0, v0, 2 | v0 <<= 2;
0x000038e8 addiu v1, sp, 0x260 | v1 = sp + 0x260;
0x000038ec addu v0, v1, v0 | v0 = v1 + v0;
0x000038f0 lw v0, -0x184(v0) | v0 = *(v0);
0x000038f4 and v0, s4, v0 | v0 = s4 & v0;
0x000038f8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x000038fc beqz v0, 0x3874 | goto label_0;
| }
0x00003900 lw t9, -0x7db8(gp) | t9 = sym.imp.recv;
0x00003904 move a3, zero | a3 = 0;
0x00003908 addiu a2, zero, 0xff | a2 = 0xff;
0x0000390c move a1, s5 | a1 = s5;
0x00003910 move a0, s3 | a0 = s3;
0x00003914 jalr t9 | t9 ();
0x00003918 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 < 0) {
0x0000391c bltz v0, 0x3f54 | goto label_26;
| }
0x00003920 addiu v1, sp, 0x260 | v1 = sp + 0x260;
0x00003924 addu v1, v1, v0 | v1 += v0;
0x00003928 lw v0, 0x64(sp) | v0 = *(var_64h);
0x0000392c sb zero, -0x104(v1) | *((v1 - 260)) = 0;
0x00003930 addiu v0, v0, -0x5ff0 | v0 += -0x5ff0;
0x00003934 lw v1, 0x48(sp) | v1 = *(var_48h);
0x00003938 sw zero, 0x9c(sp) | *(var_9ch_2) = 0;
0x0000393c addiu t0, v0, 0x20 | t0 = v0 + 0x20;
| do {
0x00003940 lw a3, (v0) | a3 = *(v0);
0x00003944 lw a2, 4(v0) | a2 = *((v0 + 1));
0x00003948 lw a1, 8(v0) | a1 = *((v0 + 2));
0x0000394c lw a0, 0xc(v0) | a0 = *((v0 + 3));
0x00003950 addiu v0, v0, 0x10 | v0 += 0x10;
0x00003954 sw a3, (v1) | *(v1) = a3;
0x00003958 sw a2, 4(v1) | *((v1 + 1)) = a2;
0x0000395c sw a1, 8(v1) | *((v1 + 2)) = a1;
0x00003960 sw a0, 0xc(v1) | *((v1 + 3)) = a0;
0x00003964 addiu v1, v1, 0x10 | v1 += 0x10;
0x00003968 bne v0, t0, 0x3940 |
| } while (v0 != t0);
0x0000396c lw a0, (v0) | a0 = *(v0);
0x00003970 lw v0, 4(v0) | v0 = *((v0 + 1));
0x00003974 lw t9, -0x7ec0(gp) | t9 = sym.imp.strtok_r;
0x00003978 lw a2, 0x2c(sp) | a2 = *(var_2ch);
0x0000397c lw a1, 0x4c(sp) | a1 = *(var_4ch);
0x00003980 sw a0, (v1) | *(v1) = a0;
0x00003984 sw v0, 4(v1) | *((v1 + 1)) = v0;
0x00003988 move a0, s5 | a0 = s5;
0x0000398c jalr t9 | t9 ();
0x00003990 lw s1, 0xb4(sp) | s1 = *(var_b4h);
0x00003994 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (s1 == 0) {
0x00003998 beqz s1, 0x42cc | goto label_27;
| }
0x0000399c addiu v1, sp, 0xbc | v1 = sp + 0xbc;
0x000039a0 sw s3, 0x88(sp) | *(var_88h) = s3;
0x000039a4 sw s0, 0x8c(sp) | *(var_8ch) = s0;
0x000039a8 move s2, zero | s2 = 0;
0x000039ac move s0, v0 | s0 = v0;
0x000039b0 move s3, v1 | s3 = v1;
0x000039b4 b 0x39c8 |
| while (v0 != 0) {
0x000039b8 addiu s3, s3, 8 | s3 += 8;
0x000039bc lw s1, -8(s3) | s1 = *((s3 - 2));
0x000039c0 addiu s2, s2, 1 | s2++;
| if (s1 == 0) {
0x000039c4 beqz s1, 0x39f4 | goto label_28;
| }
0x000039c8 lw t9, -0x7e4c(gp) | t9 = sym.imp.strlen;
0x000039cc move a0, s1 | a0 = s1;
0x000039d0 jalr t9 | t9 ();
0x000039d4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000039d8 move a2, v0 | a2 = v0;
0x000039dc move a1, s1 | a1 = s1;
0x000039e0 lw t9, -0x7ee8(gp) | t9 = sym.imp.strncmp;
0x000039e4 move a0, s0 | a0 = s0;
0x000039e8 jalr t9 | t9 ();
0x000039ec lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000039f0 bnez v0, 0x39b8 |
| }
| label_28:
0x000039f4 lw s3, 0x88(sp) | s3 = *(var_88h);
0x000039f8 lw s0, 0x8c(sp) | s0 = *(var_8ch);
| label_13:
0x000039fc sll a3, s2, 3 | a3 = s2 << 3;
0x00003a00 addiu v0, sp, 0x260 | v0 = sp + 0x260;
0x00003a04 lw t9, -0x7ec0(gp) | t9 = sym.imp.strtok_r;
0x00003a08 addu a3, v0, a3 | a3 = v0 + a3;
0x00003a0c lw a2, 0x2c(sp) | a2 = *(var_2ch);
0x00003a10 lw a1, 0x68(sp) | a1 = *(var_68h);
0x00003a14 move a0, zero | a0 = 0;
0x00003a18 lw s1, -0x1a8(a3) | s1 = *(a3);
0x00003a1c jalr t9 | t9 ();
0x00003a20 lw v1, 0x9c(sp) | v1 = *(var_9ch_2);
0x00003a24 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003a28 move s2, v0 | s2 = v0;
| if (v1 != 0) {
0x00003a2c beqz v1, 0x3a4c |
0x00003a30 lbu v0, (v1) | v0 = *(v1);
0x00003a34 addiu a0, zero, 0x45 | a0 = 0x45;
0x00003a38 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
| if (v0 == a0) {
0x00003a3c beq v0, a0, 0x3ff4 | goto label_29;
| }
0x00003a40 addiu v1, zero, 0x2a | v1 = 0x2a;
| if (v0 == v1) {
0x00003a44 beql v0, v1, 0x427c | goto label_30;
| }
0x00003a48 lw s1, -0x7fb0(gp) | s1 = *(gp);
| }
0x00003a4c lw v0, 0x74(sp) | v0 = *(var_74h);
| if (s2 != 0) {
0x00003a50 beqz s2, 0x3a90 |
0x00003a54 lw t9, -0x7ee8(gp) | t9 = sym.imp.strncmp;
0x00003a58 addiu a2, zero, 8 | a2 = 8;
0x00003a5c addiu a1, v0, -0x6c78 | a1 = v0 + -0x6c78;
0x00003a60 move a0, s2 | a0 = s2;
0x00003a64 jalr t9 | t9 ();
0x00003a68 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003a6c beqz v0, 0x3fa4 | goto label_31;
| }
0x00003a70 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00003a74 lw t9, -0x7ee8(gp) | t9 = sym.imp.strncmp;
0x00003a78 addiu a2, zero, 5 | a2 = 5;
0x00003a7c addiu a1, a1, -0x6c6c | a1 += -0x6c6c;
0x00003a80 move a0, s2 | a0 = s2;
0x00003a84 jalr t9 | t9 ();
0x00003a88 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003a8c beqz v0, 0x4260 | goto label_32;
| }
| }
0x00003a90 addiu v0, zero, 2 | v0 = 2;
0x00003a94 addiu v0, zero, 3 | v0 = 3;
| if (s1 == v0) {
0x00003a98 beq s1, v0, 0x4220 | goto label_33;
| }
0x00003a9c move v0, fp | v0 = fp;
| if (s1 != v0) {
0x00003aa0 bne s1, v0, 0x3878 | goto label_1;
| }
0x00003aa4 lw t9, -0x7ec0(gp) | t9 = sym.imp.strtok_r;
0x00003aa8 lw a2, 0x2c(sp) | a2 = *(var_2ch);
0x00003aac lw a1, 0x4c(sp) | a1 = *(var_4ch);
0x00003ab0 move a0, s2 | a0 = s2;
0x00003ab4 jalr t9 | t9 ();
0x00003ab8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003abc beqz v0, 0x42d4 | goto label_34;
| }
0x00003ac0 lw t9, -0x7e0c(gp) | t9 = sym.imp.strtol;
0x00003ac4 addiu a2, zero, 0xa | a2 = 0xa;
0x00003ac8 move a1, zero | a1 = 0;
0x00003acc move a0, v0 | a0 = v0;
0x00003ad0 jalr t9 | t9 ();
0x00003ad4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003ad8 lw a2, 0x2c(sp) | a2 = *(var_2ch);
0x00003adc lw a1, 0x4c(sp) | a1 = *(var_4ch);
0x00003ae0 lw t9, -0x7ec0(gp) | t9 = sym.imp.strtok_r;
0x00003ae4 move a0, zero | a0 = 0;
0x00003ae8 move s2, v0 | s2 = v0;
0x00003aec jalr t9 | t9 ();
0x00003af0 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003af4 beqz v0, 0x3874 | goto label_0;
| }
0x00003af8 lw t9, -0x7e0c(gp) | t9 = sym.imp.strtol;
0x00003afc addiu a2, zero, 0xa | a2 = 0xa;
0x00003b00 move a1, zero | a1 = 0;
0x00003b04 move a0, v0 | a0 = v0;
0x00003b08 jalr t9 | t9 ();
0x00003b0c move v1, v0 | v1 = v0;
0x00003b10 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (s2 < 0) {
0x00003b14 bltz s2, 0x4244 | goto label_35;
| }
| label_14:
0x00003b18 addiu v0, zero, 0xc | v0 = 0xc;
0x00003b1c mul s2, s2, v0 | __asm ("mul s2, s2, v0");
0x00003b20 lw s1, 0x80(sp) | s1 = *(var_80h);
0x00003b24 lw t9, -0x7e04(gp) | t9 = sym.imp.gettimeofday;
0x00003b28 sw v1, 0x88(sp) | *(var_88h) = v1;
0x00003b2c move a1, zero | a1 = 0;
0x00003b30 addiu a0, s2, 4 | a0 = s2 + 4;
0x00003b34 addu s2, s1, s2 | s2 = s1 + s2;
0x00003b38 addu a0, s1, a0 | a0 = s1 + a0;
0x00003b3c jalr t9 | t9 ();
0x00003b40 lw v0, 4(s2) | v0 = *((s2 + 1));
0x00003b44 lw v1, 0x88(sp) | v1 = *(var_88h);
0x00003b48 addu v1, v0, v1 | v1 = v0 + v1;
0x00003b4c sw v1, 4(s2) | *((s2 + 1)) = v1;
0x00003b50 b 0x4174 | goto label_10;
| label_24:
0x00003b54 lw t9, -0x7f98(gp) | t9 = sym.ct_read_acc;
0x00003b58 lw a0, 0xac(sp) | a0 = *(var_ach_2);
0x00003b5c bal 0x5d0c | sym_ct_read_acc ();
0x00003b60 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 > 0) {
0x00003b64 bgtz v0, 0x3b74 | goto label_36;
| }
0x00003b68 lw v0, 0x24(sp) | v0 = *(var_24h);
0x00003b6c lw t9, -0x7f18(gp) | t9 = sym.imp.av_watch_collect;
| if (v0 != 0) {
0x00003b70 bnez v0, 0x37fc | goto label_2;
| }
| label_36:
0x00003b74 lw v0, 0x44(sp) | v0 = *(var_44h);
0x00003b78 lw t9, -0x7de0(gp) | t9 = sym.imp.av_loader_grab;
0x00003b7c lw a0, (v0) | a0 = *(v0);
0x00003b80 jalr t9 | t9 ();
0x00003b84 move s1, v0 | s1 = v0;
0x00003b88 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003b8c beqz v0, 0x3e54 | goto label_37;
| }
0x00003b90 lw t9, -0x7f94(gp) | t9 = sym.ct_apply;
0x00003b94 lw a0, 0xac(sp) | a0 = *(var_ach_2);
0x00003b98 move a1, v0 | a1 = v0;
0x00003b9c bal 0x50c0 | sym_ct_apply ();
0x00003ba0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003ba4 lw a0, 0xac(sp) | a0 = *(var_ach_2);
0x00003ba8 lw t9, -0x7f98(gp) | t9 = sym.ct_read_acc;
0x00003bac move s2, v0 | s2 = v0;
0x00003bb0 bal 0x5d0c | sym_ct_read_acc ();
0x00003bb4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003bb8 move a0, s2 | a0 = s2;
0x00003bbc move a1, zero | a1 = 0;
0x00003bc0 lw t9, -0x7f90(gp) | t9 = sym.send_tampering_event;
0x00003bc4 move s2, v0 | s2 = v0;
0x00003bc8 bal 0x2b1c | sym_send_tampering_event ();
0x00003bcc lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003bd0 lw t9, -0x7f18(gp) | t9 = sym.imp.av_watch_collect;
0x00003bd4 jalr t9 | t9 ();
0x00003bd8 nop |
0x00003bdc lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (s2 <= 0) {
0x00003be0 blez s2, 0x4444 | goto label_38;
| }
0x00003be4 lw t9, -0x7ed0(gp) | t9 = sym.imp.fps_set_fps;
0x00003be8 lw a1, 0x70(sp) | a1 = *(var_70h);
0x00003bec move a0, s0 | a0 = s0;
0x00003bf0 jalr t9 | t9 ();
0x00003bf4 lw v0, 0x24(sp) | v0 = *(var_24h);
0x00003bf8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00003bfc beqz v0, 0x3db8 | goto label_39;
| }
0x00003c00 addiu v0, v0, -1 | v0 += -1;
0x00003c04 sw v0, 0x24(sp) | *(var_24h) = v0;
| label_6:
0x00003c08 lw t9, -0x7df4(gp) | t9 = sym.imp.av_image_delete;
0x00003c0c move a0, s1 | a0 = s1;
0x00003c10 jalr t9 | t9 ();
0x00003c14 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003c18 b 0x3808 | goto label_3;
| label_25:
0x00003c1c lw a2, 0x38(sp) | a2 = *(var_38h);
0x00003c20 lw a1, 0x34(sp) | a1 = *(var_34h);
0x00003c24 lw t9, 0x30(sp) | t9 = *(var_30h);
0x00003c28 move a0, zero | a0 = 0;
0x00003c2c jalr t9 | t9 ();
0x00003c30 lw v0, 0x28(sp) | v0 = *(var_28h);
0x00003c34 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003c38 lw v0, -0x5cbc(v0) | v0 = *((v0 - 5935));
0x00003c3c lw t9, -0x7d98(gp) | t9 = sym.imp.fps_create;
| if (v0 == 0) {
0x00003c40 beqz v0, 0x37cc | goto label_4;
| }
| label_23:
0x00003c44 lw v0, 0x28(sp) | v0 = *(var_28h);
0x00003c48 lw s1, 0x40(sp) | s1 = *(var_40h);
0x00003c4c lw t9, -0x7eb0(gp) | t9 = sym.imp.config_refresh;
0x00003c50 move a0, s1 | a0 = s1;
0x00003c54 sw zero, -0x5cbc(v0) | *((v0 - 5935)) = 0;
0x00003c58 jalr t9 | t9 ();
0x00003c5c nop |
0x00003c60 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003c64 lw s0, 0x3c(sp) | s0 = *(var_3ch);
0x00003c68 lw v0, 0x6c(sp) | v0 = *(var_6ch);
0x00003c6c lw t9, -0x7eec(gp) | t9 = sym.imp.__snprintf_chk
0x00003c70 addiu a3, zero, 0x20 | a3 = 0x20;
0x00003c74 addiu a2, zero, 1 | a2 = 1;
0x00003c78 addiu a1, zero, 0x20 | a1 = 0x20;
0x00003c7c addiu a0, s0, -0x5cdc | a0 = s0 + -0x5cdc;
0x00003c80 sw zero, 0x14(sp) | *(var_14h) = 0;
0x00003c84 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00003c88 jalr t9 | t9 ();
0x00003c8c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003c90 addiu v0, sp, 0x97 | v0 = sp + 0x97;
0x00003c94 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00003c98 lw a3, -0x7fcc(gp) | a3 = *((gp - 8179));
0x00003c9c lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00003ca0 lw t9, -0x7dfc(gp) | t9 = sym.imp.config_getbool;
0x00003ca4 addiu a3, a3, -0x6d28 | a3 += -0x6d28;
0x00003ca8 addiu a2, a2, -0x6d24 | a2 += -0x6d24;
0x00003cac addiu a1, s0, -0x5cdc | a1 = s0 + -0x5cdc;
0x00003cb0 move a0, s1 | a0 = s1;
0x00003cb4 jalr t9 | t9 ();
0x00003cb8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00003cbc beqz v0, 0x3cc8 |
0x00003cc0 lbu v0, 0x97(sp) | v0 = *(var_97h);
0x00003cc4 sw v0, 0x58(sp) | *(var_58h) = v0;
| }
0x00003cc8 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00003ccc lw v0, 0x3c(sp) | v0 = *(var_3ch);
0x00003cd0 lw t9, -0x7e58(gp) | t9 = sym.imp.config_getint;
0x00003cd4 lw a0, 0x40(sp) | a0 = *(var_40h);
0x00003cd8 addiu a3, sp, 0x98 | a3 = sp + 0x98;
0x00003cdc addiu a2, a2, -0x6d0c | a2 += -0x6d0c;
0x00003ce0 addiu a1, v0, -0x5cdc | a1 = v0 + -0x5cdc;
0x00003ce4 jalr t9 | t9 ();
0x00003ce8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00003cec beqz v0, 0x3cf8 |
0x00003cf0 lw v0, 0x98(sp) | v0 = *(var_98h_2);
0x00003cf4 sw v0, 0x5c(sp) | *(var_5ch) = v0;
| }
0x00003cf8 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00003cfc lw v0, 0x3c(sp) | v0 = *(var_3ch);
0x00003d00 lw t9, -0x7e58(gp) | t9 = sym.imp.config_getint;
0x00003d04 lw a3, 0x2c(sp) | a3 = *(var_2ch);
0x00003d08 lw a0, 0x40(sp) | a0 = *(var_40h);
0x00003d0c addiu a2, a2, -0x6d00 | a2 += -0x6d00;
0x00003d10 addiu a1, v0, -0x5cdc | a1 = v0 + -0x5cdc;
0x00003d14 jalr t9 | t9 ();
0x00003d18 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00003d1c beqz v0, 0x3d28 |
0x00003d20 lw v0, 0x9c(sp) | v0 = *(var_9ch_2);
0x00003d24 sw v0, 0x54(sp) | *(var_54h) = v0;
| }
0x00003d28 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00003d2c lw v0, 0x3c(sp) | v0 = *(var_3ch);
0x00003d30 lw t9, -0x7e58(gp) | t9 = sym.imp.config_getint;
0x00003d34 lw a0, 0x40(sp) | a0 = *(var_40h);
0x00003d38 move a3, s6 | a3 = s6;
0x00003d3c addiu a2, a2, -0x6cf4 | a2 += -0x6cf4;
0x00003d40 addiu a1, v0, -0x5cdc | a1 = v0 + -0x5cdc;
0x00003d44 jalr t9 | t9 ();
0x00003d48 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00003d4c beqz v0, 0x3d90 |
0x00003d50 lw t9, -0x7f8c(gp) | t9 = *(gp);
0x00003d54 lw s0, -0x7fcc(gp) | s0 = *((gp - 8179));
0x00003d58 lw a0, 0xa0(sp) | a0 = *(var_a0h_2);
0x00003d5c bal 0x7120 | fcn_00007120 ();
0x00003d60 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003d64 lw a0, -0x6878(s0) | a0 = *((s0 - 6686));
0x00003d68 lw t9, -0x7f88(gp) | t9 = *(gp);
0x00003d6c move a1, v0 | a1 = v0;
0x00003d70 bal 0x6ba0 | fcn_00006ba0 ();
0x00003d74 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003d78 lw a1, -0x6878(s0) | a1 = *((s0 - 6686));
0x00003d7c lw t9, -0x7f84(gp) | t9 = *(gp);
0x00003d80 move a0, v0 | a0 = v0;
0x00003d84 bal 0x6230 | fcn_00006230 ();
0x00003d88 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003d8c sw v0, 0x50(sp) | *(var_50h) = v0;
| }
0x00003d90 lw v0, 0x50(sp) | v0 = *(var_50h);
0x00003d94 lw t9, -0x7f80(gp) | t9 = sym.ct_update_params;
0x00003d98 lw a0, 0xac(sp) | a0 = *(var_ach_2);
0x00003d9c lw a3, 0x54(sp) | a3 = *(var_54h);
0x00003da0 lw a2, 0x5c(sp) | a2 = *(var_5ch);
0x00003da4 lw a1, 0x58(sp) | a1 = *(var_58h);
0x00003da8 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00003dac bal 0x5a10 | sym_ct_update_params ();
0x00003db0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003db4 b 0x37c8 | goto label_5;
| label_39:
0x00003db8 addiu v0, zero, 9 | v0 = 9;
0x00003dbc sw v0, 0x24(sp) | *(var_24h) = v0;
0x00003dc0 b 0x3c08 | goto label_6;
| label_16:
0x00003dc4 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00003dc8 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00003dcc lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00003dd0 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00003dd4 addiu a3, zero, 0x17f | a3 = 0x17f;
0x00003dd8 addiu a2, a2, -0x6a4c | a2 += -0x6a4c;
0x00003ddc addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x00003de0 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00003de4 bal 0x4510 | sym_dbg_add ();
0x00003de8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003dec addiu a1, s0, -0x6ecc | a1 = s0 + -0x6ecc;
0x00003df0 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00003df4 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00003df8 addiu a0, a0, -0x6eac | a0 += -0x6eac;
0x00003dfc bal 0x4510 | sym_dbg_add ();
0x00003e00 lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_9:
0x00003e04 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00003e08 addiu a0, zero, 2 | a0 = 2;
0x00003e0c bal 0x45d8 | sym_dbg_print ();
0x00003e10 lw gp, 0x18(sp) | gp = *(var_18h_2);
| do {
0x00003e14 lw v0, 0x60(sp) | v0 = *(var_60h);
0x00003e18 lw v1, 0x25c(sp) | v1 = *(var_25ch);
0x00003e1c lw v0, (v0) | v0 = *(v0);
0x00003e20 lw ra, 0x284(sp) | ra = *(var_284h);
| if (v1 != v0) {
0x00003e24 bne v1, v0, 0x4430 | goto label_40;
| }
0x00003e28 lw fp, 0x280(sp) | fp = *(var_280h);
0x00003e2c lw s7, 0x27c(sp) | s7 = *(var_27ch);
0x00003e30 lw s6, 0x278(sp) | s6 = *(var_278h);
0x00003e34 lw s5, 0x274(sp) | s5 = *(var_274h);
0x00003e38 lw s4, 0x270(sp) | s4 = *(var_270h);
0x00003e3c lw s3, 0x26c(sp) | s3 = *(var_26ch);
0x00003e40 lw s2, 0x268(sp) | s2 = *(var_268h);
0x00003e44 lw s1, 0x264(sp) | s1 = *(var_264h);
0x00003e48 lw s0, 0x260(sp) | s0 = *(var_260h);
0x00003e4c addiu sp, sp, 0x288 |
0x00003e50 jr ra | return v1;
| label_37:
0x00003e54 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00003e58 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00003e5c addiu a0, a0, -0x6ce4 | a0 += -0x6ce4;
0x00003e60 bal 0x4510 | sym_dbg_add ();
0x00003e64 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003e68 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00003e6c move a0, zero | a0 = 0;
0x00003e70 bal 0x45d8 | sym_dbg_print ();
0x00003e74 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003e78 addiu v0, zero, 1 | v0 = 1;
0x00003e7c lw a3, 0x48(sp) | a3 = *(var_48h);
0x00003e80 lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00003e84 lw a1, 0x2c(sp) | a1 = *(var_2ch);
0x00003e88 lw a0, 0x40(sp) | a0 = *(var_40h);
0x00003e8c addiu a2, sp, 0xb0 | a2 = sp + 0xb0;
0x00003e90 sw v0, 0x9c(sp) | *(var_9ch_2) = v0;
0x00003e94 addiu t9, t9, 0x2d38 | t9 += fcn.00002d38;
0x00003e98 sw fp, 0x14(sp) | *(var_14h) = fp;
0x00003e9c sw s6, 0x10(sp) | *(var_10h) = s6;
0x00003ea0 bal 0x2d38 | fcn_00002d38 ();
0x00003ea4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003ea8 lw s0, 0x44(sp) | s0 = *(var_44h);
0x00003eac lw t9, -0x7ea0(gp) | t9 = sym.imp.av_loader_delete;
0x00003eb0 lw a0, (s0) | a0 = *(s0);
0x00003eb4 jalr t9 | t9 ();
0x00003eb8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003ebc lw v0, 0xb4(sp) | v0 = *(var_b4h);
0x00003ec0 addiu a3, zero, 0x10 | a3 = 0x10;
0x00003ec4 sw v0, 0x14(sp) | *(var_14h) = v0;
0x00003ec8 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00003ecc lw t9, -0x7eec(gp) | t9 = sym.imp.__snprintf_chk
0x00003ed0 addiu v0, v0, -0x6cc8 | v0 += -0x6cc8;
0x00003ed4 addiu a2, zero, 1 | a2 = 1;
0x00003ed8 addiu a1, zero, 0x10 | a1 = 0x10;
0x00003edc move a0, s5 | a0 = s5;
0x00003ee0 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00003ee4 jalr t9 | t9 ();
0x00003ee8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003eec lw t9, -0x7f7c(gp) | t9 = *(gp);
0x00003ef0 lw a0, 0xdc(sp) | a0 = *(var_dch);
0x00003ef4 bal 0x70b0 | fcn_000070b0 ();
0x00003ef8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003efc lw a0, 0xb0(sp) | a0 = *(var_b0h);
0x00003f00 move a3, v0 | a3 = v0;
0x00003f04 lw t9, -0x7da0(gp) | t9 = sym.imp.av_loader_create;
0x00003f08 addiu a2, zero, 7 | a2 = 7;
0x00003f0c move a1, s5 | a1 = s5;
0x00003f10 jalr t9 | t9 ();
0x00003f14 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003f18 sw v0, (s0) | *(s0) = v0;
| if (v0 == 0) {
0x00003f1c beqz v0, 0x40b0 | goto label_41;
| }
| label_8:
0x00003f20 lw t9, -0x7fac(gp) | t9 = sym.ct_reset;
0x00003f24 lw a0, 0xac(sp) | a0 = *(var_ach_2);
0x00003f28 bal 0x509c | sym_ct_reset ();
0x00003f2c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003f30 lw t9, -0x7f18(gp) | t9 = sym.imp.av_watch_collect;
0x00003f34 jalr t9 | t9 ();
0x00003f38 nop |
0x00003f3c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003f40 lw t9, -0x7f78(gp) | t9 = sym.ct_delete;
0x00003f44 lw a0, 0xac(sp) | a0 = *(var_ach_2);
0x00003f48 bal 0x4ed0 | sym_ct_delete ();
0x00003f4c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003f50 b 0x3e14 |
| } while (1);
| label_26:
0x00003f54 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00003f58 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00003f5c lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00003f60 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00003f64 addiu a3, zero, 0x47f | a3 = 0x47f;
0x00003f68 addiu a2, a2, -0x6a5c | a2 += -0x6a5c;
0x00003f6c addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x00003f70 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00003f74 bal 0x4510 | sym_dbg_add ();
0x00003f78 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003f7c lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00003f80 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00003f84 addiu a0, a0, -0x6c94 | a0 += -0x6c94;
0x00003f88 bal 0x4510 | sym_dbg_add ();
0x00003f8c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003f90 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00003f94 addiu a0, zero, 2 | a0 = 2;
0x00003f98 bal 0x45d8 | sym_dbg_print ();
0x00003f9c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00003fa0 b 0x3874 | goto label_0;
| label_31:
0x00003fa4 lw t9, -0x7ec0(gp) | t9 = sym.imp.strtok_r;
0x00003fa8 lw a2, 0x2c(sp) | a2 = *(var_2ch);
0x00003fac lw a1, 0x4c(sp) | a1 = *(var_4ch);
0x00003fb0 move a0, s2 | a0 = s2;
0x00003fb4 jalr t9 | t9 ();
0x00003fb8 lw a0, 0x9c(sp) | a0 = *(var_9ch_2);
0x00003fbc lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (a0 == 0) {
0x00003fc0 beqz a0, 0x3874 | goto label_0;
| }
0x00003fc4 lw t9, -0x7e0c(gp) | t9 = sym.imp.strtol;
0x00003fc8 addiu a2, zero, 0xa | a2 = 0xa;
0x00003fcc move a1, zero | a1 = 0;
0x00003fd0 jalr t9 | t9 ();
0x00003fd4 move v1, v0 | v1 = v0;
| label_11:
0x00003fd8 addiu v0, zero, 1 | v0 = 1;
| if (s1 != 0) {
0x00003fdc bnez s1, 0x42e0 | goto label_42;
| }
0x00003fe0 lw v0, 0x78(sp) | v0 = *(var_78h);
0x00003fe4 addu v1, v0, v1 | v1 = v0 + v1;
0x00003fe8 addiu v0, zero, 1 | v0 = 1;
0x00003fec sb v0, (v1) | *(v1) = v0;
0x00003ff0 b 0x4174 | goto label_10;
| label_29:
0x00003ff4 lw t9, -0x7ec0(gp) | t9 = sym.imp.strtok_r;
0x00003ff8 addiu v1, v1, 1 | v1++;
0x00003ffc lw a2, 0x2c(sp) | a2 = *(var_2ch);
0x00004000 move a0, zero | a0 = 0;
0x00004004 addiu a1, a1, -0x6c7c | a1 += -0x6c7c;
0x00004008 sw v1, 0x9c(sp) | *(var_9ch_2) = v1;
0x0000400c jalr t9 | t9 ();
0x00004010 move a0, v0 | a0 = v0;
0x00004014 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00004018 beqz v0, 0x3874 | goto label_0;
| }
0x0000401c lw t9, -0x7e0c(gp) | t9 = sym.imp.strtol;
0x00004020 addiu a2, zero, 0xa | a2 = 0xa;
0x00004024 move a1, zero | a1 = 0;
0x00004028 jalr t9 | t9 ();
0x0000402c move s2, v0 | s2 = v0;
0x00004030 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 < 0) {
0x00004034 bltz v0, 0x4240 | goto label_43;
| }
0x00004038 addiu v0, zero, 2 | v0 = 2;
| if (s1 == 0) {
0x0000403c beqz s1, 0x4190 | goto label_44;
| }
0x00004040 addiu v0, zero, 3 | v0 = 3;
| if (s1 == v0) {
0x00004044 beq s1, v0, 0x42ac | goto label_45;
| }
0x00004048 lw s1, -0x7fb0(gp) | s1 = *(gp);
| if (s1 == v0) {
0x0000404c beq s1, v0, 0x443c | goto label_46;
| }
0x00004050 move a1, zero | a1 = 0;
0x00004054 sw s3, 0x88(sp) | *(var_88h) = s3;
0x00004058 lw v0, (s1) | v0 = *(s1);
0x0000405c sw s0, 0x8c(sp) | *(var_8ch) = s0;
0x00004060 move s3, s2 | s3 = s2;
0x00004064 move s0, a1 | s0 = a1;
| if (v0 == 0) {
| do {
| label_7:
0x00004068 beql v0, zero, 0x4170 | goto label_47;
| }
0x0000406c lw s3, 0x88(sp) | s3 = *(var_88h);
0x00004070 lw v1, (v0) | v1 = *(v0);
0x00004074 lw s2, 8(v0) | s2 = *((v0 + 2));
| if (v1 == s3) {
0x00004078 beq v1, s3, 0x4088 | goto label_48;
| }
0x0000407c move s0, v0 | s0 = v0;
0x00004080 move v0, s2 | v0 = s2;
0x00004084 b 0x4068 |
| } while (1);
| label_48:
0x00004088 lw t9, -0x7e10(gp) | t9 = sym.imp.free;
| if (s0 != 0) {
0x0000408c beqz s0, 0x4104 |
0x00004090 lw v0, 8(s0) | v0 = *((s0 + 2));
0x00004094 move a0, v0 | a0 = v0;
0x00004098 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0000409c sw v0, 8(s0) | *((s0 + 2)) = v0;
0x000040a0 jalr t9 | t9 ();
0x000040a4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000040a8 move v0, s2 | v0 = s2;
0x000040ac b 0x4068 | goto label_7;
| label_41:
0x000040b0 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x000040b4 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x000040b8 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000040bc lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000040c0 addiu a3, zero, 0x1e9 | a3 = 0x1e9;
0x000040c4 addiu a2, a2, -0x6a4c | a2 += -0x6a4c;
0x000040c8 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x000040cc addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x000040d0 bal 0x4510 | sym_dbg_add ();
0x000040d4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000040d8 move a1, zero | a1 = 0;
0x000040dc lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000040e0 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000040e4 addiu a0, a0, -0x6cc4 | a0 += -0x6cc4;
0x000040e8 bal 0x4510 | sym_dbg_add ();
0x000040ec lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000040f0 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x000040f4 addiu a0, zero, 1 | a0 = 1;
0x000040f8 bal 0x45d8 | sym_dbg_print ();
0x000040fc lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00004100 b 0x3f20 | goto label_8;
| }
0x00004104 lw a0, (s1) | a0 = *(s1);
| if (a0 != 0) {
0x00004108 beqz a0, 0x411c |
0x0000410c nop |
0x00004110 lw v0, 8(a0) | v0 = *((a0 + 2));
0x00004114 sw v0, (s1) | *(s1) = v0;
0x00004118 lw t9, -0x7e10(gp) | t9 = sym.imp.free;
| }
0x0000411c jalr t9 | t9 ();
0x00004120 nop |
0x00004124 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00004128 move v0, s2 | v0 = s2;
0x0000412c b 0x4068 | goto label_7;
| label_22:
0x00004130 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00004134 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00004138 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000413c lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00004140 addiu a3, zero, 0x19d | a3 = 0x19d;
0x00004144 addiu a2, a2, -0x6a4c | a2 += -0x6a4c;
0x00004148 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x0000414c addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00004150 bal 0x4510 | sym_dbg_add ();
0x00004154 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00004158 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000415c lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00004160 addiu a0, a0, -0x6d68 | a0 += -0x6d68;
0x00004164 bal 0x4510 | sym_dbg_add ();
0x00004168 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000416c b 0x3e04 | goto label_9;
| label_47:
0x00004170 lw s0, 0x8c(sp) | s0 = *(var_8ch);
| label_10:
0x00004174 lw a2, 0x38(sp) | a2 = *(var_38h);
| label_12:
0x00004178 lw a1, 0x34(sp) | a1 = *(var_34h);
0x0000417c lw t9, 0x30(sp) | t9 = *(var_30h);
0x00004180 addiu a0, zero, 1 | a0 = 1;
0x00004184 jalr t9 | t9 ();
0x00004188 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000418c b 0x3874 | goto label_0;
| label_44:
0x00004190 lw t9, -0x7e98(gp) | t9 = sym.imp.malloc;
0x00004194 addiu a0, zero, 0xc | a0 = 0xc;
0x00004198 jalr t9 | t9 ();
0x0000419c lw t9, 0x84(sp) | t9 = *(var_84h);
0x000041a0 move a0, s2 | a0 = s2;
0x000041a4 sw s2, (v0) | *(v0) = s2;
0x000041a8 sw v0, 0x88(sp) | *(var_88h) = v0;
0x000041ac jalr t9 | t9 ();
0x000041b0 lw v1, 0x88(sp) | v1 = *(var_88h);
0x000041b4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000041b8 sw s0, 0x88(sp) | *(var_88h) = s0;
0x000041bc sw v0, 4(v1) | *((v1 + 1)) = v0;
0x000041c0 addiu s1, zero, 3 | s1 = 3;
0x000041c4 addiu a1, zero, -1 | a1 = -1;
0x000041c8 move s0, v1 | s0 = v1;
| do {
0x000041cc lw v0, 4(s0) | v0 = *((s0 + 1));
0x000041d0 addiu s1, s1, -1 | s1 += -1;
| if (v0 != a1) {
0x000041d4 bne v0, a1, 0x4204 | goto label_49;
| }
0x000041d8 lw t9, -0x7ebc(gp) | t9 = sym.imp.sleep;
| if (s1 == 0) {
0x000041dc beqz s1, 0x4204 | goto label_49;
| }
0x000041e0 addiu a0, zero, 1 | a0 = 1;
0x000041e4 jalr t9 | t9 ();
0x000041e8 lw t9, 0x84(sp) | t9 = *(var_84h);
0x000041ec move a0, s2 | a0 = s2;
0x000041f0 jalr t9 | t9 ();
0x000041f4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000041f8 sw v0, 4(s0) | *((s0 + 1)) = v0;
0x000041fc addiu a1, zero, -1 | a1 = -1;
0x00004200 b 0x41cc |
| } while (1);
| label_49:
0x00004204 lw v0, -0x7fb0(gp) | v0 = *(gp);
0x00004208 move v1, s0 | v1 = s0;
0x0000420c lw s0, 0x88(sp) | s0 = *(var_88h);
0x00004210 lw a0, (v0) | a0 = *(v0);
0x00004214 sw v1, (v0) | *(v0) = v1;
0x00004218 sw a0, 8(v1) | *((v1 + 2)) = a0;
0x0000421c b 0x4174 | goto label_10;
| label_33:
0x00004220 lw t9, -0x7e0c(gp) | t9 = sym.imp.strtol;
0x00004224 move a0, s2 | a0 = s2;
0x00004228 addiu a2, zero, 0xa | a2 = 0xa;
0x0000422c move a1, zero | a1 = 0;
0x00004230 jalr t9 | t9 ();
0x00004234 move s2, v0 | s2 = v0;
0x00004238 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 >= 0) {
0x0000423c bgez v0, 0x42ac | goto label_45;
| }
| label_43:
0x00004240 addiu v1, zero, -1 | v1 = -1;
| label_35:
0x00004244 addiu v0, zero, -1 | v0 = -1;
0x00004248 addiu v0, zero, -2 | v0 = -2;
| if (s2 == v0) {
0x0000424c beq s2, v0, 0x4278 | goto label_50;
| }
0x00004250 addiu v0, zero, -3 | v0 = -3;
| if (s2 == v0) {
0x00004254 beq s2, v0, 0x3fd8 | goto label_11;
| }
0x00004258 lw a2, 0x38(sp) | a2 = *(var_38h);
| if (s2 != v0) {
0x0000425c bne s2, v0, 0x4178 | goto label_12;
| }
| label_32:
0x00004260 addiu v0, zero, 1 | v0 = 1;
| if (s1 != 0) {
0x00004264 bnez s1, 0x42f8 | goto label_51;
| }
0x00004268 lw v1, 0x7c(sp) | v1 = *(var_7ch);
0x0000426c addiu v0, zero, 1 | v0 = 1;
0x00004270 sb v0, (v1) | *(v1) = v0;
0x00004274 b 0x4174 | goto label_10;
| label_50:
0x00004278 lw s1, -0x7fb0(gp) | s1 = *(gp);
| label_30:
0x0000427c lw a0, (s1) | a0 = *(s1);
0x00004280 lw a2, 0x38(sp) | a2 = *(var_38h);
| if (a0 == 0) {
0x00004284 beqz a0, 0x4178 | goto label_12;
| }
| do {
0x00004288 lw v0, 8(a0) | v0 = *((a0 + 2));
0x0000428c lw t9, -0x7e10(gp) | t9 = sym.imp.free;
0x00004290 sw v0, (s1) | *(s1) = v0;
0x00004294 jalr t9 | t9 ();
0x00004298 lw a0, (s1) | a0 = *(s1);
0x0000429c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000042a0 bnez a0, 0x4288 |
| } while (a0 != 0);
0x000042a4 lw a2, 0x38(sp) | a2 = *(var_38h);
0x000042a8 b 0x4178 | goto label_12;
| label_45:
0x000042ac lw a2, 0x38(sp) | a2 = *(var_38h);
| if (s2 != 0) {
0x000042b0 bnez s2, 0x4178 | goto label_12;
| }
0x000042b4 lw v1, 0x80(sp) | v1 = *(var_80h);
0x000042b8 addiu v0, zero, 1 | v0 = 1;
0x000042bc sb v0, (v1) | *(v1) = v0;
0x000042c0 sw zero, 4(v1) | *((v1 + 1)) = 0;
0x000042c4 sw zero, 8(v1) | *((v1 + 2)) = 0;
0x000042c8 b 0x4174 | goto label_10;
| label_27:
0x000042cc move s2, zero | s2 = 0;
0x000042d0 b 0x39fc | goto label_13;
| label_34:
0x000042d4 addiu v1, zero, -1 | v1 = -1;
0x000042d8 move s2, zero | s2 = 0;
0x000042dc b 0x3b18 | goto label_14;
| label_42:
0x000042e0 lw a2, 0x38(sp) | a2 = *(var_38h);
| if (s1 != v0) {
0x000042e4 bne s1, v0, 0x4178 | goto label_12;
| }
0x000042e8 lw v0, 0x78(sp) | v0 = *(var_78h);
0x000042ec addu v1, v0, v1 | v1 = v0 + v1;
0x000042f0 sb zero, (v1) | *(v1) = 0;
0x000042f4 b 0x4174 | goto label_10;
| label_51:
0x000042f8 lw a2, 0x38(sp) | a2 = *(var_38h);
| if (s1 != v0) {
0x000042fc bne s1, v0, 0x4178 | goto label_12;
| }
0x00004300 lw v0, 0x7c(sp) | v0 = *(var_7ch);
0x00004304 sb zero, (v0) | *(v0) = 0;
0x00004308 b 0x4174 | goto label_10;
| label_21:
0x0000430c lw v0, -0x7e48(gp) | v0 = *((gp - 8082));
0x00004310 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00004314 lw t9, -0x7da4(gp) | t9 = sym.imp.__fprintf_chk
0x00004318 lw a3, 8(s0) | a3 = *((s0 + 2));
0x0000431c lw a0, (v0) | a0 = *(v0);
0x00004320 addiu a2, a2, -0x6db4 | a2 += -0x6db4;
0x00004324 addiu a1, zero, 1 | a1 = 1;
0x00004328 jalr t9 | t9 ();
0x0000432c lw gp, 0x18(sp) | gp = *(var_18h_2);
| do {
| label_15:
0x00004330 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00004334 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00004338 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000433c lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00004340 addiu a3, zero, 0x188 | a3 = 0x188;
0x00004344 addiu a2, a2, -0x6a4c | a2 += -0x6a4c;
0x00004348 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x0000434c addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00004350 bal 0x4510 | sym_dbg_add ();
0x00004354 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00004358 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000435c lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00004360 addiu a0, a0, -0x6d94 | a0 += -0x6d94;
0x00004364 bal 0x4510 | sym_dbg_add ();
0x00004368 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000436c lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00004370 addiu a0, zero, 2 | a0 = 2;
0x00004374 bal 0x45d8 | sym_dbg_print ();
0x00004378 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000437c lw t9, -0x7f10(gp) | t9 = sym.imp.exit;
0x00004380 addiu a0, zero, 1 | a0 = 1;
0x00004384 jalr t9 | t9 ();
| label_18:
0x00004388 lw v0, -0x7e48(gp) | v0 = *((gp - 8082));
0x0000438c lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00004390 lw t9, -0x7da4(gp) | t9 = sym.imp.__fprintf_chk
0x00004394 lw a0, (v0) | a0 = *(v0);
0x00004398 addiu a3, s2, -0x7104 | a3 = s2 + -0x7104;
0x0000439c addiu a2, a2, -0x6e34 | a2 += -0x6e34;
0x000043a0 addiu a1, zero, 1 | a1 = 1;
0x000043a4 jalr t9 | t9 ();
0x000043a8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000043ac b 0x4330 |
| } while (1);
| label_17:
0x000043b0 lw v0, -0x7e48(gp) | v0 = *((gp - 8082));
0x000043b4 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x000043b8 lw t9, -0x7da4(gp) | t9 = sym.imp.__fprintf_chk
0x000043bc lw a0, (v0) | a0 = *(v0);
0x000043c0 addiu a3, s2, -0x7104 | a3 = s2 + -0x7104;
0x000043c4 addiu a2, a2, -0x6e58 | a2 += -0x6e58;
0x000043c8 addiu a1, zero, 1 | a1 = 1;
0x000043cc jalr t9 | t9 ();
0x000043d0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000043d4 b 0x4330 | goto label_15;
| label_20:
0x000043d8 lw v1, -0x7e48(gp) | v1 = *((gp - 8082));
0x000043dc lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x000043e0 lw v0, 8(s1) | v0 = *((s1 + 2));
0x000043e4 lw t9, -0x7da4(gp) | t9 = sym.imp.__fprintf_chk
0x000043e8 lw a3, (s0) | a3 = *(s0);
0x000043ec lw a0, (v1) | a0 = *(v1);
0x000043f0 addiu a2, a2, -0x6df0 | a2 += -0x6df0;
0x000043f4 sw v0, 0x10(sp) | *(var_10h) = v0;
0x000043f8 addiu a1, zero, 1 | a1 = 1;
0x000043fc jalr t9 | t9 ();
0x00004400 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00004404 b 0x4330 | goto label_15;
| label_19:
0x00004408 lw v0, -0x7e48(gp) | v0 = *((gp - 8082));
0x0000440c lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00004410 lw t9, -0x7da4(gp) | t9 = sym.imp.__fprintf_chk
0x00004414 lw a3, 8(s1) | a3 = *((s1 + 2));
0x00004418 lw a0, (v0) | a0 = *(v0);
0x0000441c addiu a2, a2, -0x6e10 | a2 += -0x6e10;
0x00004420 addiu a1, zero, 1 | a1 = 1;
0x00004424 jalr t9 | t9 ();
0x00004428 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000442c b 0x4330 | goto label_15;
| label_40:
0x00004430 lw t9, -0x7ea4(gp) | t9 = sym.imp.__stack_chk_fail;
0x00004434 jalr t9 | t9 ();
0x00004438 nop |
| label_46:
0x0000443c addiu v1, zero, -1 | v1 = -1;
0x00004440 b 0x3b18 | goto label_14;
| label_38:
0x00004444 sw zero, 0x24(sp) | *(var_24h) = 0;
0x00004448 b 0x3c08 | goto label_6;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/tampering @ 0x1db0 */
| #include <stdint.h>
|
; (fcn) main () | int32_t main () {
| /* [13] -r-x section size 27424 named .text */
0x00001db0 lui gp, 2 |
0x00001db4 addiu gp, gp, 0x2b0 |
0x00001db8 addu gp, gp, t9 | gp += t9;
0x00001dbc addiu sp, sp, -0x100 |
0x00001dc0 sw s3, 0xe8(sp) | *(var_e8h) = s3;
0x00001dc4 lw s3, -0x7e5c(gp) | s3 = *((gp - 8087));
0x00001dc8 sw s0, 0xdc(sp) | *(var_dch) = s0;
0x00001dcc lw s0, -0x7f74(gp) | s0 = *(gp);
0x00001dd0 lw v0, (s3) | v0 = *(s3);
0x00001dd4 sw gp, 0x18(sp) | *(var_18h) = gp;
0x00001dd8 sw v0, 0xd4(sp) | *(var_d4h) = v0;
0x00001ddc lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00001de0 sw s6, 0xf4(sp) | *(var_f4h) = s6;
0x00001de4 addiu v0, v0, -0x6c44 | v0 += -0x6c44;
0x00001de8 sw s5, 0xf0(sp) | *(var_f0h) = s5;
0x00001dec sw s4, 0xec(sp) | *(var_ech) = s4;
0x00001df0 sw s2, 0xe4(sp) | *(var_e4h) = s2;
0x00001df4 sw s1, 0xe0(sp) | *(var_e0h) = s1;
0x00001df8 sw ra, 0xfc(sp) | *(var_fch) = ra;
0x00001dfc sw s7, 0xf8(sp) | *(var_f8h) = s7;
0x00001e00 lw s2, -0x7fcc(gp) | s2 = *((gp - 8179));
0x00001e04 sw v0, (s0) | *(s0) = v0;
0x00001e08 lw s1, -0x7fcc(gp) | s1 = *((gp - 8179));
0x00001e0c addiu v0, zero, -1 | v0 = -1;
0x00001e10 sw v0, 4(s0) | *((s0 + 1)) = v0;
0x00001e14 lw s6, -0x7ef4(gp) | s6 = *((gp - 8125));
0x00001e18 addiu v0, zero, 1 | v0 = 1;
0x00001e1c move s5, a0 | s5 = a0;
0x00001e20 move s4, a1 | s4 = a1;
0x00001e24 sh v0, 8(s0) | *((s0 + 4)) = v0;
0x00001e28 sb zero, 0xa(s0) | *((s0 + 10)) = 0;
0x00001e2c addiu s2, s2, -0x6c30 | s2 += -0x6c30;
0x00001e30 addiu s1, s1, -0x6b60 | s1 += -0x6b60;
0x00001e34 addiu s7, zero, -1 | s7 = -1;
| do {
0x00001e38 lw t9, -0x7e40(gp) | t9 = sym.imp.getopt;
0x00001e3c move a2, s2 | a2 = s2;
0x00001e40 move a1, s4 | a1 = s4;
0x00001e44 move a0, s5 | a0 = s5;
0x00001e48 jalr t9 | t9 ();
0x00001e4c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == s7) {
0x00001e50 beq v0, s7, 0x1ed0 | goto label_5;
| }
0x00001e54 addiu v0, v0, -0x3f | v0 += -0x3f;
0x00001e58 sltiu v1, v0, 0x38 | v1 = (v0 < 0x38) ? 1 : 0;
0x00001e5c sll v0, v0, 2 | v0 <<= 2;
0x00001e60 beqz v1, 0x1e38 |
| } while (v1 == 0);
0x00001e64 lwx v0, v0(s1) | __asm ("lwx v0, v0(s1)");
0x00001e68 addu v0, v0, gp | v0 += gp;
0x00001e6c jr v0 | v0 ();
0x00001e70 nop |
| label_5:
0x00001ed0 lw t9, -0x7f70(gp) | t9 = sym.dbg_set_level;
0x00001ed4 lw a0, 4(s0) | a0 = *((s0 + 1));
0x00001ed8 bal 0x44b4 | sym_dbg_set_level ();
0x00001edc lbu v0, 0xa(s0) | v0 = *((s0 + 10));
0x00001ee0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00001ee4 beqz v0, 0x2184 | goto label_6;
| }
| label_0:
0x00001ee8 lbu v0, 8(s0) | v0 = *((s0 + 8));
0x00001eec lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
| if (v0 != 0) {
0x00001ef0 bnez v0, 0x219c | goto label_7;
| }
| label_1:
0x00001ef4 lw t9, -0x7d88(gp) | t9 = sym.imp.sigemptyset;
0x00001ef8 addiu a0, sp, 0x3c | a0 = sp + 0x3c;
0x00001efc sw zero, 0x34(sp) | *(var_34h) = 0;
0x00001f00 jalr t9 | t9 ();
0x00001f04 addiu s2, sp, 0x34 | s2 = sp + 0x34;
0x00001f08 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x00001f0c bltz v0, 0x211c | goto label_8;
| }
0x00001f10 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00001f14 lw t9, -0x7e24(gp) | t9 = sym.imp.sigaction;
0x00001f18 addiu v0, v0, 0x2c70 | v0 += 0x2c70;
0x00001f1c move a2, zero | a2 = 0;
0x00001f20 move a1, s2 | a1 = s2;
0x00001f24 addiu a0, zero, 1 | a0 = 1;
0x00001f28 sw v0, 0x38(sp) | *(var_38h) = v0;
0x00001f2c jalr t9 | t9 ();
0x00001f30 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x00001f34 bltz v0, 0x21fc | goto label_9;
| }
0x00001f38 lw t9, -0x7ed4(gp) | t9 = sym.imp.config_open;
0x00001f3c lw a0, (s0) | a0 = *(s0);
0x00001f40 jalr t9 | t9 ();
0x00001f44 move s1, v0 | s1 = v0;
0x00001f48 addiu v0, zero, 1 | v0 = 1;
0x00001f4c lw gp, 0x18(sp) | gp = *(var_18h);
0x00001f50 sw v0, 0x20(sp) | *(var_20h) = v0;
| if (s1 == 0) {
0x00001f54 beqz s1, 0x22fc | goto label_10;
| }
0x00001f58 lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00001f5c addiu v0, sp, 0x24 | v0 = sp + 0x24;
0x00001f60 addiu a3, sp, 0x30 | a3 = sp + 0x30;
0x00001f64 addiu a2, sp, 0x2c | a2 = sp + 0x2c;
0x00001f68 addiu a1, sp, 0x20 | a1 = sp + 0x20;
0x00001f6c sw v0, 0x10(sp) | *(var_10h) = v0;
0x00001f70 move a0, s1 | a0 = s1;
0x00001f74 addiu t9, t9, 0x2d38 | t9 += fcn.00002d38;
0x00001f78 sw s2, 0x14(sp) | *(var_14h) = s2;
0x00001f7c bal 0x2d38 | fcn_00002d38 ();
0x00001f80 lw gp, 0x18(sp) | gp = *(var_18h);
0x00001f84 move a0, zero | a0 = 0;
0x00001f88 lw t9, -0x7dd8(gp) | t9 = sym.imp.av_initialize;
0x00001f8c addiu s2, sp, 0xc4 | s2 = sp + 0xc4;
0x00001f90 jalr t9 | t9 ();
0x00001f94 lw gp, 0x18(sp) | gp = *(var_18h);
0x00001f98 lw t9, -0x7e34(gp) | t9 = sym.imp.av_loader_init;
0x00001f9c jalr t9 | t9 ();
0x00001fa0 nop |
0x00001fa4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00001fa8 lw v0, 0x30(sp) | v0 = *(var_30h);
0x00001fac addiu a3, zero, 0x10 | a3 = 0x10;
0x00001fb0 sw v0, 0x14(sp) | *(var_14h) = v0;
0x00001fb4 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00001fb8 lw t9, -0x7eec(gp) | t9 = sym.imp.__snprintf_chk
0x00001fbc addiu v0, v0, -0x6ba0 | v0 += -fcn.00006ba0;
0x00001fc0 addiu a2, zero, 1 | a2 = 1;
0x00001fc4 addiu a1, zero, 0x10 | a1 = 0x10;
0x00001fc8 move a0, s2 | a0 = s2;
0x00001fcc sw v0, 0x10(sp) | *(var_10h) = v0;
0x00001fd0 jalr t9 | t9 ();
0x00001fd4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00001fd8 lw s4, 0x34(sp) | s4 = *(var_34h);
0x00001fdc lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00001fe0 lw t9, -0x7f6c(gp) | t9 = *(gp);
0x00001fe4 move a0, s4 | a0 = s4;
0x00001fe8 lw a1, -0x6864(v0) | a1 = *((v0 - 6681));
0x00001fec bal 0x6870 | fcn_00006870 ();
0x00001ff0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00001ff4 move a0, s4 | a0 = s4;
0x00001ff8 move a1, zero | a1 = 0;
0x00001ffc lw t9, -0x7f68(gp) | t9 = *(gp);
0x00002000 move s5, v0 | s5 = v0;
0x00002004 bal 0x6620 | fcn_00006620 ();
0x00002008 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000200c lw s4, 0x2c(sp) | s4 = *(var_2ch);
| if (v0 <= 0) {
0x00002010 blez v0, 0x2178 | goto label_11;
| }
0x00002014 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x00002018 lw a1, -0x686c(v0) | a1 = *((v0 - 6683));
| do {
0x0000201c lw t9, -0x7f64(gp) | t9 = *(gp);
0x00002020 move a0, s5 | a0 = s5;
0x00002024 bal 0x5d20 | fcn_00005d20 ();
0x00002028 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000202c lw t9, -0x7f7c(gp) | t9 = *(gp);
0x00002030 move a0, v0 | a0 = v0;
0x00002034 bal 0x70b0 | fcn_000070b0 ();
0x00002038 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000203c move a3, v0 | a3 = v0;
0x00002040 addiu a2, zero, 7 | a2 = 7;
0x00002044 lw t9, -0x7da0(gp) | t9 = sym.imp.av_loader_create;
0x00002048 move a1, s2 | a1 = s2;
0x0000204c move a0, s4 | a0 = s4;
0x00002050 jalr t9 | t9 ();
0x00002054 sw v0, 0x28(sp) | *(var_28h) = v0;
0x00002058 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000205c beqz v0, 0x2294 | goto label_12;
| }
0x00002060 lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00002064 addiu a1, sp, 0x28 | a1 = sp + 0x28;
0x00002068 addiu t9, t9, 0x35d0 | t9 += fcn.000035d0;
0x0000206c move a0, s1 | a0 = s1;
0x00002070 bal 0x35d0 | fcn_000035d0 ();
0x00002074 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002078 lw t9, -0x7f60(gp) | t9 = sym.tamp_event_cleanup;
0x0000207c bal 0x2b00 | sym_tamp_event_cleanup ();
0x00002080 nop |
0x00002084 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002088 lw t9, -0x7e64(gp) | t9 = sym.imp.mainloop_stop;
0x0000208c jalr t9 | t9 ();
0x00002090 nop |
0x00002094 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002098 lw t9, -0x7ea0(gp) | t9 = sym.imp.av_loader_delete;
0x0000209c lw a0, 0x28(sp) | a0 = *(var_28h);
0x000020a0 jalr t9 | t9 ();
0x000020a4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000020a8 lw t9, -0x7ef8(gp) | t9 = sym.imp.av_loader_terminate;
0x000020ac jalr t9 | t9 ();
0x000020b0 nop |
0x000020b4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000020b8 lw t9, -0x7e94(gp) | t9 = sym.imp.av_terminate;
0x000020bc jalr t9 | t9 ();
0x000020c0 nop |
0x000020c4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000020c8 lw t9, -0x7dc4(gp) | t9 = sym.imp.config_close;
0x000020cc move a0, s1 | a0 = s1;
0x000020d0 jalr t9 | t9 ();
0x000020d4 lbu v0, 8(s0) | v0 = *((s0 + 8));
0x000020d8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000020dc bnez v0, 0x2234 | goto label_13;
| }
| label_3:
0x000020e0 lw a0, 0xd4(sp) | a0 = *(var_d4h);
0x000020e4 lw v1, (s3) | v1 = *(s3);
0x000020e8 move v0, zero | v0 = 0;
| if (a0 != v1) {
0x000020ec bne a0, v1, 0x22f0 | goto label_14;
| }
0x000020f0 lw ra, 0xfc(sp) | ra = *(var_fch);
0x000020f4 lw s7, 0xf8(sp) | s7 = *(var_f8h);
0x000020f8 lw s6, 0xf4(sp) | s6 = *(var_f4h);
0x000020fc lw s5, 0xf0(sp) | s5 = *(var_f0h);
0x00002100 lw s4, 0xec(sp) | s4 = *(var_ech);
0x00002104 lw s3, 0xe8(sp) | s3 = *(var_e8h);
0x00002108 lw s2, 0xe4(sp) | s2 = *(var_e4h);
0x0000210c lw s1, 0xe0(sp) | s1 = *(var_e0h);
0x00002110 lw s0, 0xdc(sp) | s0 = *(var_dch);
0x00002114 addiu sp, sp, 0x100 |
0x00002118 jr ra | return v0;
| label_8:
0x0000211c lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002120 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002124 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002128 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x0000212c addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00002130 addiu a3, zero, 0x2df | a3 = 0x2df;
0x00002134 addiu a2, a2, -0x6a24 | a2 += -0x6a24;
0x00002138 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x0000213c bal 0x4510 | sym_dbg_add ();
0x00002140 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002144 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002148 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x0000214c addiu a0, a0, -0x6bf0 | a0 += -0x6bf0;
| label_2:
0x00002150 bal 0x4510 | sym_dbg_add ();
0x00002154 nop |
0x00002158 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000215c lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00002160 addiu a0, zero, 2 | a0 = 2;
0x00002164 bal 0x45d8 | sym_dbg_print ();
0x00002168 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000216c lw t9, -0x7f10(gp) | t9 = sym.imp.exit;
0x00002170 move a0, zero | a0 = 0;
0x00002174 jalr t9 | t9 ();
| label_11:
0x00002178 lw v0, -0x7fcc(gp) | v0 = *((gp - 8179));
0x0000217c lw a1, -0x6868(v0) | a1 = *((v0 - 6682));
0x00002180 b 0x201c |
| } while (1);
| label_6:
0x00002184 lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00002188 addiu t9, t9, 0x2c94 | t9 += fcn.00002c94;
0x0000218c bal 0x2c94 | fcn_00002c94 ();
0x00002190 nop |
0x00002194 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002198 b 0x1ee8 | goto label_0;
| label_7:
0x0000219c addiu t9, t9, 0x2c94 | t9 += fcn.00002c94;
0x000021a0 lbu s1, 9(s0) | s1 = *((s0 + 9));
0x000021a4 bal 0x2c94 | fcn_00002c94 ();
0x000021a8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000021ac move a1, s1 | a1 = s1;
0x000021b0 lw t9, -0x7d94(gp) | t9 = sym.imp.daemon;
0x000021b4 move a0, zero | a0 = 0;
0x000021b8 jalr t9 | t9 ();
0x000021bc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x000021c0 bltz v0, 0x2348 | goto label_15;
| }
0x000021c4 lbu v0, 8(s0) | v0 = *((s0 + 8));
0x000021c8 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
| if (v0 == 0) {
0x000021cc beqz v0, 0x1ef4 | goto label_1;
| }
0x000021d0 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000021d4 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000021d8 addiu a1, a1, -0x6c10 | a1 += -0x6c10;
0x000021dc addiu a0, a0, -0x6bfc | a0 += -0x6bfc;
0x000021e0 bal 0x4510 | sym_dbg_add ();
0x000021e4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000021e8 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x000021ec move a0, zero | a0 = 0;
0x000021f0 bal 0x45d8 | sym_dbg_print ();
0x000021f4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000021f8 b 0x1ef4 | goto label_1;
| label_9:
0x000021fc lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002200 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002204 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002208 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x0000220c addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00002210 addiu a3, zero, 0x2e4 | a3 = 0x2e4;
0x00002214 addiu a2, a2, -0x6a24 | a2 += -0x6a24;
0x00002218 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x0000221c bal 0x4510 | sym_dbg_add ();
0x00002220 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002224 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002228 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x0000222c addiu a0, a0, -0x6bd8 | a0 += -0x6bd8;
0x00002230 b 0x2150 | goto label_2;
| label_13:
0x00002234 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002238 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000223c lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00002240 addiu a1, a1, -0x6c10 | a1 += -0x6c10;
0x00002244 addiu a0, a0, -0x6b78 | a0 += -0x6b78;
0x00002248 bal 0x4510 | sym_dbg_add ();
0x0000224c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002250 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00002254 move a0, zero | a0 = 0;
0x00002258 bal 0x45d8 | sym_dbg_print ();
0x0000225c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002260 b 0x20e0 | goto label_3;
| label_12:
0x00002294 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002298 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x0000229c lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000022a0 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000022a4 addiu a3, zero, 0x25b | a3 = 0x25b;
0x000022a8 addiu a2, a2, -0x6a2c | a2 += -0x6a2c;
0x000022ac addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x000022b0 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x000022b4 bal 0x4510 | sym_dbg_add ();
0x000022b8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000022bc lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x000022c0 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x000022c4 addiu a0, a0, -0x6b9c | a0 += -0x6b9c;
0x000022c8 bal 0x4510 | sym_dbg_add ();
0x000022cc lw gp, 0x18(sp) | gp = *(var_18h);
0x000022d0 addiu a0, zero, 2 | a0 = 2;
0x000022d4 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
| do {
| label_4:
0x000022d8 bal 0x45d8 | sym_dbg_print ();
0x000022dc nop |
0x000022e0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000022e4 lw t9, -0x7f10(gp) | t9 = sym.imp.exit;
0x000022e8 addiu a0, zero, 1 | a0 = 1;
0x000022ec jalr t9 | t9 ();
| label_14:
0x000022f0 lw t9, -0x7ea4(gp) | t9 = sym.imp.__stack_chk_fail;
0x000022f4 jalr t9 | t9 ();
0x000022f8 nop |
| label_10:
0x000022fc lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x00002300 lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002304 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002308 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x0000230c addiu a3, zero, 0x246 | a3 = 0x246;
0x00002310 addiu a2, a2, -0x6a2c | a2 += -0x6a2c;
0x00002314 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x00002318 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x0000231c bal 0x4510 | sym_dbg_add ();
0x00002320 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002324 lw a1, (s0) | a1 = *(s0);
0x00002328 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x0000232c lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00002330 addiu a0, a0, -0x6bc0 | a0 += -0x6bc0;
0x00002334 bal 0x4510 | sym_dbg_add ();
0x00002338 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000233c addiu a0, zero, 1 | a0 = 1;
0x00002340 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x00002344 b 0x22d8 |
| } while (1);
| label_15:
0x00002348 lw a2, -0x7fcc(gp) | a2 = *((gp - 8179));
0x0000234c lw a1, -0x7fcc(gp) | a1 = *((gp - 8179));
0x00002350 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002354 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00002358 addiu a3, zero, 0x2d1 | a3 = 0x2d1;
0x0000235c addiu a2, a2, -0x6a14 | a2 += -0x6a14;
0x00002360 addiu a1, a1, -0x6ff4 | a1 += -0x6ff4;
0x00002364 addiu a0, a0, -0x6fe8 | a0 += -0x6fe8;
0x00002368 bal 0x4510 | sym_dbg_add ();
0x0000236c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002370 lw a0, -0x7fcc(gp) | a0 = *((gp - 8179));
0x00002374 lw t9, -0x7fc8(gp) | t9 = sym.dbg_add;
0x00002378 addiu a0, a0, -0x6c24 | a0 += -0x6c24;
0x0000237c bal 0x4510 | sym_dbg_add ();
0x00002380 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002384 addiu a0, zero, 2 | a0 = 2;
0x00002388 lw t9, -0x7fc4(gp) | t9 = sym.dbg_print;
0x0000238c b 0x22d8 | goto label_4;
| }
[*] Function printf used 11 times tampering