[*] Binary protection state of systemd-fstab-generator

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


[*] Function fprintf tear down of systemd-fstab-generator

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/systemd/system-generators/systemd-fstab-generator @ 0x1e90 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00001e90 ()              | void fcn_00001e90 () {
    0x00001e90 lui gp, 2                 |     
    0x00001e94 addiu gp, gp, -0x2e50     |     
    0x00001e98 addu gp, gp, t9           |     gp += t9;
    0x00001e9c addiu sp, sp, -0x28       |     
    0x00001ea0 move v0, a1               |     v0 = a1;
    0x00001ea4 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001ea8 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00001eac lw t9, -0x7f08(gp)        |     t9 = sym.imp.strreplace;
    0x00001eb0 addiu a2, a2, 0x57f4      |     a2 += 0x57f4;
    0x00001eb4 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00001eb8 sw s1, 0x20(sp)           |     *(var_20h) = s1;
    0x00001ebc sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x00001ec0 sw ra, 0x24(sp)           |     *(var_24h) = ra;
    0x00001ec4 move s1, a0               |     s1 = a0;
    0x00001ec8 addiu a1, a1, 0x57f8      |     a1 += 0x57f8;
    0x00001ecc move a0, v0               |     a0 = v0;
    0x00001ed0 jalr t9                   |     t9 ();
    0x00001ed4 move s0, v0               |     s0 = v0;
    0x00001ed8 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x00001edc beqz v0, 0x1f28           |         goto label_0;
                                         |     }
    0x00001ee0 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001ee4 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001ee8 move a0, s1               |     a0 = s1;
    0x00001eec move a3, v0               |     a3 = v0;
    0x00001ef0 addiu a2, a2, 0x582c      |     a2 += str.What_s_n;
    0x00001ef4 addiu a1, zero, 1         |     a1 = 1;
    0x00001ef8 jalr t9                   |     t9 ();
    0x00001efc lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00001f00 addiu s1, zero, 1         |     s1 = 1;
                                         |     do {
    0x00001f04 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00001f08 move a0, s0               |         a0 = s0;
    0x00001f0c jalr t9                   |         t9 ();
    0x00001f10 lw ra, 0x24(sp)           |         ra = *(var_24h);
    0x00001f14 move v0, s1               |         v0 = s1;
    0x00001f18 lw s0, 0x1c(sp)           |         s0 = *(var_1ch);
    0x00001f1c lw s1, 0x20(sp)           |         s1 = *(var_20h);
    0x00001f20 addiu sp, sp, 0x28        |         
    0x00001f24 jr ra                     |         return v0;
                                         | label_0:
    0x00001f28 lw a3, -0x7fdc(gp)        |         a3 = *((gp - 8183));
    0x00001f2c lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00001f30 lw t9, -0x7f9c(gp)        |         t9 = sym.imp.log_oom_internal;
    0x00001f34 addiu a3, a3, 0x6468      |         a3 += str.write_what;
    0x00001f38 addiu a2, zero, 0x55      |         a2 = 0x55;
    0x00001f3c addiu a1, a1, 0x5803      |         a1 += 0x5803;
    0x00001f40 move a0, zero             |         a0 = 0;
    0x00001f44 jalr t9                   |         t9 ();
    0x00001f48 move s1, v0               |         s1 = v0;
    0x00001f4c lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00001f50 b 0x1f04                  |         
                                         |     } while (1);
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/systemd/system-generators/systemd-fstab-generator @ 0x1f54 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00001f54 ()              | void fcn_00001f54 () {
    0x00001f54 lui gp, 2                 |     
    0x00001f58 addiu gp, gp, -0x2f14     |     
    0x00001f5c addu gp, gp, t9           |     gp += t9;
    0x00001f60 addiu sp, sp, -0x28       |     
    0x00001f64 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00001f68 sw ra, 0x24(sp)           |     *(var_24h) = ra;
    0x00001f6c sw s2, 0x20(sp)           |     *(var_20h) = s2;
    0x00001f70 sw s1, 0x1c(sp)           |     *(var_1ch) = s1;
    0x00001f74 sw s0, 0x18(sp)           |     *(var_18h) = s0;
    0x00001f78 move s0, zero             |     s0 = 0;
                                         |     if (a1 != 0) {
    0x00001f7c beqz a1, 0x1f90           |         
    0x00001f80 lb v0, (a1)               |         v0 = *(a1);
    0x00001f84 move s0, a1               |         s0 = a1;
                                         |         if (v0 != 0) {
    0x00001f88 bnez v0, 0x1fbc           |             goto label_1;
                                         |         }
    0x00001f8c move s0, zero             |         s0 = 0;
                                         |     }
    0x00001f90 move s1, zero             |     s1 = 0;
                                         |     do {
                                         | label_0:
    0x00001f94 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00001f98 move a0, s0               |         a0 = s0;
    0x00001f9c jalr t9                   |         t9 ();
    0x00001fa0 lw ra, 0x24(sp)           |         ra = *(var_24h);
    0x00001fa4 move v0, s1               |         v0 = s1;
    0x00001fa8 lw s2, 0x20(sp)           |         s2 = *(var_20h);
    0x00001fac lw s1, 0x1c(sp)           |         s1 = *(var_1ch);
    0x00001fb0 lw s0, 0x18(sp)           |         s0 = *(var_18h);
    0x00001fb4 addiu sp, sp, 0x28        |         
    0x00001fb8 jr ra                     |         return v0;
                                         | label_1:
    0x00001fbc lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00001fc0 lw t9, -0x7f94(gp)        |         t9 = sym.imp.strcmp;
    0x00001fc4 move s2, a0               |         s2 = a0;
    0x00001fc8 addiu a1, a1, 0x5844      |         a1 += str.defaults;
    0x00001fcc move a0, s0               |         a0 = s0;
    0x00001fd0 jalr t9                   |         t9 ();
    0x00001fd4 move s1, v0               |         s1 = v0;
    0x00001fd8 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |         if (v0 != 0) {
    0x00001fdc bnez v0, 0x1fe8           |             goto label_2;
                                         |         }
    0x00001fe0 move s0, zero             |         s0 = 0;
    0x00001fe4 b 0x1f94                  |         
                                         |     } while (1);
                                         | label_2:
    0x00001fe8 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001fec lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00001ff0 lw t9, -0x7f08(gp)        |     t9 = sym.imp.strreplace;
    0x00001ff4 move a0, s0               |     a0 = s0;
    0x00001ff8 addiu a2, a2, 0x57f4      |     a2 += 0x57f4;
    0x00001ffc addiu a1, a1, 0x57f8      |     a1 += 0x57f8;
    0x00002000 jalr t9                   |     t9 ();
    0x00002004 move s0, v0               |     s0 = v0;
    0x00002008 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x0000200c beqz v0, 0x2038           |         
    0x00002010 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002014 lw t9, -0x7eb0(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002018 move a3, v0               |         a3 = v0;
    0x0000201c addiu a2, a2, 0x5838      |         a2 += str.Options_s_n;
    0x00002020 addiu a1, zero, 1         |         a1 = 1;
    0x00002024 move a0, s2               |         a0 = s2;
    0x00002028 jalr t9                   |         t9 ();
    0x0000202c addiu s1, zero, 1         |         s1 = 1;
    0x00002030 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00002034 b 0x1f94                  |         goto label_0;
                                         |     }
    0x00002038 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x0000203c lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00002040 lw t9, -0x7f9c(gp)        |     t9 = sym.imp.log_oom_internal;
    0x00002044 addiu a3, a3, 0x6448      |     a3 += str.write_options;
    0x00002048 addiu a2, zero, 0x4a      |     a2 = 0x4a;
    0x0000204c addiu a1, a1, 0x5803      |     a1 += 0x5803;
    0x00002050 move a0, zero             |     a0 = 0;
    0x00002054 jalr t9                   |     t9 ();
    0x00002058 move s1, v0               |     s1 = v0;
    0x0000205c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00002060 b 0x1f94                  |     goto label_0;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/systemd/system-generators/systemd-fstab-generator @ 0x2064 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002064 ()              | void fcn_00002064 () {
    0x00002064 lui gp, 2                 |     
    0x00002068 addiu gp, gp, -0x3024     |     
    0x0000206c addu gp, gp, t9           |     gp += t9;
    0x00002070 addiu sp, sp, -0x98       |     
    0x00002074 move v1, a2               |     v1 = a2;
    0x00002078 sw s1, 0x84(sp)           |     *(var_84h) = s1;
    0x0000207c lw s1, -0x7f38(gp)        |     s1 = *((gp - 8142));
    0x00002080 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00002084 sw s4, 0x90(sp)           |     *(var_90h) = s4;
    0x00002088 sw s3, 0x8c(sp)           |     *(var_8ch) = s3;
    0x0000208c sw s2, 0x88(sp)           |     *(var_88h) = s2;
    0x00002090 sw s0, 0x80(sp)           |     *(var_80h) = s0;
    0x00002094 sw ra, 0x94(sp)           |     *(var_94h) = ra;
    0x00002098 lw v0, (s1)               |     v0 = *(s1);
    0x0000209c move t0, a3               |     t0 = a3;
    0x000020a0 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fstab_filter_options;
    0x000020a4 move s2, a0               |     s2 = a0;
    0x000020a8 move s3, a1               |     s3 = a1;
    0x000020ac sw zero, 0x10(sp)         |     *(var_10h) = 0;
    0x000020b0 addiu a3, sp, 0x2c        |     a3 = sp + 0x2c;
    0x000020b4 move a2, zero             |     a2 = 0;
    0x000020b8 move a1, t0               |     a1 = t0;
    0x000020bc move a0, v1               |     a0 = v1;
    0x000020c0 sw v0, 0x7c(sp)           |     *(var_7ch) = v0;
    0x000020c4 sw zero, 0x2c(sp)         |     *(var_2ch) = 0;
    0x000020c8 lw s4, 0xa8(sp)           |     s4 = *(arg_a8h);
    0x000020cc jalr t9                   |     t9 ();
    0x000020d0 move s0, v0               |     s0 = v0;
    0x000020d4 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x000020d8 bltz v0, 0x2194           |         goto label_1;
                                         |     }
    0x000020dc lw a0, 0x2c(sp)           |     a0 = *(var_2ch);
    0x000020e0 bnez v0, 0x2124           |     
                                         |     while (1) {
                                         | label_0:
    0x000020e4 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x000020e8 jalr t9                   |         t9 ();
    0x000020ec nop                       |         
    0x000020f0 lw a0, 0x7c(sp)           |         a0 = *(var_7ch);
    0x000020f4 lw v1, (s1)               |         v1 = *(s1);
    0x000020f8 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x000020fc move v0, s0               |         v0 = s0;
                                         |         if (a0 != v1) {
    0x00002100 bne a0, v1, 0x2274        |             goto label_2;
                                         |         }
    0x00002104 lw ra, 0x94(sp)           |         ra = *(var_94h);
    0x00002108 lw s4, 0x90(sp)           |         s4 = *(var_90h);
    0x0000210c lw s3, 0x8c(sp)           |         s3 = *(var_8ch);
    0x00002110 lw s2, 0x88(sp)           |         s2 = *(var_88h);
    0x00002114 lw s1, 0x84(sp)           |         s1 = *(var_84h);
    0x00002118 lw s0, 0x80(sp)           |         s0 = *(var_80h);
    0x0000211c addiu sp, sp, 0x98        |         
    0x00002120 jr ra                     |         return v0;
    0x00002124 lw t9, -0x7ea0(gp)        |         t9 = sym.imp.parse_sec_fix_0;
    0x00002128 addiu a1, sp, 0x30        |         a1 = sp + 0x30;
    0x0000212c jalr t9                   |         t9 ();
    0x00002130 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 < 0) {
    0x00002134 bltz v0, 0x2204           |             goto label_3;
                                         |         }
    0x00002138 lw t9, -0x7ea4(gp)        |         t9 = sym.imp.format_timespan;
    0x0000213c move v1, zero             |         v1 = 0;
    0x00002140 lw a2, 0x30(sp)           |         a2 = *(var_30h);
    0x00002144 lw a3, 0x34(sp)           |         a3 = *(var_34h_3);
    0x00002148 move v0, zero             |         v0 = 0;
    0x0000214c addiu a1, zero, 0x40      |         a1 = 0x40;
    0x00002150 addiu a0, sp, 0x3c        |         a0 = sp + 0x3c;
    0x00002154 sw v1, 0x14(sp)           |         *(var_14h) = v1;
    0x00002158 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x0000215c jalr t9                   |         t9 ();
    0x00002160 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00002164 move a0, s2               |         a0 = s2;
    0x00002168 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x0000216c lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002170 lw t9, -0x7eb0(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002174 move a3, s4               |         a3 = s4;
    0x00002178 addiu a2, a2, 0x589c      |         a2 += str._s_s_n;
    0x0000217c addiu a1, zero, 1         |         a1 = 1;
    0x00002180 jalr t9                   |         t9 ();
    0x00002184 move s0, zero             |         s0 = 0;
    0x00002188 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x0000218c lw a0, 0x2c(sp)           |         a0 = *(var_2ch);
    0x00002190 b 0x20e4                  |         
                                         |     }
                                         | label_1:
    0x00002194 lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00002198 move a0, zero             |     a0 = 0;
    0x0000219c jalr t9                   |     t9 ();
    0x000021a0 slti v0, v0, 4            |     v0 = (v0 < 4) ? 1 : 0;
    0x000021a4 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x000021a8 beqz v0, 0x21c0           |         
    0x000021ac negu s0, s0               |         __asm ("negu s0, s0");
    0x000021b0 andi s0, s0, 0xff         |         s0 &= 0xff;
    0x000021b4 negu s0, s0               |         __asm ("negu s0, s0");
    0x000021b8 lw a0, 0x2c(sp)           |         a0 = *(var_2ch);
    0x000021bc b 0x20e4                  |         goto label_0;
                                         |     }
    0x000021c0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000021c4 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000021c8 addiu v0, v0, 0x5850      |     v0 += str.Failed_to_parse_options:__m;
    0x000021cc sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x000021d0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000021d4 lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x000021d8 addiu v0, v0, 0x6458      |     v0 += str.write_timeout;
    0x000021dc move a1, s0               |     a1 = s0;
    0x000021e0 addiu a0, zero, 4         |     a0 = 4;
    0x000021e4 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000021e8 addiu a3, zero, 0xba      |     a3 = 0xba;
    0x000021ec addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x000021f0 jalr t9                   |     t9 ();
    0x000021f4 move s0, v0               |     s0 = v0;
    0x000021f8 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000021fc lw a0, 0x2c(sp)           |     a0 = *(var_2ch);
    0x00002200 b 0x20e4                  |     goto label_0;
                                         | label_3:
    0x00002204 lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00002208 move a0, zero             |     a0 = 0;
    0x0000220c jalr t9                   |     t9 ();
    0x00002210 slti v0, v0, 4            |     v0 = (v0 < 4) ? 1 : 0;
    0x00002214 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00002218 lw a0, 0x2c(sp)           |     a0 = *(var_2ch);
                                         |     if (v0 != 0) {
    0x0000221c beqz v0, 0x2228           |         
    0x00002220 move s0, zero             |         s0 = 0;
    0x00002224 b 0x20e4                  |         goto label_0;
                                         |     }
    0x00002228 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000222c lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002230 addiu v0, v0, 0x586c      |     v0 += str.Failed_to_parse_timeout_for__s__ignoring:__s;
    0x00002234 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x00002238 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000223c lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x00002240 addiu v0, v0, 0x6458      |     v0 += str.write_timeout;
    0x00002244 sw a0, 0x1c(sp)           |     *(var_1ch) = a0;
    0x00002248 sw s3, 0x18(sp)           |     *(var_18h_4) = s3;
    0x0000224c addiu a0, zero, 4         |     a0 = 4;
    0x00002250 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002254 addiu a3, zero, 0xc0      |     a3 = 0xc0;
    0x00002258 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x0000225c move a1, zero             |     a1 = 0;
    0x00002260 jalr t9                   |     t9 ();
    0x00002264 move s0, zero             |     s0 = 0;
    0x00002268 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000226c lw a0, 0x2c(sp)           |     a0 = *(var_2ch);
    0x00002270 b 0x20e4                  |     goto label_0;
                                         | label_2:
    0x00002274 lw t9, -0x7f60(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00002278 jalr t9                   |     t9 ();
    0x0000227c nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/systemd/system-generators/systemd-fstab-generator @ 0x2280 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002280 ()              | void fcn_00002280 () {
    0x00002280 lui gp, 2                 |     
    0x00002284 addiu gp, gp, -0x3240     |     
    0x00002288 addu gp, gp, t9           |     gp += t9;
    0x0000228c addiu sp, sp, -0x58       |     
    0x00002290 sw s3, 0x40(sp)           |     *(var_40h) = s3;
    0x00002294 lw s3, -0x7f38(gp)        |     s3 = *((gp - 8142));
    0x00002298 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x0000229c sw ra, 0x54(sp)           |     *(var_54h) = ra;
    0x000022a0 sw s7, 0x50(sp)           |     *(var_50h) = s7;
    0x000022a4 sw s6, 0x4c(sp)           |     *(var_4ch) = s6;
    0x000022a8 sw s5, 0x48(sp)           |     *(var_48h) = s5;
    0x000022ac sw s4, 0x44(sp)           |     *(var_44h) = s4;
    0x000022b0 sw s2, 0x3c(sp)           |     *(var_3ch) = s2;
    0x000022b4 sw s1, 0x38(sp)           |     *(var_38h) = s1;
    0x000022b8 sw s0, 0x34(sp)           |     *(var_34h) = s0;
    0x000022bc lw v1, (s3)               |     v1 = *(s3);
    0x000022c0 sw zero, 0x20(sp)         |     *(var_20h_2) = 0;
    0x000022c4 sw v1, 0x2c(sp)           |     *(var_2ch_2) = v1;
    0x000022c8 sw zero, 0x24(sp)         |     *(var_24h) = 0;
                                         |     if (a0 == 0) {
    0x000022cc beqz a0, 0x24e8           |         goto label_1;
                                         |     }
    0x000022d0 move v0, a1               |     v0 = a1;
                                         |     if (a1 == 0) {
    0x000022d4 beqz a1, 0x2540           |         goto label_2;
                                         |     }
    0x000022d8 lw t9, -0x7f24(gp)        |     t9 = sym.imp.fstab_extract_values;
    0x000022dc move a1, a2               |     a1 = a2;
    0x000022e0 move s4, a0               |     s4 = a0;
    0x000022e4 addiu a2, sp, 0x20        |     a2 = sp + 0x20;
    0x000022e8 move a0, v0               |     a0 = v0;
    0x000022ec move s5, a3               |     s5 = a3;
    0x000022f0 jalr t9                   |     t9 ();
    0x000022f4 move s0, v0               |     s0 = v0;
    0x000022f8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x000022fc bltz v0, 0x2438           |         goto label_3;
                                         |     }
    0x00002300 lw s0, 0x20(sp)           |     s0 = *(var_20h_2);
                                         |     if (v0 == 0) {
    0x00002304 beqz v0, 0x23b4           |         goto label_4;
                                         |     }
    0x00002308 lw a0, 0x24(sp)           |     a0 = *(var_24h);
                                         |     if (s0 == 0) {
    0x0000230c beqz s0, 0x23ac           |         goto label_5;
                                         |     }
    0x00002310 lw a0, (s0)               |     a0 = *(s0);
    0x00002314 lw s2, -0x7fdc(gp)        |     s2 = *((gp - 8183));
                                         |     if (a0 == 0) {
    0x00002318 beqz a0, 0x23a8           |         goto label_6;
                                         |     }
    0x0000231c addiu s6, sp, 0x28        |     s6 = sp + 0x28;
    0x00002320 addiu s2, s2, 0x58b0      |     s2 += str..mount;
    0x00002324 addiu s7, sp, 0x24        |     s7 = sp + 0x24;
    0x00002328 b 0x235c                  |     
                                         |     while (v0 >= 0) {
    0x0000232c lw t9, -0x7f10(gp)        |         t9 = sym.imp.strv_consume;
    0x00002330 lw a1, 0x28(sp)           |         a1 = *(var_28h_3);
    0x00002334 move a0, s7               |         a0 = s7;
    0x00002338 jalr t9                   |         t9 ();
    0x0000233c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x00002340 bltz v0, 0x2510           |             goto label_7;
                                         |         }
    0x00002344 addiu s0, s0, 4           |         s0 += 4;
    0x00002348 lw a0, 0x24(sp)           |         a0 = *(var_24h);
                                         |         if (s0 == 0) {
    0x0000234c beqz s0, 0x23ac           |             goto label_5;
                                         |         }
    0x00002350 lw a0, (s0)               |         a0 = *(s0);
                                         |         if (a0 == 0) {
    0x00002354 beql a0, zero, 0x23ac     |             goto label_5;
                                         |         }
    0x00002358 lw a0, 0x24(sp)           |         a0 = *(var_24h);
    0x0000235c lw t9, -0x7f68(gp)        |         t9 = sym.imp.unit_name_mangle_with_suffix;
    0x00002360 move a3, s6               |         a3 = s6;
    0x00002364 move a2, s2               |         a2 = s2;
    0x00002368 move a1, zero             |         a1 = 0;
    0x0000236c jalr t9                   |         t9 ();
    0x00002370 move s1, v0               |         s1 = v0;
    0x00002374 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002378 bgez v0, 0x232c           |         
                                         |     }
    0x0000237c lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00002380 move a0, zero             |     a0 = 0;
    0x00002384 jalr t9                   |     t9 ();
    0x00002388 slti v0, v0, 3            |     v0 = (v0 < 3) ? 1 : 0;
    0x0000238c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00002390 beqz v0, 0x256c           |         goto label_8;
                                         |     }
    0x00002394 negu s1, s1               |     __asm ("negu s1, s1");
    0x00002398 andi v0, s1, 0xff         |     v0 = s1 & 0xff;
    0x0000239c negu s1, v0               |     __asm ("negu s1, v0");
    0x000023a0 move s0, zero             |     s0 = 0;
    0x000023a4 b 0x23bc                  |     goto label_0;
                                         | label_6:
    0x000023a8 lw a0, 0x24(sp)           |     a0 = *(var_24h);
                                         | label_5:
    0x000023ac lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
                                         |     if (a0 != 0) {
    0x000023b0 bnez a0, 0x2464           |         goto label_9;
                                         |     }
                                         | label_4:
    0x000023b4 move s0, zero             |     s0 = 0;
    0x000023b8 move s1, zero             |     s1 = 0;
                                         |     do {
                                         | label_0:
    0x000023bc lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x000023c0 move a0, s0               |         a0 = s0;
    0x000023c4 jalr t9                   |         t9 ();
    0x000023c8 lw a0, 0x24(sp)           |         a0 = *(var_24h);
    0x000023cc lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (a0 != 0) {
    0x000023d0 beqz a0, 0x23e4           |             
    0x000023d4 lw t9, -0x7f28(gp)        |             t9 = sym.imp.strv_free;
    0x000023d8 jalr t9                   |             t9 ();
    0x000023dc nop                       |             
    0x000023e0 lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |         }
    0x000023e4 lw a0, 0x20(sp)           |         a0 = *(var_20h_2);
    0x000023e8 lw t9, -0x7f28(gp)        |         t9 = sym.imp.strv_free;
                                         |         if (a0 != 0) {
    0x000023ec beqz a0, 0x23fc           |             
    0x000023f0 jalr t9                   |             t9 ();
    0x000023f4 nop                       |             
    0x000023f8 lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |         }
    0x000023fc lw a0, 0x2c(sp)           |         a0 = *(var_2ch_2);
    0x00002400 lw v1, (s3)               |         v1 = *(s3);
    0x00002404 move v0, s1               |         v0 = s1;
                                         |         if (a0 != v1) {
    0x00002408 bne a0, v1, 0x25dc        |             goto label_10;
                                         |         }
    0x0000240c lw ra, 0x54(sp)           |         ra = *(var_54h);
    0x00002410 lw s7, 0x50(sp)           |         s7 = *(var_50h);
    0x00002414 lw s6, 0x4c(sp)           |         s6 = *(var_4ch);
    0x00002418 lw s5, 0x48(sp)           |         s5 = *(var_48h);
    0x0000241c lw s4, 0x44(sp)           |         s4 = *(var_44h);
    0x00002420 lw s3, 0x40(sp)           |         s3 = *(var_40h);
    0x00002424 lw s2, 0x3c(sp)           |         s2 = *(var_3ch);
    0x00002428 lw s1, 0x38(sp)           |         s1 = *(var_38h);
    0x0000242c lw s0, 0x34(sp)           |         s0 = *(var_34h);
    0x00002430 addiu sp, sp, 0x58        |         
    0x00002434 jr ra                     |         return v0;
                                         | label_3:
    0x00002438 lw t9, -0x7fa4(gp)        |         t9 = sym.imp.log_get_max_level_realm;
    0x0000243c move a0, zero             |         a0 = 0;
    0x00002440 jalr t9                   |         t9 ();
    0x00002444 slti v0, v0, 4            |         v0 = (v0 < 4) ? 1 : 0;
    0x00002448 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x0000244c beqz v0, 0x24a4           |             goto label_11;
                                         |         }
    0x00002450 negu v0, s0               |         __asm ("negu v0, s0");
    0x00002454 andi v0, v0, 0xff         |         v0 &= 0xff;
    0x00002458 negu s1, v0               |         __asm ("negu s1, v0");
    0x0000245c move s0, zero             |         s0 = 0;
    0x00002460 b 0x23bc                  |         
                                         |     } while (1);
                                         | label_9:
    0x00002464 lw t9, -0x7f64(gp)        |     t9 = sym.imp.strv_join_prefix;
    0x00002468 move a2, zero             |     a2 = 0;
    0x0000246c addiu a1, a1, 0x58dc      |     a1 += 0x58dc;
    0x00002470 jalr t9                   |     t9 ();
    0x00002474 move s0, v0               |     s0 = v0;
    0x00002478 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x0000247c beqz v0, 0x25b0           |         
    0x00002480 lw t9, -0x7eb0(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002484 move a3, v0               |         a3 = v0;
    0x00002488 move a2, s5               |         a2 = s5;
    0x0000248c addiu a1, zero, 1         |         a1 = 1;
    0x00002490 move a0, s4               |         a0 = s4;
    0x00002494 jalr t9                   |         t9 ();
    0x00002498 move s1, zero             |         s1 = 0;
    0x0000249c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000024a0 b 0x23bc                  |         goto label_0;
                                         | label_11:
    0x000024a4 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x000024a8 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x000024ac addiu v0, v0, 0x5850      |         v0 += str.Failed_to_parse_options:__m;
    0x000024b0 sw v0, 0x14(sp)           |         *(var_14h_4) = v0;
    0x000024b4 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x000024b8 lw t9, -0x7f54(gp)        |         t9 = sym.imp.log_internal_realm;
    0x000024bc addiu v0, v0, 0x6420      |         v0 += 0x6420;
    0x000024c0 move a1, s0               |         a1 = s0;
    0x000024c4 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x000024c8 addiu a3, zero, 0xdf      |         a3 = 0xdf;
    0x000024cc addiu a2, a2, 0x5803      |         a2 += 0x5803;
    0x000024d0 addiu a0, zero, 4         |         a0 = 4;
    0x000024d4 jalr t9                   |         t9 ();
    0x000024d8 move s1, v0               |         s1 = v0;
    0x000024dc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000024e0 move s0, zero             |         s0 = 0;
    0x000024e4 b 0x23bc                  |         goto label_0;
                                         | label_1:
    0x000024e8 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x000024ec lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x000024f0 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x000024f4 addiu v0, v0, 0x6434      |         v0 += str.write_dependency;
    0x000024f8 lw t9, -0x7ee0(gp)        |         t9 = sym.imp.log_assert_failed_realm;
    0x000024fc sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x00002500 addiu a3, zero, 0xda      |         a3 = 0xda;
    0x00002504 addiu a2, a2, 0x5803      |         a2 += 0x5803;
    0x00002508 addiu a1, a1, 0x58a4      |         a1 += 0x58a4;
    0x0000250c jalr t9                   |         t9 ();
                                         | label_7:
    0x00002510 lw a3, -0x7fdc(gp)        |         a3 = *((gp - 8183));
    0x00002514 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00002518 lw t9, -0x7f9c(gp)        |         t9 = sym.imp.log_oom_internal;
    0x0000251c addiu a3, a3, 0x6420      |         a3 += 0x6420;
    0x00002520 addiu a2, zero, 0xeb      |         a2 = 0xeb;
    0x00002524 addiu a1, a1, 0x5803      |         a1 += 0x5803;
    0x00002528 move a0, zero             |         a0 = 0;
    0x0000252c jalr t9                   |         t9 ();
    0x00002530 move s1, v0               |         s1 = v0;
    0x00002534 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002538 move s0, zero             |         s0 = 0;
    0x0000253c b 0x23bc                  |         goto label_0;
                                         | label_2:
    0x00002540 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002544 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002548 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x0000254c addiu v0, v0, 0x6434      |         v0 += str.write_dependency;
    0x00002550 lw t9, -0x7ee0(gp)        |         t9 = sym.imp.log_assert_failed_realm;
    0x00002554 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x00002558 addiu a3, zero, 0xdb      |         a3 = 0xdb;
    0x0000255c addiu a2, a2, 0x5803      |         a2 += 0x5803;
    0x00002560 addiu a1, a1, 0x58a8      |         a1 += str.opts;
    0x00002564 move a0, zero             |         a0 = 0;
    0x00002568 jalr t9                   |         t9 ();
                                         | label_8:
    0x0000256c lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002570 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002574 addiu v0, v0, 0x58b8      |         v0 += str.Failed_to_generate_unit_name:__m;
    0x00002578 sw v0, 0x14(sp)           |         *(var_14h_4) = v0;
    0x0000257c lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002580 lw t9, -0x7f54(gp)        |         t9 = sym.imp.log_internal_realm;
    0x00002584 addiu v0, v0, 0x6420      |         v0 += 0x6420;
    0x00002588 move a1, s1               |         a1 = s1;
    0x0000258c sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x00002590 addiu a3, zero, 0xe8      |         a3 = 0xe8;
    0x00002594 addiu a2, a2, 0x5803      |         a2 += 0x5803;
    0x00002598 addiu a0, zero, 3         |         a0 = 3;
    0x0000259c jalr t9                   |         t9 ();
    0x000025a0 move s1, v0               |         s1 = v0;
    0x000025a4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000025a8 move s0, zero             |         s0 = 0;
    0x000025ac b 0x23bc                  |         goto label_0;
                                         |     }
    0x000025b0 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x000025b4 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x000025b8 lw t9, -0x7f9c(gp)        |     t9 = sym.imp.log_oom_internal;
    0x000025bc addiu a3, a3, 0x6420      |     a3 += 0x6420;
    0x000025c0 addiu a2, zero, 0xf1      |     a2 = 0xf1;
    0x000025c4 addiu a1, a1, 0x5803      |     a1 += 0x5803;
    0x000025c8 move a0, zero             |     a0 = 0;
    0x000025cc jalr t9                   |     t9 ();
    0x000025d0 move s1, v0               |     s1 = v0;
    0x000025d4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000025d8 b 0x23bc                  |     goto label_0;
                                         | label_10:
    0x000025dc lw t9, -0x7f60(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x000025e0 jalr t9                   |     t9 ();
    0x000025e4 nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/systemd/system-generators/systemd-fstab-generator @ 0x25e8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000025e8 ()              | void fcn_000025e8 () {
    0x000025e8 lui gp, 2                 |     
    0x000025ec addiu gp, gp, -0x35a8     |     
    0x000025f0 addu gp, gp, t9           |     gp += t9;
    0x000025f4 addiu sp, sp, -0x48       |     
    0x000025f8 sw s1, 0x38(sp)           |     *(var_38h_2) = s1;
    0x000025fc lw s1, -0x7f38(gp)        |     s1 = *((gp - 8142));
    0x00002600 sw gp, 0x18(sp)           |     *(var_18h_2) = gp;
    0x00002604 sw ra, 0x44(sp)           |     *(var_44h_2) = ra;
    0x00002608 sw s3, 0x40(sp)           |     *(var_40h_2) = s3;
    0x0000260c sw s2, 0x3c(sp)           |     *(var_3ch_2) = s2;
    0x00002610 sw s0, 0x34(sp)           |     *(var_34h_2) = s0;
    0x00002614 lw v1, (s1)               |     v1 = *(s1);
    0x00002618 sw zero, 0x24(sp)         |     *(var_24h_2) = 0;
    0x0000261c sw v1, 0x2c(sp)           |     *(var_2ch_3) = v1;
    0x00002620 sw zero, 0x28(sp)         |     *(var_28h) = 0;
                                         |     if (a0 == 0) {
    0x00002624 beqz a0, 0x2800           |         goto label_1;
                                         |     }
    0x00002628 move v0, a1               |     v0 = a1;
                                         |     if (a1 == 0) {
    0x0000262c beqz a1, 0x2828           |         goto label_2;
                                         |     }
    0x00002630 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00002634 lw t9, -0x7f24(gp)        |     t9 = sym.imp.fstab_extract_values;
    0x00002638 move s2, a0               |     s2 = a0;
    0x0000263c addiu a2, sp, 0x24        |     a2 = sp + 0x24;
    0x00002640 addiu a1, a1, 0x58e0      |     a1 += str.x_systemd.requires_mounts_for;
    0x00002644 move a0, v0               |     a0 = v0;
    0x00002648 jalr t9                   |     t9 ();
    0x0000264c move s0, v0               |     s0 = v0;
    0x00002650 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
                                         |     if (v0 < 0) {
    0x00002654 bltz v0, 0x2734           |         goto label_3;
                                         |     }
    0x00002658 move s3, zero             |     s3 = 0;
    0x0000265c bnez v0, 0x26cc           |     
                                         |     while (1) {
                                         | label_0:
    0x00002660 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00002664 move a0, s3               |         a0 = s3;
    0x00002668 jalr t9                   |         t9 ();
    0x0000266c lw a0, 0x28(sp)           |         a0 = *(var_28h);
    0x00002670 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
                                         |         if (a0 != 0) {
    0x00002674 beqz a0, 0x2688           |             
    0x00002678 lw t9, -0x7f28(gp)        |             t9 = sym.imp.strv_free;
    0x0000267c jalr t9                   |             t9 ();
    0x00002680 nop                       |             
    0x00002684 lw gp, 0x18(sp)           |             gp = *(var_18h_2);
                                         |         }
    0x00002688 lw a0, 0x24(sp)           |         a0 = *(var_24h_2);
    0x0000268c lw t9, -0x7f28(gp)        |         t9 = sym.imp.strv_free;
                                         |         if (a0 != 0) {
    0x00002690 beqz a0, 0x26a0           |             
    0x00002694 jalr t9                   |             t9 ();
    0x00002698 nop                       |             
    0x0000269c lw gp, 0x18(sp)           |             gp = *(var_18h_2);
                                         |         }
    0x000026a0 lw a0, 0x2c(sp)           |         a0 = *(var_2ch_3);
    0x000026a4 lw v1, (s1)               |         v1 = *(s1);
    0x000026a8 move v0, s0               |         v0 = s0;
                                         |         if (a0 != v1) {
    0x000026ac bne a0, v1, 0x2880        |             goto label_4;
                                         |         }
    0x000026b0 lw ra, 0x44(sp)           |         ra = *(var_44h_2);
    0x000026b4 lw s3, 0x40(sp)           |         s3 = *(var_40h_2);
    0x000026b8 lw s2, 0x3c(sp)           |         s2 = *(var_3ch_2);
    0x000026bc lw s1, 0x38(sp)           |         s1 = *(var_38h_2);
    0x000026c0 lw s0, 0x34(sp)           |         s0 = *(var_34h_2);
    0x000026c4 addiu sp, sp, 0x48        |         
    0x000026c8 jr ra                     |         return v0;
    0x000026cc lw t9, -0x7e94(gp)        |         t9 = sym.imp.specifier_escape_strv;
    0x000026d0 lw a0, 0x24(sp)           |         a0 = *(var_24h_2);
    0x000026d4 addiu a1, sp, 0x28        |         a1 = sp + 0x28;
    0x000026d8 jalr t9                   |         t9 ();
    0x000026dc move s0, v0               |         s0 = v0;
    0x000026e0 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
                                         |         if (v0 < 0) {
    0x000026e4 bltz v0, 0x2760           |             goto label_5;
                                         |         }
    0x000026e8 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x000026ec lw t9, -0x7f64(gp)        |         t9 = sym.imp.strv_join_prefix;
    0x000026f0 lw a0, 0x28(sp)           |         a0 = *(var_28h);
    0x000026f4 move a2, zero             |         a2 = 0;
    0x000026f8 addiu a1, a1, 0x58dc      |         a1 += 0x58dc;
    0x000026fc jalr t9                   |         t9 ();
    0x00002700 move s3, v0               |         s3 = v0;
    0x00002704 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
                                         |         if (v0 == 0) {
    0x00002708 beqz v0, 0x2854           |             goto label_6;
                                         |         }
    0x0000270c lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002710 lw t9, -0x7eb0(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002714 move a3, v0               |         a3 = v0;
    0x00002718 addiu a2, a2, 0x591c      |         a2 += str.RequiresMountsFor_s_n;
    0x0000271c addiu a1, zero, 1         |         a1 = 1;
    0x00002720 move a0, s2               |         a0 = s2;
    0x00002724 jalr t9                   |         t9 ();
    0x00002728 move s0, zero             |         s0 = 0;
    0x0000272c lw gp, 0x18(sp)           |         gp = *(var_18h_2);
    0x00002730 b 0x2660                  |         
                                         |     }
                                         | label_3:
    0x00002734 lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00002738 move a0, zero             |     a0 = 0;
    0x0000273c jalr t9                   |     t9 ();
    0x00002740 slti v0, v0, 4            |     v0 = (v0 < 4) ? 1 : 0;
    0x00002744 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
                                         |     if (v0 == 0) {
    0x00002748 beqz v0, 0x27bc           |         goto label_7;
                                         |     }
                                         |     do {
    0x0000274c negu s0, s0               |         __asm ("negu s0, s0");
    0x00002750 andi s0, s0, 0xff         |         s0 &= 0xff;
    0x00002754 negu s0, s0               |         __asm ("negu s0, s0");
    0x00002758 move s3, zero             |         s3 = 0;
    0x0000275c b 0x2660                  |         goto label_0;
                                         | label_5:
    0x00002760 lw t9, -0x7fa4(gp)        |         t9 = sym.imp.log_get_max_level_realm;
    0x00002764 move a0, zero             |         a0 = 0;
    0x00002768 jalr t9                   |         t9 ();
    0x0000276c slti v0, v0, 3            |         v0 = (v0 < 3) ? 1 : 0;
    0x00002770 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
    0x00002774 bnez v0, 0x274c           |         
                                         |     } while (v0 != 0);
    0x00002778 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000277c lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002780 addiu v0, v0, 0x5900      |     v0 += str.Failed_to_escape_paths:__m;
    0x00002784 sw v0, 0x14(sp)           |     *(var_14h_3) = v0;
    0x00002788 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000278c lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x00002790 addiu v0, v0, 0x63e8      |     v0 += 0x63e8;
    0x00002794 move a1, s0               |     a1 = s0;
    0x00002798 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x0000279c addiu a3, zero, 0x119     |     a3 = 0x119;
    0x000027a0 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x000027a4 addiu a0, zero, 3         |     a0 = 3;
    0x000027a8 jalr t9                   |     t9 ();
    0x000027ac move s0, v0               |     s0 = v0;
    0x000027b0 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x000027b4 move s3, zero             |     s3 = 0;
    0x000027b8 b 0x2660                  |     goto label_0;
                                         | label_7:
    0x000027bc lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000027c0 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000027c4 addiu v0, v0, 0x5850      |     v0 += str.Failed_to_parse_options:__m;
    0x000027c8 sw v0, 0x14(sp)           |     *(var_14h_3) = v0;
    0x000027cc lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000027d0 lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x000027d4 addiu v0, v0, 0x63e8      |     v0 += 0x63e8;
    0x000027d8 move a1, s0               |     a1 = s0;
    0x000027dc sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x000027e0 addiu a3, zero, 0x113     |     a3 = 0x113;
    0x000027e4 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x000027e8 addiu a0, zero, 4         |     a0 = 4;
    0x000027ec jalr t9                   |     t9 ();
    0x000027f0 move s0, v0               |     s0 = v0;
    0x000027f4 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x000027f8 move s3, zero             |     s3 = 0;
    0x000027fc b 0x2660                  |     goto label_0;
                                         | label_1:
    0x00002800 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002804 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002808 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x0000280c addiu v0, v0, 0x6404      |     v0 += str.write_requires_mounts_for;
    0x00002810 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x00002814 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x00002818 addiu a3, zero, 0x10e     |     a3 = 0x10e;
    0x0000281c addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00002820 addiu a1, a1, 0x58a4      |     a1 += 0x58a4;
    0x00002824 jalr t9                   |     t9 ();
                                         | label_2:
    0x00002828 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000282c lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002830 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00002834 addiu v0, v0, 0x6404      |     v0 += str.write_requires_mounts_for;
    0x00002838 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x0000283c sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x00002840 addiu a3, zero, 0x10f     |     a3 = 0x10f;
    0x00002844 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00002848 addiu a1, a1, 0x58a8      |     a1 += str.opts;
    0x0000284c move a0, zero             |     a0 = 0;
    0x00002850 jalr t9                   |     t9 ();
                                         | label_6:
    0x00002854 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002858 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x0000285c lw t9, -0x7f9c(gp)        |     t9 = sym.imp.log_oom_internal;
    0x00002860 addiu a3, a3, 0x63e8      |     a3 += 0x63e8;
    0x00002864 addiu a2, zero, 0x11d     |     a2 = 0x11d;
    0x00002868 addiu a1, a1, 0x5803      |     a1 += 0x5803;
    0x0000286c move a0, zero             |     a0 = 0;
    0x00002870 jalr t9                   |     t9 ();
    0x00002874 move s0, v0               |     s0 = v0;
    0x00002878 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x0000287c b 0x2660                  |     goto label_0;
                                         | label_4:
    0x00002880 lw t9, -0x7f60(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00002884 jalr t9                   |     t9 ();
    0x00002888 nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/lib/systemd/system-generators/systemd-fstab-generator @ 0x2924 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002924 ()              | void fcn_00002924 () {
    0x00002924 lui gp, 2                 |     
    0x00002928 addiu gp, gp, -0x38e4     |     
    0x0000292c addu gp, gp, t9           |     gp += t9;
    0x00002930 addiu sp, sp, -0xa0       |     
    0x00002934 sw fp, 0x98(sp)           |     *(var_98h) = fp;
    0x00002938 move fp, sp               |     fp = sp;
    0x0000293c sw s1, 0x7c(sp)           |     *(var_7ch) = s1;
    0x00002940 lw s1, -0x7f38(gp)        |     s1 = *((gp - 8142));
    0x00002944 lw v1, 0xc0(fp)           |     v1 = *(arg_c0h);
    0x00002948 sw s4, 0x88(sp)           |     *(var_88h) = s4;
    0x0000294c sw s3, 0x84(sp)           |     *(var_84h) = s3;
    0x00002950 sw ra, 0x9c(sp)           |     *(var_9ch) = ra;
    0x00002954 sw s7, 0x94(sp)           |     *(var_94h) = s7;
    0x00002958 sw s6, 0x90(sp)           |     *(var_90h) = s6;
    0x0000295c sw s5, 0x8c(sp)           |     *(var_8ch) = s5;
    0x00002960 sw s2, 0x80(sp)           |     *(var_80h) = s2;
    0x00002964 sw s0, 0x78(sp)           |     *(var_78h) = s0;
    0x00002968 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x0000296c lw v0, (s1)               |     v0 = *(s1);
    0x00002970 sw v1, 0x40(fp)           |     *(arg_40h) = v1;
    0x00002974 lw v1, 0xc4(fp)           |     v1 = *(arg_c4h);
    0x00002978 lw s4, 0xb0(fp)           |     s4 = *(arg_b0h);
    0x0000297c lw s3, 0xb4(fp)           |     s3 = *(arg_b4h);
    0x00002980 sw v1, 0x44(fp)           |     *(arg_44h) = v1;
    0x00002984 sw v0, 0x74(fp)           |     *(arg_74h) = v0;
    0x00002988 sw zero, 0x48(fp)         |     *(arg_48h) = 0;
    0x0000298c sw zero, 0x4c(fp)         |     *(arg_4ch) = 0;
    0x00002990 sw zero, 0x50(fp)         |     *(arg_50h) = 0;
    0x00002994 sw zero, 0x54(fp)         |     *(arg_54h) = 0;
                                         |     if (a1 == 0) {
    0x00002998 beqz a1, 0x2f24           |         goto label_18;
                                         |     }
    0x0000299c move s0, a2               |     s0 = a2;
                                         |     if (a2 == 0) {
    0x000029a0 beqz a2, 0x2f50           |         goto label_19;
                                         |     }
    0x000029a4 move s2, a1               |     s2 = a1;
                                         |     if (s3 == 0) {
    0x000029a8 beqz s3, 0x2f7c           |         goto label_20;
                                         |     }
    0x000029ac lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x000029b0 lw t9, -0x7e9c(gp)        |     t9 = sym.imp.strcmp_ptr;
    0x000029b4 move s5, a0               |     s5 = a0;
    0x000029b8 addiu a1, a1, 0x59e8      |     a1 += str.autofs;
    0x000029bc move a0, s4               |     a0 = s4;
    0x000029c0 move s6, a3               |     s6 = a3;
    0x000029c4 jalr t9                   |     t9 ();
    0x000029c8 move s7, v0               |     s7 = v0;
    0x000029cc lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 != 0) {
    0x000029d0 beqz v0, 0x2a10           |         
    0x000029d4 lw t9, -0x7ed0(gp)        |         t9 = sym.imp.is_path;
    0x000029d8 move a0, s0               |         a0 = s0;
    0x000029dc jalr t9                   |         t9 ();
    0x000029e0 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x000029e4 bnez v0, 0x2aac           |             goto label_21;
                                         |         }
    0x000029e8 lw t9, -0x7fa4(gp)        |         t9 = sym.imp.log_get_max_level_realm;
    0x000029ec move a0, zero             |         a0 = 0;
    0x000029f0 jalr t9                   |         t9 ();
    0x000029f4 slti v0, v0, 4            |         v0 = (v0 < 4) ? 1 : 0;
    0x000029f8 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 == 0) {
    0x000029fc beqz v0, 0x2fa8           |             goto label_22;
                                         |         }
    0x00002a00 move a0, zero             |         a0 = 0;
    0x00002a04 move s6, zero             |         s6 = 0;
    0x00002a08 move s7, zero             |         s7 = 0;
    0x00002a0c b 0x2a18                  |         goto label_0;
                                         |     }
    0x00002a10 move a0, zero             |     a0 = 0;
                                         |     do {
                                         | label_5:
    0x00002a14 move s6, zero             |         s6 = 0;
                                         | label_0:
    0x00002a18 lw t9, -0x7e98(gp)        |         t9 = sym.imp.safe_fclose;
    0x00002a1c jalr t9                   |         t9 ();
    0x00002a20 nop                       |         
    0x00002a24 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002a28 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00002a2c move a0, s6               |         a0 = s6;
    0x00002a30 jalr t9                   |         t9 ();
    0x00002a34 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002a38 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00002a3c lw a0, 0x50(fp)           |         a0 = *(arg_50h);
    0x00002a40 jalr t9                   |         t9 ();
    0x00002a44 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002a48 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00002a4c lw a0, 0x4c(fp)           |         a0 = *(arg_4ch);
    0x00002a50 jalr t9                   |         t9 ();
    0x00002a54 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002a58 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.free;
    0x00002a5c lw a0, 0x48(fp)           |         a0 = *(arg_48h);
    0x00002a60 jalr t9                   |         t9 ();
    0x00002a64 lw a1, 0x74(fp)           |         a1 = *(arg_74h);
    0x00002a68 lw a0, (s1)               |         a0 = *(s1);
    0x00002a6c lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002a70 move v0, s7               |         v0 = s7;
                                         |         if (a1 != a0) {
    0x00002a74 bne a1, a0, 0x341c        |             goto label_23;
                                         |         }
    0x00002a78 move sp, fp               |         
    0x00002a7c lw ra, 0x9c(sp)           |         ra = *(var_9ch);
    0x00002a80 lw fp, 0x98(sp)           |         fp = *(var_98h);
    0x00002a84 lw s7, 0x94(sp)           |         s7 = *(var_94h);
    0x00002a88 lw s6, 0x90(sp)           |         s6 = *(var_90h);
    0x00002a8c lw s5, 0x8c(sp)           |         s5 = *(var_8ch);
    0x00002a90 lw s4, 0x88(sp)           |         s4 = *(var_88h);
    0x00002a94 lw s3, 0x84(sp)           |         s3 = *(var_84h);
    0x00002a98 lw s2, 0x80(sp)           |         s2 = *(var_80h);
    0x00002a9c lw s1, 0x7c(sp)           |         s1 = *(var_7ch);
    0x00002aa0 lw s0, 0x78(sp)           |         s0 = *(var_78h);
    0x00002aa4 addiu sp, sp, 0xa0        |         
    0x00002aa8 jr ra                     |         return v0;
                                         | label_21:
    0x00002aac lw t9, -0x7fd8(gp)        |         t9 = *(gp);
    0x00002ab0 move a0, s0               |         a0 = s0;
    0x00002ab4 bal 0x51b0                |         fcn_000051b0 ();
    0x00002ab8 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x00002abc bnez v0, 0x2f14           |             goto label_24;
                                         |         }
    0x00002ac0 lw t9, -0x7fd4(gp)        |         t9 = *(gp);
    0x00002ac4 move a0, s0               |         a0 = s0;
    0x00002ac8 bal 0x525c                |         fcn_0000525c ();
    0x00002acc lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x00002ad0 bnez v0, 0x2f14           |             goto label_24;
                                         |         }
    0x00002ad4 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00002ad8 lw t9, -0x7ecc(gp)        |         t9 = sym.imp.path_equal;
    0x00002adc addiu a1, a1, 0x6678      |         a1 += 0x6678;
    0x00002ae0 move a0, s0               |         a0 = s0;
    0x00002ae4 jalr t9                   |         t9 ();
    0x00002ae8 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x00002aec beqz v0, 0x2b98           |             
    0x00002af0 lw v0, 0xbc(fp)           |             v0 = *(arg_bch);
    0x00002af4 andi v0, v0, 1            |             v0 &= 1;
    0x00002af8 lw v0, 0xbc(fp)           |             v0 = *(arg_bch);
                                         |             if (v0 == 0) {
    0x00002afc beqz v0, 0x3060           |                 goto label_25;
                                         |             }
    0x00002b00 lw t9, -0x7fa4(gp)        |             t9 = sym.imp.log_get_max_level_realm;
    0x00002b04 move a0, zero             |             a0 = 0;
    0x00002b08 jalr t9                   |             t9 ();
    0x00002b0c slti v0, v0, 4            |             v0 = (v0 < 4) ? 1 : 0;
    0x00002b10 lw gp, 0x20(fp)           |             gp = *(arg_20h);
                                         |             if (v0 == 0) {
    0x00002b14 beqz v0, 0x3024           |                 goto label_26;
                                         |             }
    0x00002b18 lw v0, 0xbc(fp)           |             v0 = *(arg_bch);
    0x00002b1c andi v0, v0, 2            |             v0 &= 2;
    0x00002b20 lw v1, 0xbc(fp)           |             v1 = *(arg_bch);
                                         |             if (v0 == 0) {
    0x00002b24 bnez v0, 0x2b8c           |                 
                                         | label_3:
    0x00002b28 lw v0, 0xbc(fp)           |                 v0 = *(arg_bch);
                                         | label_1:
    0x00002b2c andi v0, v0, 4            |                 v0 &= 4;
    0x00002b30 lw v1, 0xbc(fp)           |                 v1 = *(arg_bch);
                                         |                 if (v0 == 0) {
    0x00002b34 beqz v0, 0x2b8c           |                     goto label_27;
                                         |                 }
    0x00002b38 lw t9, -0x7fa4(gp)        |                 t9 = sym.imp.log_get_max_level_realm;
    0x00002b3c move a0, zero             |                 a0 = 0;
    0x00002b40 jalr t9                   |                 t9 ();
    0x00002b44 slti v0, v0, 4            |                 v0 = (v0 < 4) ? 1 : 0;
    0x00002b48 lw gp, 0x20(fp)           |                 gp = *(arg_20h);
                                         |                 if (v0 == 0) {
    0x00002b4c bnez v0, 0x2b88           |                     
    0x00002b50 lw v0, -0x7fdc(gp)        |                     v0 = *((gp - 8183));
    0x00002b54 lw a2, -0x7fdc(gp)        |                     a2 = *((gp - 8183));
    0x00002b58 addiu v0, v0, 0x5a68      |                     v0 += str.Ignoring_automount_option_for_root_device;
    0x00002b5c sw v0, 0x14(sp)           |                     *(var_14h) = v0;
    0x00002b60 lw v0, -0x7fdc(gp)        |                     v0 = *((gp - 8183));
    0x00002b64 lw t9, -0x7f54(gp)        |                     t9 = sym.imp.log_internal_realm;
    0x00002b68 addiu v0, v0, 0x6490      |                     v0 += 0x6490;
    0x00002b6c sw v0, 0x10(sp)           |                     *(var_10h) = v0;
    0x00002b70 addiu a3, zero, 0x150     |                     a3 = 0x150;
    0x00002b74 addiu a2, a2, 0x5803      |                     a2 += 0x5803;
    0x00002b78 move a1, zero             |                     a1 = 0;
    0x00002b7c addiu a0, zero, 4         |                     a0 = 4;
    0x00002b80 jalr t9                   |                     t9 ();
    0x00002b84 lw gp, 0x20(fp)           |                     gp = *(arg_20h);
                                         |                 }
                                         | label_2:
    0x00002b88 lw v1, 0xbc(fp)           |                 v1 = *(arg_bch);
                                         |             }
                                         | label_27:
    0x00002b8c addiu v0, zero, -8        |             v0 = -8;
    0x00002b90 and v0, v1, v0            |             v0 = v1 & v0;
    0x00002b94 sw v0, 0xbc(fp)           |             *(arg_bch) = v0;
                                         |         }
    0x00002b98 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00002b9c lw t9, -0x7ea8(gp)        |         t9 = sym.imp.unit_name_from_path;
    0x00002ba0 addiu a2, fp, 0x48        |         a2 = fp + 0x48;
    0x00002ba4 addiu a1, a1, 0x58b0      |         a1 += str..mount;
    0x00002ba8 move a0, s0               |         a0 = s0;
    0x00002bac jalr t9                   |         t9 ();
    0x00002bb0 move s7, v0               |         s7 = v0;
    0x00002bb4 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 < 0) {
    0x00002bb8 bltz v0, 0x2ff4           |             goto label_28;
                                         |         }
    0x00002bbc lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002bc0 lw t9, -0x7f84(gp)        |         t9 = sym.imp.generator_open_unit_file;
    0x00002bc4 addiu v1, fp, 0x54        |         v1 = fp + 0x54;
    0x00002bc8 lw a2, 0x48(fp)           |         a2 = *(arg_48h);
    0x00002bcc sw v0, 0x3c(fp)           |         *(arg_3ch) = v0;
    0x00002bd0 sw v1, 0x38(fp)           |         *(arg_38h) = v1;
    0x00002bd4 move a3, v1               |         a3 = v1;
    0x00002bd8 addiu a1, v0, 0x5f30      |         a1 = v0 + 0x5f30;
    0x00002bdc move a0, s5               |         a0 = s5;
    0x00002be0 jalr t9                   |         t9 ();
    0x00002be4 move s7, v0               |         s7 = v0;
    0x00002be8 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 < 0) {
    0x00002bec bltz v0, 0x3188           |             goto label_29;
                                         |         }
    0x00002bf0 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002bf4 lw t9, -0x7eb0(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002bf8 lw a0, 0x54(fp)           |         a0 = *(arg_54h);
    0x00002bfc lw a3, 0x44(fp)           |         a3 = *(arg_44h);
    0x00002c00 addiu a2, v0, 0x5a94      |         a2 = v0 + str._Unit__nSourcePath_s_nDocumentationman:fstab_5__man:systemd_fstab_generator_8__n;
    0x00002c04 addiu a1, zero, 1         |         a1 = 1;
    0x00002c08 sw v0, 0x30(fp)           |         *(arg_30h) = v0;
    0x00002c0c jalr t9                   |         t9 ();
    0x00002c10 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002c14 lw t9, -0x7ef4(gp)        |         t9 = sym.imp.in_initrd;
    0x00002c18 jalr t9                   |         t9 ();
    0x00002c1c nop                       |         
    0x00002c20 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x00002c24 beqz v0, 0x2c64           |             
    0x00002c28 lw a1, -0x7fdc(gp)        |             a1 = *((gp - 8183));
    0x00002c2c lw t9, -0x7f18(gp)        |             t9 = sym.imp.path_startswith;
    0x00002c30 addiu a1, a1, 0x5ae4      |             a1 += str._sysroot;
    0x00002c34 move a0, s0               |             a0 = s0;
    0x00002c38 jalr t9                   |             t9 ();
    0x00002c3c lw gp, 0x20(fp)           |             gp = *(arg_20h);
                                         |             if (v0 == 0) {
    0x00002c40 beqz v0, 0x2c64           |                 goto label_30;
                                         |             }
    0x00002c44 lw a0, -0x7fdc(gp)        |             a0 = *((gp - 8183));
    0x00002c48 lw t9, -0x7f4c(gp)        |             t9 = sym.imp.fwrite;
    0x00002c4c lw a3, 0x54(fp)           |             a3 = *(arg_54h);
    0x00002c50 addiu a2, zero, 0x17      |             a2 = 0x17;
    0x00002c54 addiu a1, zero, 1         |             a1 = 1;
    0x00002c58 addiu a0, a0, 0x5af0      |             a0 += str.DefaultDependenciesno_n;
    0x00002c5c jalr t9                   |             t9 ();
    0x00002c60 lw gp, 0x20(fp)           |             gp = *(arg_20h);
                                         |         }
                                         | label_30:
    0x00002c64 lw v0, 0xbc(fp)           |         v0 = *(arg_bch);
    0x00002c68 andi s7, v0, 4            |         s7 = v0 & 4;
    0x00002c6c sw s7, 0x34(fp)           |         *(arg_34h) = s7;
                                         |         if (s4 == 0) {
    0x00002c70 beqz s4, 0x30c0           |             goto label_31;
                                         |         }
    0x00002c74 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002c78 lw t9, -0x7f50(gp)        |         t9 = sym.imp.strv_find;
    0x00002c7c addiu v0, v0, 0x5b08      |         v0 += 0x5b08;
    0x00002c80 sw v0, 0x5c(fp)           |         *(arg_5ch) = v0;
    0x00002c84 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002c88 move a1, s4               |         a1 = s4;
    0x00002c8c addiu v0, v0, 0x5b0c      |         v0 += str.nfs4;
    0x00002c90 addiu a0, fp, 0x5c        |         a0 = fp + 0x5c;
    0x00002c94 sw v0, 0x60(fp)           |         *(arg_60h) = v0;
    0x00002c98 sw zero, 0x64(fp)         |         *(arg_64h) = 0;
    0x00002c9c jalr t9                   |         t9 ();
    0x00002ca0 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 == 0) {
    0x00002ca4 beqz v0, 0x30c0           |             goto label_31;
                                         |         }
    0x00002ca8 lw v0, 0xbc(fp)           |         v0 = *(arg_bch);
                                         |         if (s7 == 0) {
    0x00002cac beqz s7, 0x3238           |             goto label_32;
                                         |         }
    0x00002cb0 andi v0, v0, 6            |         v0 &= 6;
    0x00002cb4 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
                                         |         if (v0 == 0) {
    0x00002cb8 beqz v0, 0x3218           |             goto label_33;
                                         |         }
                                         | label_6:
    0x00002cbc lw v0, 0xb8(fp)           |         v0 = *(arg_b8h);
                                         | label_4:
    0x00002cc0 lw a0, 0x54(fp)           |         a0 = *(arg_54h);
                                         |         if (v0 == 0) {
    0x00002cc4 beqz v0, 0x2cf0           |             goto label_34;
                                         |         }
    0x00002cc8 lw t9, -0x7f70(gp)        |         t9 = sym.imp.generator_write_fsck_deps;
    0x00002ccc sw s4, 0x10(sp)           |         *(var_10h) = s4;
    0x00002cd0 move a3, s0               |         a3 = s0;
    0x00002cd4 move a2, s2               |         a2 = s2;
    0x00002cd8 move a1, s5               |         a1 = s5;
    0x00002cdc jalr t9                   |         t9 ();
    0x00002ce0 move s7, v0               |         s7 = v0;
    0x00002ce4 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x00002ce8 lw a0, 0x54(fp)           |         a0 = *(arg_54h);
    0x00002cec bltz v0, 0x2a14           |         
                                         |     } while (v0 < 0);
                                         | label_34:
    0x00002cf0 move a3, a0               |     a3 = a0;
    0x00002cf4 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
    0x00002cf8 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.fwrite;
    0x00002cfc addiu a2, zero, 9         |     a2 = 9;
    0x00002d00 addiu a1, zero, 1         |     a1 = 1;
    0x00002d04 addiu a0, a0, 0x5c10      |     a0 += str._n_Mount__n;
    0x00002d08 jalr t9                   |     t9 ();
    0x00002d0c lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (s6 != 0) {
    0x00002d10 beqz s6, 0x2d34           |         
    0x00002d14 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002d18 lw t9, -0x7eb0(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002d1c lw a0, 0x54(fp)           |         a0 = *(arg_54h);
    0x00002d20 move a3, s6               |         a3 = s6;
    0x00002d24 addiu a2, a2, 0x5c1c      |         a2 += str._Canonicalized_from__s_n;
    0x00002d28 addiu a1, zero, 1         |         a1 = 1;
    0x00002d2c jalr t9                   |         t9 ();
    0x00002d30 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |     }
    0x00002d34 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002d38 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00002d3c lw t9, -0x7f08(gp)        |     t9 = sym.imp.strreplace;
    0x00002d40 sw v0, 0x2c(fp)           |     *(arg_2ch) = v0;
    0x00002d44 sw v1, 0x28(fp)           |     *(arg_28h) = v1;
    0x00002d48 addiu a2, v0, 0x57f4      |     a2 = v0 + 0x57f4;
    0x00002d4c addiu a1, v1, 0x57f8      |     a1 = v1 + 0x57f8;
    0x00002d50 move a0, s0               |     a0 = s0;
    0x00002d54 jalr t9                   |     t9 ();
    0x00002d58 move s6, v0               |     s6 = v0;
    0x00002d5c lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 == 0) {
    0x00002d60 beqz v0, 0x3314           |         goto label_35;
                                         |     }
    0x00002d64 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002d68 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002d6c lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00002d70 move a3, v0               |     a3 = v0;
    0x00002d74 addiu a2, a2, 0x5c38      |     a2 += str.Where_s_n;
    0x00002d78 addiu a1, zero, 1         |     a1 = 1;
    0x00002d7c jalr t9                   |     t9 ();
    0x00002d80 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00002d84 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00002d88 lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x00002d8c addiu t9, t9, 0x1e90      |     t9 += fcn.00001e90;
    0x00002d90 move a1, s2               |     a1 = s2;
    0x00002d94 bal 0x1e90                |     fcn_00001e90 ();
    0x00002d98 move s7, v0               |     s7 = v0;
    0x00002d9c lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x00002da0 bltz v0, 0x31b8           |         goto label_14;
                                         |     }
    0x00002da4 lw t9, -0x7ec8(gp)        |     t9 = sym.imp.generator_write_timeouts;
                                         |     if (s4 != 0) {
    0x00002da8 beqz s4, 0x2dd8           |         
    0x00002dac lb v0, (s4)               |         v0 = *(s4);
    0x00002db0 addiu v0, fp, 0x50        |         v0 = fp + 0x50;
                                         |         if (v0 == 0) {
    0x00002db4 beqz v0, 0x2ddc           |             goto label_36;
                                         |         }
    0x00002db8 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00002dbc lw t9, -0x7f94(gp)        |         t9 = sym.imp.strcmp;
    0x00002dc0 addiu a1, a1, 0x5ecc      |         a1 += 0x5ecc;
    0x00002dc4 move a0, s4               |         a0 = s4;
    0x00002dc8 jalr t9                   |         t9 ();
    0x00002dcc lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x00002dd0 bnez v0, 0x3344           |             goto label_37;
                                         |         }
                                         | label_11:
    0x00002dd4 lw t9, -0x7ec8(gp)        |         t9 = sym.imp.generator_write_timeouts;
                                         |     }
    0x00002dd8 addiu v0, fp, 0x50        |     v0 = fp + 0x50;
                                         | label_36:
    0x00002ddc sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002de0 move a3, s3               |     a3 = s3;
    0x00002de4 move a2, s0               |     a2 = s0;
    0x00002de8 move a1, s2               |     a1 = s2;
    0x00002dec move a0, s5               |     a0 = s5;
    0x00002df0 jalr t9                   |     t9 ();
    0x00002df4 move s7, v0               |     s7 = v0;
    0x00002df8 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x00002dfc bltz v0, 0x31b8           |         goto label_14;
                                         |     }
    0x00002e00 lw t9, -0x7f88(gp)        |     t9 = sym.imp.generator_write_device_deps;
    0x00002e04 move a0, s5               |     a0 = s5;
    0x00002e08 move a3, s3               |     a3 = s3;
    0x00002e0c move a2, s0               |     a2 = s0;
    0x00002e10 move a1, s2               |     a1 = s2;
    0x00002e14 jalr t9                   |     t9 ();
    0x00002e18 move s7, v0               |     s7 = v0;
    0x00002e1c lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00002e20 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00002e24 bltz v0, 0x2a18           |         goto label_0;
                                         |     }
    0x00002e28 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002e2c lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00002e30 addiu v0, v0, 0x5c50      |     v0 += str.TimeoutSec;
    0x00002e34 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002e38 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002e3c addiu a3, a3, 0x5cc8      |     a3 += str.x_systemd.mount_timeout;
    0x00002e40 addiu t9, v0, 0x2064      |     t9 = v0 + fcn.00002064;
    0x00002e44 move a2, s3               |     a2 = s3;
    0x00002e48 move a1, s0               |     a1 = s0;
    0x00002e4c sw t9, 0x2c(fp)           |     *(arg_2ch) = t9;
    0x00002e50 bal 0x2064                |     fcn_00002064 ();
    0x00002e54 move s7, v0               |     s7 = v0;
    0x00002e58 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x00002e5c bltz v0, 0x31b8           |         goto label_14;
                                         |     }
    0x00002e60 lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x00002e64 lw a1, 0x50(fp)           |     a1 = *(arg_50h);
    0x00002e68 addiu t9, t9, 0x1f54      |     t9 += fcn.00001f54;
    0x00002e6c lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00002e70 bal 0x1f54                |     fcn_00001f54 ();
    0x00002e74 move s7, v0               |     s7 = v0;
    0x00002e78 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x00002e7c bltz v0, 0x31b8           |         goto label_14;
                                         |     }
    0x00002e80 lw t9, -0x7fa0(gp)        |     t9 = sym.imp.fflush_and_check;
    0x00002e84 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00002e88 jalr t9                   |     t9 ();
    0x00002e8c move s7, v0               |     s7 = v0;
    0x00002e90 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x00002e94 bltz v0, 0x33cc           |         goto label_38;
                                         |     }
    0x00002e98 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
    0x00002e9c andi v0, v0, 8            |     v0 &= 8;
    0x00002ea0 lw t9, -0x7f48(gp)        |     t9 = sym.imp.generator_hook_up_mkfs;
                                         |     if (v0 != 0) {
    0x00002ea4 bnez v0, 0x3624           |         goto label_39;
                                         |     }
                                         | label_15:
    0x00002ea8 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
    0x00002eac andi v0, v0, 0x10         |     v0 &= 0x10;
    0x00002eb0 lw t9, -0x7f80(gp)        |     t9 = sym.imp.generator_hook_up_growfs;
                                         |     if (v0 != 0) {
    0x00002eb4 bnez v0, 0x33f8           |         goto label_40;
                                         |     }
                                         | label_12:
    0x00002eb8 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
    0x00002ebc andi v0, v0, 5            |     v0 &= 5;
    0x00002ec0 lw v0, 0x34(fp)           |     v0 = *(arg_34h);
                                         |     if (v0 == 0) {
    0x00002ec4 bnez v0, 0x2f04           |         
    0x00002ec8 lw v0, 0xbc(fp)           |         v0 = *(arg_bch);
    0x00002ecc andi v0, v0, 2            |         v0 &= 2;
    0x00002ed0 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
                                         |         if (v0 != 0) {
    0x00002ed4 bnez v0, 0x364c           |             goto label_41;
                                         |         }
    0x00002ed8 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00002edc addiu a2, a2, 0x59cc      |         a2 += str.requires;
                                         | label_16:
    0x00002ee0 lw t9, -0x7f34(gp)        |         t9 = sym.imp.generator_add_symlink;
    0x00002ee4 lw a3, 0x48(fp)           |         a3 = *(arg_48h);
    0x00002ee8 lw a1, 0x40(fp)           |         a1 = *(arg_40h);
    0x00002eec move a0, s5               |         a0 = s5;
    0x00002ef0 jalr t9                   |         t9 ();
    0x00002ef4 move s7, v0               |         s7 = v0;
    0x00002ef8 lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 < 0) {
    0x00002efc bltz v0, 0x31b8           |             goto label_14;
                                         |         }
    0x00002f00 lw v0, 0x34(fp)           |         v0 = *(arg_34h);
                                         |     }
    0x00002f04 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 != 0) {
    0x00002f08 bnez v0, 0x3428           |         goto label_42;
                                         |     }
    0x00002f0c move s7, zero             |     s7 = 0;
    0x00002f10 b 0x2a18                  |     goto label_0;
                                         | label_24:
    0x00002f14 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00002f18 move s6, zero             |     s6 = 0;
    0x00002f1c move s7, zero             |     s7 = 0;
    0x00002f20 b 0x2a18                  |     goto label_0;
                                         | label_18:
    0x00002f24 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002f28 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002f2c lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00002f30 addiu v0, v0, 0x649c      |     v0 += str.add_mount;
    0x00002f34 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x00002f38 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002f3c addiu a3, zero, 0x138     |     a3 = aav.0x00000138;
    0x00002f40 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00002f44 addiu a1, a1, 0x59d8      |     a1 += str.what;
    0x00002f48 move a0, zero             |     a0 = 0;
    0x00002f4c jalr t9                   |     t9 ();
                                         | label_19:
    0x00002f50 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002f54 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002f58 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00002f5c addiu v0, v0, 0x649c      |     v0 += str.add_mount;
    0x00002f60 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x00002f64 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002f68 addiu a3, zero, 0x139     |     a3 = 0x139;
    0x00002f6c addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00002f70 addiu a1, a1, 0x59e0      |     a1 += str.where;
    0x00002f74 move a0, zero             |     a0 = 0;
    0x00002f78 jalr t9                   |     t9 ();
                                         | label_20:
    0x00002f7c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002f80 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002f84 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00002f88 addiu v0, v0, 0x649c      |     v0 += str.add_mount;
    0x00002f8c lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x00002f90 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002f94 addiu a3, zero, 0x13a     |     a3 = 0x13a;
    0x00002f98 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00002f9c addiu a1, a1, 0x58a8      |     a1 += str.opts;
    0x00002fa0 move a0, zero             |     a0 = 0;
    0x00002fa4 jalr t9                   |     t9 ();
                                         | label_22:
    0x00002fa8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002fac lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00002fb0 addiu v0, v0, 0x59f0      |     v0 += str.Mount_point__s_is_not_a_valid_path__ignoring.;
    0x00002fb4 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x00002fb8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002fbc lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x00002fc0 addiu v0, v0, 0x6490      |     v0 += 0x6490;
    0x00002fc4 addiu a0, zero, 4         |     a0 = 4;
    0x00002fc8 sw s0, 0x18(sp)           |     *(var_18h) = s0;
    0x00002fcc sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002fd0 addiu a3, zero, 0x142     |     a3 = 0x142;
    0x00002fd4 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00002fd8 move a1, zero             |     a1 = 0;
    0x00002fdc jalr t9                   |     t9 ();
    0x00002fe0 move s6, zero             |     s6 = 0;
    0x00002fe4 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00002fe8 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00002fec move s7, zero             |     s7 = 0;
    0x00002ff0 b 0x2a18                  |     goto label_0;
                                         | label_28:
    0x00002ff4 lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00002ff8 move a0, zero             |     a0 = 0;
    0x00002ffc jalr t9                   |     t9 ();
    0x00003000 slti v0, v0, 3            |     v0 = (v0 < 3) ? 1 : 0;
    0x00003004 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 == 0) {
    0x00003008 beqz v0, 0x31c0           |         goto label_43;
                                         |     }
    0x0000300c negu v1, s7               |     __asm ("negu v1, s7");
    0x00003010 andi v1, v1, 0xff         |     v1 &= 0xff;
    0x00003014 negu s7, v1               |     __asm ("negu s7, v1");
    0x00003018 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x0000301c move s6, zero             |     s6 = 0;
    0x00003020 b 0x2a18                  |     goto label_0;
                                         | label_26:
    0x00003024 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003028 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000302c addiu v0, v0, 0x5a20      |     v0 += str.Ignoring__noauto__for_root_device;
    0x00003030 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x00003034 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003038 lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x0000303c addiu v0, v0, 0x6490      |     v0 += 0x6490;
    0x00003040 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00003044 addiu a3, zero, 0x14c     |     a3 = 0x14c;
    0x00003048 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x0000304c move a1, zero             |     a1 = 0;
    0x00003050 addiu a0, zero, 4         |     a0 = 4;
    0x00003054 jalr t9                   |     t9 ();
    0x00003058 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x0000305c lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
                                         | label_25:
    0x00003060 andi v0, v0, 2            |     v0 &= 2;
    0x00003064 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
                                         |     if (v0 == 0) {
    0x00003068 beqz v0, 0x2b2c           |         goto label_1;
                                         |     }
    0x0000306c lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00003070 move a0, zero             |     a0 = 0;
    0x00003074 jalr t9                   |     t9 ();
    0x00003078 slti v0, v0, 4            |     v0 = (v0 < 4) ? 1 : 0;
    0x0000307c lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 != 0) {
    0x00003080 bnez v0, 0x2b88           |         goto label_2;
                                         |     }
    0x00003084 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003088 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000308c addiu v0, v0, 0x5a44      |     v0 += str.Ignoring__nofail__for_root_device;
    0x00003090 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x00003094 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003098 lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x0000309c addiu v0, v0, 0x6490      |     v0 += 0x6490;
    0x000030a0 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000030a4 addiu a3, zero, 0x14e     |     a3 = 0x14e;
    0x000030a8 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x000030ac move a1, zero             |     a1 = 0;
    0x000030b0 addiu a0, zero, 4         |     a0 = 4;
    0x000030b4 jalr t9                   |     t9 ();
    0x000030b8 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x000030bc b 0x2b28                  |     goto label_3;
                                         | label_31:
    0x000030c0 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
    0x000030c4 andi v0, v0, 6            |     v0 &= 6;
    0x000030c8 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
                                         |     if (v0 == 0) {
    0x000030cc beqz v0, 0x3218           |         goto label_33;
                                         |     }
                                         | label_8:
    0x000030d0 lw v0, 0x34(fp)           |     v0 = *(arg_34h);
    0x000030d4 lw v0, 0xb8(fp)           |     v0 = *(arg_b8h);
                                         |     if (v0 != 0) {
    0x000030d8 bnez v0, 0x2cc0           |         goto label_4;
                                         |     }
                                         | label_10:
    0x000030dc lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         | label_7:
    0x000030e0 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x000030e4 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000030e8 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x000030ec addiu t9, v0, 0x2280      |     t9 = v0 + fcn.00002280;
    0x000030f0 addiu a3, a3, 0x5ba0      |     a3 += str.After_1_s_n;
    0x000030f4 addiu a2, a2, 0x5bac      |     a2 += str.x_systemd.after;
    0x000030f8 move a1, s3               |     a1 = s3;
    0x000030fc sw t9, 0x2c(fp)           |     *(arg_2ch) = t9;
    0x00003100 bal 0x2280                |     fcn_00002280 ();
    0x00003104 move s7, v0               |     s7 = v0;
    0x00003108 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x0000310c lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00003110 bltz v0, 0x2a14           |         goto label_5;
                                         |     }
    0x00003114 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00003118 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000311c lw t9, 0x2c(fp)           |     t9 = *(arg_2ch);
    0x00003120 addiu a3, a3, 0x5bbc      |     a3 += str.After_1_s_nRequires_1_s_n;
    0x00003124 addiu a2, a2, 0x5bd8      |     a2 += str.x_systemd.requires;
    0x00003128 move a1, s3               |     a1 = s3;
    0x0000312c jalr t9                   |     t9 ();
    0x00003130 move s7, v0               |     s7 = v0;
    0x00003134 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003138 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x0000313c bltz v0, 0x2a14           |         goto label_5;
                                         |     }
    0x00003140 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00003144 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00003148 lw t9, 0x2c(fp)           |     t9 = *(arg_2ch);
    0x0000314c addiu a3, a3, 0x5bec      |     a3 += str.Before_1_s_n;
    0x00003150 addiu a2, a2, 0x5bfc      |     a2 += str.x_systemd.before;
    0x00003154 move a1, s3               |     a1 = s3;
    0x00003158 jalr t9                   |     t9 ();
    0x0000315c move s7, v0               |     s7 = v0;
    0x00003160 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003164 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00003168 bltz v0, 0x2a14           |         goto label_5;
                                         |     }
    0x0000316c lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x00003170 addiu t9, t9, 0x25e8      |     t9 += fcn.000025e8;
    0x00003174 move a1, s3               |     a1 = s3;
    0x00003178 bal 0x25e8                |     fcn_000025e8 ();
    0x0000317c move s7, v0               |     s7 = v0;
    0x00003180 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 >= 0) {
    0x00003184 bgez v0, 0x2cbc           |         goto label_6;
                                         |     }
                                         | label_29:
    0x00003188 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x0000318c move s6, zero             |     s6 = 0;
    0x00003190 b 0x2a18                  |     goto label_0;
                                         | label_13:
    0x00003194 lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x00003198 move a0, zero             |     a0 = 0;
    0x0000319c jalr t9                   |     t9 ();
    0x000031a0 slti v0, v0, 3            |     v0 = (v0 < 3) ? 1 : 0;
    0x000031a4 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 == 0) {
    0x000031a8 beqz v0, 0x36f8           |         goto label_44;
                                         |     }
    0x000031ac negu v1, s2               |     __asm ("negu v1, s2");
    0x000031b0 andi v1, v1, 0xff         |     v1 &= 0xff;
    0x000031b4 negu s7, v1               |     __asm ("negu s7, v1");
                                         | label_14:
    0x000031b8 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x000031bc b 0x2a18                  |     goto label_0;
                                         | label_43:
    0x000031c0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000031c4 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000031c8 addiu v0, v0, 0x58b8      |     v0 += str.Failed_to_generate_unit_name:__m;
    0x000031cc sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x000031d0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000031d4 lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x000031d8 addiu v0, v0, 0x6490      |     v0 += 0x6490;
    0x000031dc move a1, s7               |     a1 = s7;
    0x000031e0 addiu a0, zero, 3         |     a0 = 3;
    0x000031e4 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000031e8 addiu a3, zero, 0x157     |     a3 = 0x157;
    0x000031ec addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x000031f0 jalr t9                   |     t9 ();
    0x000031f4 move s7, v0               |     s7 = v0;
    0x000031f8 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x000031fc lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003200 move s6, zero             |     s6 = 0;
    0x00003204 b 0x2a18                  |     goto label_0;
                                         | label_9:
    0x00003208 andi v0, v0, 6            |     v0 &= 6;
    0x0000320c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         |     if (v0 != 0) {
    0x00003210 bnez v0, 0x30e0           |         goto label_7;
                                         |     }
    0x00003214 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
                                         | label_33:
    0x00003218 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000321c lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003220 lw a3, 0x40(fp)           |     a3 = *(arg_40h);
    0x00003224 addiu a2, a2, 0x5b94      |     a2 += str.Before_s_n;
    0x00003228 addiu a1, zero, 1         |     a1 = 1;
    0x0000322c jalr t9                   |     t9 ();
    0x00003230 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003234 b 0x30d0                  |     goto label_8;
                                         | label_32:
    0x00003238 lw s7, -0x7fdc(gp)        |     s7 = *((gp - 8183));
    0x0000323c lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fstab_filter_options;
    0x00003240 sw zero, 0x10(sp)         |     *(var_10h) = 0;
    0x00003244 move a3, zero             |     a3 = 0;
    0x00003248 addiu a2, fp, 0x58        |     a2 = fp + 0x58;
    0x0000324c addiu a1, s7, 0x5cc0      |     a1 = s7 + 0x5cc0;
    0x00003250 move a0, s3               |     a0 = s3;
    0x00003254 jalr t9                   |     t9 ();
    0x00003258 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x0000325c bltz v0, 0x33a0           |         goto label_45;
                                         |     }
    0x00003260 lw v1, 0x58(fp)           |     v1 = *(arg_58h);
    0x00003264 addiu v0, s7, 0x5cc0      |     v0 = s7 + 0x5cc0;
    0x00003268 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
                                         |     if (v1 != v0) {
    0x0000326c bne v1, v0, 0x3208        |         goto label_9;
                                         |     }
    0x00003270 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00003274 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003278 addiu a1, a1, 0x5994      |     a1 += str.x_systemd.mount_timeoutinfinity_retry10000_;
    0x0000327c lw t9, -0x7f20(gp)        |     t9 = sym.imp.strlen;
    0x00003280 addiu v0, v0, 0x5b70      |     v0 += 0x5b70;
    0x00003284 move a0, s3               |     a0 = s3;
    0x00003288 sw a1, 0x68(fp)           |     *(arg_68h) = a1;
    0x0000328c sw a1, 0x2c(fp)           |     *(arg_2ch) = a1;
    0x00003290 sw s3, 0x6c(fp)           |     *(arg_6ch) = s3;
    0x00003294 sw v0, 0x70(fp)           |     *(arg_70h) = v0;
    0x00003298 jalr t9                   |     t9 ();
    0x0000329c lui a0, 0x40              |     a0 = 0x400000;
    0x000032a0 addiu v1, v0, 0x31        |     v1 = v0 + 0x31;
    0x000032a4 addiu a0, a0, 1           |     a0++;
    0x000032a8 sltu v1, v1, a0           |     v1 = (v1 < a0) ? 1 : 0;
    0x000032ac lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x000032b0 lw a1, 0x2c(fp)           |     a1 = *(arg_2ch);
                                         |     if (v1 == 0) {
    0x000032b4 beqz v1, 0x3654           |         goto label_46;
                                         |     }
    0x000032b8 addiu v0, v0, 0x38        |     v0 += 0x38;
    0x000032bc srl v0, v0, 3             |     v0 >>= 3;
    0x000032c0 sll v0, v0, 3             |     v0 <<= 3;
    0x000032c4 subu sp, sp, v0           |     
    0x000032c8 addiu s3, sp, 0x20        |     s3 = sp + 0x20;
    0x000032cc addiu v0, fp, 0x70        |     v0 = fp + 0x70;
    0x000032d0 sw v0, 0x2c(fp)           |     *(arg_2ch) = v0;
    0x000032d4 addiu s7, fp, 0x68        |     s7 = fp + 0x68;
    0x000032d8 move v0, s3               |     v0 = s3;
    0x000032dc lw t9, -0x7edc(gp)        |     t9 = sym.imp.stpcpy;
                                         |     do {
    0x000032e0 move a0, v0               |         a0 = v0;
    0x000032e4 jalr t9                   |         t9 ();
    0x000032e8 lw v1, 0x2c(fp)           |         v1 = *(arg_2ch);
    0x000032ec lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (s7 == v1) {
    0x000032f0 beq s7, v1, 0x3304        |             goto label_47;
                                         |         }
    0x000032f4 addiu s7, s7, 4           |         s7 += 4;
    0x000032f8 lw a1, (s7)               |         a1 = *(s7);
    0x000032fc lw t9, -0x7edc(gp)        |         t9 = sym.imp.stpcpy;
    0x00003300 bnez a1, 0x32e0           |         
                                         |     } while (a1 != 0);
                                         | label_47:
    0x00003304 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
    0x00003308 ori v0, v0, 2             |     v0 |= 2;
    0x0000330c sw v0, 0xbc(fp)           |     *(arg_bch) = v0;
    0x00003310 b 0x30dc                  |     goto label_10;
                                         | label_35:
    0x00003314 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00003318 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x0000331c lw t9, -0x7f9c(gp)        |     t9 = sym.imp.log_oom_internal;
    0x00003320 move a0, zero             |     a0 = 0;
    0x00003324 addiu a3, a3, 0x6490      |     a3 += 0x6490;
    0x00003328 addiu a2, zero, 0x195     |     a2 = 0x195;
    0x0000332c addiu a1, a1, 0x5803      |     a1 += 0x5803;
    0x00003330 jalr t9                   |     t9 ();
    0x00003334 move s7, v0               |     s7 = v0;
    0x00003338 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x0000333c lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003340 b 0x2a18                  |     goto label_0;
                                         | label_37:
    0x00003344 lw v0, 0x2c(fp)           |     v0 = *(arg_2ch);
    0x00003348 lw t9, -0x7f08(gp)        |     t9 = sym.imp.strreplace;
    0x0000334c addiu a2, v0, 0x57f4      |     a2 = v0 + 0x57f4;
    0x00003350 lw v0, 0x28(fp)           |     v0 = *(arg_28h);
    0x00003354 move a0, s4               |     a0 = s4;
    0x00003358 addiu a1, v0, 0x57f8      |     a1 = v0 + 0x57f8;
    0x0000335c jalr t9                   |     t9 ();
    0x00003360 move s7, v0               |     s7 = v0;
    0x00003364 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003368 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 == 0) {
    0x0000336c beqz v0, 0x3774           |         goto label_48;
                                         |     }
    0x00003370 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00003374 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003378 move a3, v0               |     a3 = v0;
    0x0000337c addiu a2, a2, 0x5c44      |     a2 += str.Type_s_n;
    0x00003380 addiu a1, zero, 1         |     a1 = 1;
    0x00003384 jalr t9                   |     t9 ();
    0x00003388 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x0000338c lw t9, -0x7ef0(gp)        |     t9 = sym.imp.free;
    0x00003390 move a0, s7               |     a0 = s7;
    0x00003394 jalr t9                   |     t9 ();
    0x00003398 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x0000339c b 0x2dd4                  |     goto label_11;
                                         | label_45:
    0x000033a0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000033a4 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000033a8 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x000033ac addiu v0, v0, 0x6474      |     v0 += str.fstab_test_yes_no_option;
    0x000033b0 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x000033b4 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000033b8 addiu a3, zero, 0x1c      |     a3 = 0x1c;
    0x000033bc addiu a2, a2, 0x5b1b      |     a2 += 0x5b1b;
    0x000033c0 addiu a1, a1, 0x5b34      |     a1 += str.fstab_filter_options_opts__yes_no__opt__NULL__NULL____0;
    0x000033c4 move a0, zero             |     a0 = 0;
    0x000033c8 jalr t9                   |     t9 ();
                                         | label_38:
    0x000033cc lw t9, -0x7fa4(gp)        |     t9 = sym.imp.log_get_max_level_realm;
    0x000033d0 move a0, zero             |     a0 = 0;
    0x000033d4 jalr t9                   |     t9 ();
    0x000033d8 slti v0, v0, 3            |     v0 = (v0 < 3) ? 1 : 0;
    0x000033dc lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 == 0) {
    0x000033e0 beqz v0, 0x3680           |         goto label_49;
                                         |     }
    0x000033e4 negu v1, s7               |     __asm ("negu v1, s7");
    0x000033e8 andi v1, v1, 0xff         |     v1 &= 0xff;
    0x000033ec negu s7, v1               |     __asm ("negu s7, v1");
    0x000033f0 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x000033f4 b 0x2a18                  |     goto label_0;
                                         | label_40:
    0x000033f8 lw a2, 0x40(fp)           |     a2 = *(arg_40h);
    0x000033fc move a1, s0               |     a1 = s0;
    0x00003400 move a0, s5               |     a0 = s5;
    0x00003404 jalr t9                   |     t9 ();
    0x00003408 move s7, v0               |     s7 = v0;
    0x0000340c lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 >= 0) {
    0x00003410 bgez v0, 0x2eb8           |         goto label_12;
                                         |     }
    0x00003414 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003418 b 0x2a18                  |     goto label_0;
                                         | label_23:
    0x0000341c lw t9, -0x7f60(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00003420 jalr t9                   |     t9 ();
    0x00003424 nop                       |     
                                         | label_42:
    0x00003428 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x0000342c lw t9, -0x7ea8(gp)        |     t9 = sym.imp.unit_name_from_path;
    0x00003430 addiu a2, fp, 0x4c        |     a2 = fp + 0x4c;
    0x00003434 addiu a1, a1, 0x5c80      |     a1 += str..automount;
    0x00003438 move a0, s0               |     a0 = s0;
    0x0000343c jalr t9                   |     t9 ();
    0x00003440 move s2, v0               |     s2 = v0;
    0x00003444 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x00003448 bltz v0, 0x3194           |         goto label_13;
                                         |     }
    0x0000344c lw t9, -0x7e98(gp)        |     t9 = sym.imp.safe_fclose;
    0x00003450 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003454 jalr t9                   |     t9 ();
    0x00003458 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x0000345c lw v1, 0x3c(fp)           |     v1 = *(arg_3ch);
    0x00003460 lw a2, 0x4c(fp)           |     a2 = *(arg_4ch);
    0x00003464 lw t9, -0x7f84(gp)        |     t9 = sym.imp.generator_open_unit_file;
    0x00003468 lw a3, 0x38(fp)           |     a3 = *(arg_38h);
    0x0000346c move a0, s5               |     a0 = s5;
    0x00003470 addiu a1, v1, 0x5f30      |     a1 = v1 + 0x5f30;
    0x00003474 sw v0, 0x54(fp)           |     *(arg_54h) = v0;
    0x00003478 jalr t9                   |     t9 ();
    0x0000347c move s7, v0               |     s7 = v0;
    0x00003480 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003484 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00003488 bltz v0, 0x2a18           |         goto label_0;
                                         |     }
    0x0000348c lw v0, 0x30(fp)           |     v0 = *(arg_30h);
    0x00003490 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003494 lw a3, 0x44(fp)           |     a3 = *(arg_44h);
    0x00003498 addiu a2, v0, 0x5a94      |     a2 = v0 + str._Unit__nSourcePath_s_nDocumentationman:fstab_5__man:systemd_fstab_generator_8__n;
    0x0000349c addiu a1, zero, 1         |     a1 = 1;
    0x000034a0 jalr t9                   |     t9 ();
    0x000034a4 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x000034a8 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x000034ac lw a3, 0x40(fp)           |     a3 = *(arg_40h);
    0x000034b0 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000034b4 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000034b8 addiu a2, a2, 0x5b94      |     a2 += str.Before_s_n;
    0x000034bc addiu a1, zero, 1         |     a1 = 1;
    0x000034c0 jalr t9                   |     t9 ();
    0x000034c4 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x000034c8 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x000034cc move a1, s3               |     a1 = s3;
    0x000034d0 lw s2, -0x7fdc(gp)        |     s2 = *((gp - 8183));
    0x000034d4 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x000034d8 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000034dc addiu s2, s2, 0x2280      |     s2 += fcn.00002280;
    0x000034e0 addiu a3, a3, 0x5ba0      |     a3 += str.After_1_s_n;
    0x000034e4 move t9, s2               |     t9 = s2;
    0x000034e8 addiu a2, a2, 0x5bac      |     a2 += str.x_systemd.after;
    0x000034ec bal 0x2280                |     fcn_00002280 ();
    0x000034f0 move s7, v0               |     s7 = v0;
    0x000034f4 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x000034f8 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x000034fc bltz v0, 0x2a18           |         goto label_0;
                                         |     }
    0x00003500 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00003504 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00003508 addiu a3, a3, 0x5bbc      |     a3 += str.After_1_s_nRequires_1_s_n;
    0x0000350c addiu a2, a2, 0x5bd8      |     a2 += str.x_systemd.requires;
    0x00003510 move t9, s2               |     t9 = s2;
    0x00003514 move a1, s3               |     a1 = s3;
    0x00003518 bal 0x2280                |     fcn_00002280 ();
    0x0000351c move s7, v0               |     s7 = v0;
    0x00003520 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003524 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00003528 bltz v0, 0x2a18           |         goto label_0;
                                         |     }
    0x0000352c lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00003530 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00003534 addiu a3, a3, 0x5bec      |     a3 += str.Before_1_s_n;
    0x00003538 addiu a2, a2, 0x5bfc      |     a2 += str.x_systemd.before;
    0x0000353c move t9, s2               |     t9 = s2;
    0x00003540 move a1, s3               |     a1 = s3;
    0x00003544 bal 0x2280                |     fcn_00002280 ();
    0x00003548 move s7, v0               |     s7 = v0;
    0x0000354c lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003550 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00003554 bltz v0, 0x2a18           |         goto label_0;
                                         |     }
    0x00003558 lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x0000355c addiu t9, t9, 0x25e8      |     t9 += fcn.000025e8;
    0x00003560 move a1, s3               |     a1 = s3;
    0x00003564 bal 0x25e8                |     fcn_000025e8 ();
    0x00003568 move s7, v0               |     s7 = v0;
    0x0000356c lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003570 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
                                         |     if (v0 < 0) {
    0x00003574 bltz v0, 0x2a18           |         goto label_0;
                                         |     }
    0x00003578 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000357c lw t9, -0x7eb0(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003580 move a3, s6               |     a3 = s6;
    0x00003584 addiu a2, a2, 0x5c8c      |     a2 += str._n_Automount__nWhere_s_n;
    0x00003588 addiu a1, zero, 1         |     a1 = 1;
    0x0000358c jalr t9                   |     t9 ();
    0x00003590 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003594 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003598 lw t9, 0x2c(fp)           |     t9 = *(arg_2ch);
    0x0000359c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000035a0 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x000035a4 addiu v0, v0, 0x5ca4      |     v0 += str.TimeoutIdleSec;
    0x000035a8 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000035ac addiu a3, a3, 0x5ce4      |     a3 += str.x_systemd.idle_timeout;
    0x000035b0 move a2, s3               |     a2 = s3;
    0x000035b4 move a1, s0               |     a1 = s0;
    0x000035b8 jalr t9                   |     t9 ();
    0x000035bc move s7, v0               |     s7 = v0;
    0x000035c0 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x000035c4 bltz v0, 0x31b8           |         goto label_14;
                                         |     }
    0x000035c8 lw t9, -0x7fa0(gp)        |     t9 = sym.imp.fflush_and_check;
    0x000035cc lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x000035d0 jalr t9                   |     t9 ();
    0x000035d4 move s0, v0               |     s0 = v0;
    0x000035d8 lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 < 0) {
    0x000035dc bltz v0, 0x36cc           |         goto label_50;
                                         |     }
    0x000035e0 lw v0, 0xbc(fp)           |     v0 = *(arg_bch);
    0x000035e4 andi v0, v0, 2            |     v0 &= 2;
    0x000035e8 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
                                         |     if (v0 != 0) {
    0x000035ec bnez v0, 0x377c           |         goto label_51;
                                         |     }
    0x000035f0 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x000035f4 addiu a2, a2, 0x59cc      |     a2 += str.requires;
                                         | label_17:
    0x000035f8 lw t9, -0x7f34(gp)        |     t9 = sym.imp.generator_add_symlink;
    0x000035fc lw a3, 0x4c(fp)           |     a3 = *(arg_4ch);
    0x00003600 lw a1, 0x40(fp)           |     a1 = *(arg_40h);
    0x00003604 move a0, s5               |     a0 = s5;
    0x00003608 jalr t9                   |     t9 ();
    0x0000360c slti v1, v0, 1            |     v1 = (v0 < 1) ? 1 : 0;
                                         |     if (v1 != 0) {
    0x00003610 movz v0, zero, v1         |         v0 = 0;
                                         |     }
    0x00003614 lw gp, 0x20(fp)           |     gp = *(arg_20h);
    0x00003618 move s7, v0               |     s7 = v0;
    0x0000361c lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003620 b 0x2a18                  |     goto label_0;
                                         | label_39:
    0x00003624 move a3, s4               |     a3 = s4;
    0x00003628 move a2, s0               |     a2 = s0;
    0x0000362c move a1, s2               |     a1 = s2;
    0x00003630 move a0, s5               |     a0 = s5;
    0x00003634 jalr t9                   |     t9 ();
    0x00003638 move s7, v0               |     s7 = v0;
    0x0000363c lw gp, 0x20(fp)           |     gp = *(arg_20h);
                                         |     if (v0 >= 0) {
    0x00003640 bgez v0, 0x2ea8           |         goto label_15;
                                         |     }
    0x00003644 lw a0, 0x54(fp)           |     a0 = *(arg_54h);
    0x00003648 b 0x2a18                  |     goto label_0;
                                         | label_41:
    0x0000364c addiu a2, a2, 0x59c4      |     a2 += str.wants;
    0x00003650 b 0x2ee0                  |     goto label_16;
                                         | label_46:
    0x00003654 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003658 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000365c lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00003660 addiu v0, v0, 0x649c      |     v0 += str.add_mount;
    0x00003664 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.log_assert_failed_realm;
    0x00003668 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x0000366c addiu a3, zero, 0x173     |     a3 = 0x173;
    0x00003670 addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x00003674 addiu a1, a1, 0x5b74      |     a1 += str.sizeof_char__n____ALLOCA_MAX;
    0x00003678 move a0, zero             |     a0 = 0;
    0x0000367c jalr t9                   |     t9 ();
                                         | label_49:
    0x00003680 lw v0, 0x48(fp)           |     v0 = *(arg_48h);
    0x00003684 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00003688 sw v0, 0x18(sp)           |     *(var_18h) = v0;
    0x0000368c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00003690 lw t9, -0x7f54(gp)        |     t9 = sym.imp.log_internal_realm;
    0x00003694 addiu v0, v0, 0x5c5c      |     v0 += str.Failed_to_write_unit_file__s:__m;
    0x00003698 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x0000369c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000036a0 addiu a3, zero, 0x1b8     |     a3 = 0x1b8;
    0x000036a4 addiu v0, v0, 0x6490      |     v0 += 0x6490;
    0x000036a8 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000036ac addiu a2, a2, 0x5803      |     a2 += 0x5803;
    0x000036b0 move a1, s7               |     a1 = s7;
                                         |     do {
    0x000036b4 addiu a0, zero, 3         |         a0 = 3;
    0x000036b8 jalr t9                   |         t9 ();
    0x000036bc move s7, v0               |         s7 = v0;
    0x000036c0 lw gp, 0x20(fp)           |         gp = *(arg_20h);
    0x000036c4 lw a0, 0x54(fp)           |         a0 = *(arg_54h);
    0x000036c8 b 0x2a18                  |         goto label_0;
                                         | label_50:
    0x000036cc lw t9, -0x7fa4(gp)        |         t9 = sym.imp.log_get_max_level_realm;
    0x000036d0 move a0, zero             |         a0 = 0;
    0x000036d4 jalr t9                   |         t9 ();
    0x000036d8 slti v0, v0, 3            |         v0 = (v0 < 3) ? 1 : 0;
    0x000036dc lw gp, 0x20(fp)           |         gp = *(arg_20h);
                                         |         if (v0 != 0) {
    0x000036e0 beqz v0, 0x373c           |             
    0x000036e4 negu v1, s0               |             __asm ("negu v1, s0");
    0x000036e8 andi v1, v1, 0xff         |             v1 &= 0xff;
    0x000036ec negu s7, v1               |             __asm ("negu s7, v1");
    0x000036f0 lw a0, 0x54(fp)           |             a0 = *(arg_54h);
    0x000036f4 b 0x2a18                  |             goto label_0;
                                         | label_44:
    0x000036f8 lw v0, -0x7fdc(gp)        |             v0 = *((gp - 8183));
    0x000036fc lw a2, -0x7fdc(gp)        |             a2 = *((gp - 8183));
    0x00003700 addiu v0, v0, 0x58b8      |             v0 += str.Failed_to_generate_unit_name:__m;
    0x00003704 sw v0, 0x14(sp)           |             *(var_14h) = v0;
    0x00003708 lw v0, -0x7fdc(gp)        |             v0 = *((gp - 8183));
    0x0000370c lw t9, -0x7f54(gp)        |             t9 = sym.imp.log_internal_realm;
    0x00003710 addiu v0, v0, 0x6490      |             v0 += 0x6490;
    0x00003714 addiu a0, zero, 3         |             a0 = 3;
    0x00003718 sw v0, 0x10(sp)           |             *(var_10h) = v0;
    0x0000371c addiu a3, zero, 0x1d0     |             a3 = 0x1d0;
    0x00003720 addiu a2, a2, 0x5803      |             a2 += 0x5803;
    0x00003724 move a1, s2               |             a1 = s2;
    0x00003728 jalr t9                   |             t9 ();
    0x0000372c move s7, v0               |             s7 = v0;
    0x00003730 lw gp, 0x20(fp)           |             gp = *(arg_20h);
    0x00003734 lw a0, 0x54(fp)           |             a0 = *(arg_54h);
    0x00003738 b 0x2a18                  |             goto label_0;
                                         |         }
    0x0000373c lw v0, 0x4c(fp)           |         v0 = *(arg_4ch);
    0x00003740 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00003744 sw v0, 0x18(sp)           |         *(var_18h) = v0;
    0x00003748 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x0000374c lw t9, -0x7f54(gp)        |         t9 = sym.imp.log_internal_realm;
    0x00003750 addiu v0, v0, 0x5c5c      |         v0 += str.Failed_to_write_unit_file__s:__m;
    0x00003754 sw v0, 0x14(sp)           |         *(var_14h) = v0;
    0x00003758 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x0000375c addiu a3, zero, 0x1fb     |         a3 = 0x1fb;
    0x00003760 addiu v0, v0, 0x6490      |         v0 += 0x6490;
    0x00003764 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x00003768 addiu a2, a2, 0x5803      |         a2 += 0x5803;
    0x0000376c move a1, s0               |         a1 = s0;
    0x00003770 b 0x36b4                  |         
                                         |     } while (1);
                                         | label_48:
    0x00003774 addiu s7, zero, -0xc      |     s7 = -0xc;
    0x00003778 b 0x2a18                  |     goto label_0;
                                         | label_51:
    0x0000377c addiu a2, a2, 0x59c4      |     a2 += str.wants;
    0x00003780 b 0x35f8                  |     goto label_17;
                                         | }

[*] Function fprintf used 14 times systemd-fstab-generator