[*] Binary protection state of su.shadow
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function system tear down of su.shadow
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/su.shadow @ 0x2180 */
| #include <stdint.h>
|
; (fcn) main () | int32_t main () {
| /* [13] -r-x section size 32592 named .text */
0x00002180 lui gp, 2 |
0x00002184 addiu gp, gp, 0x21e0 |
0x00002188 addu gp, gp, t9 | gp += t9;
0x0000218c addiu sp, sp, -0x78 |
0x00002190 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002194 lw t9, -0x7e94(gp) | t9 = sym.imp.setlocale;
0x00002198 sw ra, 0x74(sp) | *(var_74h) = ra;
0x0000219c sw gp, 0x18(sp) | *(var_18h) = gp;
0x000021a0 sw s7, 0x6c(sp) | *(var_6ch) = s7;
0x000021a4 sw s5, 0x64(sp) | *(var_64h) = s5;
0x000021a8 sw s4, 0x60(sp) | *(var_60h) = s4;
0x000021ac sw s3, 0x5c(sp) | *(var_5ch) = s3;
0x000021b0 sw s2, 0x58(sp) | *(var_58h) = s2;
0x000021b4 sw s1, 0x54(sp) | *(var_54h) = s1;
0x000021b8 sw s0, 0x50(sp) | *(var_50h) = s0;
0x000021bc move s7, a1 | s7 = a1;
0x000021c0 sw fp, 0x70(sp) | *(var_70h) = fp;
0x000021c4 addiu a1, v0, -0x4830 | a1 = v0 + -0x4830;
0x000021c8 sw s6, 0x68(sp) | *(var_68h) = s6;
0x000021cc sw v0, 0x24(sp) | *(var_24h) = v0;
0x000021d0 move s0, a0 | s0 = a0;
0x000021d4 addiu a0, zero, 6 | a0 = 6;
0x000021d8 jalr t9 | t9 ();
0x000021dc lw gp, 0x18(sp) | gp = *(var_18h);
0x000021e0 lw a0, (s7) | a0 = *(s7);
0x000021e4 lw s1, -0x7fcc(gp) | s1 = *(gp);
0x000021e8 lw t9, -0x7fc8(gp) | t9 = sym.Basename;
0x000021ec sw s1, 0x4c(sp) | *(var_4ch) = s1;
0x000021f0 bal 0x4510 | sym_Basename ();
0x000021f4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000021f8 lw t9, -0x7db0(gp) | t9 = sym.imp.getuid;
0x000021fc lw s2, -0x7fdc(gp) | s2 = *((gp - 8183));
0x00002200 sw v0, (s1) | *(s1) = v0;
0x00002204 jalr t9 | t9 ();
0x00002208 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000220c move s1, v0 | s1 = v0;
0x00002210 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x00002214 lw s5, -0x7fdc(gp) | s5 = *((gp - 8183));
0x00002218 lw s4, -0x7fdc(gp) | s4 = *((gp - 8183));
0x0000221c lw t9, -0x7e24(gp) | t9 = sym.imp.ttyname;
0x00002220 move a0, zero | a0 = 0;
0x00002224 sw s4, 0x20(sp) | *(var_20h) = s4;
0x00002228 sw s1, 0x698(s2) | *((s2 + 422)) = s1;
0x0000222c sb v0, 0x69c(s5) | *((s5 + 1692)) = v0;
0x00002230 jalr t9 | t9 ();
0x00002234 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002238 move a0, zero | a0 = 0;
0x0000223c sw v0, 0x6a0(s4) | *((s4 + 424)) = v0;
0x00002240 lw t9, -0x7ec8(gp) | t9 = sym.imp.isatty;
0x00002244 move s3, v0 | s3 = v0;
0x00002248 jalr t9 | t9 ();
0x0000224c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002250 beqz v0, 0x2274 |
0x00002254 lw t9, -0x7fc4(gp) | t9 = sym.console;
| if (s3 != 0) {
0x00002258 beqz s3, 0x2274 |
0x0000225c move a0, s3 | a0 = s3;
0x00002260 bal 0x4570 | sym_console ();
0x00002264 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002268 lw v1, -0x7fdc(gp) | v1 = *((gp - 8183));
0x0000226c sb v0, 0x694(v1) | *((v1 + 1684)) = v0;
0x00002270 b 0x2288 |
| }
| } else {
0x00002274 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
| if (s1 != 0) {
0x00002278 bnez s1, 0x3278 | goto label_29;
| }
0x0000227c lw v1, 0x20(sp) | v1 = *(var_20h);
0x00002280 addiu v0, v0, -0x584c | v0 += -0x584c;
0x00002284 sw v0, 0x6a0(v1) | *((v1 + 424)) = v0;
| }
0x00002288 lw t9, -0x7fc0(gp) | t9 = sym.get_my_pwent;
0x0000228c bal 0x61b0 | sym_get_my_pwent ();
0x00002290 nop |
0x00002294 move s1, v0 | s1 = v0;
0x00002298 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000229c beqz v0, 0x322c | goto label_30;
| }
0x000022a0 lw s2, -0x7fdc(gp) | s2 = *((gp - 8183));
0x000022a4 lw t9, -0x7e60(gp) | t9 = sym.imp.strncpy;
0x000022a8 lw a1, (v0) | a1 = *(v0);
0x000022ac addiu v0, s2, -0x397c | v0 = s2 + -0x397c;
0x000022b0 addiu a2, zero, 0x1fff | a2 = 0x1fff;
0x000022b4 move a0, v0 | a0 = v0;
0x000022b8 sw v0, 0x48(sp) | *(var_48h) = v0;
0x000022bc move s3, v0 | s3 = v0;
0x000022c0 jalr t9 | t9 ();
0x000022c4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000022c8 sb zero, 0x1fff(s3) | *((s3 + 8191)) = 0;
0x000022cc lw s3, 4(s1) | s3 = *((s1 + 1));
0x000022d0 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x000022d4 lw t9, -0x7d3c(gp) | t9 = sym.imp.strcmp;
0x000022d8 sw v0, 0x28(sp) | *(var_28h) = v0;
0x000022dc addiu a1, v0, -0x5758 | a1 = v0 + -0x5758;
0x000022e0 move a0, s3 | a0 = s3;
0x000022e4 jalr t9 | t9 ();
0x000022e8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000022ec beqz v0, 0x2d38 | goto label_31;
| }
| label_11:
0x000022f0 lw fp, -0x7fdc(gp) | fp = *((gp - 8183));
0x000022f4 lw t9, -0x7d70(gp) | t9 = sym.imp.free;
0x000022f8 sw fp, 0x2c(sp) | *(var_2ch) = fp;
0x000022fc lw s4, -0x7fdc(gp) | s4 = *((gp - 8183));
0x00002300 lw s6, -0x7fd0(gp) | s6 = *((gp - 8180));
0x00002304 lw a0, 0x690(fp) | a0 = *(arg_690h);
0x00002308 jalr t9 | t9 ();
0x0000230c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002310 lw t9, -0x7fbc(gp) | t9 = sym.xstrdup;
0x00002314 move a0, s3 | a0 = s3;
0x00002318 bal 0x77e4 | sym_xstrdup ();
0x0000231c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002320 sw v0, 0x690(fp) | *(arg_690h) = v0;
0x00002324 lw t9, -0x7fb8(gp) | t9 = sym.pw_free;
0x00002328 move a0, s1 | a0 = s1;
0x0000232c bal 0x9b80 | sym_pw_free ();
0x00002330 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002334 addiu a2, zero, 0x50 | a2 = 0x50;
0x00002338 addiu a1, zero, 1 | a1 = 1;
0x0000233c lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002340 lw t9, -0x7eb0(gp) | t9 = sym.imp.openlog;
0x00002344 addiu a0, a0, -0x5754 | a0 += -0x5754;
0x00002348 jalr t9 | t9 ();
0x0000234c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002350 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00002354 lw s3, -0x7fd0(gp) | s3 = *((gp - 8180));
0x00002358 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0000235c lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00002360 lw s1, -0x7fdc(gp) | s1 = *((gp - 8183));
0x00002364 lw fp, -0x7fdc(gp) | fp = *((gp - 8183));
0x00002368 addiu s3, s3, -0x5300 | s3 += -0x5300;
0x0000236c sw v0, 0x34(sp) | *(var_34h) = v0;
0x00002370 lw t9, -0x7e10(gp) | t9 = sym.imp.getopt_long;
0x00002374 sw zero, 0x10(sp) | *(var_10h) = 0;
| /* esilref: 'command' */
0x00002378 addiu a3, s4, -0x3fe0 | a3 = s4 + -0x3fe0;
0x0000237c addiu a2, s6, -0x5560 | a2 = s6 + -0x5560;
0x00002380 move a1, s7 | a1 = s7;
0x00002384 move a0, s0 | a0 = s0;
0x00002388 jalr t9 | t9 ();
0x0000238c addiu v1, zero, -1 | v1 = -1;
0x00002390 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != v1) {
0x00002394 beq v0, v1, 0x23f4 |
0x00002398 addiu v0, v0, -0x63 | v0 += -0x63;
0x0000239c sltiu v1, v0, 0x11 | v1 = (v0 < 0x11) ? 1 : 0;
0x000023a0 sll v0, v0, 2 | v0 <<= 2;
| if (v1 == 0) {
0x000023a4 beqz v1, 0x307c | goto label_32;
| }
0x000023a8 lwx v0, v0(s3) | __asm ("lwx v0, v0(s3)");
0x000023ac addu v0, v0, gp | v0 += gp;
0x000023b0 jr v0 | v0 ();
0x000023b4 nop |
| }
0x000023f4 lw fp, -0x7d9c(gp) | fp = *((gp - 8039));
0x000023f8 lw s3, (fp) | s3 = *(fp);
0x000023fc slt v0, s3, s0 | v0 = (s3 < s0) ? 1 : 0;
0x00002400 sll s4, s3, 2 | s4 = s3 << 2;
| if (v0 != 0) {
0x00002404 bnez v0, 0x2c04 | goto label_33;
| }
| label_4:
0x00002408 lw s1, -0x7fdc(gp) | s1 = *((gp - 8183));
| label_5:
0x0000240c lb v0, -0x197c(s1) | v0 = *((s1 - 6524));
0x00002410 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
| if (v0 == 0) {
0x00002414 beqz v0, 0x2d54 | goto label_34;
| }
| label_12:
0x00002418 lw v1, -0x7fdc(gp) | v1 = *((gp - 8183));
0x0000241c lw v0, (fp) | v0 = *(fp);
0x00002420 lw s6, -0x7fdc(gp) | s6 = *((gp - 8183));
0x00002424 xor s0, v0, s0 | s0 = v0 ^ s0;
0x00002428 lw v0, 0x684(v1) | v0 = *((v1 + 417));
0x0000242c sltiu s0, s0, 1 | s0 = (s0 < 1) ? 1 : 0;
0x00002430 sw v1, 0x44(sp) | *(var_44h) = v1;
0x00002434 sb s0, 0x68d(s6) | *((s6 + 1677)) = s0;
| if (v0 != 0) {
0x00002438 beqz v0, 0x2440 |
0x0000243c sb zero, 0x68d(s6) | *((s6 + 1677)) = 0;
| }
0x00002440 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002444 lw t9, -0x7fb4(gp) | t9 = sym.initenv;
0x00002448 sw v0, 0x38(sp) | *(var_38h) = v0;
0x0000244c bal 0x4730 | sym_initenv ();
0x00002450 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002454 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002458 sw v0, 0x40(sp) | *(var_40h) = v0;
0x0000245c lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00002460 addiu v0, v0, -0x39b0 | v0 += -0x39b0;
0x00002464 sw v0, 0x30(sp) | *(var_30h) = v0;
0x00002468 lw v0, -0x7fb0(gp) | v0 = *((gp - 8172));
0x0000246c addiu v0, v0, 0x3430 | v0 += 0x3430;
0x00002470 sw v0, 0x34(sp) | *(var_34h) = v0;
0x00002474 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002478 addiu v0, v0, -0x54b8 | v0 += -0x54b8;
0x0000247c sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x00002480 b 0x25b8 | goto label_35;
| label_0:
0x00002484 lw a0, 0x3c(sp) | a0 = *(var_3ch);
0x00002488 jalr t9 | t9 ();
0x0000248c lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x00002490 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002494 lw s4, 0x690(v0) | s4 = *((v0 + 420));
| label_2:
0x00002498 lw t9, -0x7ecc(gp) | t9 = sym.imp.tcgetattr;
| label_1:
0x0000249c lw a1, 0x30(sp) | a1 = *(var_30h);
0x000024a0 move a0, zero | a0 = 0;
0x000024a4 jalr t9 | t9 ();
0x000024a8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000024ac lw a1, 0x34(sp) | a1 = *(var_34h);
0x000024b0 lw t9, -0x7d90(gp) | t9 = sym.imp.signal;
0x000024b4 addiu a0, zero, 3 | a0 = 3;
0x000024b8 jalr t9 | t9 ();
0x000024bc lw gp, 0x18(sp) | gp = *(var_18h);
0x000024c0 move a0, s4 | a0 = s4;
0x000024c4 move a3, zero | a3 = 0;
0x000024c8 lw t9, -0x7fac(gp) | t9 = sym.pw_auth;
0x000024cc addiu a2, zero, 1 | a2 = 1;
0x000024d0 addiu a1, s1, -0x197c | a1 = s1 + -0x197c;
0x000024d4 move s4, v0 | s4 = v0;
0x000024d8 bal 0x9990 | sym_pw_auth ();
0x000024dc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000024e0 bnez v0, 0x3160 | goto label_36;
| }
0x000024e4 lw t9, -0x7d90(gp) | t9 = sym.imp.signal;
0x000024e8 move a1, s4 | a1 = s4;
0x000024ec addiu a0, zero, 3 | a0 = 3;
0x000024f0 jalr t9 | t9 ();
0x000024f4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s3 != 0) {
0x000024f8 beqz s3, 0x2510 |
0x000024fc lw t9, -0x7fa8(gp) | t9 = sym.expire;
0x00002500 move a1, s3 | a1 = s3;
0x00002504 move a0, s0 | a0 = s0;
0x00002508 bal 0x40f0 | sym_expire ();
0x0000250c lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00002510 lw t9, -0x7d8c(gp) | t9 = sym.imp.time;
0x00002514 move a0, zero | a0 = 0;
0x00002518 jalr t9 | t9 ();
0x0000251c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002520 move a2, v0 | a2 = v0;
0x00002524 lw v0, 0x38(sp) | v0 = *(var_38h);
0x00002528 lw t9, -0x7fa4(gp) | t9 = sym.isttytime;
0x0000252c addiu a1, v0, -0x5460 | a1 = v0 + -0x5460;
0x00002530 addiu a0, s1, -0x197c | a0 = s1 + -0x197c;
0x00002534 bal 0x90c8 | sym_isttytime ();
0x00002538 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000253c beqz v0, 0x31d0 | goto label_37;
| }
| do {
0x00002540 lw t9, -0x7d90(gp) | t9 = sym.imp.signal;
0x00002544 move a1, zero | a1 = 0;
0x00002548 addiu a0, zero, 2 | a0 = 2;
0x0000254c jalr t9 | t9 ();
0x00002550 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002554 move a1, zero | a1 = 0;
0x00002558 lw t9, -0x7d90(gp) | t9 = sym.imp.signal;
0x0000255c addiu a0, zero, 3 | a0 = 3;
0x00002560 jalr t9 | t9 ();
0x00002564 lw s4, 0x18(s0) | s4 = *((s0 + 6));
0x00002568 addiu v0, zero, 0x2a | v0 = 0x2a;
0x0000256c lb v1, (s4) | v1 = *(s4);
0x00002570 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v1 != v0) {
0x00002574 bne v1, v0, 0x270c | goto label_38;
| }
0x00002578 lw t9, -0x7fa0(gp) | t9 = sym.subsystem
0x0000257c move a0, s0 | a0 = s0;
0x00002580 bal 0x6d30 | sym_subsystem ()
0x00002584 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002588 lw t9, -0x7ea4(gp) | t9 = sym.imp.endpwent;
0x0000258c jalr t9 | t9 ();
0x00002590 nop |
0x00002594 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002598 lw t9, -0x7e68(gp) | t9 = sym.imp.endspent;
0x0000259c jalr t9 | t9 ();
0x000025a0 nop |
0x000025a4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000025a8 lw t9, -0x7fb8(gp) | t9 = sym.pw_free;
0x000025ac move a0, s0 | a0 = s0;
0x000025b0 bal 0x9b80 | sym_pw_free ();
0x000025b4 lw gp, 0x18(sp) | gp = *(var_18h);
| label_35:
0x000025b8 lw t9, -0x7f9c(gp) | t9 = sym.xgetpwnam;
0x000025bc addiu a0, s1, -0x197c | a0 = s1 + -0x197c;
0x000025c0 bal 0x7300 | sym_xgetpwnam ();
0x000025c4 move s0, v0 | s0 = v0;
0x000025c8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000025cc beqz v0, 0x3104 | goto label_39;
| }
0x000025d0 lw t9, -0x7d90(gp) | t9 = sym.imp.signal;
0x000025d4 addiu a1, zero, 1 | a1 = 1;
0x000025d8 addiu a0, zero, 2 | a0 = 2;
0x000025dc jalr t9 | t9 ();
0x000025e0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000025e4 addiu a1, zero, 1 | a1 = 1;
0x000025e8 lw t9, -0x7d90(gp) | t9 = sym.imp.signal;
0x000025ec addiu a0, zero, 3 | a0 = 3;
0x000025f0 jalr t9 | t9 ();
0x000025f4 lbu v0, 0x69c(s5) | v0 = *((s5 + 1692));
0x000025f8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000025fc bnez v0, 0x2540 |
| } while (v0 != 0);
0x00002600 lw v0, 8(s0) | v0 = *((s0 + 2));
0x00002604 lw s4, 4(s0) | s4 = *((s0 + 1));
| if (v0 == 0) {
0x00002608 bnez v0, 0x2624 |
0x0000260c lw v0, 0x40(sp) | v0 = *(var_40h);
0x00002610 lw t9, -0x7fd4(gp) | t9 = sym.getdef_bool;
0x00002614 addiu a0, v0, -0x54f4 | a0 = v0 + -0x54f4;
0x00002618 bal 0x80b8 | sym_getdef_bool ();
0x0000261c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002620 bnez v0, 0x26c4 | goto label_40;
| }
| }
0x00002624 lw t9, -0x7d6c(gp) | t9 = sym.imp.getspnam;
0x00002628 addiu a0, s1, -0x197c | a0 = s1 + -0x197c;
0x0000262c jalr t9 | t9 ();
0x00002630 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002634 lw v1, 0x28(sp) | v1 = *(var_28h);
0x00002638 lw a0, 4(s0) | a0 = *((s0 + 1));
0x0000263c lw t9, -0x7d3c(gp) | t9 = sym.imp.strcmp;
0x00002640 addiu a1, v1, -0x5758 | a1 = v1 + -0x5758;
0x00002644 move s3, v0 | s3 = v0;
0x00002648 jalr t9 | t9 ();
0x0000264c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002650 bnez v0, 0x265c |
0x00002654 lw s4, 4(s3) | s4 = *((s3 + 1));
| if (s3 == 0) {
0x00002658 bnel s3, zero, 0x265c | goto label_41;
| }
| }
| label_41:
0x0000265c lw a2, 8(s0) | a2 = *((s0 + 2));
0x00002660 lw t9, -0x7f98(gp) | t9 = sym.check_su_auth;
0x00002664 sltiu a2, a2, 1 | a2 = (a2 < 1) ? 1 : 0;
0x00002668 addiu a1, s1, -0x197c | a1 = s1 + -0x197c;
0x0000266c addiu a0, s2, -0x397c | a0 = s2 + -0x397c;
0x00002670 bal 0x3ba0 | sym_check_su_auth ();
0x00002674 addiu v1, zero, 1 | v1 = 1;
0x00002678 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == v1) {
0x0000267c beq v0, v1, 0x2700 | goto label_42;
| }
0x00002680 addiu v1, zero, 2 | v1 = 2;
0x00002684 lw t9, -0x7df0(gp) | t9 = sym.imp.puts;
| if (v0 == v1) {
0x00002688 beq v0, v1, 0x2484 | goto label_0;
| }
0x0000268c lw t9, -0x7ecc(gp) | t9 = sym.imp.tcgetattr;
| if (v0 == 0) {
0x00002690 beqz v0, 0x249c | goto label_1;
| }
| do {
0x00002694 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x00002698 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x0000269c lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x000026a0 lw a0, (v0) | a0 = *(v0);
0x000026a4 addiu a3, s1, -0x197c | a3 = s1 + -0x197c;
0x000026a8 addiu a2, a2, -0x54dc | a2 += -0x54dc;
| label_21:
0x000026ac addiu a1, zero, 1 | a1 = 1;
0x000026b0 jalr t9 | t9 ();
0x000026b4 lw gp, 0x18(sp) | gp = *(var_18h);
| label_3:
0x000026b8 lw t9, -0x7e00(gp) | t9 = sym.imp.exit;
0x000026bc addiu a0, zero, 1 | a0 = 1;
0x000026c0 jalr t9 | t9 ();
| label_40:
0x000026c4 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x000026c8 lw t9, -0x7ee0(gp) | t9 = sym.imp.getgrnam;
0x000026cc addiu a0, a0, -0x54e4 | a0 += -0x54e4;
0x000026d0 jalr t9 | t9 ();
0x000026d4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000026d8 beqz v0, 0x2694 |
| } while (v0 == 0);
0x000026dc lw a0, 0xc(v0) | a0 = *((v0 + 3));
0x000026e0 nop |
0x000026e4 sll a0, zero, 0 | a0 = 0;
0x000026e8 addiu a1, s2, -0x397c | a1 = s2 + -0x397c;
0x000026ec bal 0x5f9c | sym_is_on_list ();
0x000026f0 cache 0, -0x34(k0) | __asm ("cache 0, -0x34(k0)");
0x000026f4 invalid |
0x000026f8 invalid |
0x000026fc lw ra, -1(ra) | ra = *((ra - 0.25));
| label_42:
0x00002700 lw v0, 0x24(sp) | v0 = *(var_24h);
0x00002704 addiu s4, v0, -0x4830 | s4 = v0 + -0x4830;
0x00002708 b 0x2498 | goto label_2;
| label_38:
0x0000270c lw s3, -0x7fdc(gp) | s3 = *((gp - 8183));
0x00002710 nop |
0x00002714 lbu v1, 0x69c(s5) | v1 = *((s5 + 1692));
| if (v0 == 0) {
0x00002718 beqz v0, 0x2c70 | goto label_43;
| }
0x0000271c invalid |
0x00002720 lw t9, -0x7f00(gp) | t9 = *((gp - 8128));
0x00002724 move s4, v0 | s4 = v0;
| label_18:
0x00002728 lb v0, (s4) | v0 = *(s4);
| label_7:
0x0000272c lw s4, 0x20(sp) | s4 = *(var_20h);
| if (v0 == 0) {
0x00002730 bnez v0, 0x2744 |
| label_8:
0x00002734 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002738 addiu v0, v0, -0x5400 | v0 += -0x5400;
0x0000273c sw v0, 0x688(s3) | *((s3 + 418)) = v0;
0x00002740 lw s4, 0x20(sp) | s4 = *(var_20h);
| }
0x00002744 lw t9, -0x7fd8(gp) | t9 = sym.sulog;
0x00002748 addiu a3, s1, -0x197c | a3 = s1 + -0x197c;
0x0000274c lw a0, 0x6a0(s4) | a0 = *((s4 + 424));
0x00002750 addiu a2, s2, -0x397c | a2 = s2 + -0x397c;
0x00002754 addiu a1, zero, 1 | a1 = 1;
0x00002758 bal 0x6e30 | sym_sulog ();
0x0000275c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002760 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002764 lw t9, -0x7fd4(gp) | t9 = sym.getdef_bool;
0x00002768 addiu a0, a0, -0x5848 | a0 += -0x5848;
0x0000276c bal 0x80b8 | sym_getdef_bool ();
0x00002770 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002774 beqz v0, 0x27c4 |
0x00002778 lb v0, -0x397c(s2) | v0 = *((s2 - 14716));
0x0000277c lw a3, 0x6a0(s4) | a3 = *((s4 + 424));
| if (v0 != 0) {
0x00002780 bnez v0, 0x2df0 | goto label_44;
| }
0x00002784 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002788 addiu v0, v0, -0x584c | v0 += -0x584c;
| label_16:
0x0000278c lb v1, -0x197c(s1) | v1 = *((s1 - 6524));
0x00002790 addiu s1, s1, -0x197c | s1 += -0x197c;
| if (v1 == 0) {
0x00002794 bnez v1, 0x27a0 |
0x00002798 lw s1, -0x7fd0(gp) | s1 = *((gp - 8180));
0x0000279c addiu s1, s1, -0x584c | s1 += -0x584c;
| }
0x000027a0 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x000027a4 lw t9, -0x7e88(gp) | t9 = sym.imp.__syslog_chk;
0x000027a8 sw s1, 0x14(sp) | *(var_14h) = s1;
0x000027ac sw v0, 0x10(sp) | *(var_10h) = v0;
0x000027b0 invalid |
0x000027b4 addiu a1, zero, 0xff | a1 = 0xff;
0x000027b8 xori zero, t9, 0xf809 | 0 = t9 ^ 0xf809;
0x000027bc nop |
0x000027c0 lw zero, (t8) | 0 = *(t8);
| }
0x000027c4 lbu v0, 0x69c(s5) | v0 = *((s5 + 1692));
0x000027c8 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| if (v0 != 0) {
0x000027cc beqz v0, 0x27dc |
0x000027d0 lbu v0, 0x68c(v0) | v0 = *((v0 + 1676));
0x000027d4 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| if (v0 == 0) {
0x000027d8 beqz v0, 0x27f0 | goto label_45;
| }
| }
0x000027dc lw t9, -0x7f90(gp) | t9 = sym.setup_limits;
0x000027e0 move a0, s0 | a0 = s0;
0x000027e4 bal 0x57c0 | sym_setup_limits ();
0x000027e8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000027ec lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| label_45:
0x000027f0 lw t9, -0x7f8c(gp) | t9 = sym.setup_uid_gid;
0x000027f4 move a0, s0 | a0 = s0;
0x000027f8 lbu a1, 0x694(v0) | a1 = *((v0 + 1684));
0x000027fc bal 0x6488 | sym_setup_uid_gid ();
0x00002800 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002804 bnez v0, 0x26b8 | goto label_3;
| }
0x00002808 lw s2, -0x7fdc(gp) | s2 = *((gp - 8183));
0x0000280c lbu v0, -0x3ff0(s2) | v0 = *((s2 - 16368));
0x00002810 lw s1, -0x7ed0(gp) | s1 = *((gp - 8116));
| if (v0 != 0) {
0x00002814 beqz v0, 0x2828 |
0x00002818 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x0000281c lbu v0, 0x68c(v0) | v0 = *((v0 + 1676));
0x00002820 lw s1, -0x7fd0(gp) | s1 = *((gp - 8180));
| if (v0 == 0) {
0x00002824 bnel v0, zero, 0x2f10 | goto label_46;
| }
| }
0x00002828 lw s4, (s1) | s4 = *(s1);
0x0000282c lw a0, (s4) | a0 = *(s4);
| if (a0 == 0) {
0x00002830 beql a0, zero, 0x2858 | goto label_47;
| }
0x00002834 lw v0, 8(s0) | v0 = *((s0 + 2));
| do {
0x00002838 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x0000283c addiu s4, s4, 4 | s4 += 4;
0x00002840 move a1, zero | a1 = 0;
0x00002844 bal 0x4770 | sym_addenv ();
0x00002848 lw a0, (s4) | a0 = *(s4);
0x0000284c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002850 bnez a0, 0x2838 |
| } while (a0 != 0);
| label_24:
0x00002854 lw v0, 8(s0) | v0 = *((s0 + 2));
| label_47:
0x00002858 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
| if (v0 == 0) {
0x0000285c beqz v0, 0x2d1c | goto label_48;
| }
0x00002860 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002864 addiu a0, a0, -0x5820 | a0 += -0x5820;
| label_9:
0x00002868 lw t9, -0x7f84(gp) | t9 = sym.getdef_str;
0x0000286c bal 0x8038 | sym_getdef_str ();
0x00002870 nop |
0x00002874 move s4, v0 | s4 = v0;
0x00002878 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000287c beqz v0, 0x2dc8 | goto label_49;
| }
0x00002880 lw t9, -0x7e20(gp) | t9 = sym.imp.strchr;
0x00002884 addiu a1, zero, 0x3d | a1 = 0x3d;
0x00002888 move a0, v0 | a0 = v0;
0x0000288c jalr t9 | t9 ();
0x00002890 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002894 lw t9, -0x7f88(gp) | t9 = sym.addenv;
| if (v0 == 0) {
0x00002898 beqz v0, 0x2df8 | goto label_50;
| }
0x0000289c move a1, zero | a1 = 0;
0x000028a0 move a0, s4 | a0 = s4;
0x000028a4 bal 0x4770 | sym_addenv ();
0x000028a8 lw gp, 0x18(sp) | gp = *(var_18h);
| label_15:
0x000028ac lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x000028b0 lw t9, -0x7ddc(gp) | t9 = sym.imp.getenv;
0x000028b4 lwc2 4, -0x53b4(gp) | __asm ("lwc2 4, -0x53b4(gp)");
0x000028b8 jalr t9 | t9 ();
0x000028bc invalid |
0x000028c0 lw zero, (t8) | 0 = *(t8);
0x000028c4 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x000028c8 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x000028cc move a1, zero | a1 = 0;
0x000028d0 addiu a0, a0, -0x53b0 | a0 += -0x53b0;
0x000028d4 bal 0x4770 | sym_addenv ();
0x000028d8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000028dc lw v1, -0x7f80(gp) | v1 = *(gp);
0x000028e0 lbu v0, -0x3ff0(s2) | v0 = *((s2 - 16368));
0x000028e4 lw v1, (v1) | v1 = *(v1);
0x000028e8 sw v1, (s1) | *(s1) = v1;
| if (v0 != 0) {
0x000028ec beqz v0, 0x2940 |
0x000028f0 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x000028f4 lbu v0, 0x68c(v0) | v0 = *((v0 + 1676));
0x000028f8 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
| if (v0 == 0) {
0x000028fc beqz v0, 0x2eb0 | goto label_51;
| }
0x00002900 lw a0, 0x18(s0) | a0 = *((s0 + 6));
0x00002904 lw s2, 0x688(s3) | s2 = *((s3 + 418));
0x00002908 lw t9, -0x7d70(gp) | t9 = sym.imp.free;
| if (a0 != s2) {
0x0000290c beq a0, s2, 0x2930 |
0x00002910 jalr t9 | t9 ();
0x00002914 nop |
0x00002918 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000291c lw t9, -0x7fbc(gp) | t9 = sym.xstrdup;
0x00002920 move a0, s2 | a0 = s2;
0x00002924 bal 0x77e4 | sym_xstrdup ();
0x00002928 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000292c sw v0, 0x18(s0) | *((s0 + 6)) = v0;
| }
0x00002930 lw t9, -0x7f7c(gp) | t9 = sym.setup_env;
0x00002934 move a0, s0 | a0 = s0;
0x00002938 bal 0x6800 | sym_setup_env ();
0x0000293c lw gp, 0x18(sp) | gp = *(var_18h);
| }
| label_23:
0x00002940 lbu v0, 0x68d(s6) | v0 = *((s6 + 1677));
0x00002944 lw t9, -0x7ea4(gp) | t9 = sym.imp.endpwent;
| if (v0 == 0) {
0x00002948 bnez v0, 0x298c |
0x0000294c lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002950 lw t9, -0x7e40(gp) | t9 = sym.imp.open64;
0x00002954 addiu a1, zero, 2 | a1 = 2;
0x00002958 addiu a0, a0, -0x5398 | a0 += -0x5398;
0x0000295c jalr t9 | t9 ();
0x00002960 move s2, v0 | s2 = v0;
0x00002964 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 >= 0) {
0x00002968 bgez v0, 0x2e3c | goto label_52;
| }
0x0000296c lw t9, -0x7e5c(gp) | t9 = sym.imp.__errno_location;
0x00002970 jalr t9 | t9 ();
0x00002974 nop |
0x00002978 lw v1, (v0) | v1 = *(v0);
0x0000297c addiu v0, zero, 6 | v0 = 6;
0x00002980 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v1 != v0) {
0x00002984 bne v1, v0, 0x2e70 | goto label_53;
| }
| label_20:
0x00002988 lw t9, -0x7ea4(gp) | t9 = sym.imp.endpwent;
| }
0x0000298c jalr t9 | t9 ();
0x00002990 nop |
0x00002994 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002998 lw t9, -0x7e68(gp) | t9 = sym.imp.endspent;
0x0000299c jalr t9 | t9 ();
0x000029a0 nop |
0x000029a4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000029a8 lw t9, -0x7e18(gp) | t9 = sym.imp.closelog;
0x000029ac jalr t9 | t9 ();
0x000029b0 nop |
0x000029b4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000029b8 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x000029bc lbu v0, 0x68c(v0) | v0 = *((v0 + 1676));
0x000029c0 invalid |
0x000029c4 lw zero, 0x27(t8) | 0 = *((t8 + 9.75));
0x000029c8 bgtz t8, 0x29c8 |
0x000029cc lw t9, (gp) | t9 = *(gp);
0x000029d0 addiu a0, a0, -0x5360 | a0 += -0x5360;
0x000029d4 bal 0x8038 | sym_getdef_str ();
0x000029d8 move s2, v0 | s2 = v0;
0x000029dc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000029e0 beqz v0, 0x302c | goto label_54;
| }
| label_25:
0x000029e4 lw t9, -0x7e28(gp) | t9 = sym.imp.strlen;
0x000029e8 move a0, s2 | a0 = s2;
0x000029ec jalr t9 | t9 ();
0x000029f0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000029f4 lw t9, -0x7f78(gp) | t9 = sym.xmalloc;
0x000029f8 addiu a0, v0, 2 | a0 = v0 + 2;
0x000029fc bal 0x7740 | sym_xmalloc ();
0x00002a00 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002a04 move s4, v0 | s4 = v0;
0x00002a08 addiu v0, zero, 0x2d | v0 = 0x2d;
0x00002a0c lw t9, -0x7dd4(gp) | t9 = sym.imp.strcpy;
0x00002a10 sb v0, (s4) | *(s4) = v0;
0x00002a14 move a1, s2 | a1 = s2;
0x00002a18 addiu a0, s4, 1 | a0 = s4 + 1;
0x00002a1c jalr t9 | t9 ();
0x00002a20 lw gp, 0x18(sp) | gp = *(var_18h);
| label_10:
0x00002a24 lbu v0, 0x68d(s6) | v0 = *((s6 + 1677));
0x00002a28 lw s5, 0x688(s3) | s5 = *((s3 + 418));
0x00002a2c lw s1, (s1) | s1 = *(s1);
| if (v0 != 0) {
0x00002a30 bnez v0, 0x2dac | goto label_55;
| }
0x00002a34 lw v0, 0x44(sp) | v0 = *(var_44h);
0x00002a38 lw s2, (fp) | s2 = *(fp);
0x00002a3c lw v0, 0x684(v0) | v0 = *((v0 + 417));
0x00002a40 sll s2, s2, 2 | s2 <<= 2;
0x00002a44 addu s2, s7, s2 | s2 = s7 + s2;
| if (v0 != 0) {
0x00002a48 beqz v0, 0x2a60 |
0x00002a4c sw v0, -4(s2) | *((s2 - 1)) = v0;
0x00002a50 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002a54 addiu s2, s2, -8 | s2 += -8;
0x00002a58 addiu v0, v0, -0x5358 | v0 += -0x5358;
0x00002a5c sw v0, (s2) | *(s2) = v0;
| }
0x00002a60 lw t9, -0x7e34(gp) | t9 = sym.imp.execve;
0x00002a64 move a2, s1 | a2 = s1;
0x00002a68 addiu a1, s2, -4 | a1 = s2 + -4;
0x00002a6c move a0, s5 | a0 = s5;
0x00002a70 sw s4, -4(s2) | *((s2 - 1)) = s4;
0x00002a74 jalr t9 | t9 ();
0x00002a78 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002a7c lw t9, -0x7e5c(gp) | t9 = sym.imp.__errno_location;
0x00002a80 jalr t9 | t9 ();
0x00002a84 nop |
0x00002a88 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002a8c addiu a1, zero, 5 | a1 = 5;
0x00002a90 move a0, s5 | a0 = s5;
0x00002a94 lw t9, -0x7e74(gp) | t9 = sym.imp.access;
0x00002a98 move s4, v0 | s4 = v0;
0x00002a9c lw s6, (v0) | s6 = *(v0);
0x00002aa0 jalr t9 | t9 ();
0x00002aa4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002aa8 bnez v0, 0x2da4 | goto label_56;
| }
0x00002aac lw v0, -4(s2) | v0 = *((s2 - 1));
0x00002ab0 move v0, s2 | v0 = s2;
| if (v0 == 0) {
0x00002ab4 beqz v0, 0x30ac | goto label_57;
| }
0x00002ab8 move a0, zero | a0 = 0;
0x00002abc b 0x2ac4 |
| while (a1 != 0) {
0x00002ac0 move a0, s7 | a0 = s7;
0x00002ac4 addiu v0, v0, 4 | v0 += 4;
0x00002ac8 lw a1, 0xfc(v0) | a1 = *((v0 + 63));
0x00002acc addiu s7, a0, 1 | s7 = a0 + 1;
0x00002ad0 bnez a1, 0x2ac0 |
| }
0x00002ad4 addiu a0, a0, 4 | a0 += 4;
0x00002ad8 lw t9, -0x7f78(gp) | t9 = sym.xmalloc;
0x00002adc sll s6, a0, 2 | s6 = a0 << 2;
0x00002ae0 move a0, s6 | a0 = s6;
0x00002ae4 bal 0x7740 | sym_xmalloc ();
0x00002ae8 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002aec move fp, v0 | fp = v0;
0x00002af0 move a0, s5 | a0 = s5;
0x00002af4 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002af8 lw t9, -0x7fbc(gp) | t9 = sym.xstrdup;
0x00002afc addiu v0, v0, -0x5354 | v0 += -0x5354;
0x00002b00 sw v0, (fp) | *(fp) = v0;
0x00002b04 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x00002b08 addu s6, fp, s6 | s6 = fp + s6;
0x00002b0c addiu v0, v0, -0x4d78 | v0 += -0x4d78;
0x00002b10 sw v0, 4(fp) | *(arg_4h) = v0;
0x00002b14 bal 0x77e4 | sym_xstrdup ();
0x00002b18 addiu a0, zero, 1 | a0 = 1;
0x00002b1c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002b20 sw v0, 8(fp) | *(arg_8h) = v0;
0x00002b24 sw zero, -4(s6) | *((s6 - 1)) = 0;
| if (s7 == a0) {
0x00002b28 beq s7, a0, 0x2b58 | goto label_58;
| }
| label_26:
0x00002b2c sll s7, s7, 2 | s7 <<= 2;
0x00002b30 move v0, s7 | v0 = s7;
0x00002b34 addiu s7, s7, -8 | s7 += -8;
0x00002b38 addu s7, s2, s7 | s7 = s2 + s7;
0x00002b3c addu v0, fp, v0 | v0 = fp + v0;
0x00002b40 addiu a1, fp, 4 | a1 = fp + 4;
| do {
0x00002b44 lw a0, (s7) | a0 = *(s7);
0x00002b48 addiu v0, v0, -4 | v0 += -4;
0x00002b4c addiu s7, s7, -4 | s7 += -4;
0x00002b50 sw a0, 8(v0) | *((v0 + 2)) = a0;
0x00002b54 bne a1, v0, 0x2b44 |
| } while (a1 != v0);
| label_58:
0x00002b58 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002b5c lw t9, -0x7e34(gp) | t9 = sym.imp.execve;
0x00002b60 move a2, s1 | a2 = s1;
0x00002b64 move a1, fp | a1 = fp;
0x00002b68 addiu a0, a0, -0x5400 | a0 += -0x5400;
0x00002b6c jalr t9 | t9 ();
0x00002b70 lw gp, 0x18(sp) | gp = *(var_18h);
| label_13:
0x00002b74 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x00002b78 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00002b7c lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x00002b80 lw s1, (s4) | s1 = *(s4);
0x00002b84 lw a3, 0x688(s3) | a3 = *((s3 + 418));
0x00002b88 lw a0, (v0) | a0 = *(v0);
0x00002b8c addiu a2, a2, -0x5350 | a2 += -aav.0x00005350;
0x00002b90 addiu a1, zero, 1 | a1 = 1;
0x00002b94 jalr t9 | t9 ();
0x00002b98 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002b9c sw s1, (s4) | *(s4) = s1;
| label_14:
0x00002ba0 lw t9, -0x7fb8(gp) | t9 = sym.pw_free;
0x00002ba4 move a0, s0 | a0 = s0;
0x00002ba8 bal 0x9b80 | sym_pw_free ();
0x00002bac lw gp, 0x18(sp) | gp = *(var_18h);
0x00002bb0 lw t9, -0x7e5c(gp) | t9 = sym.imp.__errno_location;
0x00002bb4 jalr t9 | t9 ();
0x00002bb8 nop |
0x00002bbc lw v0, (v0) | v0 = *(v0);
0x00002bc0 lw ra, 0x74(sp) | ra = *(var_74h);
0x00002bc4 xori v0, v0, 2 | v0 ^= 2;
0x00002bc8 addiu a0, zero, 0x7f | a0 = 0x7f;
0x00002bcc addiu v1, zero, 0x7e | v1 = 0x7e;
| if (v0 != 0) {
0x00002bd0 movz v1, a0, v0 | v1 = a0;
| }
0x00002bd4 lw fp, 0x70(sp) | fp = *(var_70h);
0x00002bd8 lw s7, 0x6c(sp) | s7 = *(var_6ch);
0x00002bdc lw s6, 0x68(sp) | s6 = *(var_68h);
0x00002be0 lw s5, 0x64(sp) | s5 = *(var_64h);
0x00002be4 lw s4, 0x60(sp) | s4 = *(var_60h);
0x00002be8 lw s3, 0x5c(sp) | s3 = *(var_5ch);
0x00002bec lw s2, 0x58(sp) | s2 = *(var_58h);
0x00002bf0 lw s1, 0x54(sp) | s1 = *(var_54h);
0x00002bf4 lw s0, 0x50(sp) | s0 = *(var_50h);
0x00002bf8 move v0, v1 | v0 = v1;
0x00002bfc addiu sp, sp, 0x78 |
0x00002c00 jr ra | return v0;
| label_33:
0x00002c04 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x00002c08 lw t9, -0x7d3c(gp) | t9 = sym.imp.strcmp;
0x00002c0c lwx a0, s4(s7) | __asm ("lwx a0, s4(s7)");
0x00002c10 addiu a1, a1, -0x4d78 | a1 += -0x4d78;
0x00002c14 jalr t9 | t9 ();
0x00002c18 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002c1c bnez v0, 0x2c40 | goto label_59;
| }
0x00002c20 lw v1, -0x7fdc(gp) | v1 = *((gp - 8183));
0x00002c24 addiu s3, s3, 1 | s3++;
0x00002c28 addiu a0, zero, 1 | a0 = 1;
0x00002c2c slt v0, s3, s0 | v0 = (s3 < s0) ? 1 : 0;
0x00002c30 sb a0, 0x68c(v1) | *((v1 + 1676)) = a0;
0x00002c34 sw s3, (fp) | *(fp) = s3;
| if (v0 == 0) {
0x00002c38 beqz v0, 0x2408 | goto label_4;
| }
0x00002c3c sll s4, s3, 2 | s4 = s3 << 2;
| label_59:
0x00002c40 lw s1, -0x7fdc(gp) | s1 = *((gp - 8183));
0x00002c44 lw t9, -0x7e60(gp) | t9 = sym.imp.strncpy;
0x00002c48 lwx a1, s4(s7) | __asm ("lwx a1, s4(s7)");
0x00002c4c addiu s3, s3, 1 | s3++;
0x00002c50 addiu a2, zero, 0x1fff | a2 = 0x1fff;
0x00002c54 addiu a0, s1, -0x197c | a0 = s1 + -0x197c;
0x00002c58 sw s3, (fp) | *(fp) = s3;
0x00002c5c jalr t9 | t9 ();
0x00002c60 addiu v0, s1, -0x197c | v0 = s1 + -0x197c;
0x00002c64 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002c68 sb zero, 0x1fff(v0) | *((v0 + 8191)) = 0;
0x00002c6c b 0x240c | goto label_5;
| label_43:
0x00002c70 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00002c74 lbu v0, -0x3ff0(v0) | v0 = *((v0 - 16368));
0x00002c78 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
| if (v0 != 0) {
0x00002c7c bnez v0, 0x2e10 | goto label_60;
| }
0x00002c80 lw t9, -0x7ddc(gp) | t9 = sym.imp.getenv;
0x00002c84 sw v1, 0x24(sp) | *(var_24h) = v1;
0x00002c88 addiu a0, a0, -0x5408 | a0 += -0x5408;
0x00002c8c jalr t9 | t9 ();
0x00002c90 lw v1, 0x24(sp) | v1 = *(var_24h);
0x00002c94 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002c98 sw v0, 0x688(s3) | *((s3 + 418)) = v0;
| if (v1 != 0) {
0x00002c9c bnez v1, 0x2cfc | goto label_61;
| }
0x00002ca0 lw s4, 0x18(s0) | s4 = *((s0 + 6));
0x00002ca4 lw t9, -0x7e08(gp) | t9 = sym.imp.setusershell;
| label_17:
0x00002ca8 jalr t9 | t9 ();
0x00002cac nop |
0x00002cb0 lw gp, 0x18(sp) | gp = *(var_18h);
| do {
| label_6:
0x00002cb4 lw t9, -0x7d48(gp) | t9 = sym.imp.getusershell;
0x00002cb8 jalr t9 | t9 ();
0x00002cbc nop |
0x00002cc0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002cc4 beqz v0, 0x2e90 | goto label_62;
| }
0x00002cc8 lb v1, (v0) | v1 = *(v0);
0x00002ccc addiu a0, zero, 0x23 | a0 = 0x23;
0x00002cd0 lw t9, -0x7d3c(gp) | t9 = sym.imp.strcmp;
0x00002cd4 beq v1, a0, 0x2cb4 |
| } while (v1 == a0);
0x00002cd8 move a1, s4 | a1 = s4;
0x00002cdc move a0, v0 | a0 = v0;
0x00002ce0 jalr t9 | t9 ();
0x00002ce4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002ce8 bnez v0, 0x2cb4 | goto label_6;
| }
0x00002cec lw t9, -0x7d88(gp) | t9 = sym.imp.endusershell;
0x00002cf0 jalr t9 | t9 ();
0x00002cf4 nop |
0x00002cf8 lw gp, 0x18(sp) | gp = *(var_18h);
| label_61:
0x00002cfc lw s4, 0x688(s3) | s4 = *((s3 + 418));
0x00002d00 lb v0, (s4) | v0 = *(s4);
| if (s4 == 0) {
0x00002d04 bnel s4, zero, 0x272c | goto label_7;
| }
| label_22:
0x00002d08 lw s4, 0x18(s0) | s4 = *((s0 + 6));
0x00002d0c sw s4, 0x688(s3) | *((s3 + 418)) = s4;
| if (s4 == 0) {
0x00002d10 beqz s4, 0x2734 | goto label_8;
| }
0x00002d14 lb v0, (s4) | v0 = *(s4);
0x00002d18 b 0x272c | goto label_7;
| label_48:
0x00002d1c addiu a0, a0, -0x582c | a0 += -0x582c;
0x00002d20 b 0x2868 | goto label_9;
0x00002d24 lw a0, 0x688(s3) | a0 = *((s3 + 418));
0x00002d28 bal 0x4510 | sym_Basename ();
0x00002d2c move s4, v0 | s4 = v0;
0x00002d30 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002d34 b 0x2a24 | goto label_10;
| label_31:
0x00002d38 lw t9, -0x7d6c(gp) | t9 = sym.imp.getspnam;
0x00002d3c lw a0, 0x48(sp) | a0 = *(var_48h);
0x00002d40 jalr t9 | t9 ();
0x00002d44 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002d48 beqz v0, 0x22f0 | goto label_11;
| }
0x00002d4c lw s3, 4(v0) | s3 = *((v0 + 1));
0x00002d50 b 0x22f0 | goto label_11;
| label_34:
0x00002d54 lw t9, -0x7d30(gp) | t9 = sym.imp.getpwnam;
0x00002d58 addiu a0, a0, -0x5554 | a0 += -0x5554;
0x00002d5c jalr t9 | t9 ();
0x00002d60 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002d64 beqz v0, 0x2d74 |
0x00002d68 lw v0, 8(v0) | v0 = *((v0 + 2));
0x00002d6c addiu v1, s1, -0x197c | v1 = s1 + -0x197c;
| if (v0 == 0) {
0x00002d70 beqz v0, 0x2e28 | goto label_63;
| }
| }
0x00002d74 lw t9, -0x7d54(gp) | t9 = sym.imp.getpwuid;
0x00002d78 move a0, zero | a0 = 0;
0x00002d7c jalr t9 | t9 ();
0x00002d80 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00002d84 beqz v0, 0x3298 | goto label_64;
| }
0x00002d88 lw t9, -0x7e7c(gp) | t9 = sym.imp.__strcpy_chk;
0x00002d8c lw a1, (v0) | a1 = *(v0);
0x00002d90 addiu a2, zero, 0x2000 | a2 = 0x2000;
0x00002d94 addiu a0, s1, -0x197c | a0 = s1 + -0x197c;
0x00002d98 jalr t9 | t9 ();
0x00002d9c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002da0 b 0x2418 | goto label_12;
| label_56:
0x00002da4 sw s6, (s4) | *(s4) = s6;
0x00002da8 b 0x2b74 | goto label_13;
| label_55:
0x00002dac lw t9, -0x7f74(gp) | t9 = sym.shell;
0x00002db0 move a2, s1 | a2 = s1;
0x00002db4 move a1, s4 | a1 = s4;
0x00002db8 move a0, s5 | a0 = s5;
0x00002dbc bal 0x6b80 | sym_shell ();
0x00002dc0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002dc4 b 0x2ba0 | goto label_14;
| label_49:
0x00002dc8 lw v0, 8(s0) | v0 = *((s0 + 2));
| if (v0 == 0) {
0x00002dcc beql v0, zero, 0x2e20 | goto label_65;
| }
0x00002dd0 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002dd4 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002dd8 addiu a0, a0, -0x57f0 | a0 += -0x57f0;
| label_19:
0x00002ddc lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002de0 move a1, zero | a1 = 0;
0x00002de4 bal 0x4770 | sym_addenv ();
0x00002de8 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002dec b 0x28ac | goto label_15;
| label_44:
0x00002df0 lw v0, 0x48(sp) | v0 = *(var_48h);
0x00002df4 b 0x278c | goto label_16;
| label_50:
0x00002df8 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002dfc move a1, s4 | a1 = s4;
0x00002e00 addiu a0, a0, -0x581c | a0 += -0x581c;
0x00002e04 bal 0x4770 | sym_addenv ();
0x00002e08 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002e0c b 0x28ac | goto label_15;
| label_60:
0x00002e10 lw t9, -0x7e08(gp) | t9 = sym.imp.setusershell;
| if (v1 == 0) {
0x00002e14 beqz v1, 0x2ca8 | goto label_17;
| }
0x00002e18 sw s4, 0x688(s3) | *((s3 + 418)) = s4;
0x00002e1c b 0x2728 | goto label_18;
| label_65:
0x00002e20 addiu a0, a0, -0x5814 | a0 += -0x5814;
0x00002e24 b 0x2ddc | goto label_19;
| label_63:
0x00002e28 lui v0, 0x746f | v0 = 0x746f6f72;
0x00002e2c addiu v0, v0, 0x6f72 |
0x00002e30 sw v0, -0x197c(s1) | *((s1 - 1631)) = v0;
0x00002e34 sb zero, 4(v1) | *((v1 + 4)) = 0;
0x00002e38 b 0x2418 | goto label_12;
| label_52:
0x00002e3c lw t9, -0x7dc4(gp) | t9 = sym.imp.ioctl;
0x00002e40 move a2, zero | a2 = 0;
0x00002e44 addiu a1, zero, 0x5471 | a1 = 0x5471;
0x00002e48 move a0, v0 | a0 = v0;
0x00002e4c jalr t9 | t9 ();
0x00002e50 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002e54 move a0, s2 | a0 = s2;
0x00002e58 lw t9, -0x7ee4(gp) | t9 = sym.imp.close;
0x00002e5c move s2, v0 | s2 = v0;
0x00002e60 jalr t9 | t9 ();
0x00002e64 addiu v0, zero, -1 | v0 = -1;
0x00002e68 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s2 != v0) {
0x00002e6c bne s2, v0, 0x2988 | goto label_20;
| }
| label_53:
0x00002e70 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x00002e74 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00002e78 lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x00002e7c lw a0, (v0) | a0 = *(v0);
0x00002e80 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x00002e84 addiu a2, a2, -0x538c | a2 += -0x538c;
0x00002e88 lw a3, (v0) | a3 = *(v0);
0x00002e8c b 0x26ac | goto label_21;
| label_62:
0x00002e90 lw t9, -0x7d88(gp) | t9 = sym.imp.endusershell;
0x00002e94 jalr t9 | t9 ();
0x00002e98 nop |
0x00002e9c lw gp, 0x18(sp) | gp = *(var_18h);
0x00002ea0 addiu v1, zero, 1 | v1 = 1;
0x00002ea4 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00002ea8 sb v1, -0x3ff0(v0) | *((v0 - 16368)) = v1;
0x00002eac b 0x2d08 | goto label_22;
| label_51:
0x00002eb0 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002eb4 lw a1, 0x14(s0) | a1 = *((s0 + 5));
0x00002eb8 addiu a0, a0, -0x4978 | a0 += -0x4978;
0x00002ebc bal 0x4770 | sym_addenv ();
0x00002ec0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002ec4 lw a1, (s0) | a1 = *(s0);
0x00002ec8 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002ecc lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002ed0 addiu a0, a0, -0x53a8 | a0 += -0x53a8;
0x00002ed4 bal 0x4770 | sym_addenv ();
0x00002ed8 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002edc lw a1, (s0) | a1 = *(s0);
0x00002ee0 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002ee4 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002ee8 addiu a0, a0, -0x53a0 | a0 += -0x53a0;
0x00002eec bal 0x4770 | sym_addenv ();
0x00002ef0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002ef4 lw a1, 0x688(s3) | a1 = *((s3 + 418));
0x00002ef8 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002efc lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002f00 addiu a0, a0, -0x5408 | a0 += -0x5408;
0x00002f04 bal 0x4770 | sym_addenv ();
0x00002f08 lw gp, 0x18(sp) | gp = *(var_18h);
0x00002f0c b 0x2940 | goto label_23;
| label_46:
0x00002f10 lw t9, -0x7ddc(gp) | t9 = sym.imp.getenv;
0x00002f14 addiu a0, s1, -0x53ec | a0 = s1 + -0x53ec;
0x00002f18 jalr t9 | t9 ();
0x00002f1c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002f20 beqz v0, 0x2f38 |
0x00002f24 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002f28 move a1, v0 | a1 = v0;
0x00002f2c addiu a0, s1, -0x53ec | a0 = s1 + -0x53ec;
0x00002f30 bal 0x4770 | sym_addenv ();
0x00002f34 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00002f38 lw s1, -0x7fd0(gp) | s1 = *((gp - 8180));
0x00002f3c lw t9, -0x7ddc(gp) | t9 = sym.imp.getenv;
0x00002f40 addiu a0, s1, -0x53e4 | a0 = s1 + -0x53e4;
0x00002f44 jalr t9 | t9 ();
0x00002f48 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002f4c beqz v0, 0x2f64 |
0x00002f50 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002f54 move a1, v0 | a1 = v0;
0x00002f58 addiu a0, s1, -0x53e4 | a0 = s1 + -0x53e4;
0x00002f5c bal 0x4770 | sym_addenv ();
0x00002f60 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00002f64 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002f68 lw t9, -0x7f84(gp) | t9 = sym.getdef_str;
0x00002f6c addiu a0, a0, -0x53d8 | a0 += -0x53d8;
0x00002f70 bal 0x8038 | sym_getdef_str ();
0x00002f74 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002f78 beqz v0, 0x2fa0 |
0x00002f7c lb a0, (v0) | a0 = *(v0);
0x00002f80 addiu v1, zero, 0x2f | v1 = 0x2f;
0x00002f84 lw t9, -0x7f70(gp) | t9 = sym.tz;
| if (a0 == v1) {
0x00002f88 beq a0, v1, 0x30f4 | goto label_66;
| }
| label_27:
0x00002f8c lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002f90 move a1, zero | a1 = 0;
0x00002f94 move a0, v0 | a0 = v0;
0x00002f98 bal 0x4770 | sym_addenv ();
0x00002f9c lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00002fa0 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00002fa4 lw t9, -0x7f84(gp) | t9 = sym.getdef_str;
0x00002fa8 addiu a0, a0, -0x53d0 | a0 += -0x53d0;
0x00002fac bal 0x8038 | sym_getdef_str ();
0x00002fb0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002fb4 beqz v0, 0x2fcc |
0x00002fb8 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002fbc move a1, zero | a1 = 0;
0x00002fc0 move a0, v0 | a0 = v0;
0x00002fc4 bal 0x4770 | sym_addenv ();
0x00002fc8 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00002fcc lw s1, -0x7fd0(gp) | s1 = *((gp - 8180));
0x00002fd0 lw t9, -0x7ddc(gp) | t9 = sym.imp.getenv;
0x00002fd4 addiu a0, s1, -0x53c8 | a0 = s1 + -0x53c8;
0x00002fd8 jalr t9 | t9 ();
0x00002fdc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00002fe0 beqz v0, 0x2ff8 |
0x00002fe4 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00002fe8 move a1, v0 | a1 = v0;
0x00002fec addiu a0, s1, -0x53c8 | a0 = s1 + -0x53c8;
0x00002ff0 bal 0x4770 | sym_addenv ();
0x00002ff4 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00002ff8 lw s1, -0x7fd0(gp) | s1 = *((gp - 8180));
0x00002ffc lw t9, -0x7ddc(gp) | t9 = sym.imp.getenv;
0x00003000 addiu a0, s1, -0x53c0 | a0 = s1 + -0x53c0;
0x00003004 jalr t9 | t9 ();
0x00003008 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000300c beqz v0, 0x3044 |
0x00003010 lw t9, -0x7f88(gp) | t9 = sym.addenv;
0x00003014 addiu a0, s1, -0x53c0 | a0 = s1 + -0x53c0;
0x00003018 move a1, v0 | a1 = v0;
0x0000301c bal 0x4770 | sym_addenv ();
0x00003020 lw gp, 0x18(sp) | gp = *(var_18h);
0x00003024 lw s1, -0x7ed0(gp) | s1 = *((gp - 8116));
0x00003028 b 0x2854 | goto label_24;
| label_54:
0x0000302c lw t9, -0x7fc8(gp) | t9 = sym.Basename;
0x00003030 lw a0, 0x688(s3) | a0 = *((s3 + 418));
0x00003034 bal 0x4510 | sym_Basename ();
0x00003038 move s2, v0 | s2 = v0;
0x0000303c lw gp, 0x18(sp) | gp = *(var_18h);
0x00003040 b 0x29e4 | goto label_25;
| }
0x00003044 lw s1, -0x7ed0(gp) | s1 = *((gp - 8116));
0x00003048 b 0x2854 | goto label_24;
| label_32:
0x0000307c lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x00003080 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x00003084 lw t9, -0x7dcc(gp) | t9 = sym.imp.fwrite;
0x00003088 lw a3, (v0) | a3 = *(v0);
0x0000308c addiu a0, a0, -0x5750 | a0 += -0x5750;
| while (t8 > 0);
0x00003090 addiu a2, zero, 0x1ee | a2 = 0x1ee;
0x00003094 addiu a1, zero, 1 | a1 = 1;
0x00003098 jalr t9 | t9 ();
0x0000309c lw gp, 0x18(sp) | gp = *(var_18h);
0x000030a0 lw t9, -0x7e00(gp) | t9 = sym.imp.exit;
0x000030a4 addiu a0, zero, 2 | a0 = 2;
0x000030a8 jalr t9 | t9 ();
| label_57:
0x000030ac lw t9, -0x7f78(gp) | t9 = sym.xmalloc;
0x000030b0 addiu a0, zero, 0xc | a0 = 0xc;
0x000030b4 bal 0x7740 | sym_xmalloc ();
0x000030b8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000030bc move fp, v0 | fp = v0;
0x000030c0 move a0, s5 | a0 = s5;
0x000030c4 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x000030c8 lw t9, -0x7fbc(gp) | t9 = sym.xstrdup;
0x000030cc addiu v0, v0, -0x5354 | v0 += -0x5354;
0x000030d0 sw v0, (fp) | *(fp) = v0;
0x000030d4 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
0x000030d8 move s7, zero | s7 = 0;
0x000030dc addiu v0, v0, -0x4d78 | v0 += -0x4d78;
0x000030e0 sw v0, 4(fp) | *(arg_4h) = v0;
0x000030e4 bal 0x77e4 | sym_xstrdup ();
0x000030e8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000030ec sw zero, 8(fp) | *(arg_8h) = 0;
0x000030f0 b 0x2b2c | goto label_26;
| label_66:
0x000030f4 move a0, v0 | a0 = v0;
0x000030f8 bal 0x7100 | sym_tz ();
0x000030fc lw gp, 0x18(sp) | gp = *(var_18h);
0x00003100 b 0x2f8c | goto label_27;
| label_39:
0x00003104 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x00003108 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x0000310c lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x00003110 lw a0, (v0) | a0 = *(v0);
0x00003114 addiu a3, s1, -0x197c | a3 = s1 + -0x197c;
0x00003118 addiu a2, a2, -0x5534 | a2 += -0x5534;
0x0000311c addiu a1, zero, 1 | a1 = 1;
0x00003120 jalr t9 | t9 ();
0x00003124 lw gp, 0x18(sp) | gp = *(var_18h);
0x00003128 addiu a1, zero, 1 | a1 = 1;
0x0000312c addiu a0, zero, 5 | a0 = 5;
0x00003130 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003134 lw t9, -0x7e88(gp) | t9 = sym.imp.__syslog_chk;
0x00003138 addiu a3, s1, -0x197c | a3 = s1 + -0x197c;
0x0000313c addiu a2, a2, -0x5514 | a2 += -0x5514;
0x00003140 jalr t9 | t9 ();
0x00003144 lw gp, 0x18(sp) | gp = *(var_18h);
| label_28:
0x00003148 lw v0, 0x20(sp) | v0 = *(var_20h);
0x0000314c lw t9, -0x7fb0(gp) | t9 = *((gp - 8172));
0x00003150 addiu a1, zero, 1 | a1 = 1;
0x00003154 addiu t9, t9, 0x3498 | t9 += fcn.00003498;
0x00003158 lw a0, 0x6a0(v0) | a0 = *((v0 + 424));
0x0000315c bal 0x3498 | fcn_00003498 ();
| label_36:
0x00003160 lw a0, 8(s0) | a0 = *((s0 + 2));
0x00003164 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003168 lw t9, -0x7e88(gp) | t9 = sym.imp.__syslog_chk;
0x0000316c sltu a0, zero, a0 | a0 = (0 < a0) ? 1 : 0;
0x00003170 addiu a3, s1, -0x197c | a3 = s1 + -0x197c;
0x00003174 addiu a2, a2, -0x549c | a2 += -0x549c;
0x00003178 addiu a1, zero, 1 | a1 = 1;
0x0000317c addiu a0, a0, 4 | a0 += 4;
0x00003180 jalr t9 | t9 ();
0x00003184 lw gp, 0x18(sp) | gp = *(var_18h);
0x00003188 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x0000318c addiu a1, zero, 1 | a1 = 1;
0x00003190 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003194 lw a3, (v0) | a3 = *(v0);
0x00003198 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x0000319c lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x000031a0 addiu a2, a2, -0x547c | a2 += -0x547c;
0x000031a4 lw a0, (v0) | a0 = *(v0);
| do {
0x000031a8 jalr t9 | t9 ();
0x000031ac nop |
0x000031b0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000031b4 lw v0, 0x20(sp) | v0 = *(var_20h);
0x000031b8 lw a1, 8(s0) | a1 = *((s0 + 2));
0x000031bc lw t9, -0x7fb0(gp) | t9 = *((gp - 8172));
0x000031c0 lw a0, 0x6a0(v0) | a0 = *((v0 + 424));
0x000031c4 addiu t9, t9, 0x3498 | t9 += fcn.00003498;
0x000031c8 sltiu a1, a1, 1 | a1 = (a1 < 1) ? 1 : 0;
0x000031cc bal 0x3498 | fcn_00003498 ();
| label_37:
0x000031d0 lw a0, 8(s0) | a0 = *((s0 + 2));
0x000031d4 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x000031d8 addiu v1, zero, 4 | v1 = 4;
0x000031dc addiu v0, zero, 2 | v0 = 2;
0x000031e0 lw t9, -0x7e88(gp) | t9 = sym.imp.__syslog_chk;
| if (a0 == 0) {
0x000031e4 movn v0, v1, a0 | v0 = v1;
| }
0x000031e8 addiu s1, s1, -0x197c | s1 += -0x197c;
0x000031ec move a0, v0 | a0 = v0;
0x000031f0 addiu a3, s2, -0x397c | a3 = s2 + -0x397c;
0x000031f4 addiu a2, a2, -0x545c | a2 += -0x545c;
0x000031f8 addiu a1, zero, 1 | a1 = 1;
0x000031fc sw s1, 0x10(sp) | *(var_10h) = s1;
0x00003200 jalr t9 | t9 ();
0x00003204 lw gp, 0x18(sp) | gp = *(var_18h);
0x00003208 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x0000320c addiu a1, zero, 1 | a1 = 1;
0x00003210 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003214 lw a3, (v0) | a3 = *(v0);
0x00003218 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x0000321c lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x00003220 addiu a2, a2, -0x5438 | a2 += -0x5438;
0x00003224 lw a0, (v0) | a0 = *(v0);
0x00003228 b 0x31a8 |
| } while (1);
| label_30:
0x0000322c lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x00003230 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003234 lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x00003238 lw a3, (v0) | a3 = *(v0);
0x0000323c lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x00003240 addiu a2, a2, -0x57b8 | a2 += -0x57b8;
0x00003244 addiu a1, zero, 1 | a1 = 1;
0x00003248 lw a0, (v0) | a0 = *(v0);
0x0000324c jalr t9 | t9 ();
0x00003250 lw gp, 0x18(sp) | gp = *(var_18h);
0x00003254 lw a3, 0x698(s2) | a3 = *((s2 + 422));
0x00003258 addiu a1, zero, 1 | a1 = 1;
0x0000325c lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003260 lw t9, -0x7e88(gp) | t9 = sym.imp.__syslog_chk;
0x00003264 addiu a0, zero, 4 | a0 = 4;
0x00003268 addiu a2, a2, -0x5790 | a2 += -0x5790;
0x0000326c jalr t9 | t9 ();
0x00003270 lw gp, 0x18(sp) | gp = *(var_18h);
0x00003274 b 0x3148 | goto label_28;
| label_29:
0x00003278 lw v0, -0x7d64(gp) | v0 = *((gp - 8025));
0x0000327c lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x00003280 lw t9, -0x7ebc(gp) | t9 = sym.imp.__fprintf_chk;
0x00003284 lw a0, (v0) | a0 = *(v0);
0x00003288 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x0000328c addiu a2, a2, -0x57dc | a2 += -0x57dc;
0x00003290 lw a3, (v0) | a3 = *(v0);
0x00003294 b 0x26ac | goto label_21;
| label_64:
0x00003298 lw a2, -0x7fd0(gp) | a2 = *((gp - 8180));
0x0000329c lw t9, -0x7e88(gp) | t9 = sym.imp.__syslog_chk;
0x000032a0 addiu a1, zero, 1 | a1 = 1;
0x000032a4 addiu a0, zero, 2 | a0 = 2;
0x000032a8 addiu a2, a2, -0x554c | a2 += -0x554c;
0x000032ac jalr t9 | t9 ();
0x000032b0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000032b4 b 0x3148 | goto label_28;
| }
[*] Function system used 3 times su.shadow