[*] Binary protection state of respawnd

  
  	Full RELRO     Canary found      NX disabled  PIE enabled  No RPATH     No RUNPATH   No Symbols


[*] Function printf tear down of respawnd

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/respawnd @ 0x1e3c */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.respawnd_main ()         | void respawnd_main () {
    0x00001e3c lui gp, 2                 |     
    0x00001e40 addiu gp, gp, -0x5e2c     |     
    0x00001e44 addu gp, gp, t9           |     gp += t9;
    0x00001e48 addiu sp, sp, -0x470      |     
    0x00001e4c lw t9, -0x7f5c(gp)        |     t9 = sym.imp.sigemptyset;
    0x00001e50 sw s2, 0x450(sp)          |     *(var_450h) = s2;
    0x00001e54 lw s2, -0x7ed8(gp)        |     s2 = *((gp - 8118));
    0x00001e58 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00001e5c sw ra, 0x46c(sp)          |     *(var_46ch) = ra;
    0x00001e60 lw v0, (s2)               |     v0 = *(s2);
    0x00001e64 sw a0, 0x470(sp)          |     *(arg_470h) = a0;
    0x00001e68 sw fp, 0x468(sp)          |     *(var_468h) = fp;
    0x00001e6c addiu a0, sp, 0x188       |     a0 = sp + 0x188;
    0x00001e70 sw s7, 0x464(sp)          |     *(var_464h) = s7;
    0x00001e74 sw s6, 0x460(sp)          |     *(var_460h) = s6;
    0x00001e78 sw s5, 0x45c(sp)          |     *(var_45ch) = s5;
    0x00001e7c sw s4, 0x458(sp)          |     *(var_458h) = s4;
    0x00001e80 sw s3, 0x454(sp)          |     *(var_454h) = s3;
    0x00001e84 sw s1, 0x44c(sp)          |     *(var_44ch) = s1;
    0x00001e88 sw s0, 0x448(sp)          |     *(var_448h) = s0;
    0x00001e8c sw v0, 0x444(sp)          |     *(var_444h) = v0;
    0x00001e90 jalr t9                   |     t9 ();
    0x00001e94 nop                       |     
    0x00001e98 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001e9c addiu v0, sp, 0x180       |     v0 = sp + aav.0x00000180;
    0x00001ea0 sw v0, 0x54(sp)           |     *(var_54h) = v0;
    0x00001ea4 move a1, v0               |     a1 = v0;
    0x00001ea8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001eac lw t9, -0x7f78(gp)        |     t9 = sym.imp.sigaction;
    0x00001eb0 addiu v0, v0, 0x1ab0      |     v0 += 0x1ab0;
    0x00001eb4 move a2, zero             |     a2 = 0;
    0x00001eb8 addiu a0, zero, 0x12      |     a0 = 0x12;
    0x00001ebc sw v0, 0x184(sp)          |     *(var_184h) = v0;
    0x00001ec0 sw zero, 0x180(sp)        |     *(var_180h) = 0;
    0x00001ec4 jalr t9                   |     t9 ();
    0x00001ec8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x00001ecc bltz v0, 0x2350           |         goto label_31;
                                         |     }
                                         | label_3:
    0x00001ed0 lw v1, 0x470(sp)          |     v1 = *(arg_470h);
    0x00001ed4 addiu v0, zero, 1         |     v0 = 1;
    0x00001ed8 lw t9, -0x7f80(gp)        |     t9 = sym.imp.umask;
                                         |     if (v1 != v0) {
    0x00001edc beq v1, v0, 0x1f44        |         
    0x00001ee0 lw v0, -0x7ec8(gp)        |         v0 = *((gp - 8114));
    0x00001ee4 lw a0, -0x7fdc(gp)        |         a0 = *((gp - 8183));
    0x00001ee8 lw t9, -0x7efc(gp)        |         t9 = sym.imp.fwrite;
    0x00001eec lw a3, (v0)               |         a3 = *(v0);
    0x00001ef0 addiu a2, zero, 0x10      |         a2 = 0x10;
    0x00001ef4 addiu a1, zero, 1         |         a1 = 1;
    0x00001ef8 addiu a0, a0, 0x34d4      |         a0 += str.Usage:_respawnd_n;
    0x00001efc jalr t9                   |         t9 ();
    0x00001f00 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         | label_5:
    0x00001f04 lw a0, 0x444(sp)          |         a0 = *(var_444h);
    0x00001f08 lw v1, (s2)               |         v1 = *(s2);
    0x00001f0c addiu v0, zero, 1         |         v0 = 1;
                                         |         if (a0 != v1) {
    0x00001f10 bne a0, v1, 0x2cb8        |             goto label_32;
                                         |         }
    0x00001f14 lw ra, 0x46c(sp)          |         ra = *(var_46ch);
    0x00001f18 lw fp, 0x468(sp)          |         fp = *(var_468h);
    0x00001f1c lw s7, 0x464(sp)          |         s7 = *(var_464h);
    0x00001f20 lw s6, 0x460(sp)          |         s6 = *(var_460h);
    0x00001f24 lw s5, 0x45c(sp)          |         s5 = *(var_45ch);
    0x00001f28 lw s4, 0x458(sp)          |         s4 = *(var_458h);
    0x00001f2c lw s3, 0x454(sp)          |         s3 = *(var_454h);
    0x00001f30 lw s2, 0x450(sp)          |         s2 = *(var_450h);
    0x00001f34 lw s1, 0x44c(sp)          |         s1 = *(var_44ch);
    0x00001f38 lw s0, 0x448(sp)          |         s0 = *(var_448h);
    0x00001f3c addiu sp, sp, 0x470       |         
    0x00001f40 jr ra                     |         return v0;
                                         |     }
    0x00001f44 addiu a0, zero, 0x3f      |     a0 = 0x3f;
    0x00001f48 jalr t9                   |     t9 ();
    0x00001f4c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001f50 addiu a2, zero, 0x18      |     a2 = 0x18;
    0x00001f54 addiu a1, zero, 0x21      |     a1 = 0x21;
    0x00001f58 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
    0x00001f5c lw t9, -0x7f6c(gp)        |     t9 = sym.imp.openlog;
    0x00001f60 addiu a0, a0, 0x34e8      |     a0 += str.respawnd;
    0x00001f64 lw s1, -0x7fdc(gp)        |     s1 = *((gp - 8183));
    0x00001f68 move s3, v0               |     s3 = v0;
    0x00001f6c jalr t9                   |     t9 ();
    0x00001f70 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001f74 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.strdup;
    0x00001f78 addiu a0, s1, 0x3238      |     a0 = s1 + str._var_run_respawnd_control;
    0x00001f7c jalr t9                   |     t9 ();
    0x00001f80 move s0, v0               |     s0 = v0;
    0x00001f84 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00001f88 beqz v0, 0x2c98           |         goto label_33;
                                         |     }
    0x00001f8c lw t9, -0x7f64(gp)        |     t9 = sym.imp.strrchr;
    0x00001f90 addiu a1, zero, 0x2f      |     a1 = 0x2f;
    0x00001f94 move a0, v0               |     a0 = v0;
    0x00001f98 jalr t9                   |     t9 ();
    0x00001f9c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00001fa0 beqz v0, 0x1fc0           |         
    0x00001fa4 lw t9, -0x7f48(gp)        |         t9 = sym.imp.mkdir;
    0x00001fa8 sb zero, (v0)             |         *(v0) = 0;
    0x00001fac addiu a1, zero, 0x1c0     |         a1 = segment.REGINFO;
    0x00001fb0 move a0, s0               |         a0 = s0;
    0x00001fb4 jalr t9                   |         t9 ();
    0x00001fb8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x00001fbc bltz v0, 0x2378           |             goto label_34;
                                         |         }
                                         |     }
                                         | label_4:
    0x00001fc0 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
    0x00001fc4 move a0, s0               |     a0 = s0;
    0x00001fc8 jalr t9                   |     t9 ();
    0x00001fcc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001fd0 addiu a2, zero, 0x52      |     a2 = 0x52;
    0x00001fd4 move a1, zero             |     a1 = 0;
    0x00001fd8 lw t9, -0x7f44(gp)        |     t9 = sym.imp.memset;
    0x00001fdc addiu a0, sp, 0xac        |     a0 = sp + 0xac;
    0x00001fe0 jalr t9                   |     t9 ();
    0x00001fe4 addiu a0, s1, 0x3238      |     a0 = s1 + str._var_run_respawnd_control;
    0x00001fe8 lw a1, 0x3238(s1)         |     a1 = *(s1);
    0x00001fec addiu v0, zero, 1         |     v0 = 1;
    0x00001ff0 sh v0, 0x90(sp)           |     *(var_90h) = v0;
    0x00001ff4 addiu v0, sp, 0x92        |     v0 = sp + 0x92;
    0x00001ff8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001ffc lw v1, 4(a0)              |     v1 = *((a0 + 1));
    0x00002000 swl a1, 3(v0)             |     __asm ("swl a1, 3(v0)");
    0x00002004 swr a1, (v0)              |     __asm ("swr a1, (v0)");
    0x00002008 swl v1, 7(v0)             |     __asm ("swl v1, 7(v0)");
    0x0000200c lw a1, 8(a0)              |     a1 = *((a0 + 2));
    0x00002010 swr v1, 4(v0)             |     __asm ("swr v1, 4(v0)");
    0x00002014 swl a1, 0xb(v0)           |     __asm ("swl a1, 0xb(v0)");
    0x00002018 lw v1, 0xc(a0)            |     v1 = *((a0 + 3));
    0x0000201c swr a1, 8(v0)             |     __asm ("swr a1, 8(v0)");
    0x00002020 swl v1, 0xf(v0)           |     __asm ("swl v1, 0xf(v0)");
    0x00002024 lw a1, 0x10(a0)           |     a1 = *((arg_4h + 0.25));
    0x00002028 swr v1, 0xc(v0)           |     __asm ("swr v1, 0xc(v0)");
    0x0000202c swl a1, 0x13(v0)          |     __asm ("swl a1, 0x13(v0)");
    0x00002030 lw v1, 0x14(a0)           |     v1 = *((a0 + 5));
    0x00002034 swr a1, 0x10(v0)          |     __asm ("swr a1, 0x10(v0)");
    0x00002038 lhu a1, 0x18(a0)          |     a1 = *((a0 + 12));
    0x0000203c swl v1, 0x17(v0)          |     __asm ("swl v1, 0x17(v0)");
    0x00002040 lw t9, -0x7ef4(gp)        |     t9 = sym.imp.unlink;
    0x00002044 swr v1, 0x14(v0)          |     __asm ("swr v1, 0x14(v0)");
    0x00002048 sh a1, 0x18(v0)           |     *((v0 + 12)) = a1;
    0x0000204c jalr t9                   |     t9 ();
    0x00002050 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002054 move a2, zero             |     a2 = 0;
    0x00002058 addiu a1, zero, 1         |     a1 = 1;
    0x0000205c lw t9, -0x7f70(gp)        |     t9 = sym.imp.socket;
    0x00002060 addiu a0, zero, 1         |     a0 = 1;
    0x00002064 jalr t9                   |     t9 ();
    0x00002068 sw v0, 0x20(sp)           |     *(var_20h) = v0;
    0x0000206c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x00002070 bltz v0, 0x2524           |         goto label_35;
                                         |     }
    0x00002074 lw t9, -0x7f40(gp)        |     t9 = sym.imp.bind;
    0x00002078 lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x0000207c addiu a2, zero, 0x6e      |     a2 = 0x6e;
    0x00002080 addiu a1, sp, 0x90        |     a1 = sp + 0x90;
    0x00002084 jalr t9                   |     t9 ();
    0x00002088 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x0000208c bltz v0, 0x2514           |         goto label_36;
                                         |     }
    0x00002090 lw t9, -0x7f80(gp)        |     t9 = sym.imp.umask;
    0x00002094 move a0, s3               |     a0 = s3;
    0x00002098 jalr t9                   |     t9 ();
    0x0000209c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000020a0 move a1, zero             |     a1 = 0;
    0x000020a4 lw t9, -0x7f04(gp)        |     t9 = sym.imp.daemon;
    0x000020a8 move a0, zero             |     a0 = 0;
    0x000020ac jalr t9                   |     t9 ();
    0x000020b0 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x000020b4 bltz v0, 0x24dc           |         goto label_37;
                                         |     }
    0x000020b8 lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x000020bc addiu v0, zero, 1         |     v0 = 1;
    0x000020c0 sllv v0, v0, a0           |     v0 <<= a0;
    0x000020c4 sw v0, 0x34(sp)           |     *(var_34h) = v0;
    0x000020c8 addiu v0, a0, 1           |     v0 = a0 + 1;
    0x000020cc sw v0, 0x4c(sp)           |     *(var_4ch) = v0;
    0x000020d0 addiu v0, sp, 0x88        |     v0 = sp + 0x88;
    0x000020d4 sw v0, 0x5c(sp)           |     *(var_5ch) = v0;
    0x000020d8 lw v0, -0x7fc4(gp)        |     v0 = *((gp - 8177));
    0x000020dc lw v1, -0x7fc4(gp)        |     v1 = *((gp - 8177));
    0x000020e0 sw v0, 0x30(sp)           |     *(var_30h) = v0;
    0x000020e4 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000020e8 addiu s7, sp, 0x100       |     s7 = sp + aav.0x00000100;
    0x000020ec sw v0, 0x58(sp)           |     *(var_58h) = v0;
    0x000020f0 addiu v0, v1, 0x4180      |     v0 = v1 + 0x4180;
    0x000020f4 sw v0, 0x60(sp)           |     *(var_60h) = v0;
    0x000020f8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000020fc sw v1, 0x24(sp)           |     *(var_24h) = v1;
    0x00002100 sw v0, 0x64(sp)           |     *(var_64h) = v0;
    0x00002104 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002108 sw s7, 0x48(sp)           |     *(var_48h) = s7;
    0x0000210c sw v0, 0x40(sp)           |     *(var_40h) = v0;
    0x00002110 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002114 addiu v0, v0, 0x3718      |     v0 += str.waitpid;
    0x00002118 sw v0, 0x44(sp)           |     *(var_44h) = v0;
    0x0000211c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002120 addiu v0, v0, 0x35fc      |     v0 += str.read__proc__pid__cmdline;
    0x00002124 sw v0, 0x74(sp)           |     *(var_74h) = v0;
                                         | label_6:
    0x00002128 addiu v0, zero, 6         |     v0 = 6;
                                         | label_0:
    0x0000212c sw v0, 0x88(sp)           |     *(var_88h) = v0;
    0x00002130 lw v1, 0x54(sp)           |     v1 = *(var_54h);
    0x00002134 lw v0, 0x48(sp)           |     v0 = *(var_48h);
    0x00002138 sw zero, 0x8c(sp)         |     *(var_8ch) = 0;
    0x0000213c sw zero, (v0)             |     *(v0) = 0;
                                         |     do {
    0x00002140 addiu v0, v0, 4           |         v0 += 4;
    0x00002144 sw zero, (v0)             |         *(v0) = 0;
    0x00002148 bnel v1, v0, 0x2140       |         
                                         |     } while (v1 == v0);
    0x0000214c lw t9, -0x7ef0(gp)        |     t9 = sym.imp.__fdelt_chk;
    0x00002150 lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x00002154 jalr t9                   |     t9 ();
    0x00002158 sll v0, v0, 2             |     v0 <<= 2;
    0x0000215c addiu v1, sp, 0x448       |     v1 = sp + 0x448;
    0x00002160 addu v0, v1, v0           |     v0 = v1 + v0;
    0x00002164 lw a0, 0x5c(sp)           |     a0 = *(var_5ch);
    0x00002168 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000216c lw v1, -0x348(v0)         |     v1 = *((v0 - 210));
    0x00002170 sw a0, 0x10(sp)           |     *(var_10h) = a0;
    0x00002174 lw a0, 0x34(sp)           |     a0 = *(var_34h);
    0x00002178 lw a1, 0x48(sp)           |     a1 = *(var_48h);
    0x0000217c lw t9, -0x7ee4(gp)        |     t9 = sym.imp.select;
    0x00002180 or v1, v1, a0             |     v1 |= a0;
    0x00002184 lw a0, 0x4c(sp)           |     a0 = *(var_4ch);
    0x00002188 move a3, zero             |     a3 = 0;
    0x0000218c move a2, zero             |     a2 = 0;
    0x00002190 sw v1, -0x348(v0)         |     *((v0 - 210)) = v1;
    0x00002194 jalr t9                   |     t9 ();
    0x00002198 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x0000219c bltz v0, 0x2468           |         goto label_38;
                                         |     }
    0x000021a0 lw t9, -0x7ef0(gp)        |     t9 = sym.imp.__fdelt_chk;
                                         |     if (v0 != 0) {
    0x000021a4 bnez v0, 0x23cc           |         goto label_39;
                                         |     }
    0x000021a8 lw v0, 0x30(sp)           |     v0 = *(var_30h);
    0x000021ac lw s0, 0x4280(v0)         |     s0 = *((v0 + 4256));
    0x000021b0 lw v0, 0x40(sp)           |     v0 = *(var_40h);
    0x000021b4 addiu s1, v0, 0x17a0      |     s1 = v0 + 0x17a0;
                                         |     if (s0 != 0) {
    0x000021b8 bnez s0, 0x21f0           |         goto label_40;
                                         |     }
    0x000021bc addiu v0, zero, 6         |     v0 = 6;
    0x000021c0 b 0x212c                  |     goto label_0;
                                         | label_2:
    0x000021c4 move t9, s1               |     t9 = s1;
                                         |     if (v0 == 0) {
    0x000021c8 beqz v0, 0x2208           |         goto label_41;
                                         |     }
    0x000021cc sw zero, 0x1c(s0)         |     *((s0 + 7)) = 0;
    0x000021d0 lw a0, (v0)               |     a0 = *(v0);
    0x000021d4 jalr t9                   |     t9 ();
    0x000021d8 lw v0, 0x1c(s0)           |     v0 = *((s0 + 7));
    0x000021dc lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x000021e0 beqz v0, 0x2208           |         goto label_41;
                                         |     }
    0x000021e4 lw s0, 0x28(s0)           |     s0 = *((s0 + 10));
                                         | label_1:
    0x000021e8 addiu v0, zero, 6         |     v0 = 6;
                                         |     if (s0 == 0) {
    0x000021ec beqz s0, 0x212c           |         goto label_0;
                                         |     }
                                         | label_40:
    0x000021f0 lw v0, 8(s0)              |     v0 = *((s0 + 2));
    0x000021f4 lw s0, 0x28(s0)           |     s0 = *((s0 + 10));
                                         |     if (v0 == 0) {
    0x000021f8 bnel v0, zero, 0x21e8     |         goto label_1;
                                         |     }
    0x000021fc lw v0, 0x1c(s0)           |     v0 = *((s0 + 7));
    0x00002200 lw v0, 0x18(s0)           |     v0 = *((s0 + 6));
                                         |     if (v0 == 0) {
    0x00002204 bnel v0, zero, 0x21c4     |         goto label_2;
                                         |     }
                                         | label_41:
    0x00002208 lw v0, 0x30(sp)           |     v0 = *(var_30h);
    0x0000220c lw v0, 0x4280(v0)         |     v0 = *((v0 + 4256));
                                         |     if (v0 == 0) {
    0x00002210 beql v0, zero, 0x222c     |         goto label_42;
                                         |     }
    0x00002214 lw v0, 0x58(sp)           |     v0 = *(var_58h);
    0x00002218 sw zero, 0x1c(v0)         |     *((v0 + 7)) = 0;
                                         |     do {
    0x0000221c lw v0, 0x28(v0)           |         v0 = *((v0 + 10));
    0x00002220 sw zero, 0x1c(v0)         |         *((v0 + 7)) = 0;
    0x00002224 bnel v0, zero, 0x221c     |         
                                         |     } while (v0 == 0);
    0x00002228 lw v0, 0x58(sp)           |     v0 = *(var_58h);
                                         | label_42:
    0x0000222c lw t9, -0x7f9c(gp)        |     t9 = sym.imp.opendir;
    0x00002230 addiu a0, v0, 0x359c      |     a0 = v0 + 0x359c;
    0x00002234 jalr t9                   |     t9 ();
    0x00002238 move s0, v0               |     s0 = v0;
    0x0000223c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002240 lw s5, 0x470(sp)          |     s5 = *(arg_470h);
                                         |     if (v0 == 0) {
    0x00002244 beqz v0, 0x2c88           |         goto label_43;
                                         |     }
    0x00002248 lw t9, -0x7f60(gp)        |     t9 = sym.imp.readdir;
    0x0000224c lw v0, 0x40(sp)           |     v0 = *(var_40h);
    0x00002250 move a0, s0               |     a0 = s0;
    0x00002254 addiu s2, v0, 0x17a0      |     s2 = v0 + 0x17a0;
    0x00002258 lui s1, 0x7fff            |     s1 = 0x7fff0000;
    0x0000225c jalr t9                   |     t9 ();
    0x00002260 addiu s3, zero, 0x22      |     s3 = 0x22;
    0x00002264 ori s1, s1, 0xffff        |     s1 |= 0xffff;
    0x00002268 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x0000226c beqz v0, 0x22d8           |         goto label_44;
                                         |     }
                                         |     do {
    0x00002270 lw t9, -0x7f88(gp)        |         t9 = sym.imp.strtol;
    0x00002274 addiu a2, zero, 0xa       |         a2 = 0xa;
    0x00002278 move a1, zero             |         a1 = 0;
    0x0000227c addiu a0, v0, 0xb         |         a0 = v0 + 0xb;
    0x00002280 jalr t9                   |         t9 ();
    0x00002284 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002288 lw t9, -0x7f4c(gp)        |         t9 = sym.imp.__errno_location;
    0x0000228c move s4, v0               |         s4 = v0;
    0x00002290 jalr t9                   |         t9 ();
    0x00002294 lw v0, (v0)               |         v0 = *(v0);
    0x00002298 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == s3) {
    0x0000229c beq v0, s3, 0x254c        |             goto label_45;
                                         |         }
    0x000022a0 move t9, s2               |         t9 = s2;
                                         |         if (v0 != 0) {
    0x000022a4 beqz v0, 0x22b4           |             
                                         | label_7:
    0x000022a8 move s5, zero             |             s5 = 0;
                                         |             if (s4 == 0) {
    0x000022ac beqz s4, 0x22c4           |                 goto label_46;
                                         |             }
    0x000022b0 move t9, s2               |             t9 = s2;
                                         |         }
    0x000022b4 move a0, s4               |         a0 = s4;
    0x000022b8 jalr t9                   |         t9 ();
    0x000022bc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000022c0 move s5, zero             |         s5 = 0;
                                         | label_46:
    0x000022c4 lw t9, -0x7f60(gp)        |         t9 = sym.imp.readdir;
                                         | label_8:
    0x000022c8 move a0, s0               |         a0 = s0;
    0x000022cc jalr t9                   |         t9 ();
    0x000022d0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000022d4 bnez v0, 0x2270           |         
                                         |     } while (v0 != 0);
                                         | label_44:
    0x000022d8 lw t9, -0x7f98(gp)        |     t9 = sym.imp.closedir;
    0x000022dc move a0, s0               |     a0 = s0;
    0x000022e0 jalr t9                   |     t9 ();
    0x000022e4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s5 != 0) {
    0x000022e8 bnez s5, 0x2564           |         goto label_47;
                                         |     }
    0x000022ec lw v0, 0x30(sp)           |     v0 = *(var_30h);
    0x000022f0 lw fp, 0x4280(v0)         |     fp = *((v0 + 4256));
    0x000022f4 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         |     if (fp == 0) {
    0x000022f8 beqz fp, 0x2794           |         goto label_48;
                                         |     }
    0x000022fc sw v0, 0x70(sp)           |     *(var_70h) = v0;
    0x00002300 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002304 addiu v0, v0, 0x3544      |     v0 += str._s:__m;
    0x00002308 sw v0, 0x28(sp)           |     *(var_28h) = v0;
    0x0000230c lw v0, 8(fp)              |     v0 = *(arg_8h);
                                         | label_9:
    0x00002310 sw v0, 0x50(sp)           |     *(var_50h) = v0;
                                         |     if (v0 != 0) {
    0x00002314 bnez v0, 0x2788           |         goto label_14;
                                         |     }
    0x00002318 lw s0, 0x1c(fp)           |     s0 = *(arg_1ch);
                                         |     if (s5 != 0) {
    0x0000231c bnez s5, 0x28bc           |         goto label_49;
                                         |     }
    0x00002320 lw fp, 0x28(fp)           |     fp = *(arg_28h);
                                         |     if (s0 == 0) {
    0x00002324 bnel s0, zero, 0x278c     |         goto label_12;
                                         |     }
    0x00002328 lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x0000232c lw s2, 4(fp)              |     s2 = *(arg_4h);
    0x00002330 lw s1, (fp)               |     s1 = *(fp);
    0x00002334 addiu s3, s3, 0x34a4      |     s3 += str.Respawning;
                                         | label_15:
    0x00002338 lw v0, 0x24(sp)           |     v0 = *(var_24h);
                                         |     if (s2 != 0) {
    0x0000233c beqz s2, 0x2348           |         
    0x00002340 lw t9, -0x7fdc(gp)        |         t9 = *((gp - 8183));
                                         |         if (s1 != 0) {
    0x00002344 bnez s1, 0x2584           |             goto label_50;
                                         |         }
                                         |     }
    0x00002348 sb zero, 0x4180(v0)       |     *((v0 + 16768)) = 0;
    0x0000234c b 0x2598                  |     goto label_51;
                                         | label_31:
    0x00002350 lw v0, -0x7ec8(gp)        |     v0 = *((gp - 8114));
    0x00002354 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
    0x00002358 lw t9, -0x7efc(gp)        |     t9 = sym.imp.fwrite;
    0x0000235c lw a3, (v0)               |     a3 = *(v0);
    0x00002360 addiu a2, zero, 0x23      |     a2 = 0x23;
    0x00002364 addiu a1, zero, 1         |     a1 = 1;
    0x00002368 addiu a0, a0, 0x34b0      |     a0 += str.Failed_to_register_SIGCHLD_handler_n;
    0x0000236c jalr t9                   |     t9 ();
    0x00002370 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002374 b 0x1ed0                  |     goto label_3;
                                         | label_34:
    0x00002378 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.__errno_location;
    0x0000237c jalr t9                   |     t9 ();
    0x00002380 nop                       |     
    0x00002384 lw v1, (v0)               |     v1 = *(v0);
    0x00002388 addiu v0, zero, 0x11      |     v0 = 0x11;
    0x0000238c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v1 == v0) {
    0x00002390 beq v1, v0, 0x1fc0        |         goto label_4;
                                         |     }
    0x00002394 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002398 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000239c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x000023a0 addiu a3, a3, 0x3520      |     a3 += str.mkdir_for__var_run_respawnd_control;
    0x000023a4 addiu a2, a2, 0x3544      |     a2 += str._s:__m;
    0x000023a8 addiu a1, zero, 1         |     a1 = 1;
    0x000023ac addiu a0, zero, 3         |     a0 = 3;
    0x000023b0 jalr t9                   |     t9 ();
    0x000023b4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000023b8 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
    0x000023bc move a0, s0               |     a0 = s0;
    0x000023c0 jalr t9                   |     t9 ();
    0x000023c4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000023c8 b 0x1f04                  |     goto label_5;
                                         | label_39:
    0x000023cc lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x000023d0 jalr t9                   |     t9 ();
    0x000023d4 sll v0, v0, 2             |     v0 <<= 2;
    0x000023d8 addiu v1, sp, 0x448       |     v1 = sp + 0x448;
    0x000023dc addu v0, v1, v0           |     v0 = v1 + v0;
    0x000023e0 lw v1, 0x34(sp)           |     v1 = *(var_34h);
    0x000023e4 lw v0, -0x348(v0)         |     v0 = *((v0 - 210));
    0x000023e8 and v0, v1, v0            |     v0 = v1 & v0;
    0x000023ec lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x000023f0 beqz v0, 0x2128           |         goto label_6;
                                         |     }
    0x000023f4 lw t9, -0x7f90(gp)        |     t9 = sym.imp.recv;
    0x000023f8 lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x000023fc move a3, zero             |     a3 = 0;
    0x00002400 addiu a2, zero, 0x114     |     a2 = aav.0x00000114;
    0x00002404 addiu a1, sp, 0x210       |     a1 = sp + 0x210;
    0x00002408 jalr t9                   |     t9 ();
    0x0000240c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x00002410 bltz v0, 0x24cc           |         goto label_52;
                                         |     }
    0x00002414 addiu v1, zero, 0x114     |     v1 = aav.0x00000114;
    0x00002418 lui v0, 0x2003            |     v0 = 0x20030000;
                                         |     if (v0 != v1) {
    0x0000241c bne v0, v1, 0x24ac        |         goto label_53;
                                         |     }
    0x00002420 lw v1, 0x210(sp)          |     v1 = *(var_210h);
    0x00002424 addiu v0, v0, 0x129       |     v0 += 0x129;
    0x00002428 lbu a3, 0x214(sp)         |     a3 = *(var_214h);
                                         |     if (v1 != v0) {
    0x0000242c bne v1, v0, 0x24ac        |         goto label_53;
                                         |     }
    0x00002430 addiu v0, zero, 2         |     v0 = 2;
    0x00002434 addiu v0, zero, 3         |     v0 = 3;
                                         |     if (a3 == v0) {
    0x00002438 beq a3, v0, 0x2d08        |         goto label_54;
                                         |     }
    0x0000243c addiu v0, zero, 1         |     v0 = 1;
                                         |     if (a3 == v0) {
    0x00002440 beq a3, v0, 0x2cf0        |         goto label_55;
                                         |     }
    0x00002444 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
                                         |     if (a3 == v0) {
    0x00002448 beq a3, v0, 0x2cc4        |         goto label_56;
                                         |     }
    0x0000244c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002450 addiu a2, a2, 0x3580      |     a2 += str.Invalid_action:__d_n;
    0x00002454 addiu a1, zero, 1         |     a1 = 1;
    0x00002458 addiu a0, zero, 4         |     a0 = 4;
    0x0000245c jalr t9                   |     t9 ();
    0x00002460 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002464 b 0x2128                  |     goto label_6;
                                         | label_38:
    0x00002468 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.__errno_location;
    0x0000246c jalr t9                   |     t9 ();
    0x00002470 nop                       |     
    0x00002474 lw v1, (v0)               |     v1 = *(v0);
    0x00002478 addiu v0, zero, 4         |     v0 = 4;
    0x0000247c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v1 == v0) {
    0x00002480 beq v1, v0, 0x2128        |         goto label_6;
                                         |     }
    0x00002484 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002488 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x0000248c addiu a3, a3, 0x355c      |     a3 += str.select;
                                         |     do {
                                         | label_28:
    0x00002490 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002494 addiu a1, zero, 1         |         a1 = 1;
    0x00002498 addiu a2, a2, 0x3544      |         a2 += str._s:__m;
    0x0000249c addiu a0, zero, 3         |         a0 = 3;
    0x000024a0 jalr t9                   |         t9 ();
    0x000024a4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000024a8 b 0x2128                  |         goto label_6;
                                         | label_53:
    0x000024ac lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x000024b0 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x000024b4 addiu a2, a2, 0x356c      |         a2 += str.Got_bogus_message._n;
    0x000024b8 addiu a1, zero, 1         |         a1 = 1;
    0x000024bc addiu a0, zero, 4         |         a0 = 4;
    0x000024c0 jalr t9                   |         t9 ();
    0x000024c4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000024c8 b 0x2128                  |         goto label_6;
                                         | label_52:
    0x000024cc lw a3, -0x7fdc(gp)        |         a3 = *((gp - 8183));
    0x000024d0 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x000024d4 addiu a3, a3, 0x3564      |         a3 += str.recv;
    0x000024d8 b 0x2490                  |         
                                         |     } while (1);
                                         | label_37:
    0x000024dc lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x000024e0 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x000024e4 addiu a3, a3, 0x3554      |     a3 += str.daemon;
                                         |     do {
    0x000024e8 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x000024ec addiu a1, zero, 1         |         a1 = 1;
    0x000024f0 addiu a2, a2, 0x3544      |         a2 += str._s:__m;
    0x000024f4 addiu a0, zero, 3         |         a0 = 3;
    0x000024f8 jalr t9                   |         t9 ();
    0x000024fc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002500 lw t9, -0x7f94(gp)        |         t9 = sym.imp.close;
    0x00002504 lw a0, 0x20(sp)           |         a0 = *(var_20h);
    0x00002508 jalr t9                   |         t9 ();
    0x0000250c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002510 b 0x1f04                  |         goto label_5;
                                         | label_36:
    0x00002514 lw a3, -0x7fdc(gp)        |         a3 = *((gp - 8183));
    0x00002518 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x0000251c addiu a3, a3, 0x354c      |         a3 += str.bind;
    0x00002520 b 0x24e8                  |         
                                         |     } while (1);
                                         | label_35:
    0x00002524 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002528 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000252c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002530 addiu a3, a3, 0x3254      |     a3 += str.socket;
    0x00002534 addiu a2, a2, 0x3544      |     a2 += str._s:__m;
    0x00002538 addiu a1, zero, 1         |     a1 = 1;
    0x0000253c addiu a0, zero, 3         |     a0 = 3;
    0x00002540 jalr t9                   |     t9 ();
    0x00002544 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002548 b 0x1f04                  |     goto label_5;
                                         | label_45:
    0x0000254c addu v0, s4, s1           |     v0 = s4 + s1;
    0x00002550 sltiu v0, v0, -2          |     v0 = (v0 < -2) ? 1 : 0;
    0x00002554 move s5, zero             |     s5 = 0;
                                         |     if (v0 != 0) {
    0x00002558 bnez v0, 0x22a8           |         goto label_7;
                                         |     }
    0x0000255c lw t9, -0x7f60(gp)        |     t9 = sym.imp.readdir;
    0x00002560 b 0x22c8                  |     goto label_8;
                                         | label_47:
    0x00002564 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002568 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x0000256c addiu a2, a2, 0x35a4      |     a2 += str._proc_is_empty__not_mounted__n;
    0x00002570 addiu a1, zero, 1         |     a1 = 1;
    0x00002574 addiu a0, zero, 4         |     a0 = 4;
    0x00002578 jalr t9                   |     t9 ();
    0x0000257c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002580 b 0x2128                  |     goto label_6;
                                         | label_50:
    0x00002584 move a1, s1               |     a1 = s1;
    0x00002588 addiu t9, t9, 0x19fc      |     t9 += fcn.000019fc;
    0x0000258c move a0, s2               |     a0 = s2;
    0x00002590 bal 0x19fc                |     fcn_000019fc ();
    0x00002594 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_51:
    0x00002598 lw v0, 0x64(sp)           |     v0 = *(var_64h);
    0x0000259c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x000025a0 addiu a2, v0, 0x3630      |     a2 = v0 + str._s___s_._n;
    0x000025a4 lw v0, 0x60(sp)           |     v0 = *(var_60h);
    0x000025a8 move a3, s3               |     a3 = s3;
    0x000025ac addiu a1, zero, 1         |     a1 = 1;
    0x000025b0 addiu a0, zero, 6         |     a0 = 6;
    0x000025b4 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000025b8 jalr t9                   |     t9 ();
    0x000025bc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000025c0 lw v0, 4(fp)              |     v0 = *(arg_4h);
    0x000025c4 lw s6, (fp)               |     s6 = *(fp);
    0x000025c8 lw t9, -0x7f58(gp)        |     t9 = sym.imp.fork;
    0x000025cc move s7, v0               |     s7 = v0;
    0x000025d0 lw s3, 0x20(fp)           |     s3 = *(arg_20h);
    0x000025d4 lw s4, 0x24(fp)           |     s4 = *(arg_24h);
    0x000025d8 lw s2, 0x10(fp)           |     s2 = *(arg_10h);
    0x000025dc jalr t9                   |     t9 ();
    0x000025e0 move s1, v0               |     s1 = v0;
    0x000025e4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x000025e8 bltz v0, 0x2728           |         goto label_57;
                                         |     }
                                         |     if (v0 != 0) {
    0x000025ec bnez v0, 0x2830           |         goto label_58;
                                         |     }
    0x000025f0 nop                       |     
    0x000025f4 move s0, zero             |     s0 = 0;
                                         |     if (s6 == 0) {
    0x000025f8 beqz s6, 0x2c5c           |         goto label_59;
                                         |     }
    0x000025fc lw t9, -0x7f2c(gp)        |     t9 = sym.imp.strlen;
    0x00002600 b 0x260c                  |     
                                         |     while (v0 != 0) {
    0x00002604 move s1, v1               |         s1 = v1;
    0x00002608 lw t9, -0x7f2c(gp)        |         t9 = sym.imp.strlen;
    0x0000260c addu a0, s7, s0           |         a0 = s7 + s0;
    0x00002610 jalr t9                   |         t9 ();
    0x00002614 addu s0, v0, s0           |         s0 = v0 + s0;
    0x00002618 addiu s0, s0, 1           |         s0++;
    0x0000261c sltu v0, s0, s6           |         v0 = (s0 < s6) ? 1 : 0;
    0x00002620 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002624 addiu v1, s1, 1           |         v1 = s1 + 1;
    0x00002628 bnez v0, 0x2604           |         
                                         |     }
    0x0000262c lw t9, -0x7f0c(gp)        |     t9 = sym.imp.malloc;
    0x00002630 addiu a0, s1, 2           |     a0 = s1 + 2;
    0x00002634 sll a0, a0, 2             |     a0 <<= 2;
    0x00002638 jalr t9                   |     t9 ();
    0x0000263c move s0, v0               |     s0 = v0;
    0x00002640 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00002644 beqz v0, 0x2c74           |         goto label_60;
                                         |     }
    0x00002648 lw s5, 0x50(sp)           |     s5 = *(var_50h);
    0x0000264c move s2, v0               |     s2 = v0;
    0x00002650 move s1, zero             |     s1 = 0;
                                         |     do {
    0x00002654 addu a0, s7, s1           |         a0 = s7 + s1;
    0x00002658 lw t9, -0x7f2c(gp)        |         t9 = sym.imp.strlen;
    0x0000265c sw a0, (s2)               |         *(s2) = a0;
    0x00002660 jalr t9                   |         t9 ();
    0x00002664 addu s1, v0, s1           |         s1 = v0 + s1;
    0x00002668 addiu s1, s1, 1           |         s1++;
    0x0000266c sltu v0, s1, s6           |         v0 = (s1 < s6) ? 1 : 0;
    0x00002670 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002674 addiu s5, s5, 1           |         s5++;
    0x00002678 addiu s2, s2, 4           |         s2 += 4;
    0x0000267c bnez v0, 0x2654           |         
                                         |     } while (v0 != 0);
    0x00002680 sll v0, s5, 2             |     v0 = s5 << 2;
    0x00002684 addu v0, s0, v0           |     v0 = s0 + v0;
                                         | label_26:
    0x00002688 sw zero, (v0)             |     *(v0) = 0;
                                         |     if (s4 != 0) {
    0x0000268c beqz s4, 0x26a4           |         
    0x00002690 lw t9, -0x7f10(gp)        |         t9 = sym.imp.setgid;
    0x00002694 move a0, s4               |         a0 = s4;
    0x00002698 jalr t9                   |         t9 ();
    0x0000269c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x000026a0 bltz v0, 0x2c44           |             goto label_61;
                                         |         }
                                         |     }
    0x000026a4 lw t9, -0x7ec4(gp)        |     t9 = sym.imp.getpwuid;
    0x000026a8 move a0, s3               |     a0 = s3;
    0x000026ac jalr t9                   |     t9 ();
    0x000026b0 move s1, v0               |     s1 = v0;
    0x000026b4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x000026b8 beqz v0, 0x2c2c           |         goto label_62;
                                         |     }
    0x000026bc lw t9, -0x7eec(gp)        |     t9 = sym.imp.initgroups;
    0x000026c0 lw a0, (v0)               |     a0 = *(v0);
    0x000026c4 move a1, s4               |     a1 = s4;
    0x000026c8 jalr t9                   |     t9 ();
    0x000026cc lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x000026d0 bltz v0, 0x2bfc           |         goto label_63;
                                         |     }
    0x000026d4 lw t9, -0x7f68(gp)        |     t9 = sym.imp.setuid;
                                         |     if (s3 != 0) {
    0x000026d8 beqz s3, 0x26ec           |         
    0x000026dc move a0, s3               |         a0 = s3;
    0x000026e0 jalr t9                   |         t9 ();
    0x000026e4 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x000026e8 bltz v0, 0x2bd0           |             goto label_64;
                                         |         }
                                         |     }
    0x000026ec lw t9, -0x7f38(gp)        |     t9 = sym.imp.execv;
    0x000026f0 lw a0, (s0)               |     a0 = *(s0);
    0x000026f4 move a1, s0               |     a1 = s0;
    0x000026f8 jalr t9                   |     t9 ();
    0x000026fc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002700 addiu a0, zero, 3         |     a0 = 3;
    0x00002704 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002708 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x0000270c addiu a2, a2, 0x3708      |     a2 += str.execv_failed__n;
                                         | label_27:
    0x00002710 addiu a1, zero, 1         |     a1 = 1;
    0x00002714 jalr t9                   |     t9 ();
    0x00002718 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000271c lw t9, -0x7f1c(gp)        |     t9 = sym.imp.exit;
    0x00002720 addiu a0, zero, 1         |     a0 = 1;
    0x00002724 jalr t9                   |     t9 ();
                                         | label_57:
    0x00002728 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x0000272c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002730 lw a2, 0x28(sp)           |     a2 = *(var_28h);
    0x00002734 addiu a0, zero, 3         |     a0 = 3;
    0x00002738 addiu a3, a3, 0x363c      |     a3 += str.fork;
    0x0000273c addiu a1, zero, 1         |     a1 = 1;
    0x00002740 jalr t9                   |     t9 ();
    0x00002744 lw a0, 4(fp)              |     a0 = *(arg_4h);
    0x00002748 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (a0 != 0) {
    0x0000274c beqz a0, 0x275c           |         
    0x00002750 lw a1, (fp)               |         a1 = *(fp);
    0x00002754 lw t9, -0x7fdc(gp)        |         t9 = *((gp - 8183));
                                         |         if (a1 != 0) {
    0x00002758 bnez a1, 0x2bbc           |             goto label_65;
                                         |         }
                                         |     }
    0x0000275c lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x00002760 sb zero, 0x4180(v0)       |     *((v0 + 16768)) = 0;
                                         | label_24:
    0x00002764 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002768 lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x0000276c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002770 addiu a3, v0, 0x4180      |     a3 = v0 + 0x4180;
    0x00002774 addiu a2, a2, 0x3720      |     a2 += str.Failed_to_start___s__n;
    0x00002778 addiu a1, zero, 1         |     a1 = 1;
    0x0000277c addiu a0, zero, 3         |     a0 = 3;
    0x00002780 jalr t9                   |     t9 ();
    0x00002784 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_14:
    0x00002788 lw fp, 0x28(fp)           |     fp = *(arg_28h);
                                         | label_12:
    0x0000278c lw v0, 8(fp)              |     v0 = *(arg_8h);
                                         |     if (fp == 0) {
    0x00002790 bnel fp, zero, 0x2310     |         goto label_9;
                                         |     }
                                         | label_48:
    0x00002794 lw s0, -0x7fdc(gp)        |     s0 = *((gp - 8183));
                                         | label_13:
    0x00002798 lw s1, -0x7fdc(gp)        |     s1 = *((gp - 8183));
    0x0000279c addiu s2, sp, 0x84        |     s2 = sp + 0x84;
    0x000027a0 addiu s0, s0, 0x1970      |     s0 += fcn.00001970;
                                         | label_11:
    0x000027a4 lw t9, -0x7f00(gp)        |     t9 = sym.imp.waitpid;
    0x000027a8 addiu a2, zero, 1         |     a2 = 1;
    0x000027ac move a1, s2               |     a1 = s2;
    0x000027b0 addiu a0, zero, -1        |     a0 = -1;
    0x000027b4 jalr t9                   |     t9 ();
    0x000027b8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 > 0) {
    0x000027bc bgtz v0, 0x2818           |         goto label_66;
                                         |     }
                                         | label_10:
    0x000027c0 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.__errno_location;
                                         |     if (v0 == 0) {
    0x000027c4 beqz v0, 0x2128           |         goto label_6;
                                         |     }
    0x000027c8 jalr t9                   |     t9 ();
    0x000027cc nop                       |     
    0x000027d0 lw v1, (v0)               |     v1 = *(v0);
    0x000027d4 addiu v0, zero, 0xa       |     v0 = 0xa;
    0x000027d8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v1 == v0) {
    0x000027dc beq v1, v0, 0x2128        |         goto label_6;
                                         |     }
    0x000027e0 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x000027e4 lw a3, 0x44(sp)           |     a3 = *(var_44h);
    0x000027e8 addiu a2, s1, 0x3544      |     a2 = s1 + str._s:__m;
    0x000027ec addiu a1, zero, 1         |     a1 = 1;
    0x000027f0 addiu a0, zero, 3         |     a0 = 3;
    0x000027f4 jalr t9                   |     t9 ();
    0x000027f8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000027fc addiu a2, zero, 1         |     a2 = 1;
    0x00002800 move a1, s2               |     a1 = s2;
    0x00002804 lw t9, -0x7f00(gp)        |     t9 = sym.imp.waitpid;
    0x00002808 addiu a0, zero, -1        |     a0 = -1;
    0x0000280c jalr t9                   |     t9 ();
    0x00002810 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 <= 0) {
    0x00002814 blez v0, 0x27c0           |         goto label_10;
                                         |     }
                                         | label_66:
    0x00002818 lw a0, 0x84(sp)           |     a0 = *(var_84h);
    0x0000281c move t9, s0               |     t9 = s0;
    0x00002820 move a1, v0               |     a1 = v0;
    0x00002824 bal 0x1970                |     fcn_00001970 ();
    0x00002828 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000282c b 0x27a4                  |     goto label_11;
                                         |     if (s2 == 0) {
                                         | label_58:
    0x00002830 beqz s2, 0x2890           |         goto label_67;
                                         |     }
    0x00002834 nop                       |     
    0x00002838 addiu s2, sp, 0x84        |     s2 = sp + 0x84;
    0x0000283c b 0x285c                  |     
                                         |     while (v0 < 0) {
    0x00002840 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x00002844 lw a3, 0x44(sp)           |         a3 = *(var_44h);
    0x00002848 lw a2, 0x28(sp)           |         a2 = *(var_28h);
    0x0000284c addiu a1, zero, 1         |         a1 = 1;
    0x00002850 addiu a0, zero, 3         |         a0 = 3;
    0x00002854 jalr t9                   |         t9 ();
    0x00002858 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000285c lw t9, -0x7f00(gp)        |         t9 = sym.imp.waitpid;
    0x00002860 move a2, zero             |         a2 = 0;
    0x00002864 move a1, s2               |         a1 = s2;
    0x00002868 move a0, s1               |         a0 = s1;
    0x0000286c jalr t9                   |         t9 ();
    0x00002870 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002874 bltz v0, 0x2840           |         
                                         |     }
    0x00002878 lw v0, 0x70(sp)           |     v0 = *(var_70h);
    0x0000287c lw a0, 0x84(sp)           |     a0 = *(var_84h);
    0x00002880 addiu t9, v0, 0x1970      |     t9 = v0 + fcn.00001970;
    0x00002884 move a1, s1               |     a1 = s1;
    0x00002888 bal 0x1970                |     fcn_00001970 ();
    0x0000288c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_67:
    0x00002890 lw fp, 0x28(fp)           |     fp = *(arg_28h);
                                         |     if (s0 == 0) {
    0x00002894 bnel s0, zero, 0x28a4     |         goto label_68;
                                         |     }
    0x00002898 lw v0, 0xc(fp)            |     v0 = *(arg_ch);
    0x0000289c lw fp, 0x28(fp)           |     fp = *(arg_28h);
                                         |     if (v0 == 0) {
    0x000028a0 beqz v0, 0x278c           |         goto label_12;
                                         |     }
                                         | label_68:
    0x000028a4 lw s0, -0x7fdc(gp)        |     s0 = *((gp - 8183));
                                         |     if (fp == 0) {
    0x000028a8 beqz fp, 0x2798           |         goto label_13;
                                         |     }
    0x000028ac lw v0, 8(fp)              |     v0 = *(arg_8h);
    0x000028b0 lw s5, 0x470(sp)          |     s5 = *(arg_470h);
                                         |     if (v0 == 0) {
    0x000028b4 bnel v0, zero, 0x2788     |         goto label_14;
                                         |     }
    0x000028b8 lw s0, 0x1c(fp)           |     s0 = *(arg_1ch);
                                         | label_49:
    0x000028bc lw s2, 4(fp)              |     s2 = *(arg_4h);
    0x000028c0 lw s1, (fp)               |     s1 = *(fp);
                                         |     if (s0 == 0) {
    0x000028c4 bnez s0, 0x28d8           |         
    0x000028c8 lw s3, -0x7fdc(gp)        |         s3 = *((gp - 8183));
    0x000028cc lw s5, 0x470(sp)          |         s5 = *(arg_470h);
    0x000028d0 addiu s3, s3, 0x34a4      |         s3 += str.Respawning;
    0x000028d4 b 0x2338                  |         goto label_15;
                                         |     }
    0x000028d8 lw v0, 0x18(fp)           |     v0 = *(arg_18h);
    0x000028dc addiu s4, zero, 0xf       |     s4 = 0xf;
    0x000028e0 sw v0, 0x3c(sp)           |     *(var_3ch) = v0;
    0x000028e4 lw v0, 0x470(sp)          |     v0 = *(arg_470h);
    0x000028e8 addiu s6, sp, 0x324       |     s6 = sp + 0x324;
    0x000028ec sw v0, 0x38(sp)           |     *(var_38h) = v0;
    0x000028f0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000028f4 sw s2, 0x78(sp)           |     *(var_78h) = s2;
    0x000028f8 sw v0, 0x68(sp)           |     *(var_68h) = v0;
    0x000028fc lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002900 sw fp, 0x2c(sp)           |     *(var_2ch) = fp;
    0x00002904 sw v0, 0x6c(sp)           |     *(var_6ch) = v0;
                                         | label_17:
    0x00002908 lw fp, 0x2c(sp)           |     fp = *(var_2ch);
                                         |     if (s0 <= 0) {
    0x0000290c blez s0, 0x2aa4           |         goto label_69;
                                         |     }
    0x00002910 lw s5, 0x3c(sp)           |     s5 = *(var_3ch);
    0x00002914 move s3, zero             |     s3 = 0;
    0x00002918 addiu s2, zero, 3         |     s2 = 3;
    0x0000291c b 0x292c                  |     
                                         |     while (v0 >= 0) {
                                         | label_16:
    0x00002920 addiu s3, s3, 1           |         s3++;
    0x00002924 addiu s5, s5, 4           |         s5 += 4;
                                         |         if (s0 == s3) {
    0x00002928 beq s0, s3, 0x29b0        |             goto label_70;
                                         |         }
    0x0000292c lw t9, -0x7f20(gp)        |         t9 = sym.imp.kill;
    0x00002930 lw a0, (s5)               |         a0 = *(s5);
    0x00002934 move a1, s4               |         a1 = s4;
    0x00002938 jalr t9                   |         t9 ();
    0x0000293c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002940 bgez v0, 0x2920           |         
                                         |     }
    0x00002944 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.__errno_location;
    0x00002948 jalr t9                   |     t9 ();
    0x0000294c nop                       |     
    0x00002950 lw v0, (v0)               |     v0 = *(v0);
    0x00002954 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == s2) {
    0x00002958 beq v0, s2, 0x2920        |         goto label_16;
                                         |     }
    0x0000295c lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002960 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002964 lw a2, 0x28(sp)           |     a2 = *(var_28h);
    0x00002968 addiu a3, a3, 0x35c4      |     a3 += str.kill;
    0x0000296c addiu a1, zero, 1         |     a1 = 1;
    0x00002970 addiu a0, zero, 3         |     a0 = 3;
    0x00002974 lw fp, 0x2c(sp)           |     fp = *(var_2ch);
    0x00002978 jalr t9                   |     t9 ();
    0x0000297c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_22:
    0x00002980 lw a0, 4(fp)              |     a0 = *(arg_4h);
    0x00002984 lw v0, 0x24(sp)           |     v0 = *(var_24h);
                                         |     if (a0 == 0) {
    0x00002988 beqz a0, 0x2b74           |         goto label_71;
                                         |     }
    0x0000298c lw a1, (fp)               |     a1 = *(fp);
                                         |     if (a1 == 0) {
    0x00002990 beql a1, zero, 0x2b78     |         goto label_72;
                                         |     }
    0x00002994 sb zero, 0x4180(v0)       |     *((v0 + 16768)) = 0;
    0x00002998 lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x0000299c addiu t9, t9, 0x19fc      |     t9 += fcn.000019fc;
    0x000029a0 bal 0x19fc                |     fcn_000019fc ();
    0x000029a4 nop                       |     
    0x000029a8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000029ac b 0x2b78                  |     goto label_72;
                                         | label_70:
    0x000029b0 sw s0, 0x7c(sp)           |     *(var_7ch) = s0;
                                         |     do {
    0x000029b4 lw v0, 0x68(sp)           |         v0 = *(var_68h);
    0x000029b8 lw s5, 0x3c(sp)           |         s5 = *(var_3ch);
    0x000029bc addiu s2, zero, 1         |         s2 = 1;
    0x000029c0 addiu fp, v0, 0x35cc      |         fp = v0 + str._proc__ld_cmdline;
    0x000029c4 addiu s7, sp, 0x344       |         s7 = sp + 0x344;
                                         | label_18:
    0x000029c8 lw v0, (s5)               |         v0 = *(s5);
    0x000029cc lw t9, -0x7fa0(gp)        |         t9 = sym.imp.__sprintf_chk
    0x000029d0 move a3, fp               |         a3 = fp;
    0x000029d4 addiu a2, zero, 0x20      |         a2 = 0x20;
    0x000029d8 addiu a1, zero, 1         |         a1 = 1;
    0x000029dc move a0, s6               |         a0 = s6;
    0x000029e0 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x000029e4 jalr t9                   |         t9 ();
    0x000029e8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000029ec move a1, zero             |         a1 = 0;
    0x000029f0 lw t9, -0x7f24(gp)        |         t9 = sym.imp.open;
    0x000029f4 move a0, s6               |         a0 = s6;
    0x000029f8 jalr t9                   |         t9 ();
    0x000029fc move s0, v0               |         s0 = v0;
    0x00002a00 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 >= 0) {
    0x00002a04 bgez v0, 0x2ac4           |             goto label_73;
                                         |         }
    0x00002a08 lw t9, -0x7f4c(gp)        |         t9 = sym.imp.__errno_location;
    0x00002a0c jalr t9                   |         t9 ();
    0x00002a10 nop                       |         
    0x00002a14 lw v0, (v0)               |         v0 = *(v0);
    0x00002a18 addiu v1, zero, 2         |         v1 = 2;
    0x00002a1c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == v1) {
    0x00002a20 beq v0, v1, 0x2a8c        |             goto label_74;
                                         |         }
    0x00002a24 lw v0, 0x6c(sp)           |         v0 = *(var_6ch);
    0x00002a28 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x00002a2c lw a2, 0x28(sp)           |         a2 = *(var_28h);
    0x00002a30 addiu a3, v0, 0x35e0      |         a3 = v0 + str.open__proc__pid__cmdline;
    0x00002a34 addiu a1, zero, 1         |         a1 = 1;
    0x00002a38 addiu a0, zero, 3         |         a0 = 3;
    0x00002a3c jalr t9                   |         t9 ();
    0x00002a40 addiu v0, zero, 9         |         v0 = 9;
    0x00002a44 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (s4 == v0) {
    0x00002a48 beq s4, v0, 0x2b6c        |             goto label_75;
                                         |         }
                                         | label_21:
    0x00002a4c lw s0, 0x38(sp)           |         s0 = *(var_38h);
    0x00002a50 lw t9, -0x7ee0(gp)        |         t9 = sym.imp.sleep;
    0x00002a54 move a0, s0               |         a0 = s0;
    0x00002a58 jalr t9                   |         t9 ();
    0x00002a5c addiu v1, s0, 1           |         v1 = s0 + 1;
    0x00002a60 sltiu v0, s0, 3           |         v0 = (s0 < 3) ? 1 : 0;
    0x00002a64 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002a68 sw v1, 0x38(sp)           |         *(var_38h) = v1;
    0x00002a6c move s4, zero             |         s4 = 0;
    0x00002a70 bnez v0, 0x29b4           |         
                                         |     } while (v0 != 0);
    0x00002a74 lw s0, 0x7c(sp)           |     s0 = *(var_7ch);
    0x00002a78 addiu s4, zero, 9         |     s4 = 9;
    0x00002a7c b 0x2908                  |     goto label_17;
                                         | label_20:
    0x00002a80 jalr t9                   |     t9 ();
    0x00002a84 nop                       |     
    0x00002a88 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_74:
    0x00002a8c move v0, s2               |     v0 = s2;
                                         | label_19:
    0x00002a90 slt v0, v0, s3            |     v0 = (v0 < s3) ? 1 : 0;
    0x00002a94 addiu s5, s5, 4           |     s5 += 4;
    0x00002a98 addiu s2, s2, 1           |     s2++;
                                         |     if (v0 != 0) {
    0x00002a9c bnez v0, 0x29c8           |         goto label_18;
                                         |     }
    0x00002aa0 lw fp, 0x2c(sp)           |     fp = *(var_2ch);
                                         | label_69:
    0x00002aa4 lw s0, 0x470(sp)          |     s0 = *(arg_470h);
    0x00002aa8 lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x00002aac sw zero, 0x1c(fp)         |     *(arg_1ch) = 0;
    0x00002ab0 lw s2, 4(fp)              |     s2 = *(arg_4h);
    0x00002ab4 lw s1, (fp)               |     s1 = *(fp);
    0x00002ab8 move s5, s0               |     s5 = s0;
    0x00002abc addiu s3, s3, 0x3498      |     s3 += str.Restarting;
    0x00002ac0 b 0x2338                  |     goto label_15;
                                         | label_73:
    0x00002ac4 lw t9, -0x7ebc(gp)        |     t9 = sym.imp.read;
    0x00002ac8 addiu a2, zero, 0xff      |     a2 = 0xff;
    0x00002acc move a1, s7               |     a1 = s7;
    0x00002ad0 move a0, v0               |     a0 = v0;
    0x00002ad4 jalr t9                   |     t9 ();
    0x00002ad8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x00002adc bltz v0, 0x2b38           |         goto label_76;
                                         |     }
    0x00002ae0 lw t9, -0x7edc(gp)        |     t9 = sym.imp.memcmp;
                                         |     if (s1 != v0) {
    0x00002ae4 beq s1, v0, 0x2b00        |         
    0x00002ae8 lw t9, -0x7f94(gp)        |         t9 = sym.imp.close;
    0x00002aec move a0, s0               |         a0 = s0;
    0x00002af0 jalr t9                   |         t9 ();
    0x00002af4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002af8 move v0, s2               |         v0 = s2;
    0x00002afc b 0x2a90                  |         goto label_19;
                                         |     }
    0x00002b00 lw a1, 0x78(sp)           |     a1 = *(var_78h);
    0x00002b04 move a0, s7               |     a0 = s7;
    0x00002b08 move a2, s1               |     a2 = s1;
    0x00002b0c jalr t9                   |     t9 ();
    0x00002b10 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002b14 move a0, s0               |     a0 = s0;
    0x00002b18 lw t9, -0x7f94(gp)        |     t9 = sym.imp.close;
                                         |     if (v0 != 0) {
    0x00002b1c bnez v0, 0x2a80           |         goto label_20;
                                         |     }
    0x00002b20 jalr t9                   |     t9 ();
    0x00002b24 nop                       |     
    0x00002b28 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002b2c b 0x2a4c                  |     goto label_21;
                                         | label_23:
    0x00002b30 lw s5, 0x470(sp)          |     s5 = *(arg_470h);
    0x00002b34 b 0x2788                  |     goto label_14;
                                         | label_76:
    0x00002b38 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002b3c lw a3, 0x74(sp)           |     a3 = *(var_74h);
    0x00002b40 lw a2, 0x28(sp)           |     a2 = *(var_28h);
    0x00002b44 addiu a1, zero, 1         |     a1 = 1;
    0x00002b48 addiu a0, zero, 3         |     a0 = 3;
    0x00002b4c jalr t9                   |     t9 ();
    0x00002b50 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002b54 lw t9, -0x7f94(gp)        |     t9 = sym.imp.close;
    0x00002b58 move a0, s0               |     a0 = s0;
    0x00002b5c jalr t9                   |     t9 ();
    0x00002b60 addiu v0, zero, 9         |     v0 = 9;
    0x00002b64 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s4 != v0) {
    0x00002b68 bne s4, v0, 0x2a4c        |         goto label_21;
                                         |     }
                                         | label_75:
    0x00002b6c lw fp, 0x2c(sp)           |     fp = *(var_2ch);
    0x00002b70 b 0x2980                  |     goto label_22;
                                         | label_71:
    0x00002b74 sb zero, 0x4180(v0)       |     *((v0 + 16768)) = 0;
                                         | label_72:
    0x00002b78 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002b7c lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x00002b80 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002b84 addiu a3, v0, 0x4180      |     a3 = v0 + 0x4180;
    0x00002b88 addiu a2, a2, 0x3618      |     a2 += str.Failed_to_stop___s__n;
    0x00002b8c addiu a1, zero, 1         |     a1 = 1;
    0x00002b90 addiu a0, zero, 3         |     a0 = 3;
    0x00002b94 jalr t9                   |     t9 ();
    0x00002b98 lw s0, 0x1c(fp)           |     s0 = *(arg_1ch);
    0x00002b9c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s0 != 0) {
    0x00002ba0 bnez s0, 0x2b30           |         goto label_23;
                                         |     }
    0x00002ba4 lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x00002ba8 lw s2, 4(fp)              |     s2 = *(arg_4h);
    0x00002bac lw s1, (fp)               |     s1 = *(fp);
    0x00002bb0 lw s5, 0x470(sp)          |     s5 = *(arg_470h);
    0x00002bb4 addiu s3, s3, 0x34a4      |     s3 += str.Respawning;
    0x00002bb8 b 0x2338                  |     goto label_15;
                                         | label_65:
    0x00002bbc addiu t9, t9, 0x19fc      |     t9 += fcn.000019fc;
    0x00002bc0 bal 0x19fc                |     fcn_000019fc ();
    0x00002bc4 nop                       |     
    0x00002bc8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002bcc b 0x2764                  |     goto label_24;
                                         | label_64:
    0x00002bd0 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002bd4 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002bd8 addiu a0, zero, 3         |     a0 = 3;
    0x00002bdc move a3, s3               |     a3 = s3;
    0x00002be0 addiu a2, a2, 0x36e0      |     a2 += str.Failed_setting_uid_to__d__setuid:__m;
                                         |     do {
                                         | label_25:
    0x00002be4 addiu a1, zero, 1         |         a1 = 1;
    0x00002be8 jalr t9                   |         t9 ();
    0x00002bec lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002bf0 lw t9, -0x7f1c(gp)        |         t9 = sym.imp.exit;
    0x00002bf4 addiu a0, zero, 1         |         a0 = 1;
    0x00002bf8 jalr t9                   |         t9 ();
                                         | label_63:
    0x00002bfc lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002c00 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x00002c04 lw a3, (s1)               |         a3 = *(s1);
    0x00002c08 addiu a0, zero, 3         |         a0 = 3;
    0x00002c0c sw s4, 0x10(sp)           |         *(var_10h) = s4;
    0x00002c10 addiu a2, a2, 0x36a4      |         a2 += str.Unable_to_run_initgroups___with_username:__s__gid:__d:__m;
    0x00002c14 addiu a1, zero, 1         |         a1 = 1;
    0x00002c18 jalr t9                   |         t9 ();
    0x00002c1c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002c20 lw t9, -0x7f1c(gp)        |         t9 = sym.imp.exit;
    0x00002c24 addiu a0, zero, 1         |         a0 = 1;
    0x00002c28 jalr t9                   |         t9 ();
                                         | label_62:
    0x00002c2c lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002c30 lw t9, -0x7f54(gp)        |         t9 = sym.imp.__syslog_chk;
    0x00002c34 addiu a0, zero, 3         |         a0 = 3;
    0x00002c38 move a3, s3               |         a3 = s3;
    0x00002c3c addiu a2, a2, 0x3684      |         a2 += str.Couldnt_find_user_with_uid:__d;
    0x00002c40 b 0x2be4                  |         
                                         |     } while (1);
                                         | label_61:
    0x00002c44 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002c48 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002c4c addiu a0, zero, 3         |     a0 = 3;
    0x00002c50 move a3, s4               |     a3 = s4;
    0x00002c54 addiu a2, a2, 0x365c      |     a2 += str.Failed_setting_gid_to__d__setgid:__m;
    0x00002c58 b 0x2be4                  |     goto label_25;
                                         | label_59:
    0x00002c5c lw t9, -0x7f0c(gp)        |     t9 = sym.imp.malloc;
    0x00002c60 addiu a0, zero, 4         |     a0 = 4;
    0x00002c64 jalr t9                   |     t9 ();
    0x00002c68 move s0, v0               |     s0 = v0;
    0x00002c6c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00002c70 bnez v0, 0x2688           |         goto label_26;
                                         |     }
                                         | label_60:
    0x00002c74 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002c78 lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002c7c addiu a0, zero, 3         |     a0 = 3;
    0x00002c80 addiu a2, a2, 0x3644      |     a2 += str.malloc_of_argv_failed__n;
    0x00002c84 b 0x2710                  |     goto label_27;
                                         | label_43:
    0x00002c88 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002c8c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002c90 addiu a3, a3, 0x3594      |     a3 += str.opendir__proc;
    0x00002c94 b 0x2490                  |     goto label_28;
                                         | label_33:
    0x00002c98 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002c9c lw t9, -0x7f54(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00002ca0 addiu a2, a2, 0x34f4      |     a2 += str.Could_not_allocate_memory_for_socket_path__n;
    0x00002ca4 addiu a1, zero, 1         |     a1 = 1;
    0x00002ca8 addiu a0, zero, 3         |     a0 = 3;
    0x00002cac jalr t9                   |     t9 ();
    0x00002cb0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002cb4 b 0x1f04                  |     goto label_5;
                                         | label_32:
    0x00002cb8 lw t9, -0x7ee8(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00002cbc jalr t9                   |     t9 ();
    0x00002cc0 nop                       |     
                                         | label_56:
    0x00002cc4 lw a3, 0x320(sp)          |     a3 = *(var_320h);
    0x00002cc8 lw a2, 0x31c(sp)          |     a2 = *(var_31ch);
    0x00002ccc lw a1, 0x218(sp)          |     a1 = *(var_218h);
    0x00002cd0 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x00002cd4 sw v0, 0x10(sp)           |     *(var_10h) = v0;
                                         |     do {
    0x00002cd8 lw t9, -0x7fdc(gp)        |         t9 = *((gp - 8183));
    0x00002cdc addiu t9, t9, 0x1c48      |         t9 += fcn.00001c48;
    0x00002ce0 addiu a0, sp, 0x21c       |         a0 = sp + 0x21c;
    0x00002ce4 bal 0x1c48                |         fcn_00001c48 ();
    0x00002ce8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002cec b 0x2128                  |         goto label_6;
                                         | label_55:
    0x00002cf0 lw a3, 0x320(sp)          |         a3 = *(var_320h);
    0x00002cf4 lw a2, 0x31c(sp)          |         a2 = *(var_31ch);
    0x00002cf8 lw a1, 0x218(sp)          |         a1 = *(var_218h);
    0x00002cfc sw zero, 0x14(sp)         |         *(var_14h) = 0;
    0x00002d00 sw zero, 0x10(sp)         |         *(var_10h) = 0;
    0x00002d04 b 0x2cd8                  |         
                                         |     } while (1);
                                         | label_54:
    0x00002d08 lw v0, 0x30(sp)           |     v0 = *(var_30h);
    0x00002d0c lw s0, 0x4280(v0)         |     s0 = *((v0 + 4256));
    0x00002d10 lw s3, 0x218(sp)          |     s3 = *(var_218h);
                                         |     if (s0 == 0) {
    0x00002d14 beqz s0, 0x2128           |         goto label_6;
                                         |     }
    0x00002d18 addiu s2, zero, 1         |     s2 = 1;
    0x00002d1c addiu s4, sp, 0x21c       |     s4 = sp + 0x21c;
    0x00002d20 lw v0, 8(s0)              |     v0 = *((s0 + 2));
                                         |     do {
    0x00002d24 lw s0, 0x28(s0)           |         s0 = *((s0 + 10));
                                         |         if (v0 != 0) {
    0x00002d28 bnel v0, zero, 0x2d70     |             
    0x00002d2c lw v0, (s0)               |             v0 = *(s0);
    0x00002d30 lw s1, 4(s0)              |             s1 = *((s0 + 1));
                                         |             if (s3 == v0) {
    0x00002d34 beq s3, v0, 0x2dbc        |                 goto label_77;
                                         |             }
                                         | label_30:
    0x00002d38 lw t9, -0x7f28(gp)        |             t9 = sym.imp.strchr;
    0x00002d3c addiu a1, zero, 0x2f      |             a1 = 0x2f;
    0x00002d40 move a0, s4               |             a0 = s4;
    0x00002d44 jalr t9                   |             t9 ();
    0x00002d48 lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |             if (v0 == 0) {
    0x00002d4c beqz v0, 0x2d80           |                 goto label_78;
                                         |             }
    0x00002d50 lw t9, -0x7eb4(gp)        |             t9 = sym.imp.strcmp;
    0x00002d54 move a1, s4               |             a1 = s4;
    0x00002d58 move a0, s1               |             a0 = s1;
    0x00002d5c jalr t9                   |             t9 ();
    0x00002d60 lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |             if (v0 == 0) {
    0x00002d64 bnez v0, 0x2d6c           |                 
    0x00002d68 sw s2, 8(s0)              |                 *((s0 + 2)) = s2;
                                         |             }
                                         | label_29:
    0x00002d6c lw s0, 0x28(s0)           |             s0 = *((s0 + 10));
                                         |         }
    0x00002d70 lw v0, 8(s0)              |         v0 = *((s0 + 2));
    0x00002d74 bnel s0, zero, 0x2d24     |         
                                         |     } while (s0 == 0);
    0x00002d78 addiu v0, zero, 6         |     v0 = 6;
    0x00002d7c b 0x212c                  |     goto label_0;
                                         | label_78:
    0x00002d80 lw t9, -0x7f64(gp)        |     t9 = sym.imp.strrchr;
    0x00002d84 addiu a1, zero, 0x2f      |     a1 = 0x2f;
    0x00002d88 move a0, s1               |     a0 = s1;
    0x00002d8c jalr t9                   |     t9 ();
    0x00002d90 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00002d94 beqz v0, 0x2d9c           |         
    0x00002d98 addiu s1, v0, 1           |         s1 = v0 + 1;
                                         |     }
    0x00002d9c lw t9, -0x7eb4(gp)        |     t9 = sym.imp.strcmp;
    0x00002da0 move a1, s1               |     a1 = s1;
    0x00002da4 move a0, s4               |     a0 = s4;
    0x00002da8 jalr t9                   |     t9 ();
    0x00002dac lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00002db0 bnez v0, 0x2d6c           |         goto label_29;
                                         |     }
    0x00002db4 sw s2, 8(s0)              |     *((s0 + 2)) = s2;
    0x00002db8 b 0x2d6c                  |     goto label_29;
                                         | label_77:
    0x00002dbc lw t9, -0x7edc(gp)        |     t9 = sym.imp.memcmp;
    0x00002dc0 move a2, s3               |     a2 = s3;
    0x00002dc4 move a1, s4               |     a1 = s4;
    0x00002dc8 move a0, s1               |     a0 = s1;
    0x00002dcc jalr t9                   |     t9 ();
    0x00002dd0 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00002dd4 bnez v0, 0x2d38           |         goto label_30;
                                         |     }
    0x00002dd8 addiu v0, zero, 1         |     v0 = 1;
    0x00002ddc sw v0, 8(s0)              |     *((s0 + 2)) = v0;
    0x00002de0 b 0x2128                  |     goto label_6;
                                         | }

[*] Function printf used 2 times respawnd