[*] Binary protection state of tampering
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function system tear down of tampering
; 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;
| }
[*] Function system used 3 times tampering