[*] Binary protection state of smbclient

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


[*] Function printf tear down of smbclient

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x40f568 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0040f568 ()                  | void fcn_0040f568 () {
    0x0040f568 addiu sp, sp, -0x438          |     
    0x0040f56c sw s3, 0x428(sp)              |     *(var_428h) = s3;
    0x0040f570 sw s2, 0x424(sp)              |     *(var_424h) = s2;
    0x0040f574 move s3, a0                   |     s3 = a0;
    0x0040f578 lui s2, 0x4a                  |     s2 = 0x4a0000;
    0x0040f57c sw s4, 0x42c(sp)              |     *(var_42ch) = s4;
    0x0040f580 addiu a0, s2, -0x7208         |     a0 = s2 + -0x7208;
    0x0040f584 move s4, a1                   |     s4 = a1;
    0x0040f588 move a1, s3                   |     a1 = s3;
    0x0040f58c sw ra, 0x434(sp)              |     *(var_434h) = ra;
    0x0040f590 sw s5, 0x430(sp)              |     *(var_430h) = s5;
    0x0040f594 sw s1, 0x420(sp)              |     *(var_420h) = s1;
    0x0040f598 sw s0, 0x41c(sp)              |     *(var_41ch) = s0;
    0x0040f59c jal 0x40f330                  |     fcn_0040f330 ();
    0x0040f5a0 move s0, v0                   |     s0 = v0;
                                             |     if (v0 < 0) {
    0x0040f5a4 bltz v0, 0x40f6e4             |         goto label_1;
                                             |     }
    0x0040f5a8 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x0040f5ac lw a3, -0x1664(v0)            |     a3 = *((v0 - 1433));
    0x0040f5b0 lui a2, 0x46                  |     a2 = "IPC Service (%s)";
                                             |     /* str.IPC_Service___s_ */
    0x0040f5b4 addiu a2, a2, 0x6fc           |     
    0x0040f5b8 lui s1, 0x4a                  |     s1 = 0x4a0000;
    0x0040f5bc addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x0040f5c0 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
    0x0040f5c4 jal 0x444430                  |     sym_snprintf ()
    0x0040f5c8 lw v0, -0x1450(s1)            |     v0 = *((s1 - 1300));
    0x0040f5cc sll s0, s0, 2                 |     s0 <<= 2;
    0x0040f5d0 addiu s2, s2, -0x7208         |     s2 += -0x7208;
    0x0040f5d4 addu v0, v0, s0               |     v0 += s0;
    0x0040f5d8 lw s5, (v0)                   |     s5 = *(v0);
    0x0040f5dc jal 0x44d488                  |     fcn_0044d488 ();
    0x0040f5e0 move a1, v0                   |     a1 = v0;
    0x0040f5e4 addiu s5, s5, 0xc             |     s5 += 0xc;
    0x0040f5e8 move a0, s5                   |     a0 = s5;
    0x0040f5ec jal 0x446ae0                  |     fcn_00446ae0 ();
    0x0040f5f0 lw v0, -0x1450(s1)            |     v0 = *((s1 - 1300));
    0x0040f5f4 lui a1, 0x47                  |     a1 = 0x4709d4;
    0x0040f5f8 addiu a1, a1, 0x9d4           |     
    0x0040f5fc addu v0, v0, s0               |     v0 += s0;
    0x0040f600 lw a0, (v0)                   |     a0 = *(v0);
    0x0040f604 addiu a0, a0, 0x10            |     a0 += 0x10;
    0x0040f608 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x0040f60c lw v0, -0x1450(s1)            |     v0 = *((s1 - 1300));
    0x0040f610 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x0040f614 addu v0, v0, s0               |     v0 += s0;
    0x0040f618 lw a0, (v0)                   |     a0 = *(v0);
    0x0040f61c addiu a0, a0, 0x8c            |     a0 += 0x8c;
    0x0040f620 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x0040f624 lw v0, -0x1450(s1)            |     v0 = *((s1 - 1300));
    0x0040f628 lui a1, 0x46                  |     a1 = 0x45dc8c;
                                             |     /* esilref: 'IPC' */
    0x0040f62c addiu a1, a1, -0x2374         |     
    0x0040f630 addu v0, v0, s0               |     v0 += s0;
    0x0040f634 lw a0, (v0)                   |     a0 = *(v0);
    0x0040f638 addiu a0, a0, 0xa8            |     a0 += 0xa8;
    0x0040f63c jal 0x446ae0                  |     fcn_00446ae0 ();
    0x0040f640 lw v0, -0x1450(s1)            |     v0 = *((s1 - 1300));
    0x0040f644 lw a1, 0x120(s2)              |     a1 = *((s2 + 72));
    0x0040f648 addiu v1, zero, 1             |     v1 = 1;
    0x0040f64c addu s0, v0, s0               |     s0 = v0 + s0;
    0x0040f650 lui v0, 0x4b                  |     v0 = 0x4b0000;
    0x0040f654 lw a0, -0x2b40(v0)            |     a0 = *((v0 - 2768));
    0x0040f658 lw v0, (s0)                   |     v0 = *(s0);
    0x0040f65c slti a0, a0, 3                |     a0 = (a0 < 3) ? 1 : 0;
    0x0040f660 sw zero, 0x114(v0)            |     *((v0 + 69)) = 0;
    0x0040f664 sw zero, 0xe0(v0)             |     *((v0 + 56)) = 0;
    0x0040f668 sw v1, 0x124(v0)              |     *((v0 + 73)) = v1;
    0x0040f66c sw v1, 0x128(v0)              |     *((v0 + 74)) = v1;
    0x0040f670 sw zero, 0x130(v0)            |     *((v0 + 76)) = 0;
    0x0040f674 sw s4, 0x134(v0)              |     *((v0 + 77)) = s4;
    0x0040f678 sw zero, 0x138(v0)            |     *((v0 + 78)) = 0;
    0x0040f67c sw a1, 0x120(v0)              |     *((v0 + 72)) = a1;
    0x0040f680 beqz a0, 0x40f6ac             |     
                                             |     while (v0 == 0) {
    0x0040f684 lw ra, 0x434(sp)              |         ra = *(var_434h);
                                             | label_0:
    0x0040f688 lw s5, 0x430(sp)              |         s5 = *(var_430h);
    0x0040f68c lw s4, 0x42c(sp)              |         s4 = *(var_42ch);
    0x0040f690 lw s3, 0x428(sp)              |         s3 = *(var_428h);
    0x0040f694 lw s2, 0x424(sp)              |         s2 = *(var_424h);
    0x0040f698 lw s1, 0x420(sp)              |         s1 = *(var_420h);
    0x0040f69c lw s0, 0x41c(sp)              |         s0 = *(var_41ch);
    0x0040f6a0 addiu v0, zero, 1             |         v0 = 1;
    0x0040f6a4 addiu sp, sp, 0x438           |         
    0x0040f6a8 jr ra                         |         return v0;
    0x0040f6ac lui a1, 0x46                  |         a1 = 0x460000;
    0x0040f6b0 lui a2, 0x46                  |         a2 = 0x460000;
    0x0040f6b4 addiu a0, zero, 3             |         a0 = 3;
                                             |         /* esilref: 'param/loadparm.c' */
    0x0040f6b8 addiu a1, a1, 0x3a8           |         a1 += 0x3a8;
                                             |         /* str.lp_add_ipc */
    0x0040f6bc addiu a2, a2, 0x23fc          |         a2 += 0x23fc;
    0x0040f6c0 addiu a3, zero, 0x7e7         |         a3 = 0x7e7;
    0x0040f6c4 jal 0x4381b8                  |         fcn_004381b8 ();
    0x0040f6c8 lui a0, 0x46                  |         a0 = 0x460000;
    0x0040f6cc beqz v0, 0x40f684             |         
                                             |     }
                                             |     /* str.adding_IPC_service__s_n */
    0x0040f6d0 addiu a0, a0, 0x710           |     a0 += 0x710;
    0x0040f6d4 move a1, s3                   |     a1 = s3;
    0x0040f6d8 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x0040f6dc lw ra, 0x434(sp)              |     ra = *(var_434h);
    0x0040f6e0 b 0x40f688                    |     goto label_0;
                                             | label_1:
    0x0040f6e4 lw ra, 0x434(sp)              |     ra = *(var_434h);
    0x0040f6e8 lw s5, 0x430(sp)              |     s5 = *(var_430h);
    0x0040f6ec lw s4, 0x42c(sp)              |     s4 = *(var_42ch);
    0x0040f6f0 lw s3, 0x428(sp)              |     s3 = *(var_428h);
    0x0040f6f4 lw s2, 0x424(sp)              |     s2 = *(var_424h);
    0x0040f6f8 lw s1, 0x420(sp)              |     s1 = *(var_420h);
    0x0040f6fc lw s0, 0x41c(sp)              |     s0 = *(var_41ch);
    0x0040f700 move v0, zero                 |     v0 = 0;
    0x0040f704 addiu sp, sp, 0x438           |     
    0x0040f708 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x412a68 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00412a68 ()                  | void fcn_00412a68 () {
    0x00412a68 addiu sp, sp, -0x430          |     
    0x00412a6c sw s0, 0x418(sp)              |     *(var_418h) = s0;
    0x00412a70 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x00412a74 lw v0, -0x1450(s0)            |     v0 = *((s0 - 1300));
    0x00412a78 sll a1, a1, 2                 |     a1 <<= 2;
    0x00412a7c sw s2, 0x420(sp)              |     *(var_420h) = s2;
    0x00412a80 addu v0, v0, a1               |     v0 += a1;
    0x00412a84 move s2, a0                   |     s2 = a0;
    0x00412a88 lw a0, (v0)                   |     a0 = *(v0);
    0x00412a8c move a1, s2                   |     a1 = s2;
    0x00412a90 sw s4, 0x428(sp)              |     *(var_428h) = s4;
    0x00412a94 sw ra, 0x42c(sp)              |     *(var_42ch) = ra;
    0x00412a98 sw s3, 0x424(sp)              |     *(var_424h) = s3;
    0x00412a9c sw s1, 0x41c(sp)              |     *(var_41ch) = s1;
    0x00412aa0 move s4, a2                   |     s4 = a2;
    0x00412aa4 jal 0x40f330                  |     fcn_0040f330 ();
    0x00412aa8 lw v1, -0x1450(s0)            |     v1 = *((s0 - 1300));
                                             |     if (v0 < 0) {
    0x00412aac bltz v0, 0x412be4             |         goto label_4;
                                             |     }
    0x00412ab0 sll s1, v0, 2                 |     s1 = v0 << 2;
    0x00412ab4 addu v0, v1, s1               |     v0 = v1 + s1;
    0x00412ab8 lw a0, (v0)                   |     a0 = *(v0);
    0x00412abc lw s3, 0xc(a0)                |     s3 = *((a0 + 3));
    0x00412ac0 lb v1, (s3)                   |     v1 = *(s3);
                                             |     if (v1 != 0) {
    0x00412ac4 bnez v1, 0x412b40             |         goto label_5;
                                             |     }
    0x00412ac8 nop                           |     
                                             | label_0:
    0x00412acc addiu a0, a0, 0xc             |     a0 += 0xc;
    0x00412ad0 move a1, s4                   |     a1 = s4;
    0x00412ad4 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00412ad8 lw v0, -0x1450(s0)            |     v0 = *((s0 - 1300));
                                             |     do {
    0x00412adc addu v0, v0, s1               |         v0 += s1;
    0x00412ae0 lw v1, (v0)                   |         v1 = *(v0);
    0x00412ae4 lw v0, 0x8c(v1)               |         v0 = *((v1 + 35));
    0x00412ae8 lb v0, (v0)                   |         v0 = *(v0);
    0x00412aec lui s0, 0x4a                  |         s0 = 0x4a0000;
                                             |         if (v0 == 0) {
    0x00412af0 beqz v0, 0x412ba4             |             goto label_6;
                                             |         }
                                             | label_3:
    0x00412af4 lui a0, 0x4b                  |         a0 = 0x4b0000;
    0x00412af8 lui v0, 0x4a                  |         v0 = 0x498df8;
    0x00412afc addiu v0, v0, -0x7208         |         
    0x00412b00 lw a2, -0x2b40(a0)            |         a2 = *((a0 - 2768));
    0x00412b04 lw a1, 0x124(v0)              |         a1 = *((v0 + 73));
    0x00412b08 lw a0, 0x120(v0)              |         a0 = *((v0 + 72));
    0x00412b0c slti v0, a2, 3                |         v0 = (a2 < 3) ? 1 : 0;
    0x00412b10 sw a1, 0x124(v1)              |         *((v1 + 73)) = a1;
    0x00412b14 sw a0, 0x120(v1)              |         *((v1 + 72)) = a0;
                                             |         if (v0 == 0) {
    0x00412b18 beqz v0, 0x412b68             |             goto label_7;
                                             |         }
                                             | label_1:
    0x00412b1c lw ra, 0x42c(sp)              |         ra = *(var_42ch);
                                             | label_2:
    0x00412b20 lw s4, 0x428(sp)              |         s4 = *(var_428h);
    0x00412b24 lw s3, 0x424(sp)              |         s3 = *(var_424h);
    0x00412b28 lw s2, 0x420(sp)              |         s2 = *(var_420h);
    0x00412b2c lw s1, 0x41c(sp)              |         s1 = *(var_41ch);
    0x00412b30 lw s0, 0x418(sp)              |         s0 = *(var_418h);
    0x00412b34 addiu v0, zero, 1             |         v0 = 1;
    0x00412b38 addiu sp, sp, 0x430           |         
    0x00412b3c jr ra                         |         return v0;
                                             | label_5:
    0x00412b40 addiu a0, zero, -1            |         a0 = -1;
    0x00412b44 jal 0x410a00                  |         fcn_00410a00 ();
    0x00412b48 move a1, v0                   |         a1 = v0;
    0x00412b4c move a0, s3                   |         a0 = s3;
    0x00412b50 jal 0x4453ac                  |         fcn_004453ac ();
    0x00412b54 lw v0, -0x1450(s0)            |         v0 = *((s0 - 1300));
    0x00412b58 beqz v0, 0x412adc             |         
                                             |     } while (v0 == 0);
    0x00412b5c addu v0, v0, s1               |     v0 += s1;
    0x00412b60 lw a0, (v0)                   |     a0 = *(v0);
    0x00412b64 b 0x412acc                    |     goto label_0;
                                             | label_7:
    0x00412b68 lui a1, 0x46                  |     a1 = 0x460000;
    0x00412b6c lui a2, 0x46                  |     a2 = 0x460000;
    0x00412b70 addiu a0, zero, 3             |     a0 = 3;
                                             |     /* esilref: 'param/loadparm.c' */
    0x00412b74 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.lp_add_home */
    0x00412b78 addiu a2, a2, 0x22ec          |     a2 += 0x22ec;
    0x00412b7c addiu a3, zero, 0x7be         |     a3 = 0x7be;
    0x00412b80 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00412b84 move a1, s2                   |     a1 = s2;
                                             |     if (v0 == 0) {
    0x00412b88 beqz v0, 0x412b1c             |         goto label_1;
                                             |     }
    0x00412b8c lui a0, 0x46                  |     a0 = "adding home directory %s at %s\n";
                                             |     /* str.adding_home_directory__s_at__s_n */
    0x00412b90 addiu a0, a0, 0x850           |     
    0x00412b94 move a2, s4                   |     a2 = s4;
    0x00412b98 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00412b9c lw ra, 0x42c(sp)              |     ra = *(var_42ch);
    0x00412ba0 b 0x412b20                    |     goto label_2;
                                             | label_6:
    0x00412ba4 lui a2, 0x46                  |     a2 = 0x460000;
    0x00412ba8 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00412bac addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str.Home_directory_of__s */
    0x00412bb0 addiu a2, a2, 0x838           |     a2 += 0x838;
    0x00412bb4 move a3, s2                   |     a3 = s2;
    0x00412bb8 jal 0x444430                  |     sym_snprintf ()
    0x00412bbc lw v0, -0x1450(s0)            |     v0 = *((s0 - 1300));
    0x00412bc0 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00412bc4 addu v0, v0, s1               |     v0 += s1;
    0x00412bc8 lw a0, (v0)                   |     a0 = *(v0);
    0x00412bcc addiu a0, a0, 0x8c            |     a0 += 0x8c;
    0x00412bd0 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00412bd4 lw v0, -0x1450(s0)            |     v0 = *((s0 - 1300));
    0x00412bd8 addu s1, v0, s1               |     s1 = v0 + s1;
    0x00412bdc lw v1, (s1)                   |     v1 = *(s1);
    0x00412be0 b 0x412af4                    |     goto label_3;
                                             | label_4:
    0x00412be4 lw ra, 0x42c(sp)              |     ra = *(var_42ch);
    0x00412be8 lw s4, 0x428(sp)              |     s4 = *(var_428h);
    0x00412bec lw s3, 0x424(sp)              |     s3 = *(var_424h);
    0x00412bf0 lw s2, 0x420(sp)              |     s2 = *(var_420h);
    0x00412bf4 lw s1, 0x41c(sp)              |     s1 = *(var_41ch);
    0x00412bf8 lw s0, 0x418(sp)              |     s0 = *(var_418h);
    0x00412bfc move v0, zero                 |     v0 = 0;
    0x00412c00 addiu sp, sp, 0x430           |     
    0x00412c04 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x413bb8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00413bb8 ()                  | void fcn_00413bb8 () {
    0x00413bb8 addiu sp, sp, -0x848          |     
    0x00413bbc sw s3, 0x82c(sp)              |     *(var_82ch) = s3;
    0x00413bc0 move s3, a0                   |     s3 = a0;
    0x00413bc4 sw fp, 0x840(sp)              |     *(var_840h) = fp;
    0x00413bc8 sw s0, 0x820(sp)              |     *(var_820h) = s0;
    0x00413bcc addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x00413bd0 move s0, a1                   |     s0 = a1;
    0x00413bd4 move fp, a2                   |     fp = a2;
    0x00413bd8 move a1, s3                   |     a1 = s3;
    0x00413bdc addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00413be0 sw ra, 0x844(sp)              |     *(var_844h) = ra;
    0x00413be4 sw a3, 0x854(sp)              |     *(arg_854h) = a3;
    0x00413be8 sw s6, 0x838(sp)              |     *(var_838h) = s6;
    0x00413bec sw s5, 0x834(sp)              |     *(var_834h) = s5;
    0x00413bf0 sw s2, 0x828(sp)              |     *(var_828h) = s2;
    0x00413bf4 sw s7, 0x83c(sp)              |     *(var_83ch) = s7;
    0x00413bf8 sw s4, 0x830(sp)              |     *(var_830h) = s4;
    0x00413bfc sw s1, 0x824(sp)              |     *(var_824h) = s1;
    0x00413c00 jal 0x4461f8                  |     fcn_004461f8 ();
    0x00413c04 addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x00413c08 addiu a1, zero, 0x400         |     a1 = 0x400;
    0x00413c0c lui s5, 0x4a                  |     s5 = 0x4a0000;
    0x00413c10 jal 0x454f5c                  |     fcn_00454f5c ();
    0x00413c14 move a0, s3                   |     a0 = s3;
    0x00413c18 addiu a1, sp, 0x420           |     a1 = sp + 0x420;
    0x00413c1c jal 0x40e810                  |     fcn_0040e810 ();
    0x00413c20 lw v0, -0x142c(s5)            |     v0 = *((s5 - 1291));
    0x00413c24 lui v1, 0x4a                  |     v1 = 0x4a0000;
    0x00413c28 addiu a0, zero, 1             |     a0 = 1;
    0x00413c2c sw a0, -0x4abc(v1)            |     *((v1 - 4783)) = a0;
    0x00413c30 lui s6, 0x4a                  |     s6 = 0x4a0000;
    0x00413c34 lui v1, 0x4a                  |     v1 = 0x4a0000;
    0x00413c38 sw s0, -0x143c(v1)            |     *((v1 - 1295)) = s0;
    0x00413c3c addiu s2, s6, -0x1694         |     s2 = s6 + -0x1694;
                                             |     if (v0 == 0) {
    0x00413c40 beqz v0, 0x4144c8             |         goto label_23;
                                             |     }
    0x00413c44 lui s7, 0x47                  |     s7 = 0x470000;
                                             | label_15:
    0x00413c48 lui s5, 0x4b                  |     s5 = 0x4b0000;
    0x00413c4c lw v0, -0x2b40(s5)            |     v0 = *((s5 - 2768));
    0x00413c50 slti v0, v0, 3                |     v0 = (v0 < 3) ? 1 : 0;
    0x00413c54 lui a2, 0x46                  |     a2 = 0x460000;
                                             |     if (v0 == 0) {
    0x00413c58 beqz v0, 0x414328             |         goto label_24;
                                             |     }
                                             | label_6:
    0x00413c5c lui a0, 0x4a                  |     a0 = 0x4a0000;
                                             | label_7:
    0x00413c60 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413c64 addiu a0, a0, -0x164c         |     a0 += -0x164c;
                                             |     /* str._usr_samba_config_private_smbpasswd */
    0x00413c68 addiu a1, a1, 0xc1c           |     a1 += 0xc1c;
    0x00413c6c jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413c70 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413c74 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413c78 addiu a0, a0, -0x15a0         |     a0 += -0x15a0;
                                             |     /* str.hash */
    0x00413c7c addiu a1, a1, 0xc40           |     a1 += 0xc40;
    0x00413c80 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413c84 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413c88 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413c8c addiu a0, a0, -0x1658         |     a0 += -0x1658;
                                             |     /* str.newpassword__n_n_newpassword__n_n_changed */
    0x00413c90 addiu a1, a1, 0xc48           |     a1 += 0xc48;
    0x00413c94 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413c98 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413c9c lui a1, 0x46                  |     a1 = 0x460000;
    0x00413ca0 addiu a0, a0, -0x163c         |     a0 += -0x163c;
                                             |     /* str.WORKGROUP */
    0x00413ca4 addiu a1, a1, 0xc7c           |     a1 += 0xc7c;
    0x00413ca8 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413cac lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413cb0 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413cb4 addiu a0, a0, -0x165c         |     a0 += -0x165c;
                                             |     /* str._usr_bin_passwd */
    0x00413cb8 addiu a1, a1, 0xc88           |     a1 += 0xc88;
    0x00413cbc jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413cc0 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413cc4 addiu a0, s6, -0x1694         |     a0 = s6 + -0x1694;
                                             |     /* str._etc_printcap */
    0x00413cc8 addiu a1, a1, 0xc98           |     a1 += 0xc98;
    0x00413ccc jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413cd0 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413cd4 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413cd8 addiu a0, a0, -0x1680         |     a0 += -0x1680;
                                             |     /* str._usr_samba_config_var_locks */
    0x00413cdc addiu a1, a1, 0xca8           |     a1 += 0xca8;
    0x00413ce0 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413ce4 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413ce8 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413cec addiu a0, a0, -0x167c         |     a0 += -0x167c;
                                             |     /* str._usr_samba_config_var */
    0x00413cf0 addiu a1, a1, 0xcc4           |     a1 += 0xcc4;
    0x00413cf4 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413cf8 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413cfc lui a1, 0x46                  |     a1 = 0x460000;
    0x00413d00 addiu a0, a0, -0x15f8         |     a0 += -0x15f8;
                                             |     /* str.0.0.0.0 */
    0x00413d04 addiu a1, a1, 0xcdc           |     a1 += 0xcdc;
    0x00413d08 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413d0c lui a1, 0x46                  |     a1 = 0x460000;
    0x00413d10 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
                                             |     /* str.Samba_ */
    0x00413d14 addiu a1, a1, 0xce4           |     a1 += 0xce4;
    0x00413d18 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00413d1c jal 0x4461f8                  |     fcn_004461f8 ();
    0x00413d20 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413d24 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00413d28 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
                                             |     /* str.2.2.7a */
    0x00413d2c addiu a1, a1, -0x2cd8         |     a1 += -0x2cd8;
    0x00413d30 jal 0x4463d8                  |     fcn_004463d8 ();
    0x00413d34 lui a0, 0x4a                  |     a0 = 0x49e99c;
    0x00413d38 addiu a0, a0, -0x1664         |     
    0x00413d3c addiu a1, sp, 0x20            |     a1 = sp + 0x20;
    0x00413d40 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413d44 addiu v0, zero, 9             |     v0 = 9;
    0x00413d48 lui a2, 0x46                  |     a2 = 0x460000;
    0x00413d4c addiu a3, zero, 4             |     a3 = 4;
                                             |     /* str._d._d */
    0x00413d50 addiu a2, a2, 0xcec           |     a2 += 0xcec;
    0x00413d54 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x00413d58 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
    0x00413d5c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00413d60 jal 0x444430                  |     sym_snprintf ()
    0x00413d64 lui a0, 0x4a                  |     a0 = 0x49ea10;
    0x00413d68 addiu a0, a0, -0x15f0         |     
    0x00413d6c addiu a1, sp, 0x20            |     a1 = sp + 0x20;
    0x00413d70 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413d74 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413d78 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413d7c addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
                                             |     /* str.TCP_NODELAY */
    0x00413d80 addiu a0, a0, -0x44b0         |     a0 += -0x44b0;
                                             |     /* esilref: 'TCP_NODELAY' */
    0x00413d84 addiu a1, a1, 0xcf4           |     a1 += 0xcf4;
    0x00413d88 jal 0x4461f8                  |     fcn_004461f8 ();
    0x00413d8c lui a0, 0x4a                  |     a0 = 0x49e9ec;
    0x00413d90 addiu a0, a0, -0x1614         |     
    0x00413d94 addiu a1, s7, 0x9d4           |     a1 = s7 + 0x9d4;
    0x00413d98 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413d9c lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413da0 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413da4 addiu a0, a0, -0x1610         |     a0 += -0x1610;
                                             |     /* str._N_U */
    0x00413da8 addiu a1, a1, 0xd00           |     a1 += 0xd00;
    0x00413dac jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413db0 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413db4 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413db8 addiu a0, a0, -0x1618         |     a0 += -0x1618;
                                             |     /* str._N_Uprofile */
    0x00413dbc addiu a1, a1, 0xd08           |     a1 += 0xd08;
    0x00413dc0 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413dc4 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413dc8 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413dcc addiu a0, a0, -0x15e4         |     a0 += -0x15e4;
                                             |     /* str.lmhosts_host_wins_bcast */
    0x00413dd0 addiu a1, a1, 0xd18           |     a1 += 0xd18;
    0x00413dd4 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413dd8 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413ddc lui a1, 0x46                  |     a1 = 0x460000;
    0x00413de0 addiu a0, a0, -0x1620         |     a0 += -0x1620;
                                             |     /* str._usr_samba_lib_codepages */
    0x00413de4 addiu a1, a1, 0xd30           |     a1 += 0xd30;
    0x00413de8 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413dec addiu t1, zero, 0x4104        |     t1 = 0x4104;
    0x00413df0 sw t1, 0x100(s2)              |     *((s2 + 64)) = t1;
    0x00413df4 addiu t1, zero, 0x1388        |     t1 = 0x1388;
    0x00413df8 sw t1, 0xf8(s2)               |     *((s2 + 62)) = t1;
    0x00413dfc addiu t1, zero, 0x2710        |     t1 = 0x2710;
    0x00413e00 sw t1, 0x108(s2)              |     *((s2 + 66)) = t1;
    0x00413e04 lui t1, 3                     |     t1 = 0x30000;
    0x00413e08 addiu s0, zero, 1             |     s0 = 1;
    0x00413e0c addiu a2, zero, 0xa           |     a2 = 0xa;
    0x00413e10 addiu a3, zero, 5             |     a3 = 5;
    0x00413e14 addiu v1, zero, 0x32          |     v1 = 0x32;
    0x00413e18 ori t1, t1, 0xf480            |     t1 |= 0xf480;
    0x00413e1c sw a2, 0x128(s2)              |     *((s2 + 74)) = a2;
    0x00413e20 sw a3, 0x118(s2)              |     *((s2 + 70)) = a3;
    0x00413e24 sw v1, 0xfc(s2)               |     *((s2 + 63)) = v1;
    0x00413e28 sw v1, 0x104(s2)              |     *((s2 + 65)) = v1;
    0x00413e2c sw s0, 0x1bc(s2)              |     *((s2 + 111)) = s0;
    0x00413e30 sw zero, 0x1c0(s2)            |     *((s2 + 112)) = 0;
    0x00413e34 sw zero, 0x130(s2)            |     *((s2 + 76)) = 0;
    0x00413e38 sw zero, 0x12c(s2)            |     *((s2 + 75)) = 0;
    0x00413e3c sw zero, 0x134(s2)            |     *((s2 + 77)) = 0;
    0x00413e40 sw zero, 0x10c(s2)            |     *((s2 + 67)) = 0;
    0x00413e44 sw zero, 0x110(s2)            |     *((s2 + 68)) = 0;
    0x00413e48 sw zero, 0x114(s2)            |     *((s2 + 69)) = 0;
    0x00413e4c sw s0, 0x1c4(s2)              |     *((s2 + 113)) = s0;
    0x00413e50 sw s0, 0x11c(s2)              |     *((s2 + 71)) = s0;
    0x00413e54 sw s0, 0x120(s2)              |     *((s2 + 72)) = s0;
    0x00413e58 sw zero, 0x1a8(s2)            |     *((s2 + 106)) = 0;
    0x00413e5c sw zero, 0x1ac(s2)            |     *((s2 + 107)) = 0;
    0x00413e60 sw s0, 0x1c8(s2)              |     *((s2 + 114)) = s0;
    0x00413e64 sw s0, 0x1cc(s2)              |     *((s2 + 115)) = s0;
    0x00413e68 sw zero, 0x1d0(s2)            |     *((s2 + 116)) = 0;
    0x00413e6c sw zero, 0x1d4(s2)            |     *((s2 + 117)) = 0;
    0x00413e70 sw zero, 0x1b4(s2)            |     *((s2 + 109)) = 0;
    0x00413e74 sw zero, 0x1b8(s2)            |     *((s2 + 110)) = 0;
    0x00413e78 sw zero, 0x1b0(s2)            |     *((s2 + 108)) = 0;
    0x00413e7c sw s0, 0x138(s2)              |     *((s2 + 78)) = s0;
    0x00413e80 sw zero, 0x1d8(s2)            |     *((s2 + 118)) = 0;
    0x00413e84 sw zero, 0x1dc(s2)            |     *((s2 + 119)) = 0;
    0x00413e88 sw s0, 0x1fc(s2)              |     *((s2 + 127)) = s0;
    0x00413e8c sw zero, 0x220(s2)            |     *((s2 + 136)) = 0;
    0x00413e90 sw zero, 0x224(s2)            |     *((s2 + 137)) = 0;
    0x00413e94 sw zero, 0x228(s2)            |     *((s2 + 138)) = 0;
    0x00413e98 sw t1, 0x144(s2)              |     *((s2 + 81)) = t1;
    0x00413e9c lui t1, 7                     |     t1 = 0x7e900;
    0x00413ea0 ori t1, t1, 0xe900            |     
    0x00413ea4 sw t1, 0x148(s2)              |     *((s2 + 82)) = t1;
    0x00413ea8 addiu t1, zero, 0x5460        |     t1 = 0x5460;
    0x00413eac sw t1, 0x14c(s2)              |     *((s2 + 83)) = t1;
    0x00413eb0 sw v1, 0x16c(s2)              |     *((s2 + 91)) = v1;
    0x00413eb4 lui t1, 9                     |     t1 = 0x90000;
    0x00413eb8 addiu v1, zero, 0x352         |     v1 = 0x352;
    0x00413ebc addiu t1, t1, 0x3a80          |     t1 += 0x3a80;
    0x00413ec0 sw v1, 0x15c(s2)              |     *((s2 + 87)) = v1;
    0x00413ec4 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413ec8 addiu v1, zero, 3             |     v1 = 3;
    0x00413ecc lui a1, 0x46                  |     a1 = 0x460000;
    0x00413ed0 addiu t0, zero, 0x3c          |     t0 = 0x3c;
    0x00413ed4 addiu v0, zero, 2             |     v0 = 2;
    0x00413ed8 addiu a0, a0, -0x15c0         |     a0 += -0x15c0;
                                             |     /* str._bin_false */
    0x00413edc addiu a1, a1, 0xd4c           |     a1 += 0xd4c;
    0x00413ee0 sw t1, 0x164(s2)              |     *((s2 + 89)) = t1;
    0x00413ee4 sw v1, 0x180(s2)              |     *((s2 + 96)) = v1;
    0x00413ee8 addiu t1, zero, 0x4000        |     t1 = 0x4000;
    0x00413eec addiu v1, zero, 0x14          |     v1 = 0x14;
    0x00413ef0 sw t0, 0x168(s2)              |     *((s2 + 90)) = t0;
    0x00413ef4 sw t1, 0x150(s2)              |     *((s2 + 84)) = t1;
    0x00413ef8 sw t0, 0x158(s2)              |     *((s2 + 86)) = t0;
    0x00413efc sw a3, 0x174(s2)              |     *((s2 + 93)) = a3;
    0x00413f00 sw a2, 0x184(s2)              |     *((s2 + 97)) = a2;
    0x00413f04 sw v1, 0x13c(s2)              |     *((s2 + 79)) = v1;
    0x00413f08 sw v0, 0x154(s2)              |     *((s2 + 85)) = v0;
    0x00413f0c sw v0, 0x19c(s2)              |     *((s2 + 103)) = v0;
    0x00413f10 sw s0, 0x160(s2)              |     *((s2 + 88)) = s0;
    0x00413f14 sw zero, 0x1e8(s2)            |     *((s2 + 122)) = 0;
    0x00413f18 sw zero, 0x1ec(s2)            |     *((s2 + 123)) = 0;
    0x00413f1c sw zero, 0x1f4(s2)            |     *((s2 + 125)) = 0;
    0x00413f20 sw zero, 0x1f0(s2)            |     *((s2 + 124)) = 0;
    0x00413f24 sw zero, 0x1f8(s2)            |     *((s2 + 126)) = 0;
    0x00413f28 sw s0, 0x200(s2)              |     *((s2 + 128)) = s0;
    0x00413f2c sw s0, 0x204(s2)              |     *((s2 + 129)) = s0;
    0x00413f30 sw s0, 0x20c(s2)              |     *((s2 + 131)) = s0;
    0x00413f34 sw s0, 0x208(s2)              |     *((s2 + 130)) = s0;
    0x00413f38 sw zero, 0x218(s2)            |     *((s2 + 134)) = 0;
    0x00413f3c sw s0, 0x21c(s2)              |     *((s2 + 135)) = s0;
    0x00413f40 sw zero, 0x170(s2)            |     *((s2 + 92)) = 0;
    0x00413f44 sw zero, 0x178(s2)            |     *((s2 + 94)) = 0;
    0x00413f48 sw s0, 0x140(s2)              |     *((s2 + 80)) = s0;
    0x00413f4c sw s0, 0x234(s2)              |     *((s2 + 141)) = s0;
    0x00413f50 sw zero, 0x238(s2)            |     *((s2 + 142)) = 0;
    0x00413f54 sw s0, 0x188(s2)              |     *((s2 + 98)) = s0;
    0x00413f58 sw s0, 0x198(s2)              |     *((s2 + 102)) = s0;
    0x00413f5c sw v0, 0x1a0(s2)              |     *((s2 + 104)) = v0;
    0x00413f60 sw zero, 0x1a4(s2)            |     *((s2 + 105)) = 0;
    0x00413f64 sw s0, 0x1e0(s2)              |     *((s2 + 120)) = s0;
    0x00413f68 sw zero, 0x190(s2)            |     *((s2 + 100)) = 0;
    0x00413f6c sw zero, 0x194(s2)            |     *((s2 + 101)) = 0;
    0x00413f70 sw s0, 0x18c(s2)              |     *((s2 + 99)) = s0;
    0x00413f74 sw s0, 0x210(s2)              |     *((s2 + 132)) = s0;
    0x00413f78 sw s0, 0x214(s2)              |     *((s2 + 133)) = s0;
    0x00413f7c jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413f80 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413f84 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413f88 addiu a0, a0, -0x15c4         |     a0 += -0x15c4;
                                             |     /* str._home__D__U */
    0x00413f8c addiu a1, a1, 0xd58           |     a1 += 0xd58;
    0x00413f90 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413f94 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00413f98 lui a1, 0x46                  |     a1 = 0x460000;
    0x00413f9c addiu a0, a0, -0x15bc         |     a0 += -0x15bc;
    0x00413fa0 addiu a1, a1, -0x263c         |     a1 += -0x263c;
    0x00413fa4 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00413fa8 addiu v0, zero, 0xf           |     v0 = 0xf;
    0x00413fac lui a0, 0x46                  |     a0 = 0x460000;
    0x00413fb0 sw v0, 0x17c(s2)              |     *((s2 + 95)) = v0;
                                             |     /* str.sbcs */
    0x00413fb4 addiu a0, a0, 0xd64           |     a0 += 0xd64;
    0x00413fb8 addiu v0, zero, 0x294         |     v0 = 0x294;
    0x00413fbc sw s0, 0xdc(s2)               |     *((s2 + 55)) = s0;
    0x00413fc0 sw s0, 0xe0(s2)               |     *((s2 + 56)) = s0;
    0x00413fc4 sw zero, 0xe4(s2)             |     *((s2 + 57)) = 0;
    0x00413fc8 sw zero, 0x22c(s2)            |     *((s2 + 139)) = 0;
    0x00413fcc sw v0, 0x23c(s2)              |     *((s2 + 143)) = v0;
    0x00413fd0 jal 0x43beec                  |     fcn_0043beec ();
    0x00413fd4 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (fp != 0) {
    0x00413fd8 bnez fp, 0x414414             |         goto label_25;
                                             |     }
                                             | label_12:
    0x00413fdc addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00413fe0 addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x00413fe4 move a1, s3                   |     a1 = s3;
    0x00413fe8 jal 0x4461f8                  |     fcn_004461f8 ();
    0x00413fec addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x00413ff0 addiu a1, zero, 0x400         |     a1 = 0x400;
    0x00413ff4 jal 0x454f5c                  |     fcn_00454f5c ();
    0x00413ff8 lui a1, 0x41                  |     a1 = 0x410000;
    0x00413ffc lui a2, 0x41                  |     a2 = 0x410000;
    0x00414000 addiu v0, zero, -1            |     v0 = -1;
    0x00414004 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x00414008 addiu a0, sp, 0x420           |     a0 = sp + 0x420;
                                             |     /* fcn.0040fb68 */
    0x0041400c addiu a1, a1, -0x498          |     a1 += -0x498;
    0x00414010 addiu a2, a2, 0x343c          |     a2 += 0x343c;
    0x00414014 sw v0, -0x1438(s0)            |     *((s0 - 1294)) = v0;
    0x00414018 jal 0x415b00                  |     fcn_00415b00 ();
    0x0041401c lw v1, -0x2b40(s5)            |     v1 = *((s5 - 2768));
    0x00414020 slti v1, v1, 4                |     v1 = (v1 < 4) ? 1 : 0;
    0x00414024 move s6, v0                   |     s6 = v0;
                                             |     if (v1 == 0) {
    0x00414028 beqz v1, 0x41428c             |         goto label_26;
                                             |     }
                                             | label_3:
    0x0041402c lw a0, -0x1438(s0)            |     a0 = *((s0 - 1294));
                                             |     if (s6 != 0) {
    0x00414030 beqz s6, 0x414048             |         
                                             |         if (a0 < 0) {
    0x00414034 bltz a0, 0x414048             |             goto label_27;
                                             |         }
    0x00414038 nop                           |         
    0x0041403c jal 0x40deb4                  |         fcn_0040deb4 ();
    0x00414040 nop                           |         
    0x00414044 move s6, v0                   |         s6 = v0;
                                             |     }
                                             | label_27:
    0x00414048 jal 0x40ffb8                  |     fcn_0040ffb8 ();
    0x0041404c nop                           |     
                                             |     if (v0 == 0) {
    0x00414050 beqz v0, 0x414110             |         goto label_28;
                                             |     }
    0x00414054 nop                           |     
    0x00414058 move a0, v0                   |     a0 = v0;
    0x0041405c jal 0x4874a0                  |     fcn_004874a0 ();
    0x00414060 move fp, v0                   |     fp = v0;
                                             |     if (v0 == 0) {
    0x00414064 beqz v0, 0x414110             |         goto label_28;
                                             |     }
    0x00414068 lui a0, 0x46                  |     a0 = "homes";
                                             |     /* str.homes */
    0x0041406c addiu a0, a0, 0x44c           |     
    0x00414070 lui s1, 0x4a                  |     s1 = 0x4a0000;
    0x00414074 jal 0x413ab0                  |     fcn_00413ab0 ();
    0x00414078 lw t9, -0x4664(s1)            |     t9 = *((s1 - 4505));
    0x0041407c lui s3, 0x46                  |     s3 = 0x460000;
                                             |     /* esilref: ' 	,;:
' */
    0x00414080 addiu a1, s3, 0xd88           |     a1 = " \t,;:\n\r";
    0x00414084 move a0, fp                   |     a0 = fp;
    0x00414088 move s7, v0                   |     s7 = v0;
    0x0041408c jalr t9                       |     t9 ();
    0x00414090 move s4, v0                   |     s4 = v0;
                                             |     /* esilref: ' 	,;:
' */
    0x00414094 addiu s3, s3, 0xd88           |     s3 += 0xd88;
                                             |     if (v0 != 0) {
    0x00414098 bnez v0, 0x4140b8             |         goto label_2;
                                             |     }
    0x0041409c b 0x414108                    |     goto label_29;
    0x004140a0 nop                           |     
                                             |     do {
                                             | label_1:
    0x004140a4 move a0, zero                 |         a0 = 0;
                                             | label_0:
    0x004140a8 move a1, s3                   |         a1 = s3;
    0x004140ac jalr t9                       |         t9 ();
    0x004140b0 move s4, v0                   |         s4 = v0;
                                             |         if (v0 == 0) {
    0x004140b4 beqz v0, 0x414108             |             goto label_29;
                                             |         }
                                             | label_2:
    0x004140b8 move a0, s4                   |         a0 = s4;
    0x004140bc jal 0x4409b8                  |         fcn_004409b8 ();
    0x004140c0 move a0, s4                   |         a0 = s4;
    0x004140c4 move s0, v0                   |         s0 = v0;
    0x004140c8 jal 0x413ab0                  |         fcn_00413ab0 ();
    0x004140cc lw t9, -0x4664(s1)            |         t9 = *((s1 - 4505));
    0x004140d0 bgez v0, 0x4140a4             |         
                                             |     } while (v0 >= 0);
    0x004140d4 move a0, zero                 |     a0 = 0;
                                             |     if (s0 == 0) {
    0x004140d8 beqz s0, 0x4140a8             |         goto label_0;
                                             |     }
    0x004140dc move a0, s4                   |     a0 = s4;
                                             |     if (s7 < 0) {
    0x004140e0 bltz s7, 0x4140a4             |         goto label_1;
                                             |     }
    0x004140e4 move a1, s7                   |     a1 = s7;
    0x004140e8 move a2, s0                   |     a2 = s0;
    0x004140ec jal 0x412a68                  |     fcn_00412a68 ();
    0x004140f0 lw t9, -0x4664(s1)            |     t9 = *((s1 - 4505));
    0x004140f4 move a0, zero                 |     a0 = 0;
    0x004140f8 move a1, s3                   |     a1 = s3;
    0x004140fc jalr t9                       |     t9 ();
    0x00414100 move s4, v0                   |     s4 = v0;
                                             |     if (v0 != 0) {
    0x00414104 bnez v0, 0x4140b8             |         goto label_2;
                                             |     }
                                             | label_29:
    0x00414108 move a0, fp                   |     a0 = fp;
    0x0041410c jal 0x487830                  |     fcn_00487830 ();
                                             | label_28:
    0x00414110 lw v0, 0x854(sp)              |     v0 = *(arg_854h);
    0x00414114 lui s0, 0x4a                  |     s0 = 0x4a0000;
                                             |     if (v0 != 0) {
    0x00414118 bnez v0, 0x41438c             |         goto label_30;
                                             |     }
    0x0041411c lw v0, 0x120(s2)              |     v0 = *((s2 + 72));
    0x00414120 addiu v1, zero, 1             |     v1 = 1;
    0x00414124 sw zero, -0x1424(s0)          |     *((s0 - 1289)) = 0;
                                             |     if (v0 == v1) {
    0x00414128 beq v0, v1, 0x4143c0          |         goto label_31;
                                             |     }
                                             | label_11:
    0x0041412c slti a0, v0, 2                |     a0 = (v0 < 2) ? 1 : 0;
                                             |     if (a0 != 0) {
    0x00414130 bnez a0, 0x41467c             |         goto label_32;
                                             |     }
    0x00414134 nop                           |     
    0x00414138 slti v0, v0, 4                |     v0 = (v0 < 4) ? 1 : 0;
    0x0041413c lw v0, -0x2b40(s5)            |     v0 = *((s5 - 2768));
                                             |     if (v0 != 0) {
    0x00414140 bnez v0, 0x4142d4             |         goto label_33;
                                             |     }
                                             | label_18:
    0x00414144 lui s1, 0x4b                  |     s1 = 0x4b0000;
                                             |     if (v0 >= 0) {
    0x00414148 bltz v0, 0x414198             |         
    0x0041414c lui s4, 0x46                  |         s4 = 0x460000;
    0x00414150 lui s3, 0x46                  |         s3 = 0x460000;
    0x00414154 move a0, zero                 |         a0 = 0;
                                             |         /* esilref: 'param/loadparm.c' */
    0x00414158 addiu a1, s4, 0x3a8           |         a1 = s4 + 0x3a8;
                                             |         /* str.set_server_role */
    0x0041415c addiu a2, s3, 0x2408          |         a2 = s3 + 0x2408;
    0x00414160 addiu a3, zero, 0xd72         |         a3 = 0xd72;
    0x00414164 jal 0x4381b8                  |         fcn_004381b8 ();
    0x00414168 lui a0, 0x46                  |         a0 = 0x460000;
                                             |         if (v0 != 0) {
    0x0041416c bnez v0, 0x4149b8             |             goto label_34;
                                             |         }
    0x00414170 lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
                                             | label_22:
    0x00414174 slti v0, v0, 0xa              |         v0 = (v0 < 0xa) ? 1 : 0;
    0x00414178 addiu a0, zero, 0xa           |         a0 = 0xa;
                                             |         if (v0 != 0) {
    0x0041417c bnez v0, 0x414198             |             goto label_5;
                                             |         }
                                             |         /* esilref: 'param/loadparm.c' */
    0x00414180 addiu a1, s4, 0x3a8           |         a1 = s4 + 0x3a8;
                                             |         /* str.set_server_role */
    0x00414184 addiu a2, s3, 0x2408          |         a2 = s3 + 0x2408;
    0x00414188 addiu a3, zero, 0xd73         |         a3 = 0xd73;
    0x0041418c jal 0x4381b8                  |         fcn_004381b8 ();
    0x00414190 lui a0, 0x46                  |         a0 = 0x460000;
                                             |         if (v0 != 0) {
    0x00414194 bnez v0, 0x414700             |             goto label_35;
                                             |         }
                                             |     }
                                             | label_5:
    0x00414198 lw a0, -0x1424(s0)            |     a0 = *((s0 - 1289));
                                             | label_4:
    0x0041419c lw v1, 0x160(s2)              |     v1 = *((s2 + 88));
    0x004141a0 addiu a1, zero, 0xa03         |     a1 = 0xa03;
    0x004141a4 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x004141a8 sw a1, -0x1420(v0)            |     *((v0 - 1288)) = a1;
    0x004141ac addiu a1, zero, 2             |     a1 = 2;
    0x004141b0 slti a1, v1, 3                |     a1 = (v1 < 3) ? 1 : 0;
                                             |     if (v1 == a1) {
    0x004141b4 beq v1, a1, 0x4145cc          |         goto label_36;
                                             |     }
    0x004141b8 addiu a1, zero, 3             |     a1 = 3;
                                             |     if (a1 == 0) {
    0x004141bc beqz a1, 0x414358             |         goto label_37;
                                             |     }
    0x004141c0 addiu a1, zero, 1             |     a1 = 1;
    0x004141c4 ori v1, zero, 0x9a03          |     v1 = 0x9a03;
                                             |     if (v1 == a1) {
    0x004141c8 beq v1, a1, 0x4145b8          |         goto label_38;
                                             |     }
                                             | label_17:
    0x004141cc addiu v1, zero, 2             |     v1 = 2;
                                             | label_8:
    0x004141d0 lw v1, -0x1420(v0)            |     v1 = *((v0 - 1288));
                                             |     if (a0 == v1) {
    0x004141d4 beq a0, v1, 0x414380          |         goto label_39;
                                             |     }
    0x004141d8 addiu v1, zero, 3             |     v1 = 3;
                                             | label_9:
    0x004141dc addiu v1, zero, 1             |     v1 = 1;
                                             |     if (a0 == v1) {
    0x004141e0 beq a0, v1, 0x4145a8          |         goto label_40;
                                             |     }
    0x004141e4 lw v1, -0x1420(v0)            |     v1 = *((v0 - 1288));
                                             |     if (a0 == v1) {
    0x004141e8 bne a0, v1, 0x4141f4          |         
    0x004141ec ori v1, v1, 0x100             |         v1 |= 0x100;
    0x004141f0 sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
                                             |     }
                                             | label_10:
    0x004141f4 lw v1, 0x1e8(s2)              |     v1 = *((s2 + 122));
    0x004141f8 lw v1, -0x1420(v0)            |     v1 = *((v0 - 1288));
                                             |     if (v1 != 0) {
    0x004141fc beqz v1, 0x414208             |         
    0x00414200 ori v1, v1, 0x20              |         v1 |= 0x20;
    0x00414204 sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
                                             |     }
    0x00414208 lw v1, 0x22c(s2)              |     v1 = *((s2 + 139));
    0x0041420c lw a0, -0x1420(v0)            |     a0 = *((v0 - 1288));
                                             |     if (v1 != 0) {
    0x00414210 beqz v1, 0x414220             |         
    0x00414214 lui v1, 0x80                  |         v1 = 0x800000;
    0x00414218 or v1, a0, v1                 |         v1 = a0 | v1;
    0x0041421c sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
                                             |     }
    0x00414220 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00414224 lw v0, -0x169c(v0)            |     v0 = *((v0 - 1447));
    0x00414228 addiu a0, zero, 1             |     a0 = 1;
    0x0041422c lui v1, 0x4a                  |     v1 = 0x4a0000;
    0x00414230 sw a0, -0x16a0(v1)            |     *((v1 - 1448)) = a0;
                                             |     if (v0 != 0) {
    0x00414234 beqz v0, 0x414258             |         
    0x00414238 lw v0, 0x190(s2)              |         v0 = *((s2 + 100));
    0x0041423c lw ra, 0x844(sp)              |         ra = *(var_844h);
                                             |         if (v0 == 0) {
    0x00414240 beqz v0, 0x41425c             |             goto label_41;
                                             |         }
    0x00414244 lui a0, 0x4a                  |         a0 = 0x4a0000;
    0x00414248 lui a1, 0x46                  |         a1 = 0x460000;
    0x0041424c addiu a0, a0, -0x160c         |         a0 += -0x160c;
                                             |         /* str.127.0.0.1 */
    0x00414250 addiu a1, a1, 0xea8           |         a1 += 0xea8;
    0x00414254 jal 0x446ae0                  |         fcn_00446ae0 ();
                                             |     }
    0x00414258 lw ra, 0x844(sp)              |     ra = *(var_844h);
                                             | label_41:
    0x0041425c move v0, s6                   |     v0 = s6;
    0x00414260 lw fp, 0x840(sp)              |     fp = *(var_840h);
    0x00414264 lw s7, 0x83c(sp)              |     s7 = *(var_83ch);
    0x00414268 lw s6, 0x838(sp)              |     s6 = *(var_838h);
    0x0041426c lw s5, 0x834(sp)              |     s5 = *(var_834h);
    0x00414270 lw s4, 0x830(sp)              |     s4 = *(var_830h);
    0x00414274 lw s3, 0x82c(sp)              |     s3 = *(var_82ch);
    0x00414278 lw s2, 0x828(sp)              |     s2 = *(var_828h);
    0x0041427c lw s1, 0x824(sp)              |     s1 = *(var_824h);
    0x00414280 lw s0, 0x820(sp)              |     s0 = *(var_820h);
    0x00414284 addiu sp, sp, 0x848           |     
    0x00414288 jr ra                         |     return v0;
                                             | label_26:
    0x0041428c lui a1, 0x46                  |     a1 = 0x460000;
    0x00414290 lui a2, 0x46                  |     a2 = 0x460000;
    0x00414294 addiu a0, zero, 4             |     a0 = 4;
                                             |     /* esilref: 'param/loadparm.c' */
    0x00414298 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.lp_load */
    0x0041429c addiu a2, a2, 0x23e4          |     a2 += 0x23e4;
    0x004142a0 addiu a3, zero, 0xd9d         |     a3 = 0xd9d;
    0x004142a4 jal 0x4381b8                  |     fcn_004381b8 ();
                                             |     if (v0 == 0) {
    0x004142a8 beqz v0, 0x41402c             |         goto label_3;
                                             |     }
    0x004142ac nop                           |     
    0x004142b0 lui a1, 0x46                  |     a1 = 0x460000;
                                             |     if (s6 == 0) {
    0x004142b4 beqz s6, 0x4146f8             |         goto label_42;
                                             |     }
    0x004142b8 lui a1, 0x46                  |     a1 = 0x460634;
                                             |     /* esilref: 'Yes' */
    0x004142bc addiu a1, a1, 0x634           |     
                                             | label_21:
    0x004142c0 lui a0, 0x46                  |     a0 = "pm_process() returned %s\n";
                                             |     /* str.pm_process___returned__s_n */
    0x004142c4 addiu a0, a0, 0xd6c           |     
    0x004142c8 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004142cc b 0x41402c                    |     goto label_3;
    0x004142d0 nop                           |     
                                             | label_33:
    0x004142d4 lw v0, 0x1a4(s2)              |     v0 = *((s2 + 105));
    0x004142d8 lw v0, -0x2b40(s5)            |     v0 = *((s5 - 2768));
                                             |     if (v0 == 0) {
    0x004142dc beqz v0, 0x4145f8             |         goto label_43;
                                             |     }
    0x004142e0 addiu v1, zero, 2             |     v1 = 2;
    0x004142e4 sw v1, -0x1424(s0)            |     *((s0 - 1289)) = v1;
    0x004142e8 slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x004142ec addiu a0, zero, 2             |     a0 = 2;
                                             |     if (v0 != 0) {
    0x004142f0 bnez v0, 0x41419c             |         goto label_4;
                                             |     }
    0x004142f4 lui a1, 0x46                  |     a1 = 0x460000;
    0x004142f8 lui a2, 0x46                  |     a2 = 0x460000;
    0x004142fc addiu a0, zero, 0xa           |     a0 = 0xa;
                                             |     /* esilref: 'param/loadparm.c' */
    0x00414300 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.set_server_role */
    0x00414304 addiu a2, a2, 0x2408          |     a2 += 0x2408;
    0x00414308 addiu a3, zero, 0xd63         |     a3 = 0xd63;
    0x0041430c jal 0x4381b8                  |     fcn_004381b8 ();
    0x00414310 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x00414314 beqz v0, 0x414198             |         goto label_5;
                                             |     }
                                             |     /* str.set_server_role:_ROLE_DOMAIN_BDC_n */
    0x00414318 addiu a0, a0, 0xe00           |     a0 += 0xe00;
    0x0041431c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00414320 lw a0, -0x1424(s0)            |     a0 = *((s0 - 1289));
    0x00414324 b 0x41419c                    |     goto label_4;
                                             | label_24:
    0x00414328 lui a1, 0x46                  |     a1 = 0x460000;
    0x0041432c addiu a0, zero, 3             |     a0 = 3;
                                             |     /* esilref: 'param/loadparm.c' */
    0x00414330 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.init_globals */
    0x00414334 addiu a2, a2, 0x23ec          |     a2 += 0x23ec;
    0x00414338 addiu a3, zero, 0x4f8         |     a3 = 0x4f8;
    0x0041433c jal 0x4381b8                  |     fcn_004381b8 ();
    0x00414340 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x00414344 beqz v0, 0x413c5c             |         goto label_6;
                                             |     }
                                             |     /* str.Initialising_global_parameters_n */
    0x00414348 addiu a0, a0, 0xbfc           |     a0 += 0xbfc;
    0x0041434c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00414350 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00414354 b 0x413c60                    |     goto label_7;
                                             | label_37:
    0x00414358 addiu a1, zero, 4             |     a1 = 4;
                                             |     if (v1 == a1) {
    0x0041435c beq v1, a1, 0x4145c0          |         goto label_44;
                                             |     }
    0x00414360 addiu v1, zero, 2             |     v1 = 2;
                                             |     if (v1 != a1) {
    0x00414364 bne v1, a1, 0x4141d0          |         goto label_8;
                                             |     }
    0x00414368 addiu v1, zero, 0x1a03        |     v1 = 0x1a03;
    0x0041436c sw v1, -0x1420(v0)            |     *((v0 - 1288)) = v1;
                                             | label_16:
    0x00414370 addiu v1, zero, 2             |     v1 = 2;
    0x00414374 addiu v1, zero, 3             |     v1 = 3;
                                             |     if (a0 != v1) {
    0x00414378 bne a0, v1, 0x4141dc          |         goto label_9;
                                             |     }
    0x0041437c lw v1, -0x1420(v0)            |     v1 = *((v0 - 1288));
                                             | label_39:
    0x00414380 ori v1, v1, 0x10              |     v1 |= 0x10;
    0x00414384 sw v1, -0x1420(v0)            |     *((v0 - 1288)) = v1;
    0x00414388 b 0x4141f4                    |     goto label_10;
                                             | label_30:
    0x0041438c lui a0, 0x46                  |     a0 = "IPC$";
                                             |     /* str.IPC_ */
    0x00414390 addiu a0, a0, -0x1a7c         |     
    0x00414394 addiu a1, zero, 1             |     a1 = 1;
    0x00414398 jal 0x40f568                  |     fcn_0040f568 ();
    0x0041439c lui a0, 0x46                  |     a0 = "ADMIN$";
                                             |     /* str.ADMIN_ */
    0x004143a0 addiu a0, a0, 0xd90           |     
    0x004143a4 move a1, zero                 |     a1 = 0;
    0x004143a8 jal 0x40f568                  |     fcn_0040f568 ();
    0x004143ac lw v0, 0x120(s2)              |     v0 = *((s2 + 72));
    0x004143b0 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x004143b4 addiu v1, zero, 1             |     v1 = 1;
    0x004143b8 sw zero, -0x1424(s0)          |     *((s0 - 1289)) = 0;
                                             |     if (v0 != v1) {
    0x004143bc bne v0, v1, 0x41412c          |         goto label_11;
                                             |     }
                                             | label_31:
    0x004143c0 lw v0, 0x1a4(s2)              |     v0 = *((s2 + 105));
    0x004143c4 lw v0, -0x2b40(s5)            |     v0 = *((s5 - 2768));
                                             |     if (v0 == 0) {
    0x004143c8 beqz v0, 0x41463c             |         goto label_45;
                                             |     }
    0x004143cc addiu v1, zero, 3             |     v1 = 3;
    0x004143d0 sw v1, -0x1424(s0)            |     *((s0 - 1289)) = v1;
    0x004143d4 slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x004143d8 addiu a0, zero, 3             |     a0 = 3;
                                             |     if (v0 != 0) {
    0x004143dc bnez v0, 0x41419c             |         goto label_4;
                                             |     }
    0x004143e0 lui a1, 0x46                  |     a1 = 0x460000;
    0x004143e4 lui a2, 0x46                  |     a2 = 0x460000;
    0x004143e8 addiu a0, zero, 0xa           |     a0 = 0xa;
                                             |     /* esilref: 'param/loadparm.c' */
    0x004143ec addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.set_server_role */
    0x004143f0 addiu a2, a2, 0x2408          |     a2 += 0x2408;
    0x004143f4 addiu a3, zero, 0xd6c         |     a3 = 0xd6c;
    0x004143f8 jal 0x4381b8                  |     fcn_004381b8 ();
    0x004143fc lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x00414400 beqz v0, 0x414198             |         goto label_5;
                                             |     }
                                             |     /* str.set_server_role:_ROLE_DOMAIN_PDC_n */
    0x00414404 addiu a0, a0, 0xe4c           |     a0 += 0xe4c;
    0x00414408 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x0041440c lw a0, -0x1424(s0)            |     a0 = *((s0 - 1289));
    0x00414410 b 0x41419c                    |     goto label_4;
                                             | label_25:
    0x00414414 lw v0, -0x703c(v0)            |     v0 = *((v0 - 7183));
    0x00414418 lui s0, 0x4a                  |     s0 = 0x4a0000;
                                             |     if (v0 == 0) {
    0x0041441c beqz v0, 0x414484             |         goto label_46;
                                             |     }
    0x00414420 lui s6, 0x46                  |     s6 = 0x460000;
    0x00414424 addiu s0, s0, -0x7030         |     s0 += -0x7030;
    0x00414428 move s1, zero                 |     s1 = 0;
                                             |     /* esilref: 'hDA' */
    0x0041442c addiu s6, s6, 0x2298          |     s6 += 0x2298;
                                             |     do {
                                             |         if (s1 != 0) {
    0x00414430 beqz s1, 0x414448             |             
    0x00414434 nop                           |             
    0x00414438 lw v1, (s0)                   |             v1 = *(s0);
    0x0041443c lw v0, -0x20(s0)              |             v0 = *((s0 - 8));
                                             |             if (v1 == v0) {
    0x00414440 beq v1, v0, 0x414474          |                 goto label_47;
                                             |             }
    0x00414444 nop                           |             
                                             |         }
    0x00414448 lw v0, -8(s0)                 |         v0 = *((s0 - 2));
    0x0041444c sltiu v1, v0, 0xa             |         v1 = (v0 < 0xa) ? 1 : 0;
    0x00414450 sll v0, v0, 2                 |         v0 <<= 2;
                                             |         if (v1 != 0) {
    0x00414454 beqz v1, 0x414474             |             
    0x00414458 addu v0, s6, v0               |             v0 = s6 + v0;
    0x0041445c lw v0, (v0)                   |             v0 = *(v0);
    0x00414460 jr v0                         |             v0 ();
    0x00414464 nop                           |             
                                             |         }
                                             | label_47:
    0x00414474 addiu s0, s0, 0x20            |         s0 += 0x20;
    0x00414478 lw v0, -0xc(s0)               |         v0 = *((s0 - 3));
    0x0041447c addiu s1, s1, 1               |         s1++;
    0x00414480 bnez v0, 0x414430             |         
                                             |     } while (v0 != 0);
                                             | label_46:
    0x00414484 addiu v1, zero, 1             |     v1 = 1;
    0x00414488 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x0041448c sw v1, -0x1428(v0)            |     *((v0 - 1290)) = v1;
    0x00414490 b 0x413fdc                    |     goto label_12;
                                             | label_23:
    0x004144c8 move a0, s2                   |     a0 = s2;
    0x004144cc move a1, zero                 |     a1 = 0;
    0x004144d0 addiu a2, zero, 0x240         |     a2 = 0x240;
    0x004144d4 jal 0x487500                  |     fcn_00487500 ();
    0x004144d8 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x004144dc lw v0, -0x703c(v0)            |     v0 = *((v0 - 7183));
    0x004144e0 lui s7, 0x47                  |     s7 = 0x470000;
                                             |     if (v0 == 0) {
    0x004144e4 beqz v0, 0x41453c             |         goto label_48;
                                             |     }
    0x004144e8 lui s0, 0x4a                  |     s0 = 0x498fc8;
    0x004144ec addiu s0, s0, -0x7038         |     
    0x004144f0 addiu s1, s7, 0x9d4           |     s1 = s7 + 0x9d4;
    0x004144f4 b 0x414508                    |     
                                             |     while (v0 == 0) {
                                             | label_13:
    0x004144f8 addiu s0, s0, 0x20            |         s0 += 0x20;
    0x004144fc lw v0, -4(s0)                 |         v0 = *((s0 - 1));
    0x00414500 lui a0, 0x4a                  |         a0 = 0x4a0000;
                                             |         if (v0 == 0) {
    0x00414504 beqz v0, 0x414540             |             goto label_49;
                                             |         }
                                             | label_14:
    0x00414508 lw v0, (s0)                   |         v0 = *(s0);
    0x0041450c addiu v0, v0, -5              |         v0 += -5;
    0x00414510 sltiu v0, v0, 2               |         v0 = (v0 < 2) ? 1 : 0;
    0x00414514 beqz v0, 0x4144f8             |         
                                             |     }
    0x00414518 nop                           |     
    0x0041451c lw a0, 8(s0)                  |     a0 = *((s0 + 2));
    0x00414520 move a1, s1                   |     a1 = s1;
                                             |     if (a0 == 0) {
    0x00414524 beqz a0, 0x4144f8             |         goto label_13;
                                             |     }
    0x00414528 addiu s0, s0, 0x20            |     s0 += 0x20;
    0x0041452c jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00414530 lw v0, -4(s0)                 |     v0 = *((s0 - 1));
                                             |     if (v0 != 0) {
    0x00414534 bnez v0, 0x414508             |         goto label_14;
                                             |     }
    0x00414538 nop                           |     
                                             | label_48:
    0x0041453c lui a0, 0x4a                  |     a0 = 0x4a0000;
                                             | label_49:
    0x00414540 lui a1, 0x46                  |     a1 = 0x460000;
    0x00414544 addiu a0, a0, -0x71f4         |     a0 += -0x71f4;
                                             |     /* str.nobody */
    0x00414548 addiu a1, a1, 0x9f8           |     a1 += 0x9f8;
    0x0041454c jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00414550 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00414554 lui a1, 0x46                  |     a1 = 0x460000;
    0x00414558 addiu a0, a0, -0x7160         |     a0 += -0x7160;
                                             |     /* str.NTFS */
    0x0041455c addiu a1, a1, 0xa00           |     a1 += 0xa00;
    0x00414560 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00414564 lui a0, 0x4a                  |     a0 = 0x498e54;
    0x00414568 addiu a0, a0, -0x71ac         |     
    0x0041456c addiu a1, s7, 0x9d4           |     a1 = s7 + 0x9d4;
    0x00414570 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00414574 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00414578 lui a1, 0x46                  |     a1 = 0x460000;
    0x0041457c addiu a0, a0, -0x71a4         |     a0 += -0x71a4;
                                             |     /* str._usr_samba_config_printers.def */
    0x00414580 addiu a1, a1, 0xa08           |     a1 += 0xa08;
    0x00414584 jal 0x446ae0                  |     fcn_00446ae0 ();
    0x00414588 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x0041458c lw v0, -0x7120(v0)            |     v0 = *((v0 - 7240));
    0x00414590 sltiu v1, v0, 0xb             |     v1 = (v0 < 0xb) ? 1 : 0;
    0x00414594 lui v1, 0x46                  |     v1 = 0x460000;
                                             |     if (v1 == 0) {
    0x00414598 bnez v1, 0x4145dc             |         
    0x0041459c addiu v0, zero, 1             |         v0 = 1;
    0x004145a0 sw v0, -0x142c(s5)            |         *((s5 - 1291)) = v0;
    0x004145a4 b 0x413c48                    |         goto label_15;
                                             | label_40:
    0x004145a8 lw v1, -0x1420(v0)            |         v1 = *((v0 - 1288));
    0x004145ac ori v1, v1, 8                 |         v1 |= 8;
    0x004145b0 sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
    0x004145b4 b 0x4141f4                    |         goto label_10;
                                             | label_38:
    0x004145b8 sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
    0x004145bc b 0x414370                    |         goto label_16;
                                             | label_44:
    0x004145c0 addiu v1, zero, 0x2a03        |         v1 = 0x2a03;
    0x004145c4 sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
    0x004145c8 b 0x414370                    |         goto label_16;
                                             | label_36:
    0x004145cc lui v1, 0x40                  |         v1 = 0x400a03;
    0x004145d0 addiu v1, v1, 0xa03           |         
    0x004145d4 sw v1, -0x1420(v0)            |         *((v0 - 1288)) = v1;
    0x004145d8 b 0x4141cc                    |         goto label_17;
                                             |     }
    0x004145dc sll v0, v0, 2                 |     v0 <<= 2;
    0x004145e0 addiu v1, v1, 0x22c0          |     v1 += 0x22c0;
    0x004145e4 addu v0, v1, v0               |     v0 = v1 + v0;
    0x004145e8 lw v0, (v0)                   |     v0 = *(v0);
    0x004145ec lui a0, 0x4a                  |     a0 = 0x498e38;
    0x004145f0 addiu a0, a0, -0x71c8         |     
    0x004145f4 jr v0                         |     v0 ();
                                             | label_43:
    0x004145f8 sw v1, -0x1424(s0)            |     *((s0 - 1289)) = v1;
    0x004145fc slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00414600 addiu a0, zero, 1             |     a0 = 1;
                                             |     if (v0 != 0) {
    0x00414604 bnez v0, 0x41419c             |         goto label_4;
                                             |     }
    0x00414608 lui a1, 0x46                  |     a1 = 0x460000;
    0x0041460c lui a2, 0x46                  |     a2 = 0x460000;
    0x00414610 addiu a0, zero, 0xa           |     a0 = 0xa;
                                             |     /* esilref: 'param/loadparm.c' */
    0x00414614 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.set_server_role */
    0x00414618 addiu a2, a2, 0x2408          |     a2 += 0x2408;
    0x0041461c addiu a3, zero, 0xd67         |     a3 = 0xd67;
    0x00414620 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00414624 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x00414628 beqz v0, 0x414198             |         goto label_5;
                                             |     }
                                             |     /* str.set_server_role:_ROLE_DOMAIN_MEMBER_n */
    0x0041462c addiu a0, a0, 0xe24           |     a0 += 0xe24;
    0x00414630 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00414634 lw a0, -0x1424(s0)            |     a0 = *((s0 - 1289));
    0x00414638 b 0x41419c                    |     goto label_4;
                                             | label_45:
    0x0041463c slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00414640 move a0, zero                 |     a0 = 0;
                                             |     if (v0 != 0) {
    0x00414644 bnez v0, 0x41419c             |         goto label_4;
                                             |     }
    0x00414648 lui a1, 0x46                  |     a1 = 0x460000;
    0x0041464c lui a2, 0x46                  |     a2 = 0x460000;
    0x00414650 addiu a0, zero, 0xa           |     a0 = 0xa;
                                             |     /* esilref: 'param/loadparm.c' */
    0x00414654 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.set_server_role */
    0x00414658 addiu a2, a2, 0x2408          |     a2 += 0x2408;
    0x0041465c addiu a3, zero, 0xd6f         |     a3 = 0xd6f;
    0x00414660 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00414664 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x00414668 beqz v0, 0x414198             |         goto label_5;
                                             |     }
                                             |     /* str.set_server_role:_ROLE_STANDALONE_n */
                                             | label_19:
    0x0041466c addiu a0, a0, 0xddc           |     a0 += 0xddc;
    0x00414670 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00414674 lw a0, -0x1424(s0)            |     a0 = *((s0 - 1289));
    0x00414678 b 0x41419c                    |     goto label_4;
                                             | label_32:
    0x0041467c lw v0, -0x2b40(s5)            |     v0 = *((s5 - 2768));
                                             |     if (v0 != 0) {
    0x00414680 bnez v0, 0x414144             |         goto label_18;
                                             |     }
    0x00414684 lw v0, 0x1a4(s2)              |     v0 = *((s2 + 105));
    0x00414688 lw v0, -0x2b40(s5)            |     v0 = *((s5 - 2768));
                                             |     if (v0 != 0) {
    0x0041468c bnez v0, 0x4146c4             |         goto label_50;
                                             |     }
                                             | label_20:
    0x00414690 slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00414694 lui a1, 0x46                  |     a1 = 0x460000;
                                             |     if (v0 != 0) {
    0x00414698 bnez v0, 0x414198             |         goto label_5;
                                             |     }
    0x0041469c lui a2, 0x46                  |     a2 = 0x460000;
    0x004146a0 addiu a0, zero, 0xa           |     a0 = 0xa;
                                             |     /* esilref: 'param/loadparm.c' */
    0x004146a4 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.set_server_role */
    0x004146a8 addiu a2, a2, 0x2408          |     a2 += 0x2408;
    0x004146ac addiu a3, zero, 0xd5d         |     a3 = 0xd5d;
    0x004146b0 jal 0x4381b8                  |     fcn_004381b8 ();
    0x004146b4 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x004146b8 beqz v0, 0x414198             |         goto label_5;
                                             |     }
    0x004146bc b 0x41466c                    |     goto label_19;
    0x004146c0 nop                           |     
                                             | label_50:
    0x004146c4 lui s1, 0x4b                  |     s1 = 0x4b0000;
                                             |     if (v0 < 0) {
    0x004146c8 bltz v0, 0x414198             |         goto label_5;
                                             |     }
    0x004146cc lui a1, 0x46                  |     a1 = 0x460000;
    0x004146d0 lui a2, 0x46                  |     a2 = 0x460000;
    0x004146d4 move a0, zero                 |     a0 = 0;
                                             |     /* esilref: 'param/loadparm.c' */
    0x004146d8 addiu a1, a1, 0x3a8           |     a1 += 0x3a8;
                                             |     /* str.set_server_role */
    0x004146dc addiu a2, a2, 0x2408          |     a2 += 0x2408;
    0x004146e0 addiu a3, zero, 0xd5c         |     a3 = 0xd5c;
    0x004146e4 jal 0x4381b8                  |     fcn_004381b8 ();
    0x004146e8 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x004146ec bnez v0, 0x4149c8             |         
    0x004146f0 lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
    0x004146f4 b 0x414690                    |         goto label_20;
                                             |         /* esilref: 'No' */
                                             | label_42:
    0x004146f8 addiu a1, a1, 0x638           |         a1 += 0x638;
    0x004146fc b 0x4142c0                    |         goto label_21;
                                             |         /* str.set_server_role:_ROLE_STANDALONE_n */
                                             | label_35:
    0x00414700 addiu a0, a0, 0xddc           |         a0 += 0xddc;
    0x00414704 jal 0x437cc4                  |         fcn_00437cc4 ();
    0x00414708 lw a0, -0x1424(s0)            |         a0 = *((s0 - 1289));
    0x0041470c b 0x41419c                    |         goto label_4;
                                             |         /* str.Servers_Role_undefined_due_to_unknown_security_mode_n */
                                             | label_34:
    0x004149b8 addiu a0, a0, 0xe70           |         a0 += 0xe70;
    0x004149bc jal 0x437cc4                  |         fcn_00437cc4 ();
    0x004149c0 lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
    0x004149c4 b 0x414174                    |         goto label_22;
                                             |     }
                                             |     /* str.Servers_Role__logon_server__conflicts_with_share_level_security_n */
    0x004149c8 addiu a0, a0, 0xd98           |     a0 += 0xd98;
    0x004149cc jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004149d0 lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
    0x004149d4 b 0x414690                    |     goto label_20;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x41747c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0041747c ()                  | void fcn_0041747c () {
    0x0041747c addiu sp, sp, -0x348          |     
    0x00417480 sw s0, 0x324(sp)              |     *(var_324h) = s0;
    0x00417484 move s0, a0                   |     s0 = a0;
    0x00417488 lw a0, 0xd64(a0)              |     a0 = *((a0 + 857));
    0x0041748c sw s3, 0x330(sp)              |     *(var_330h) = s3;
    0x00417490 sw s2, 0x32c(sp)              |     *(var_32ch) = s2;
    0x00417494 move s3, a2                   |     s3 = a2;
    0x00417498 move s2, a1                   |     s2 = a1;
    0x0041749c addiu a2, zero, 0x27          |     a2 = 0x27;
    0x004174a0 move a1, zero                 |     a1 = 0;
    0x004174a4 sw ra, 0x344(sp)              |     *(var_344h) = ra;
    0x004174a8 sw s4, 0x334(sp)              |     *(var_334h) = s4;
    0x004174ac sw s1, 0x328(sp)              |     *(var_328h) = s1;
    0x004174b0 move s4, a3                   |     s4 = a3;
    0x004174b4 sw s7, 0x340(sp)              |     *(var_340h) = s7;
    0x004174b8 sw s6, 0x33c(sp)              |     *(var_33ch) = s6;
    0x004174bc sw s5, 0x338(sp)              |     *(var_338h) = s5;
    0x004174c0 lw s1, 0x358(sp)              |     s1 = *(arg_358h);
    0x004174c4 jal 0x487500                  |     fcn_00487500 ();
    0x004174c8 lw a0, 0xd68(s0)              |     a0 = *((s0 + 858));
    0x004174cc move a1, zero                 |     a1 = 0;
    0x004174d0 addiu a2, zero, 0x27          |     a2 = 0x27;
    0x004174d4 jal 0x487500                  |     fcn_00487500 ();
    0x004174d8 addiu a0, s0, 0x724           |     a0 = s0 + 0x724;
    0x004174dc move a1, s2                   |     a1 = s2;
    0x004174e0 addiu a2, zero, 0xff          |     a2 = 0xff;
    0x004174e4 jal 0x4461f8                  |     fcn_004461f8 ();
    0x004174e8 lw v0, 0x18(s0)               |     v0 = *((s0 + 6));
    0x004174ec andi v1, v0, 1                |     v1 = v0 & 1;
    0x004174f0 andi v1, v0, 2                |     v1 = v0 & 2;
                                             |     if (v1 != 0) {
    0x004174f4 beqz v1, 0x417504             |         
    0x004174f8 lui s4, 0x47                  |         s4 = 0x470000;
    0x004174fc addiu s1, zero, 1             |         s1 = 1;
    0x00417500 addiu s4, s4, 0x9d4           |         s4 += 0x9d4;
                                             |     }
                                             |     if (v1 == 0) {
    0x00417504 beqz v1, 0x417588             |         goto label_4;
                                             |     }
    0x00417508 nop                           |     
    0x0041750c lb v1, (s4)                   |     v1 = *(s4);
    0x00417510 addiu v1, zero, 0x18          |     v1 = 0x18;
                                             |     if (v1 == 0) {
    0x00417514 beqz v1, 0x417588             |         goto label_4;
                                             |     }
    0x00417518 move a2, s4                   |     a2 = s4;
                                             |     if (s1 == v1) {
    0x0041751c beq s1, v1, 0x417588          |         goto label_4;
                                             |     }
    0x00417520 addiu v0, zero, 3             |     v0 = 3;
    0x00417524 move a0, s0                   |     a0 = s0;
    0x00417528 addiu a1, sp, 0x20            |     a1 = sp + 0x20;
    0x0041752c addiu a3, zero, -1            |     a3 = -1;
    0x00417530 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00417534 addiu s5, sp, 0x120           |     s5 = sp + 0x120;
    0x00417538 jal 0x42682c                  |     fcn_0042682c ();
    0x0041753c addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x00417540 addiu a1, s0, 0xd3c           |     a1 = s0 + 0xd3c;
    0x00417544 move a2, s5                   |     a2 = s5;
    0x00417548 jal 0x4279ec                  |     fcn_004279ec ();
    0x0041754c lw v1, (s0)                   |     v1 = *(s0);
    0x00417550 addiu v0, zero, 0x1bd         |     v0 = 0x1bd;
    0x00417554 addiu s1, zero, 0x18          |     s1 = 0x18;
    0x00417558 move s7, zero                 |     s7 = 0;
    0x0041755c addiu s6, zero, 0x18          |     s6 = 0x18;
    0x00417560 addiu s4, sp, 0x220           |     s4 = sp + 0x220;
                                             |     if (v1 != v0) {
    0x00417564 bne v1, v0, 0x4175bc          |         goto label_5;
                                             |     }
                                             |     do {
    0x00417568 lui a2, 0x46                  |         a2 = 0x460000;
    0x0041756c move a0, s4                   |         a0 = s4;
    0x00417570 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* esilref: '&s' */
    0x00417574 addiu a2, a2, -0x209c         |         a2 += -0x209c;
    0x00417578 move a3, s2                   |         a3 = s2;
    0x0041757c jal 0x444430                  |         sym_snprintf ()
    0x00417580 lw a0, 0xd64(s0)              |         a0 = *((s0 + 857));
    0x00417584 b 0x4175dc                    |         goto label_6;
                                             | label_4:
    0x00417588 andi v0, v0, 3                |         v0 &= 3;
    0x0041758c addiu s5, sp, 0x120           |         s5 = sp + 0x120;
                                             |         if (v0 == 0) {
    0x00417590 beqz v0, 0x4176d8             |             goto label_7;
                                             |         }
    0x00417594 move a0, s5                   |         a0 = s5;
    0x00417598 move a1, s4                   |         a1 = s4;
    0x0041759c move a2, s1                   |         a2 = s1;
    0x004175a0 move s6, s1                   |         s6 = s1;
    0x004175a4 ext s7, s1, 8, 8              |         __asm ("ext s7, s1, 8, 8");
    0x004175a8 jal 0x486f90                  |         fcn_00486f90 ();
                                             | label_0:
    0x004175ac lw v1, (s0)                   |         v1 = *(s0);
    0x004175b0 addiu v0, zero, 0x1bd         |         v0 = 0x1bd;
    0x004175b4 addiu s4, sp, 0x220           |         s4 = sp + 0x220;
    0x004175b8 beq v1, v0, 0x417568          |         
                                             |     } while (v1 == v0);
                                             | label_5:
    0x004175bc lui a2, 0x46                  |     a2 = 0x460000;
    0x004175c0 sw s2, 0x10(sp)               |     *(var_10h) = s2;
    0x004175c4 move a0, s4                   |     a0 = s4;
    0x004175c8 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str._s_s */
    0x004175cc addiu a2, a2, 0x2860          |     a2 += 0x2860;
    0x004175d0 addiu a3, s0, 0x124           |     a3 = s0 + 0x124;
    0x004175d4 jal 0x444430                  |     sym_snprintf ()
    0x004175d8 lw a0, 0xd64(s0)              |     a0 = *((s0 + 857));
                                             | label_6:
    0x004175dc addiu a3, zero, 1             |     a3 = 1;
    0x004175e0 addiu a1, zero, 4             |     a1 = 4;
    0x004175e4 move a2, zero                 |     a2 = 0;
    0x004175e8 jal 0x44d908                  |     fcn_0044d908 ();
    0x004175ec lw v0, 0xd64(s0)              |     v0 = *((s0 + 857));
    0x004175f0 addiu v1, zero, 0x75          |     v1 = 0x75;
    0x004175f4 move a0, s0                   |     a0 = s0;
    0x004175f8 sb v1, 8(v0)                  |     *((v0 + 8)) = v1;
    0x004175fc jal 0x416008                  |     fcn_00416008 ();
    0x00417600 lw v0, 0xd64(s0)              |     v0 = *((s0 + 857));
    0x00417604 addiu v1, zero, -1            |     v1 = -1;
    0x00417608 move a2, s1                   |     a2 = s1;
    0x0041760c sb v1, 0x25(v0)               |     *((v0 + 37)) = v1;
    0x00417610 lw v0, 0xd64(s0)              |     v0 = *((s0 + 857));
    0x00417614 move a1, s5                   |     a1 = s5;
    0x00417618 sb zero, 0x26(v0)             |     *((v0 + 38)) = 0;
    0x0041761c lw v0, 0xd64(s0)              |     v0 = *((s0 + 857));
    0x00417620 sb s6, 0x2b(v0)               |     *((v0 + 43)) = s6;
    0x00417624 lw v0, 0xd64(s0)              |     v0 = *((s0 + 857));
    0x00417628 sb s7, 0x2c(v0)               |     *((v0 + 44)) = s7;
    0x0041762c lw v0, 0xd64(s0)              |     v0 = *((s0 + 857));
    0x00417630 lbu v1, 0x24(v0)              |     v1 = *((v0 + 36));
    0x00417634 sll v1, v1, 1                 |     v1 <<= 1;
    0x00417638 addiu v1, v1, 0x27            |     v1 += 0x27;
    0x0041763c addu v1, v0, v1               |     v1 = v0 + v1;
    0x00417640 move a0, v1                   |     a0 = v1;
    0x00417644 jal 0x486f90                  |     fcn_00486f90 ();
    0x00417648 addu s1, v0, s1               |     s1 = v0 + s1;
    0x0041764c addiu v0, zero, 7             |     v0 = 7;
    0x00417650 addiu a3, zero, -1            |     a3 = -1;
    0x00417654 move a1, s1                   |     a1 = s1;
    0x00417658 move a0, s0                   |     a0 = s0;
    0x0041765c move a2, s4                   |     a2 = s4;
    0x00417660 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00417664 jal 0x42682c                  |     fcn_0042682c ();
    0x00417668 addu s1, s1, v0               |     s1 += v0;
    0x0041766c addiu a2, zero, 0xff          |     a2 = 0xff;
    0x00417670 move a1, s3                   |     a1 = s3;
    0x00417674 move a0, s1                   |     a0 = s1;
    0x00417678 jal 0x4461f8                  |     fcn_004461f8 ();
    0x0041767c move a0, s3                   |     a0 = s3;
    0x00417680 jal 0x487740                  |     fcn_00487740 ();
    0x00417684 addiu v0, v0, 1               |     v0++;
    0x00417688 addu a1, s1, v0               |     a1 = s1 + v0;
    0x0041768c move a0, s0                   |     a0 = s0;
    0x00417690 jal 0x4160b4                  |     fcn_004160b4 ();
    0x00417694 move a0, s0                   |     a0 = s0;
    0x00417698 jal 0x415ec8                  |     fcn_00415ec8 ();
    0x0041769c move a0, s0                   |     a0 = s0;
    0x004176a0 jal 0x415d8c                  |     fcn_00415d8c ();
    0x004176a4 lw ra, 0x344(sp)              |     ra = *(var_344h);
    0x004176a8 bnez v0, 0x417704             |     
                                             |     while (v0 != 0) {
    0x004176ac lw s7, 0x340(sp)              |         s7 = *(var_340h);
    0x004176b0 lw s6, 0x33c(sp)              |         s6 = *(var_33ch);
    0x004176b4 lw s5, 0x338(sp)              |         s5 = *(var_338h);
    0x004176b8 lw s4, 0x334(sp)              |         s4 = *(var_334h);
    0x004176bc lw s3, 0x330(sp)              |         s3 = *(var_330h);
    0x004176c0 lw s2, 0x32c(sp)              |         s2 = *(var_32ch);
    0x004176c4 lw s1, 0x328(sp)              |         s1 = *(var_328h);
    0x004176c8 lw s0, 0x324(sp)              |         s0 = *(var_324h);
    0x004176cc move v0, zero                 |         v0 = 0;
    0x004176d0 addiu sp, sp, 0x348           |         
    0x004176d4 jr ra                         |         return v1;
                                             | label_7:
    0x004176d8 addiu v0, zero, 3             |         v0 = 3;
    0x004176dc sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x004176e0 move a0, s0                   |         a0 = s0;
    0x004176e4 move a1, s5                   |         a1 = s5;
    0x004176e8 move a2, s4                   |         a2 = s4;
    0x004176ec addiu a3, zero, -1            |         a3 = -1;
    0x004176f0 jal 0x42682c                  |         fcn_0042682c ();
    0x004176f4 move s6, v0                   |         s6 = v0;
    0x004176f8 ext s7, v0, 8, 8              |         __asm ("ext s7, v0, 8, 8");
    0x004176fc move s1, v0                   |         s1 = v0;
    0x00417700 b 0x4175ac                    |         goto label_0;
    0x00417704 move a0, s0                   |         a0 = s0;
    0x00417708 jal 0x41d108                  |         fcn_0041d108 ();
    0x0041770c lw ra, 0x344(sp)              |         ra = *(var_344h);
    0x00417710 bnez v0, 0x4176ac             |         
                                             |     }
    0x00417714 addiu s1, s0, 0x824           |     s1 = s0 + 0x824;
    0x00417718 lui a1, 0x46                  |     a1 = 0x460000;
    0x0041771c move a0, s1                   |     a0 = s1;
                                             |     /* esilref: 'A:' */
    0x00417720 addiu a1, a1, 0x2868          |     a1 += 0x2868;
    0x00417724 addiu a2, zero, 0xff          |     a2 = 0xff;
    0x00417728 jal 0x4461f8                  |     fcn_004461f8 ();
    0x0041772c lw v0, 0x14(s0)               |     v0 = *((s0 + 5));
    0x00417730 slti v0, v0, 5                |     v0 = (v0 < 5) ? 1 : 0;
    0x00417734 addiu v1, zero, -1            |     v1 = -1;
                                             |     if (v0 == 0) {
    0x00417738 beqz v0, 0x4177f8             |         goto label_8;
                                             |     }
    0x0041773c lui a1, 0x46                  |     a1 = 0x460000;
                                             | label_3:
    0x00417740 move a0, s2                   |     a0 = s2;
                                             |     /* str.IPC_ */
    0x00417744 addiu a1, a1, -0x1a7c         |     a1 += -0x1a7c;
    0x00417748 jal 0x4873b0                  |     fcn_004873b0 ();
    0x0041774c move a0, s1                   |     a0 = s1;
                                             |     if (v0 == 0) {
    0x00417750 beqz v0, 0x4177e0             |         goto label_9;
                                             |     }
    0x00417754 lw v0, 0x14(s0)               |     v0 = *((s0 + 5));
                                             | label_2:
    0x00417758 slti v0, v0, 5                |     v0 = (v0 < 5) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0041775c beqz v0, 0x4177ac             |         goto label_10;
                                             |     }
    0x00417760 nop                           |     
    0x00417764 lw v0, 0xd68(s0)              |     v0 = *((s0 + 858));
                                             |     do {
                                             | label_1:
    0x00417768 lbu v1, 0x1d(v0)              |         v1 = *((v0 + 29));
    0x0041776c lbu a0, 0x1c(v0)              |         a0 = *((v0 + 28));
    0x00417770 lw ra, 0x344(sp)              |         ra = *(var_344h);
    0x00417774 sll v1, v1, 8                 |         v1 <<= 8;
    0x00417778 or v1, v1, a0                 |         v1 |= a0;
    0x0041777c sh v1, 0xc(s0)                |         *((s0 + 6)) = v1;
    0x00417780 lw s7, 0x340(sp)              |         s7 = *(var_340h);
    0x00417784 lw s6, 0x33c(sp)              |         s6 = *(var_33ch);
    0x00417788 lw s5, 0x338(sp)              |         s5 = *(var_338h);
    0x0041778c lw s4, 0x334(sp)              |         s4 = *(var_334h);
    0x00417790 lw s3, 0x330(sp)              |         s3 = *(var_330h);
    0x00417794 lw s2, 0x32c(sp)              |         s2 = *(var_32ch);
    0x00417798 lw s1, 0x328(sp)              |         s1 = *(var_328h);
    0x0041779c lw s0, 0x324(sp)              |         s0 = *(var_324h);
    0x004177a0 addiu v0, zero, 1             |         v0 = 1;
    0x004177a4 addiu sp, sp, 0x348           |         
    0x004177a8 jr ra                         |         return v1;
                                             | label_10:
    0x004177ac lw v0, 0xd68(s0)              |         v0 = *((s0 + 858));
    0x004177b0 lbu v1, 0x24(v0)              |         v1 = *((v0 + 36));
    0x004177b4 sll v1, v1, 1                 |         v1 <<= 1;
    0x004177b8 addu v1, v0, v1               |         v1 = v0 + v1;
    0x004177bc lbu a0, 0x26(v1)              |         a0 = *((v1 + 38));
    0x004177c0 lbu v1, 0x25(v1)              |         v1 = *((v1 + 37));
    0x004177c4 sll a0, a0, 8                 |         a0 <<= 8;
    0x004177c8 or a0, a0, v1                 |         a0 |= v1;
    0x004177cc addiu v1, zero, 3             |         v1 = 3;
    0x004177d0 addiu v1, zero, 1             |         v1 = 1;
    0x004177d4 bne a0, v1, 0x417768          |         
                                             |     } while (a0 != v1);
    0x004177d8 sw v1, 0xd74(s0)              |     *((s0 + 861)) = v1;
    0x004177dc b 0x417768                    |     goto label_1;
                                             | label_9:
    0x004177e0 lui a1, 0x46                  |     a1 = 0x45dc8c;
                                             |     /* esilref: 'IPC' */
    0x004177e4 addiu a1, a1, -0x2374         |     
    0x004177e8 addiu a2, zero, 0xff          |     a2 = 0xff;
    0x004177ec jal 0x4461f8                  |     fcn_004461f8 ();
    0x004177f0 lw v0, 0x14(s0)               |     v0 = *((s0 + 5));
    0x004177f4 b 0x417758                    |     goto label_2;
                                             | label_8:
    0x004177f8 lw v0, 0xd68(s0)              |     v0 = *((s0 + 858));
    0x004177fc move a0, s0                   |     a0 = s0;
    0x00417800 lbu a2, 0x24(v0)              |     a2 = *((v0 + 36));
    0x00417804 sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x00417808 addiu v1, zero, 1             |     v1 = 1;
    0x0041780c sll a2, a2, 1                 |     a2 <<= 1;
    0x00417810 addiu a2, a2, 0x27            |     a2 += 0x27;
    0x00417814 sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x00417818 move a1, s1                   |     a1 = s1;
    0x0041781c addu a2, v0, a2               |     a2 = v0 + a2;
    0x00417820 addiu a3, zero, 0x100         |     a3 = 0x100;
    0x00417824 jal 0x426a24                  |     fcn_00426a24 ();
    0x00417828 lui a1, 0x46                  |     a1 = 0x460000;
    0x0041782c b 0x417740                    |     goto label_3;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x41cccc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0041cccc ()                  | void fcn_0041cccc () {
    0x0041cccc lw v0, 0xd68(a0)              |     v0 = *((a0 + 858));
    0x0041ccd0 lw v1, 0xd70(a0)              |     v1 = *((a0 + 860));
    0x0041ccd4 addiu sp, sp, -0x28           |     
    0x0041ccd8 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x0041ccdc sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x0041cce0 lbu a1, 0xf(v0)               |     a1 = *((v0 + 15));
                                             |     if (v1 == 0) {
    0x0041cce4 beqz v1, 0x41cdfc             |         goto label_2;
                                             |     }
    0x0041cce8 move s0, a0                   |     s0 = a0;
    0x0041ccec lw a0, 4(a0)                  |     a0 = *((a0 + 1));
    0x0041ccf0 addiu v1, zero, -1            |     v1 = -1;
                                             |     if (a0 == v1) {
    0x0041ccf4 beq a0, v1, 0x41cd90          |         goto label_3;
                                             |     }
    0x0041ccf8 nop                           |     
                                             | label_0:
    0x0041ccfc lw a3, 0x1c(s0)               |     a3 = *((s0 + 7));
                                             |     if (a3 == 0) {
    0x0041cd00 beqz a3, 0x41cd60             |         goto label_4;
                                             |     }
    0x0041cd04 nop                           |     
    0x0041cd08 addiu v0, zero, 5             |     v0 = 5;
    0x0041cd0c lui v1, 0x46                  |     v1 = 0x460000;
                                             |     if (a3 == v0) {
    0x0041cd10 beq a3, v0, 0x41cf20          |         goto label_5;
                                             |     }
                                             |     /* esilref: 'RAP50: Not supported by server' */
    0x0041cd14 addiu v1, v1, 0x31cc          |     v1 += 0x31cc;
    0x0041cd18 b 0x41cd28                    |     
                                             |     while (v0 != 0) {
    0x0041cd1c lw a0, -0xc(v1)               |         a0 = *((v1 - 3));
    0x0041cd20 lw ra, 0x24(sp)               |         ra = *(var_24h);
                                             |         if (a3 == a0) {
    0x0041cd24 beq a3, a0, 0x41cd84          |             goto label_6;
                                             |         }
    0x0041cd28 addiu v1, v1, 8               |         v1 += 8;
    0x0041cd2c lw v0, -8(v1)                 |         v0 = *((v1 - 2));
    0x0041cd30 lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x0041cd34 bnez v0, 0x41cd1c             |         
                                             |     }
    0x0041cd38 lui a2, 0x46                  |     a2 = 0x460000;
    0x0041cd3c addiu a0, s0, -0x12f0         |     a0 = s0 + -0x12f0;
    0x0041cd40 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str.RAP_code__d */
    0x0041cd44 addiu a2, a2, 0x2ecc          |     a2 += 0x2ecc;
    0x0041cd48 jal 0x444430                  |     sym_snprintf ()
    0x0041cd4c lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x0041cd50 addiu v0, s0, -0x12f0         |     v0 = s0 + -0x12f0;
    0x0041cd54 lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x0041cd58 addiu sp, sp, 0x28            |     
    0x0041cd5c jr ra                         |     return v0;
                                             | label_4:
    0x0041cd60 ext a1, a1, 6, 1              |     __asm ("ext a1, a1, 6, 1");
    0x0041cd64 addiu a1, sp, 0x1c            |     a1 = sp + 0x1c;
                                             |     if (a1 != 0) {
    0x0041cd68 bnez a1, 0x41ce28             |         goto label_7;
                                             |     }
    0x0041cd6c move a0, s0                   |     a0 = s0;
    0x0041cd70 addiu a2, sp, 0x18            |     a2 = sp + 0x18;
    0x0041cd74 jal 0x41cc38                  |     fcn_0041cc38 ();
    0x0041cd78 lw a0, 0xd68(s0)              |     a0 = *((s0 + 858));
    0x0041cd7c jal 0x428118                  |     fcn_00428118 ();
                                             | label_1:
    0x0041cd80 lw ra, 0x24(sp)               |     ra = *(var_24h);
                                             | label_6:
    0x0041cd84 lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x0041cd88 addiu sp, sp, 0x28            |     
    0x0041cd8c jr ra                         |     return v0;
                                             | label_3:
    0x0041cd90 lw a3, 8(s0)                  |     a3 = *((s0 + 2));
                                             |     if (a3 == 0) {
    0x0041cd94 beqz a3, 0x41ccfc             |         goto label_0;
                                             |     }
    0x0041cd98 nop                           |     
    0x0041cd9c addiu v0, zero, 2             |     v0 = 2;
    0x0041cda0 lui v1, 0x46                  |     v1 = 0x460000;
                                             |     if (a3 == v0) {
    0x0041cda4 beq a3, v0, 0x41ced0          |         goto label_8;
                                             |     }
    0x0041cda8 slti v0, a3, 3                |     v0 = (a3 < 3) ? 1 : 0;
    0x0041cdac addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v0 != 0) {
    0x0041cdb0 bnez v0, 0x41ce64             |         goto label_9;
                                             |     }
    0x0041cdb4 addiu v0, zero, 3             |     v0 = 3;
                                             |     if (a3 == v0) {
    0x0041cdb8 beq a3, v0, 0x41ceac          |         goto label_10;
                                             |     }
    0x0041cdbc nop                           |     
    0x0041cdc0 addiu v0, zero, 4             |     v0 = 4;
                                             |     if (a3 != v0) {
    0x0041cdc4 bne a3, v0, 0x41ce6c          |         goto label_11;
                                             |     }
    0x0041cdc8 nop                           |     
    0x0041cdcc lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x0041cdd0 jal 0x4876a0                  |     fcn_004876a0 ();
    0x0041cdd4 lw a0, (v0)                   |     a0 = *(v0);
    0x0041cdd8 jal 0x486ee0                  |     fcn_00486ee0 ();
    0x0041cddc lui a2, 0x46                  |     a2 = 0x460000;
    0x0041cde0 addiu a0, s0, -0x12f0         |     a0 = s0 + -0x12f0;
    0x0041cde4 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str.Write_error:__s_n */
    0x0041cde8 addiu a2, a2, 0x2ea0          |     a2 += 0x2ea0;
                                             |     do {
    0x0041cdec move a3, v0                   |         a3 = v0;
    0x0041cdf0 jal 0x444430                  |         sym_snprintf ()
    0x0041cdf4 addiu v0, s0, -0x12f0         |         v0 = s0 + -0x12f0;
    0x0041cdf8 b 0x41cd80                    |         goto label_1;
                                             | label_2:
    0x0041cdfc lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x0041ce00 lui a1, 0x46                  |         a1 = 0x460000;
    0x0041ce04 addiu a0, s0, -0x12f0         |         a0 = s0 + -0x12f0;
                                             |         /* str._Programmers_error__cli_errstr_called_on_unitialized_cli_stat_struct__n */
    0x0041ce08 addiu a1, a1, 0x2de8          |         a1 += 0x2de8;
    0x0041ce0c addiu a2, zero, 0xff          |         a2 = 0xff;
    0x0041ce10 jal 0x4461f8                  |         fcn_004461f8 ();
    0x0041ce14 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x0041ce18 addiu v0, s0, -0x12f0         |         v0 = s0 + -0x12f0;
    0x0041ce1c lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0041ce20 addiu sp, sp, 0x28            |         
    0x0041ce24 jr ra                         |         return v0;
                                             | label_7:
    0x0041ce28 lbu a2, 0xc(v0)               |         a2 = *((v0 + 12));
    0x0041ce2c lbu a1, 0xb(v0)               |         a1 = *((v0 + 11));
    0x0041ce30 lbu a0, 0xa(v0)               |         a0 = *((v0 + 10));
    0x0041ce34 lbu v1, 9(v0)                 |         v1 = *((v0 + 9));
    0x0041ce38 sll v0, a2, 8                 |         v0 = a2 << 8;
    0x0041ce3c or v0, v0, a1                 |         v0 |= a1;
    0x0041ce40 sll a0, a0, 8                 |         a0 <<= 8;
    0x0041ce44 or a0, a0, v1                 |         a0 |= v1;
    0x0041ce48 sll v0, v0, 0x10              |         v0 <<= 0x10;
    0x0041ce4c or a0, a0, v0                 |         a0 |= v0;
    0x0041ce50 jal 0x426c60                  |         fcn_00426c60 ();
    0x0041ce54 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x0041ce58 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0041ce5c addiu sp, sp, 0x28            |         
    0x0041ce60 jr ra                         |         return v0;
                                             | label_9:
    0x0041ce64 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         if (a3 != v0) {
    0x0041ce68 beq a3, v0, 0x41ce8c          |             
                                             | label_11:
    0x0041ce6c lui s0, 0x4a                  |             s0 = 0x4a0000;
    0x0041ce70 lui a2, 0x46                  |             a2 = 0x460000;
    0x0041ce74 addiu a0, s0, -0x12f0         |             a0 = s0 + -0x12f0;
    0x0041ce78 addiu a1, zero, 0xff          |             a1 = 0xff;
                                             |             /* str.Unknown_error_code__d_n */
    0x0041ce7c addiu a2, a2, 0x2eb4          |             a2 += 0x2eb4;
    0x0041ce80 jal 0x444430                  |             sym_snprintf ()
    0x0041ce84 addiu v0, s0, -0x12f0         |             v0 = s0 + -0x12f0;
    0x0041ce88 b 0x41cd80                    |             goto label_1;
                                             |         }
    0x0041ce8c lw a3, 0xd58(s0)              |         a3 = *((s0 + 854));
    0x0041ce90 lui a2, 0x46                  |         a2 = 0x460000;
    0x0041ce94 lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x0041ce98 addiu a0, s0, -0x12f0         |         a0 = 0x49ed10;
                                             |         /* str.Call_timed_out:_server_did_not_respond_after__d_milliseconds */
    0x0041ce9c addiu a2, a2, 0x2e30          |         a2 += 0x2e30;
    0x0041cea0 jal 0x444430                  |         sym_snprintf ()
    0x0041cea4 addiu v0, s0, -0x12f0         |         v0 = s0 + -0x12f0;
    0x0041cea8 b 0x41cd80                    |         goto label_1;
                                             | label_10:
    0x0041ceac lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x0041ceb0 jal 0x4876a0                  |         fcn_004876a0 ();
    0x0041ceb4 lw a0, (v0)                   |         a0 = *(v0);
    0x0041ceb8 jal 0x486ee0                  |         fcn_00486ee0 ();
    0x0041cebc lui a2, 0x46                  |         a2 = 0x460000;
    0x0041cec0 addiu a0, s0, -0x12f0         |         a0 = s0 + -0x12f0;
    0x0041cec4 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* str.Read_error:__s_n */
    0x0041cec8 addiu a2, a2, 0x2e90          |         a2 += 0x2e90;
    0x0041cecc b 0x41cdec                    |         
                                             |     } while (1);
                                             |     /* str.Call_returned_zero_bytes__EOF__n */
                                             | label_8:
    0x0041ced0 addiu v0, v1, 0x2e70          |     v0 = v1 + 0x2e70;
    0x0041ced4 lw t3, 0x2e70(v1)             |     t3 = *((v1 + 2972));
    0x0041ced8 lw t2, 4(v0)                  |     t2 = *((v0 + 1));
    0x0041cedc lw t1, 8(v0)                  |     t1 = *((v0 + 2));
    0x0041cee0 lw t0, 0xc(v0)                |     t0 = *((v0 + 3));
    0x0041cee4 lw a3, 0x10(v0)               |     a3 = *((v0 + 4));
    0x0041cee8 lw a2, 0x14(v0)               |     a2 = *((v0 + 5));
    0x0041ceec lw a1, 0x18(v0)               |     a1 = *((v0 + 6));
    0x0041cef0 lw a0, 0x1c(v0)               |     a0 = *((v0 + 7));
    0x0041cef4 lui v1, 0x4a                  |     v1 = 0x4a0000;
    0x0041cef8 addiu v0, v1, -0x12f0         |     v0 = v1 + -0x12f0;
    0x0041cefc sw t3, -0x12f0(v1)            |     *((v1 - 1212)) = t3;
    0x0041cf00 sw t2, 4(v0)                  |     *((v0 + 1)) = t2;
    0x0041cf04 sw t1, 8(v0)                  |     *((v0 + 2)) = t1;
    0x0041cf08 sw t0, 0xc(v0)                |     *((v0 + 3)) = t0;
    0x0041cf0c sw a3, 0x10(v0)               |     *((v0 + 4)) = a3;
    0x0041cf10 sw a2, 0x14(v0)               |     *((v0 + 5)) = a2;
    0x0041cf14 sw a1, 0x18(v0)               |     *((v0 + 6)) = a1;
    0x0041cf18 sw a0, 0x1c(v0)               |     *((v0 + 7)) = a0;
    0x0041cf1c b 0x41cd80                    |     goto label_1;
                                             | label_5:
    0x0041cf20 lui v0, 0x46                  |     v0 = "RAP5: User has insufficient privilege";
                                             |     /* str.RAP5:_User_has_insufficient_privilege */
    0x0041cf24 addiu v0, v0, 0x2dc0          |     
    0x0041cf28 b 0x41cd80                    |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x4243c8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.004243c8 ()                  | void fcn_004243c8 () {
    0x004243c8 addiu sp, sp, -0x140          |     
    0x004243cc sw s4, 0x130(sp)              |     *(var_130h) = s4;
    0x004243d0 move s4, a1                   |     s4 = a1;
    0x004243d4 lui a1, 0x46                  |     a1 = 0x460000;
    0x004243d8 sw s0, 0x120(sp)              |     *(var_120h) = s0;
    0x004243dc addiu a1, a1, 0xc78           |     a1 += 0xc78;
    0x004243e0 move s0, a0                   |     s0 = a0;
    0x004243e4 move a0, a2                   |     a0 = a2;
    0x004243e8 sw s2, 0x128(sp)              |     *(var_128h) = s2;
    0x004243ec sw ra, 0x13c(sp)              |     *(var_13ch) = ra;
    0x004243f0 sw s6, 0x138(sp)              |     *(var_138h) = s6;
    0x004243f4 sw s5, 0x134(sp)              |     *(var_134h) = s5;
    0x004243f8 sw s3, 0x12c(sp)              |     *(var_12ch) = s3;
    0x004243fc sw s1, 0x124(sp)              |     *(var_124h) = s1;
    0x00424400 move s2, a2                   |     s2 = a2;
    0x00424404 jal 0x487590                  |     fcn_00487590 ();
    0x00424408 lui a2, 0x46                  |     a2 = 0x460000;
                                             |     if (v0 != 0) {
    0x0042440c bnez v0, 0x4244c4             |         goto label_1;
                                             |     }
    0x00424410 lw v0, 0x54(s2)               |     v0 = *((s2 + 21));
    0x00424414 addiu v1, zero, 0x2a          |     v1 = 0x2a;
    0x00424418 sw zero, 0x20(sp)             |     *(s) = 0;
    0x0042441c sw zero, 0x2c(sp)             |     *(var_2ch) = 0;
    0x00424420 sw zero, 0x24(sp)             |     *(var_24h) = 0;
    0x00424424 sw zero, 0x28(sp)             |     *(var_28h) = 0;
    0x00424428 sw zero, 0x30(sp)             |     *(var_30h) = 0;
    0x0042442c sb v1, 0x20(sp)               |     *(s) = v1;
    0x00424430 sb v0, 0x2f(sp)               |     *(var_2fh) = v0;
    0x00424434 addiu t0, zero, 0x2a          |     t0 = 0x2a;
                                             | label_0:
    0x00424438 addu v1, s0, s4               |     v1 = s0 + s4;
    0x0042443c addiu v0, s4, 1               |     v0 = s4 + 1;
    0x00424440 addiu a0, zero, 0x20          |     a0 = 0x20;
    0x00424444 sb a0, (v1)                   |     *(v1) = a0;
    0x00424448 addu v0, s0, v0               |     v0 = s0 + v0;
    0x0042444c addiu v1, sp, 0x21            |     v1 = sp + 0x21;
    0x00424450 addiu t2, sp, 0x30            |     t2 = sp + 0x30;
    0x00424454 b 0x424460                    |     
                                             |     while (v1 != t2) {
    0x00424458 lb t0, (v1)                   |         t0 = *(v1);
    0x0042445c addiu v1, v1, 1               |         v1++;
    0x00424460 ext t1, t0, 4, 4              |         __asm ("ext t1, t0, 4, 4");
    0x00424464 andi t0, t0, 0xf              |         t0 &= 0xf;
    0x00424468 addiu t1, t1, 0x41            |         t1 += 0x41;
    0x0042446c addiu t0, t0, 0x41            |         t0 += 0x41;
    0x00424470 sb t1, (v0)                   |         *(v0) = t1;
    0x00424474 sb t0, 1(v0)                  |         *((v0 + 1)) = t0;
    0x00424478 addiu v0, v0, 2               |         v0 += 2;
    0x0042447c bne v1, t2, 0x424458          |         
                                             |     }
    0x00424480 addiu s1, s4, 0x21            |     s1 = s4 + 0x21;
    0x00424484 addu s3, s0, s1               |     s3 = s0 + s1;
    0x00424488 sb zero, (s3)                 |     *(s3) = 0;
    0x0042448c lb v0, 0x11(s2)               |     v0 = *((s2 + 17));
    0x00424490 addiu s5, zero, 0x22          |     s5 = 0x22;
                                             |     if (v0 == 0) {
    0x00424494 bnez v0, 0x4244e8             |         
    0x00424498 lw ra, 0x13c(sp)              |         ra = *(var_13ch);
    0x0042449c move v0, s5                   |         v0 = s5;
    0x004244a0 lw s6, 0x138(sp)              |         s6 = *(var_138h);
    0x004244a4 lw s5, 0x134(sp)              |         s5 = *(var_134h);
    0x004244a8 lw s4, 0x130(sp)              |         s4 = *(var_130h);
    0x004244ac lw s3, 0x12c(sp)              |         s3 = *(var_12ch);
    0x004244b0 lw s2, 0x128(sp)              |         s2 = *(var_128h);
    0x004244b4 lw s1, 0x124(sp)              |         s1 = *(var_124h);
    0x004244b8 lw s0, 0x120(sp)              |         s0 = *(var_120h);
    0x004244bc addiu sp, sp, 0x140           |         
    0x004244c0 jr ra                         |         return v0;
                                             | label_1:
    0x004244c4 lw v0, 0x54(s2)               |         v0 = *((s2 + 21));
    0x004244c8 addiu a0, sp, 0x20            |         a0 = sp + 0x20;
    0x004244cc sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x004244d0 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* str.__15.15s_c */
    0x004244d4 addiu a2, a2, 0x40f0          |         a2 += 0x40f0;
    0x004244d8 move a3, s2                   |         a3 = s2;
    0x004244dc jal 0x444430                  |         sym_snprintf ()
    0x004244e0 lb t0, 0x20(sp)               |         t0 = *(s);
    0x004244e4 b 0x424438                    |         goto label_0;
                                             |     }
    0x004244e8 addiu s2, s2, 0x11            |     s2 += 0x11;
    0x004244ec addiu s6, s4, 0x22            |     s6 = s4 + 0x22;
    0x004244f0 move a0, s2                   |     a0 = s2;
    0x004244f4 addu s6, s0, s6               |     s6 = s0 + s6;
    0x004244f8 jal 0x487740                  |     fcn_00487740 ();
    0x004244fc move a1, s2                   |     a1 = s2;
    0x00424500 move a0, s6                   |     a0 = s6;
    0x00424504 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00424508 addiu s5, v0, 0x23            |     s5 = v0 + 0x23;
    0x0042450c addiu s2, s4, 0x22            |     s2 = s4 + 0x22;
    0x00424510 jal 0x4461f8                  |     fcn_004461f8 ();
    0x00424514 lui s4, 0x4a                  |     s4 = 0x4a0000;
    0x00424518 b 0x42452c                    |     
                                             |     while (v0 != 0) {
    0x0042451c addiu s2, s1, 1               |         s2 = s1 + 1;
    0x00424520 sb v1, (s3)                   |         *(s3) = v1;
    0x00424524 addu s6, s0, s2               |         s6 = s0 + s2;
    0x00424528 addu s3, s0, s1               |         s3 = s0 + s1;
    0x0042452c lw t9, -0x4658(s4)            |         t9 = *((s4 - 4502));
    0x00424530 move a0, s6                   |         a0 = s6;
    0x00424534 addiu a1, zero, 0x2e          |         a1 = 0x2e;
    0x00424538 jalr t9                       |         t9 ();
    0x0042453c addu v1, s0, s2               |         v1 = s0 + s2;
    0x00424540 subu v1, v0, v1               |         __asm ("subu v1, v0, v1");
    0x00424544 seb v1, v1                    |         __asm ("seb v1, v1");
    0x00424548 addiu a0, v1, 1               |         a0 = v1 + 1;
    0x0042454c addu s1, s1, a0               |         s1 += a0;
    0x00424550 bnez v0, 0x42451c             |         
                                             |     }
    0x00424554 addu a0, s0, s2               |     a0 = s0 + s2;
    0x00424558 jal 0x487740                  |     fcn_00487740 ();
    0x0042455c sb v0, (s3)                   |     *(s3) = v0;
    0x00424560 lw ra, 0x13c(sp)              |     ra = *(var_13ch);
    0x00424564 move v0, s5                   |     v0 = s5;
    0x00424568 lw s6, 0x138(sp)              |     s6 = *(var_138h);
    0x0042456c lw s5, 0x134(sp)              |     s5 = *(var_134h);
    0x00424570 lw s4, 0x130(sp)              |     s4 = *(var_130h);
    0x00424574 lw s3, 0x12c(sp)              |     s3 = *(var_12ch);
    0x00424578 lw s2, 0x128(sp)              |     s2 = *(var_128h);
    0x0042457c lw s1, 0x124(sp)              |     s1 = *(var_124h);
    0x00424580 lw s0, 0x120(sp)              |     s0 = *(var_120h);
    0x00424584 addiu sp, sp, 0x140           |     
    0x00424588 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x4249f8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.004249f8 ()                  | void fcn_004249f8 () {
    0x004249f8 addiu sp, sp, -0x30           |     
    0x004249fc sw s0, 0x24(sp)               |     *(var_24h) = s0;
    0x00424a00 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x00424a04 sw s1, 0x28(sp)               |     *(var_28h) = s1;
    0x00424a08 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x00424a0c lw v1, -0xdd8(s0)             |     v1 = *((s0 - 886));
    0x00424a10 lb v0, 0x11(a0)               |     v0 = *((a0 + 17));
    0x00424a14 lui s1, 0x4a                  |     s1 = 0x4a0000;
    0x00424a18 sll v1, v1, 8                 |     v1 <<= 8;
    0x00424a1c addiu s1, s1, -0xdd4          |     s1 += -0xdd4;
    0x00424a20 move a3, a0                   |     a3 = a0;
    0x00424a24 addu s1, s1, v1               |     s1 += v1;
                                             |     if (v0 != 0) {
    0x00424a28 beqz v0, 0x424a88             |         
    0x00424a2c lw v1, 0x54(a0)               |         v1 = *((a0 + 21));
    0x00424a30 addiu v0, a0, 0x11            |         v0 = a0 + 0x11;
    0x00424a34 lui a2, 0x46                  |         a2 = 0x460000;
    0x00424a38 sw v1, 0x10(sp)               |         *(var_10h) = v1;
    0x00424a3c move a0, s1                   |         a0 = s1;
    0x00424a40 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x00424a44 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* str._s__02x_._s */
    0x00424a48 addiu a2, a2, 0x4108          |         a2 += 0x4108;
    0x00424a4c jal 0x444430                  |         sym_snprintf ()
    0x00424a50 lw a0, -0xdd8(s0)             |         a0 = *((s0 - 886));
    0x00424a54 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x00424a58 move v0, s1                   |         v0 = s1;
    0x00424a5c addiu a0, a0, 1               |         a0++;
    0x00424a60 sra v1, a0, 0x1f              |         v1 = a0 >> 0x1f;
    0x00424a64 srl v1, v1, 0x1e              |         v1 >>= 0x1e;
    0x00424a68 addu a0, a0, v1               |         a0 += v1;
    0x00424a6c andi a0, a0, 3                |         a0 &= 3;
    0x00424a70 subu v1, a0, v1               |         __asm ("subu v1, a0, v1");
    0x00424a74 lw s1, 0x28(sp)               |         s1 = *(var_28h);
    0x00424a78 sw v1, -0xdd8(s0)             |         *((s0 - 886)) = v1;
    0x00424a7c lw s0, 0x24(sp)               |         s0 = *(var_24h);
    0x00424a80 addiu sp, sp, 0x30            |         
    0x00424a84 jr ra                         |         return v1;
                                             |     }
    0x00424a88 lw v0, 0x54(a0)               |     v0 = *((a0 + 21));
    0x00424a8c lui a2, 0x46                  |     a2 = 0x460000;
    0x00424a90 move a0, s1                   |     a0 = s1;
    0x00424a94 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00424a98 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str._s__02x_ */
    0x00424a9c addiu a2, a2, 0x40fc          |     a2 += 0x40fc;
    0x00424aa0 jal 0x444430                  |     sym_snprintf ()
    0x00424aa4 lw a0, -0xdd8(s0)             |     a0 = *((s0 - 886));
    0x00424aa8 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x00424aac move v0, s1                   |     v0 = s1;
    0x00424ab0 addiu a0, a0, 1               |     a0++;
    0x00424ab4 sra v1, a0, 0x1f              |     v1 = a0 >> 0x1f;
    0x00424ab8 srl v1, v1, 0x1e              |     v1 >>= 0x1e;
    0x00424abc addu a0, a0, v1               |     a0 += v1;
    0x00424ac0 andi a0, a0, 3                |     a0 &= 3;
    0x00424ac4 subu v1, a0, v1               |     __asm ("subu v1, a0, v1");
    0x00424ac8 lw s1, 0x28(sp)               |     s1 = *(var_28h);
    0x00424acc sw v1, -0xdd8(s0)             |     *((s0 - 886)) = v1;
    0x00424ad0 lw s0, 0x24(sp)               |     s0 = *(var_24h);
    0x00424ad4 addiu sp, sp, 0x30            |     
    0x00424ad8 jr ra                         |     return v1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x4266a4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.004266a4 ()                  | void fcn_004266a4 () {
    0x004266a4 addiu sp, sp, -0x48           |     
    0x004266a8 sw s0, 0x38(sp)               |     *(var_38h) = s0;
    0x004266ac move s0, a1                   |     s0 = a1;
    0x004266b0 lui a1, 0x46                  |     a1 = 0x460c78;
    0x004266b4 addiu a1, a1, 0xc78           |     
    0x004266b8 sw s2, 0x40(sp)               |     *(var_40h) = s2;
    0x004266bc sw s1, 0x3c(sp)               |     *(var_3ch) = s1;
    0x004266c0 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x004266c4 move s1, a0                   |     s1 = a0;
    0x004266c8 seb s2, a2                    |     __asm ("seb s2, a2");
    0x004266cc sw zero, 0x20(sp)             |     *(var_20h) = 0;
    0x004266d0 sw zero, 0x24(sp)             |     *(var_24h) = 0;
    0x004266d4 sw zero, 0x28(sp)             |     *(var_28h) = 0;
    0x004266d8 sw zero, 0x2c(sp)             |     *(var_2ch) = 0;
    0x004266dc sw zero, 0x30(sp)             |     *(var_30h) = 0;
    0x004266e0 jal 0x487590                  |     fcn_00487590 ();
    0x004266e4 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
                                             |     if (v0 != 0) {
    0x004266e8 bnez v0, 0x4267cc             |         goto label_2;
                                             |     }
    0x004266ec addiu v0, zero, 0x2a          |     v0 = 0x2a;
    0x004266f0 sb v0, 0x20(sp)               |     *(var_20h) = v0;
    0x004266f4 addiu v1, zero, 0x2a          |     v1 = 0x2a;
                                             | label_1:
    0x004266f8 addiu v0, zero, 0x20          |     v0 = 0x20;
    0x004266fc sb v0, (s0)                   |     *(s0) = v0;
    0x00426700 addiu a2, sp, 0x21            |     a2 = sp + 0x21;
    0x00426704 addiu v0, s0, 1               |     v0 = s0 + 1;
    0x00426708 addiu t0, s0, 0x21            |     t0 = s0 + 0x21;
    0x0042670c lui t1, 0x4a                  |     t1 = 0x4a0000;
    0x00426710 b 0x42671c                    |     
                                             |     while (t0 != v0) {
    0x00426714 lb v1, (a2)                   |         v1 = *(a2);
    0x00426718 addiu a2, a2, 1               |         a2++;
    0x0042671c lw a3, -0x473c(t1)            |         a3 = *((t1 - 4559));
    0x00426720 andi v1, v1, 0xff             |         v1 &= 0xff;
    0x00426724 addiu v0, v0, 2               |         v0 += 2;
    0x00426728 addu v1, a3, v1               |         v1 = a3 + v1;
    0x0042672c lb v1, (v1)                   |         v1 = *(v1);
    0x00426730 ext a3, v1, 4, 4              |         __asm ("ext a3, v1, 4, 4");
    0x00426734 andi v1, v1, 0xf              |         v1 &= 0xf;
    0x00426738 addiu a3, a3, 0x41            |         a3 += 0x41;
    0x0042673c addiu v1, v1, 0x41            |         v1 += 0x41;
    0x00426740 sb a3, -2(v0)                 |         *((v0 - 2)) = a3;
    0x00426744 sb v1, -1(v0)                 |         *((v0 - 1)) = v1;
    0x00426748 bne t0, v0, 0x426714          |         
                                             |     }
    0x0042674c lui a2, 0x4a                  |     a2 = 0x4a0000;
    0x00426750 sb zero, 0x21(s0)             |     *((s0 + 33)) = 0;
    0x00426754 addiu a2, a2, -0x1aa0         |     a2 += -0x1aa0;
    0x00426758 move v0, zero                 |     v0 = 0;
    0x0042675c addiu a0, zero, 0x2e          |     a0 = 0x2e;
                                             |     do {
                                             | label_0:
    0x00426760 lb v1, (a2)                   |         v1 = *(a2);
                                             |         if (v1 == 0) {
    0x00426764 bnez v1, 0x42679c             |             
    0x00426768 nop                           |             
    0x0042676c sb v0, (t0)                   |             *(t0) = v0;
                                             |             if (v0 != 0) {
    0x00426770 beqz v0, 0x42677c             |                 
    0x00426774 addu t0, t0, v0               |                 t0 += v0;
    0x00426778 sb zero, 1(t0)                |                 *((t0 + 1)) = 0;
                                             |             }
    0x0042677c move a0, s0                   |             a0 = s0;
    0x00426780 jal 0x42659c                  |             fcn_0042659c ();
    0x00426784 lw ra, 0x44(sp)               |             ra = *(var_44h);
    0x00426788 lw s2, 0x40(sp)               |             s2 = *(var_40h);
    0x0042678c lw s1, 0x3c(sp)               |             s1 = *(var_3ch);
    0x00426790 lw s0, 0x38(sp)               |             s0 = *(var_38h);
    0x00426794 addiu sp, sp, 0x48            |             
    0x00426798 jr ra                         |             return v1;
                                             |         }
    0x0042679c addu a1, t0, v0               |         a1 = t0 + v0;
                                             |         if (v1 == a0) {
    0x004267a0 beq v1, a0, 0x4267b4          |             goto label_3;
                                             |         }
    0x004267a4 sb v1, 1(a1)                  |         *((a1 + 1)) = v1;
    0x004267a8 addiu v0, v0, 1               |         v0++;
    0x004267ac addiu a2, a2, 1               |         a2++;
    0x004267b0 b 0x426760                    |         
                                             |     } while (1);
                                             | label_3:
    0x004267b4 addiu v1, v0, 1               |     v1 = v0 + 1;
    0x004267b8 sb v0, (t0)                   |     *(t0) = v0;
    0x004267bc addiu a2, a2, 1               |     a2++;
    0x004267c0 addu t0, t0, v1               |     t0 += v1;
    0x004267c4 move v0, zero                 |     v0 = 0;
    0x004267c8 b 0x426760                    |     goto label_0;
                                             | label_2:
    0x004267cc lui a2, 0x46                  |     a2 = 0x460000;
    0x004267d0 sw s2, 0x10(sp)               |     *(var_10h) = s2;
    0x004267d4 addiu a1, zero, 0x13          |     a1 = 0x13;
                                             |     /* str.__15.15s_c */
    0x004267d8 addiu a2, a2, 0x40f0          |     a2 += 0x40f0;
    0x004267dc move a3, s1                   |     a3 = s1;
    0x004267e0 jal 0x444430                  |     sym_snprintf ()
    0x004267e4 lb v1, 0x20(sp)               |     v1 = *(var_20h);
    0x004267e8 b 0x4266f8                    |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x426c60 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00426c60 ()                  | void fcn_00426c60 () {
    0x00426c60 addiu sp, sp, -0x28           |     
    0x00426c64 lui a2, 0x46                  |     a2 = 0x460000;
    0x00426c68 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x00426c6c sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00426c70 lui s1, 0x4a                  |     s1 = 0x4a0000;
    0x00426c74 move s0, a0                   |     s0 = a0;
    0x00426c78 addiu a1, zero, 0x400         |     a1 = 0x400;
    0x00426c7c addiu a0, s1, -0x9c0          |     a0 = s1 + -0x9c0;
                                             |     /* str.NT_code_0x_08x */
    0x00426c80 addiu a2, a2, 0x4570          |     a2 += 0x4570;
    0x00426c84 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x00426c88 move a3, s0                   |     a3 = s0;
    0x00426c8c jal 0x444430                  |     sym_snprintf ()
    0x00426c90 lui v0, 0x46                  |     v0 = 0x460000;
                                             |     if (s0 == 0) {
    0x00426c94 beqz s0, 0x426cd8             |         goto label_0;
                                             |     }
    0x00426c98 lui v1, 0x47                  |     v1 = 0x4681e8;
                                             |     /* esilref: 'NT_STATUS_UNSUCCESSFUL' */
    0x00426c9c addiu v1, v1, -0x7e18         |     
    0x00426ca0 b 0x426cb0                    |     
                                             |     while (v0 != 0) {
    0x00426ca4 lw a1, -4(v1)                 |         a1 = *((v1 - 1));
    0x00426ca8 lw ra, 0x24(sp)               |         ra = *(var_24h);
                                             |         if (a1 == s0) {
    0x00426cac beq a1, s0, 0x426cc8          |             goto label_1;
                                             |         }
    0x00426cb0 addiu v1, v1, 8               |         v1 += 8;
    0x00426cb4 lw v0, -8(v1)                 |         v0 = *((v1 - 2));
    0x00426cb8 bnez v0, 0x426ca4             |         
                                             |     }
    0x00426cbc nop                           |     
    0x00426cc0 addiu v0, s1, -0x9c0          |     v0 = s1 + -0x9c0;
                                             |     do {
    0x00426cc4 lw ra, 0x24(sp)               |         ra = *(var_24h);
                                             | label_1:
    0x00426cc8 lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x00426ccc lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x00426cd0 addiu sp, sp, 0x28            |         
    0x00426cd4 jr ra                         |         return v0;
                                             |         /* str.NT_STATUS_OK */
                                             | label_0:
    0x00426cd8 addiu v0, v0, 0x4560          |         v0 += 0x4560;
    0x00426cdc b 0x426cc4                    |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x428118 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00428118 ()                  | void fcn_00428118 () {
    0x00428118 addiu sp, sp, -0x28           |     
    0x0042811c sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x00428120 sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x00428124 lbu a2, 0xc(a0)               |     a2 = *((a0 + 12));
    0x00428128 lbu v0, 0xb(a0)               |     v0 = *((a0 + 11));
    0x0042812c lbu a3, 9(a0)                 |     a3 = *((a0 + 9));
    0x00428130 sll a2, a2, 8                 |     a2 <<= 8;
    0x00428134 or a2, a2, v0                 |     a2 |= v0;
                                             |     if (a3 == 0) {
    0x00428138 beqz a3, 0x428198             |         goto label_1;
                                             |     }
    0x0042813c lui v0, 0x47                  |     v0 = 0x46a630;
                                             |     /* esilref: 'ERRDOS' */
    0x00428140 addiu v0, v0, -0x59d0         |     
    0x00428144 move v1, zero                 |     v1 = 0;
    0x00428148 b 0x428158                    |     
                                             |     while (t0 != 0) {
    0x0042814c lw a0, -0x10(v0)              |         a0 = *((v0 - 4));
                                             |         if (a0 == a3) {
    0x00428150 beq a0, a3, 0x4281a4          |             goto label_2;
                                             |         }
    0x00428154 nop                           |         
    0x00428158 addiu v0, v0, 0xc             |         v0 += 0xc;
    0x0042815c lw t0, -0xc(v0)               |         t0 = *((v0 - 3));
    0x00428160 addiu v1, v1, 1               |         v1++;
    0x00428164 bnez t0, 0x42814c             |         
                                             |     }
    0x00428168 sw a2, 0x10(sp)               |     *(var_10h) = a2;
    0x0042816c lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x00428170 lui a2, 0x47                  |     a2 = 0x470000;
    0x00428174 addiu a0, s0, 0x650           |     a0 = s0 + 0x650;
    0x00428178 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str.Error:_Unknown_error___d__d_ */
    0x0042817c addiu a2, a2, -0x6b18         |     a2 += -0x6b18;
    0x00428180 jal 0x444430                  |     sym_snprintf ()
    0x00428184 lw ra, 0x24(sp)               |     ra = *(var_24h);
                                             | label_0:
    0x00428188 addiu v0, s0, 0x650           |     v0 = s0 + 0x650;
    0x0042818c lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x00428190 addiu sp, sp, 0x28            |     
    0x00428194 jr ra                         |     return v1;
                                             | label_1:
    0x00428198 lui t0, 0x47                  |     t0 = "SUCCESS";
                                             |     /* str.SUCCESS */
    0x0042819c addiu t0, t0, -0x6b5c         |     
    0x004281a0 move v1, zero                 |     v1 = 0;
                                             | label_2:
    0x004281a4 sll v0, v1, 2                 |     v0 = v1 << 2;
    0x004281a8 sll v1, v1, 4                 |     v1 <<= 4;
    0x004281ac subu v1, v1, v0               |     __asm ("subu v1, v1, v0");
    0x004281b0 lui v0, 0x47                  |     v0 = 0x46a620;
    0x004281b4 addiu v0, v0, -0x59e0         |     
    0x004281b8 addu v0, v1, v0               |     v0 = v1 + v0;
    0x004281bc lw a1, 8(v0)                  |     a1 = *((v0 + 2));
    0x004281c0 lui s0, 0x4a                  |     s0 = 0x4a0000;
                                             |     if (a1 == 0) {
    0x004281c4 beqz a1, 0x428208             |         goto label_3;
                                             |     }
    0x004281c8 lw v1, (a1)                   |     v1 = *(a1);
                                             |     if (v1 == 0) {
    0x004281cc beqz v1, 0x428208             |         goto label_3;
                                             |     }
    0x004281d0 nop                           |     
    0x004281d4 lw v0, 4(a1)                  |     v0 = *((a1 + 1));
    0x004281d8 addiu v0, a1, 0xc             |     v0 = a1 + 0xc;
                                             |     if (v0 == a2) {
    0x004281dc beq v0, a2, 0x428238          |         goto label_4;
                                             |     }
    0x004281e0 lw v1, (v0)                   |     v1 = *(v0);
    0x004281e4 b 0x4281f8                    |     
                                             |     while (v1 != 0) {
    0x004281e8 lw a0, -8(v0)                 |         a0 = *((v0 - 2));
                                             |         if (a0 == a2) {
    0x004281ec beq a0, a2, 0x428238          |             goto label_4;
                                             |         }
    0x004281f0 nop                           |         
    0x004281f4 lw v1, (v0)                   |         v1 = *(v0);
    0x004281f8 move a1, v0                   |         a1 = v0;
    0x004281fc addiu v0, v0, 0xc             |         v0 += 0xc;
    0x00428200 bnez v1, 0x4281e8             |         
                                             |     }
    0x00428204 lui s0, 0x4a                  |     s0 = 0x4a0000;
                                             | label_3:
    0x00428208 sw a2, 0x10(sp)               |     *(var_10h) = a2;
    0x0042820c lui a2, 0x47                  |     a2 = 0x470000;
    0x00428210 addiu a0, s0, 0x650           |     a0 = s0 + 0x650;
    0x00428214 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str._s____d */
    0x00428218 addiu a2, a2, -0x6b20         |     a2 += -0x6b20;
    0x0042821c move a3, t0                   |     a3 = t0;
    0x00428220 jal 0x444430                  |     sym_snprintf ()
    0x00428224 lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x00428228 addiu v0, s0, 0x650           |     v0 = s0 + 0x650;
    0x0042822c lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x00428230 addiu sp, sp, 0x28            |     
    0x00428234 jr ra                         |     return v1;
                                             | label_4:
    0x00428238 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x0042823c lw v0, -0x469c(v0)            |     v0 = *((v0 - 4519));
    0x00428240 lw v0, (v0)                   |     v0 = *(v0);
    0x00428244 lui s0, 0x4a                  |     s0 = 0x4a0000;
                                             |     if (v0 > 0) {
    0x00428248 blez v0, 0x428284             |         
    0x0042824c sw v1, 0x10(sp)               |         *(var_10h) = v1;
    0x00428250 lw v0, 8(a1)                  |         v0 = *((a1 + 2));
    0x00428254 lui a2, 0x47                  |         a2 = 0x470000;
    0x00428258 addiu a0, s0, 0x650           |         a0 = s0 + 0x650;
    0x0042825c sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x00428260 addiu a1, zero, 0x3ff         |         a1 = 0x3ff;
                                             |         /* str._s____s___s_ */
    0x00428264 addiu a2, a2, -0x6b38         |         a2 += -0x6b38;
    0x00428268 move a3, t0                   |         a3 = t0;
    0x0042826c jal 0x444430                  |         sym_snprintf ()
    0x00428270 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x00428274 addiu v0, s0, 0x650           |         v0 = s0 + 0x650;
    0x00428278 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0042827c addiu sp, sp, 0x28            |         
    0x00428280 jr ra                         |         return v1;
                                             |     }
    0x00428284 lui a2, 0x47                  |     a2 = 0x470000;
    0x00428288 sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x0042828c addiu a0, s0, 0x650           |     a0 = s0 + 0x650;
    0x00428290 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str._s____s */
    0x00428294 addiu a2, a2, -0x6b28         |     a2 += -0x6b28;
    0x00428298 move a3, t0                   |     a3 = t0;
    0x0042829c jal 0x444430                  |     sym_snprintf ()
    0x004282a0 lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x004282a4 b 0x428188                    |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x4282e0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.004282e0 ()                  | void fcn_004282e0 () {
    0x004282e0 addiu sp, sp, -0x40           |     
    0x004282e4 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x004282e8 sw s0, 0x38(sp)               |     *(var_38h) = s0;
    0x004282ec lbu a2, 4(a0)                 |     a2 = *((a0 + 4));
    0x004282f0 lbu t2, 1(a0)                 |     t2 = *((a0 + 1));
    0x004282f4 lbu t1, 2(a0)                 |     t1 = *((a0 + 2));
    0x004282f8 lbu t0, 3(a0)                 |     t0 = *((a0 + 3));
    0x004282fc lbu a1, 5(a0)                 |     a1 = *((a0 + 5));
    0x00428300 lbu v1, 6(a0)                 |     v1 = *((a0 + 6));
    0x00428304 lbu v0, 7(a0)                 |     v0 = *((a0 + 7));
    0x00428308 lbu a3, (a0)                  |     a3 = *(a0);
    0x0042830c lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x00428310 sw a2, 0x1c(sp)               |     *(var_1ch) = a2;
    0x00428314 lui a2, 0x47                  |     a2 = 0x470000;
    0x00428318 sw t2, 0x10(sp)               |     *(var_10h) = t2;
    0x0042831c sw t1, 0x14(sp)               |     *(var_14h) = t1;
    0x00428320 sw t0, 0x18(sp)               |     *(var_18h) = t0;
    0x00428324 sw a1, 0x20(sp)               |     *(var_20h) = a1;
    0x00428328 sw v1, 0x24(sp)               |     *(var_24h) = v1;
    0x0042832c addiu a0, s0, 0xa50           |     a0 = s0 + 0xa50;
    0x00428330 sw v0, 0x28(sp)               |     *(var_28h) = v0;
    0x00428334 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str._02X_02X_02X_02X_02X_02X_02X_02X */
    0x00428338 addiu a2, a2, -0x5550         |     a2 += -0x5550;
    0x0042833c jal 0x444430                  |     sym_snprintf ()
    0x00428340 lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x00428344 addiu v0, s0, 0xa50           |     v0 = s0 + 0xa50;
    0x00428348 lw s0, 0x38(sp)               |     s0 = *(var_38h);
    0x0042834c addiu sp, sp, 0x40            |     
    0x00428350 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x429770 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00429770 ()                  | void fcn_00429770 () {
    0x00429770 addiu sp, sp, -0x28           |     
    0x00429774 lui a2, 0x47                  |     a2 = 0x470000;
    0x00429778 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x0042977c sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00429780 lui s1, 0x4a                  |     s1 = 0x4a0000;
    0x00429784 move s0, a0                   |     s0 = a0;
    0x00429788 addiu a1, zero, 0x400         |     a1 = 0x400;
    0x0042978c addiu a0, s1, 0xb50           |     a0 = s1 + 0xb50;
                                             |     /* str.DOS_code_0x_08x */
    0x00429790 addiu a2, a2, -0x1e18         |     a2 += -0x1e18;
    0x00429794 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x00429798 move a3, s0                   |     a3 = s0;
    0x0042979c jal 0x444430                  |     sym_snprintf ()
    0x004297a0 lui v0, 0x47                  |     v0 = 0x470000;
                                             |     if (s0 == 0) {
    0x004297a4 beqz s0, 0x4297e8             |         goto label_0;
                                             |     }
    0x004297a8 lui v1, 0x47                  |     v1 = 0x46e518;
                                             |     /* esilref: 'WERR_BADFILE' */
    0x004297ac addiu v1, v1, -0x1ae8         |     
    0x004297b0 b 0x4297c0                    |     
                                             |     while (v0 != 0) {
    0x004297b4 lw a1, -4(v1)                 |         a1 = *((v1 - 1));
    0x004297b8 lw ra, 0x24(sp)               |         ra = *(var_24h);
                                             |         if (a1 == s0) {
    0x004297bc beq a1, s0, 0x4297d8          |             goto label_1;
                                             |         }
    0x004297c0 addiu v1, v1, 8               |         v1 += 8;
    0x004297c4 lw v0, -8(v1)                 |         v0 = *((v1 - 2));
    0x004297c8 bnez v0, 0x4297b4             |         
                                             |     }
    0x004297cc nop                           |     
    0x004297d0 addiu v0, s1, 0xb50           |     v0 = s1 + 0xb50;
                                             |     do {
    0x004297d4 lw ra, 0x24(sp)               |         ra = *(var_24h);
                                             | label_1:
    0x004297d8 lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x004297dc lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x004297e0 addiu sp, sp, 0x28            |         
    0x004297e4 jr ra                         |         return v0;
                                             |         /* str.WERR_OK */
                                             | label_0:
    0x004297e8 addiu v0, v0, -0x1e20         |         v0 += -0x1e20;
    0x004297ec b 0x4297d4                    |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x42d148 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0042d148 ()                  | void fcn_0042d148 () {
                                             |     if (a1 == 0) {
    0x0042d148 beqz a1, 0x42d350             |         goto label_5;
                                             |     }
    0x0042d14c nop                           |     
    0x0042d150 lw v0, (a2)                   |     v0 = *(a2);
    0x0042d154 addiu sp, sp, -0x150          |     
    0x0042d158 sw s4, 0x138(sp)              |     *(var_138h) = s4;
    0x0042d15c sw s3, 0x134(sp)              |     *(var_134h) = s3;
    0x0042d160 sw s1, 0x12c(sp)              |     *(var_12ch) = s1;
    0x0042d164 sw s0, 0x128(sp)              |     *(var_128h) = s0;
    0x0042d168 sw ra, 0x14c(sp)              |     *(var_14ch) = ra;
    0x0042d16c sw fp, 0x148(sp)              |     *(var_148h) = fp;
    0x0042d170 sw s7, 0x144(sp)              |     *(var_144h) = s7;
    0x0042d174 sw s6, 0x140(sp)              |     *(var_140h) = s6;
    0x0042d178 sw s5, 0x13c(sp)              |     *(var_13ch) = s5;
    0x0042d17c sw s2, 0x130(sp)              |     *(var_130h) = s2;
    0x0042d180 move s3, a0                   |     s3 = a0;
    0x0042d184 move s0, a2                   |     s0 = a2;
    0x0042d188 move s4, a3                   |     s4 = a3;
    0x0042d18c lw s1, (a1)                   |     s1 = *(a1);
                                             |     if (v0 != 0) {
    0x0042d190 beqz v0, 0x42d19c             |         
    0x0042d194 move s2, a1                   |         s2 = a1;
                                             |         if (s1 == 0) {
    0x0042d198 beqz s1, 0x42d304             |             goto label_6;
                                             |         }
                                             |     }
                                             | label_3:
    0x0042d19c lui a3, 0x47                  |     a3 = 0x470000;
    0x0042d1a0 move a1, s4                   |     a1 = s4;
    0x0042d1a4 move a2, s3                   |     a2 = s3;
                                             |     /* str.sec_io_acl */
    0x0042d1a8 addiu a3, a3, -0x1444         |     a3 += -0x1444;
    0x0042d1ac move a0, s0                   |     a0 = s0;
    0x0042d1b0 jal 0x42a264                  |     fcn_0042a264 ();
    0x0042d1b4 move a0, s0                   |     a0 = s0;
    0x0042d1b8 addiu s4, s4, 1               |     s4++;
    0x0042d1bc jal 0x42aa34                  |     fcn_0042aa34 ();
    0x0042d1c0 lui a0, 0x47                  |     a0 = "revision";
                                             |     /* str.revision */
    0x0042d1c4 addiu a0, a0, -0x1438         |     
    0x0042d1c8 move a1, s0                   |     a1 = s0;
    0x0042d1cc move a2, s4                   |     a2 = s4;
    0x0042d1d0 move a3, s1                   |     a3 = s1;
    0x0042d1d4 move s6, v0                   |     s6 = v0;
    0x0042d1d8 jal 0x42af54                  |     fcn_0042af54 ();
    0x0042d1dc addiu v0, sp, 0x120           |     v0 = sp + 0x120;
                                             |     if (v0 != 0) {
    0x0042d1e0 bnez v0, 0x42d218             |         goto label_7;
                                             |     }
                                             | label_2:
    0x0042d1e4 move v0, zero                 |     v0 = 0;
                                             |     do {
                                             | label_0:
    0x0042d1e8 lw ra, 0x14c(sp)              |         ra = *(var_14ch);
    0x0042d1ec lw fp, 0x148(sp)              |         fp = *(var_148h);
    0x0042d1f0 lw s7, 0x144(sp)              |         s7 = *(var_144h);
    0x0042d1f4 lw s6, 0x140(sp)              |         s6 = *(var_140h);
    0x0042d1f8 lw s5, 0x13c(sp)              |         s5 = *(var_13ch);
    0x0042d1fc lw s4, 0x138(sp)              |         s4 = *(var_138h);
    0x0042d200 lw s3, 0x134(sp)              |         s3 = *(var_134h);
    0x0042d204 lw s2, 0x130(sp)              |         s2 = *(var_130h);
    0x0042d208 lw s1, 0x12c(sp)              |         s1 = *(var_12ch);
    0x0042d20c lw s0, 0x128(sp)              |         s0 = *(var_128h);
    0x0042d210 addiu sp, sp, 0x150           |         
    0x0042d214 jr ra                         |         return v0;
                                             | label_7:
    0x0042d218 addiu s7, s1, 2               |         s7 = s1 + 2;
    0x0042d21c lui fp, 0x47                  |         fp = 0x470000;
    0x0042d220 sw v0, 0x10(sp)               |         *(var_10h) = v0;
                                             |         /* str.size_____ */
    0x0042d224 addiu a0, fp, -0x142c         |         a0 = fp + -0x142c;
    0x0042d228 move a1, s0                   |         a1 = s0;
    0x0042d22c move a2, s4                   |         a2 = s4;
    0x0042d230 move a3, s7                   |         a3 = s7;
    0x0042d234 jal 0x42cacc                  |         fcn_0042cacc ();
    0x0042d238 move v0, zero                 |         v0 = 0;
    0x0042d23c beqz v0, 0x42d1e8             |         
                                             |     } while (v0 == 0);
    0x0042d240 lui a0, 0x47                  |     a0 = "num_aces ";
                                             |     /* str.num_aces_ */
    0x0042d244 addiu a0, a0, -0x1420         |     
    0x0042d248 move a1, s0                   |     a1 = s0;
    0x0042d24c move a2, s4                   |     a2 = s4;
    0x0042d250 addiu a3, s1, 4               |     a3 = s1 + 4;
    0x0042d254 jal 0x42b0d0                  |     fcn_0042b0d0 ();
    0x0042d258 move v0, zero                 |     v0 = 0;
                                             |     if (v0 == 0) {
    0x0042d25c beqz v0, 0x42d1e8             |         goto label_0;
                                             |     }
    0x0042d260 lw v0, (s0)                   |     v0 = *(s0);
    0x0042d264 move a0, s0                   |     a0 = s0;
                                             |     if (v0 != 0) {
    0x0042d268 bnez v0, 0x42d320             |         goto label_8;
                                             |     }
                                             | label_4:
    0x0042d26c lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0042d270 lui s5, 0x47                  |     s5 = 0x470000;
                                             |     if (v0 == 0) {
    0x0042d274 beqz v0, 0x42d2dc             |         goto label_9;
                                             |     }
    0x0042d278 move s3, zero                 |     s3 = 0;
    0x0042d27c move s2, zero                 |     s2 = 0;
                                             |     /* str.ace_list__02d_:_ */
    0x0042d280 addiu s5, s5, -0x1414         |     s5 += -0x1414;
                                             | label_1:
    0x0042d284 move a3, s2                   |     a3 = s2;
    0x0042d288 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x0042d28c addiu a1, zero, 0xff          |     a1 = 0xff;
    0x0042d290 move a2, s5                   |     a2 = s5;
    0x0042d294 jal 0x444430                  |     sym_snprintf ()
    0x0042d298 sll v1, s3, 2                 |     v1 = s3 << 2;
    0x0042d29c sll v0, s3, 4                 |     v0 = s3 << 4;
    0x0042d2a0 addu v0, v1, v0               |     v0 = v1 + v0;
    0x0042d2a4 lw a1, 8(s1)                  |     a1 = *((s1 + 2));
    0x0042d2a8 subu s3, v0, s3               |     __asm ("subu s3, v0, s3");
    0x0042d2ac sll s3, s3, 2                 |     s3 <<= 2;
    0x0042d2b0 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x0042d2b4 addu a1, a1, s3               |     a1 += s3;
    0x0042d2b8 move a2, s0                   |     a2 = s0;
    0x0042d2bc move a3, s4                   |     a3 = s4;
    0x0042d2c0 jal 0x42cea8                  |     fcn_0042cea8 ();
    0x0042d2c4 addiu s2, s2, 1               |     s2++;
                                             |     if (v0 == 0) {
    0x0042d2c8 beqz v0, 0x42d1e8             |         goto label_0;
                                             |     }
    0x0042d2cc lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0042d2d0 sltu v0, s2, v0               |     v0 = (s2 < v0) ? 1 : 0;
    0x0042d2d4 move s3, s2                   |     s3 = s2;
                                             |     if (v0 != 0) {
    0x0042d2d8 bnez v0, 0x42d284             |         goto label_1;
                                             |     }
                                             | label_9:
    0x0042d2dc lw v0, 0x120(sp)              |     v0 = *(var_120h);
    0x0042d2e0 sw s6, 0x14(sp)               |     *(var_14h) = s6;
                                             |     /* str.size_____ */
    0x0042d2e4 addiu a0, fp, -0x142c         |     a0 = fp + -0x142c;
    0x0042d2e8 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0042d2ec move a1, s0                   |     a1 = s0;
    0x0042d2f0 move a2, s4                   |     a2 = s4;
    0x0042d2f4 move a3, s7                   |     a3 = s7;
    0x0042d2f8 jal 0x42cb34                  |     fcn_0042cb34 ();
    0x0042d2fc sltu v0, zero, v0             |     v0 = (0 < v0) ? 1 : 0;
    0x0042d300 b 0x42d1e8                    |     goto label_0;
                                             | label_6:
    0x0042d304 move a0, a2                   |     a0 = a2;
    0x0042d308 addiu a1, zero, 0xc           |     a1 = 0xc;
    0x0042d30c jal 0x42a49c                  |     fcn_0042a49c ();
    0x0042d310 move s1, v0                   |     s1 = v0;
                                             |     if (v0 == 0) {
    0x0042d314 beqz v0, 0x42d1e4             |         goto label_2;
                                             |     }
    0x0042d318 sw v0, (s2)                   |     *(s2) = v0;
    0x0042d31c b 0x42d19c                    |     goto label_3;
                                             | label_8:
    0x0042d320 lw v0, 4(s1)                  |     v0 = *((s1 + 1));
    0x0042d324 addiu v0, v0, 1               |     v0++;
    0x0042d328 sll a1, v0, 2                 |     a1 = v0 << 2;
    0x0042d32c sll v1, v0, 4                 |     v1 = v0 << 4;
    0x0042d330 addu v1, a1, v1               |     v1 = a1 + v1;
    0x0042d334 subu a1, v1, v0               |     __asm ("subu a1, v1, v0");
    0x0042d338 sll a1, a1, 2                 |     a1 <<= 2;
    0x0042d33c jal 0x42a49c                  |     fcn_0042a49c ();
    0x0042d340 sw v0, 8(s1)                  |     *((s1 + 2)) = v0;
                                             |     if (v0 != 0) {
    0x0042d344 bnez v0, 0x42d26c             |         goto label_4;
                                             |     }
    0x0042d348 move v0, zero                 |     v0 = 0;
    0x0042d34c b 0x42d1e8                    |     goto label_0;
                                             | label_5:
    0x0042d350 move v0, zero                 |     v0 = 0;
    0x0042d354 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x42e744 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0042e744 ()                  | void fcn_0042e744 () {
                                             |     if (a1 == 0) {
    0x0042e744 beqz a1, 0x42e89c             |         goto label_3;
                                             |     }
    0x0042e748 nop                           |     
    0x0042e74c addiu sp, sp, -0x140          |     
    0x0042e750 move v0, a0                   |     v0 = a0;
    0x0042e754 sw s2, 0x12c(sp)              |     *(var_12ch) = s2;
    0x0042e758 sw s1, 0x128(sp)              |     *(var_128h) = s1;
    0x0042e75c move s2, a3                   |     s2 = a3;
    0x0042e760 move s1, a1                   |     s1 = a1;
    0x0042e764 move a1, a3                   |     a1 = a3;
    0x0042e768 lui a3, 0x47                  |     a3 = 0x470000;
    0x0042e76c move a0, a2                   |     a0 = a2;
    0x0042e770 sw s0, 0x124(sp)              |     *(var_124h) = s0;
                                             |     /* str.smb_io_dom_sid */
    0x0042e774 addiu a3, a3, -0x10bc         |     a3 += -0x10bc;
    0x0042e778 move s0, a2                   |     s0 = a2;
    0x0042e77c move a2, v0                   |     a2 = v0;
    0x0042e780 sw ra, 0x13c(sp)              |     *(var_13ch) = ra;
    0x0042e784 sw s5, 0x138(sp)              |     *(var_138h) = s5;
    0x0042e788 sw s4, 0x134(sp)              |     *(var_134h) = s4;
    0x0042e78c sw s3, 0x130(sp)              |     *(var_130h) = s3;
    0x0042e790 jal 0x42a264                  |     fcn_0042a264 ();
    0x0042e794 move a0, s0                   |     a0 = s0;
    0x0042e798 jal 0x42ac2c                  |     fcn_0042ac2c ();
    0x0042e79c addiu s2, s2, 1               |     s2++;
                                             |     if (v0 != 0) {
    0x0042e7a0 bnez v0, 0x42e7cc             |         goto label_4;
                                             |     }
                                             | label_0:
    0x0042e7a4 move v0, zero                 |     v0 = 0;
                                             |     do {
                                             | label_1:
    0x0042e7a8 lw ra, 0x13c(sp)              |         ra = *(var_13ch);
    0x0042e7ac lw s5, 0x138(sp)              |         s5 = *(var_138h);
    0x0042e7b0 lw s4, 0x134(sp)              |         s4 = *(var_134h);
    0x0042e7b4 lw s3, 0x130(sp)              |         s3 = *(var_130h);
    0x0042e7b8 lw s2, 0x12c(sp)              |         s2 = *(var_12ch);
    0x0042e7bc lw s1, 0x128(sp)              |         s1 = *(var_128h);
    0x0042e7c0 lw s0, 0x124(sp)              |         s0 = *(var_124h);
    0x0042e7c4 addiu sp, sp, 0x140           |         
    0x0042e7c8 jr ra                         |         return v0;
                                             | label_4:
    0x0042e7cc lui a0, 0x47                  |         a0 = "sid_rev_num";
                                             |         /* str.sid_rev_num */
    0x0042e7d0 addiu a0, a0, -0x10ac         |         
    0x0042e7d4 move a1, s0                   |         a1 = s0;
    0x0042e7d8 move a2, s2                   |         a2 = s2;
    0x0042e7dc move a3, s1                   |         a3 = s1;
    0x0042e7e0 jal 0x42ae3c                  |         fcn_0042ae3c ();
    0x0042e7e4 move v0, zero                 |         v0 = 0;
    0x0042e7e8 beqz v0, 0x42e7a8             |         
                                             |     } while (v0 == 0);
    0x0042e7ec lui a0, 0x47                  |     a0 = "num_auths  ";
                                             |     /* str.num_auths__ */
    0x0042e7f0 addiu a0, a0, -0x10a0         |     
    0x0042e7f4 move a1, s0                   |     a1 = s0;
    0x0042e7f8 move a2, s2                   |     a2 = s2;
    0x0042e7fc addiu a3, s1, 1               |     a3 = s1 + 1;
    0x0042e800 jal 0x42ae3c                  |     fcn_0042ae3c ();
    0x0042e804 lui s4, 0x47                  |     s4 = 0x470000;
                                             |     if (v0 == 0) {
    0x0042e808 beqz v0, 0x42e7a4             |         goto label_0;
                                             |     }
    0x0042e80c move s3, zero                 |     s3 = 0;
                                             |     /* str.id_auth__d__ */
    0x0042e810 addiu s4, s4, -0x1094         |     s4 += -0x1094;
    0x0042e814 addiu s5, zero, 6             |     s5 = 6;
    0x0042e818 move a3, s3                   |     a3 = s3;
                                             | label_2:
    0x0042e81c addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x0042e820 addiu a1, zero, 0xff          |     a1 = 0xff;
    0x0042e824 move a2, s4                   |     a2 = s4;
    0x0042e828 jal 0x444430                  |     sym_snprintf ()
    0x0042e82c addu a3, s1, s3               |     a3 = s1 + s3;
    0x0042e830 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x0042e834 move a1, s0                   |     a1 = s0;
    0x0042e838 move a2, s2                   |     a2 = s2;
    0x0042e83c addiu a3, a3, 2               |     a3 += 2;
    0x0042e840 jal 0x42ae3c                  |     fcn_0042ae3c ();
    0x0042e844 addiu s3, s3, 1               |     s3++;
                                             |     if (v0 == 0) {
    0x0042e848 beqz v0, 0x42e7a8             |         goto label_1;
                                             |     }
    0x0042e84c move a3, s3                   |     a3 = s3;
                                             |     if (s3 != s5) {
    0x0042e850 bne s3, s5, 0x42e81c          |         goto label_2;
                                             |     }
    0x0042e854 lbu v0, 1(s1)                 |     v0 = *((s1 + 1));
    0x0042e858 sltiu v1, v0, 0x10            |     v1 = (v0 < 0x10) ? 1 : 0;
                                             |     if (v1 == 0) {
    0x0042e85c bnez v1, 0x42e870             |         
    0x0042e860 nop                           |         
    0x0042e864 addiu v0, zero, 0xf           |         v0 = 0xf;
    0x0042e868 sb v0, 1(s1)                  |         *((s1 + 1)) = v0;
    0x0042e86c addiu v0, zero, 0xf           |         v0 = 0xf;
                                             |     }
    0x0042e870 addiu s1, s1, 8               |     s1 += 8;
    0x0042e874 lui a1, 0x47                  |     a1 = 0x470000;
    0x0042e878 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x0042e87c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0042e880 move a0, zero                 |     a0 = 0;
                                             |     /* str.sub_auths_ */
    0x0042e884 addiu a1, a1, -0x1084         |     a1 += -0x1084;
    0x0042e888 move a2, s0                   |     a2 = s0;
    0x0042e88c move a3, s2                   |     a3 = s2;
    0x0042e890 jal 0x42bce4                  |     fcn_0042bce4 ();
    0x0042e894 sltu v0, zero, v0             |     v0 = (0 < v0) ? 1 : 0;
    0x0042e898 b 0x42e7a8                    |     goto label_1;
                                             | label_3:
    0x0042e89c move v0, zero                 |     v0 = 0;
    0x0042e8a0 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x437100 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00437100 ()                  | void fcn_00437100 () {
    0x00437100 addiu sp, sp, -0x4d8          |     
    0x00437104 sw s1, 0x4c0(sp)              |     *(var_4c0h) = s1;
    0x00437108 lui s1, 0x4b                  |     s1 = 0x4b0000;
    0x0043710c lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
    0x00437110 sw s0, 0x4bc(sp)              |     *(var_4bch) = s0;
    0x00437114 sw ra, 0x4d4(sp)              |     *(var_4d4h) = ra;
    0x00437118 slti v0, v0, 5                |     v0 = (v0 < 5) ? 1 : 0;
    0x0043711c sw s5, 0x4d0(sp)              |     *(var_4d0h) = s5;
    0x00437120 sw s4, 0x4cc(sp)              |     *(var_4cch) = s4;
    0x00437124 sw s3, 0x4c8(sp)              |     *(var_4c8h) = s3;
    0x00437128 sw s2, 0x4c4(sp)              |     *(var_4c4h) = s2;
    0x0043712c move s0, a0                   |     s0 = a0;
                                             |     if (v0 == 0) {
    0x00437130 beqz v0, 0x437278             |         goto label_5;
                                             |     }
                                             | label_2:
    0x00437134 jal 0x4103a8                  |     fcn_004103a8 ();
    0x00437138 nop                           |     
    0x0043713c move a0, v0                   |     a0 = v0;
    0x00437140 jal 0x487740                  |     fcn_00487740 ();
    0x00437144 addiu v0, v0, 0xe             |     v0 += 0xe;
    0x00437148 sltiu v0, v0, 0x401           |     v0 = (v0 < 0x401) ? 1 : 0;
    0x0043714c lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
                                             |     if (v0 != 0) {
    0x00437150 bnez v0, 0x4371a8             |         goto label_6;
                                             |     }
    0x00437154 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x00437158 bltz v0, 0x43717c             |         goto label_0;
                                             |     }
    0x0043715c lui a2, 0x47                  |     a2 = 0x470000;
    0x00437160 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x00437164 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x00437168 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x0043716c addiu a3, zero, 0xc6          |     a3 = 0xc6;
    0x00437170 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437174 lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 != 0) {
    0x00437178 bnez v0, 0x4372b0             |         goto label_7;
                                             |     }
                                             |     do {
                                             | label_0:
    0x0043717c move s0, zero                 |         s0 = 0;
                                             | label_1:
    0x00437180 lw ra, 0x4d4(sp)              |         ra = *(var_4d4h);
                                             | label_3:
    0x00437184 move v0, s0                   |         v0 = s0;
    0x00437188 lw s5, 0x4d0(sp)              |         s5 = *(var_4d0h);
    0x0043718c lw s4, 0x4cc(sp)              |         s4 = *(var_4cch);
    0x00437190 lw s3, 0x4c8(sp)              |         s3 = *(var_4c8h);
    0x00437194 lw s2, 0x4c4(sp)              |         s2 = *(var_4c4h);
    0x00437198 lw s1, 0x4c0(sp)              |         s1 = *(var_4c0h);
    0x0043719c lw s0, 0x4bc(sp)              |         s0 = *(var_4bch);
    0x004371a0 addiu sp, sp, 0x4d8           |         
    0x004371a4 jr ra                         |         return v0;
                                             | label_6:
    0x004371a8 jal 0x4103a8                  |         fcn_004103a8 ();
    0x004371ac nop                           |         
    0x004371b0 move a1, v0                   |         a1 = v0;
    0x004371b4 addiu a0, sp, 0x18            |         a0 = sp + 0x18;
    0x004371b8 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x004371bc jal 0x4461f8                  |         fcn_004461f8 ();
    0x004371c0 lui a1, 0x46                  |         a1 = 0x460000;
    0x004371c4 addiu a0, sp, 0x18            |         a0 = sp + 0x18;
    0x004371c8 addiu a1, a1, -0x1f78         |         a1 += -0x1f78;
    0x004371cc addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x004371d0 jal 0x4463d8                  |         fcn_004463d8 ();
    0x004371d4 lui a1, 0x47                  |         a1 = "codepage.";
                                             |         /* str.codepage. */
    0x004371d8 addiu a1, a1, 0x600           |         
    0x004371dc addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x004371e0 addiu a0, sp, 0x18            |         a0 = sp + 0x18;
    0x004371e4 jal 0x4463d8                  |         fcn_004463d8 ();
    0x004371e8 addiu a0, sp, 0x18            |         a0 = sp + 0x18;
    0x004371ec jal 0x487740                  |         fcn_00487740 ();
    0x004371f0 nor a1, zero, v0              |         __asm ("nor a1, zero, v0");
    0x004371f4 addiu v1, sp, 0x18            |         v1 = sp + 0x18;
    0x004371f8 lui a2, 0x47                  |         a2 = 0x470000;
    0x004371fc addu a0, v1, v0               |         a0 = v1 + v0;
    0x00437200 addiu a1, a1, 0x3ff           |         a1 += 0x3ff;
                                             |         /* str._03d */
    0x00437204 addiu a2, a2, 0x60c           |         a2 += 0x60c;
    0x00437208 move a3, s0                   |         a3 = s0;
    0x0043720c jal 0x444430                  |         sym_snprintf ()
    0x00437210 addiu a0, sp, 0x18            |         a0 = sp + 0x18;
    0x00437214 addiu a1, sp, 0x418           |         a1 = sp + 0x418;
    0x00437218 jal 0x43dff4                  |         fcn_0043dff4 ();
    0x0043721c lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
                                             |         if (v0 != 0) {
    0x00437220 bnez v0, 0x4372e4             |             goto label_8;
                                             |         }
    0x00437224 lw s2, 0x44c(sp)              |         s2 = *(var_44ch);
    0x00437228 addiu s3, s2, -8              |         s3 = s2 + -8;
    0x0043722c sltiu v0, s3, 0x401           |         v0 = (s3 < 0x401) ? 1 : 0;
    0x00437230 lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
                                             |         if (v0 != 0) {
    0x00437234 bnez v0, 0x437320             |             goto label_9;
                                             |         }
    0x00437238 lui a1, 0x47                  |         a1 = 0x470000;
    0x0043723c bltz v0, 0x43717c             |         
                                             |     } while (v0 < 0);
    0x00437240 lui a2, 0x47                  |     a2 = 0x470000;
    0x00437244 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x00437248 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x0043724c addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x00437250 addiu a3, zero, 0xe3          |     a3 = 0xe3;
    0x00437254 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437258 lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 == 0) {
    0x0043725c beqz v0, 0x43717c             |         goto label_0;
                                             |     }
                                             |     /* str.load_client_codepage:_file__s_is_an_incorrect_size_for_a_code_page_file__size_d_._n */
    0x00437260 addiu a0, a0, 0x648           |     a0 += 0x648;
    0x00437264 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00437268 move a2, s2                   |     a2 = s2;
    0x0043726c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00437270 move s0, zero                 |     s0 = 0;
    0x00437274 b 0x437180                    |     goto label_1;
                                             | label_5:
    0x00437278 lui a1, 0x47                  |     a1 = 0x470000;
    0x0043727c lui a2, 0x47                  |     a2 = 0x470000;
    0x00437280 addiu a0, zero, 5             |     a0 = 5;
                                             |     /* str.lib_charset.c */
    0x00437284 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x00437288 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x0043728c addiu a3, zero, 0xc2          |     a3 = 0xc2;
    0x00437290 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437294 lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 == 0) {
    0x00437298 beqz v0, 0x437134             |         goto label_2;
                                             |     }
                                             |     /* str.load_client_codepage:_loading_codepage__d._n */
    0x0043729c addiu a0, a0, 0x5a0           |     a0 += 0x5a0;
    0x004372a0 move a1, s0                   |     a1 = s0;
    0x004372a4 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004372a8 b 0x437134                    |     goto label_2;
    0x004372ac nop                           |     
                                             |     /* str.load_client_codepage:_filename_too_long_to_load_n */
                                             | label_7:
    0x004372b0 addiu a0, a0, 0x5cc           |     a0 += 0x5cc;
    0x004372b4 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004372b8 lw ra, 0x4d4(sp)              |     ra = *(var_4d4h);
    0x004372bc move s0, zero                 |     s0 = 0;
    0x004372c0 move v0, s0                   |     v0 = s0;
    0x004372c4 lw s5, 0x4d0(sp)              |     s5 = *(var_4d0h);
    0x004372c8 lw s4, 0x4cc(sp)              |     s4 = *(var_4cch);
    0x004372cc lw s3, 0x4c8(sp)              |     s3 = *(var_4c8h);
    0x004372d0 lw s2, 0x4c4(sp)              |     s2 = *(var_4c4h);
    0x004372d4 lw s1, 0x4c0(sp)              |     s1 = *(var_4c0h);
    0x004372d8 lw s0, 0x4bc(sp)              |     s0 = *(var_4bch);
    0x004372dc addiu sp, sp, 0x4d8           |     
    0x004372e0 jr ra                         |     return v0;
                                             | label_8:
    0x004372e4 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x004372e8 bltz v0, 0x43717c             |         goto label_0;
                                             |     }
    0x004372ec lui a2, 0x47                  |     a2 = 0x470000;
    0x004372f0 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x004372f4 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x004372f8 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x004372fc addiu a3, zero, 0xd5          |     a3 = 0xd5;
    0x00437300 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437304 lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 == 0) {
    0x00437308 beqz v0, 0x43717c             |         goto label_0;
                                             |     }
                                             |     /* str.load_client_codepage:_filename__s_does_not_exist._n */
    0x0043730c addiu a0, a0, 0x614           |     a0 += 0x614;
    0x00437310 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00437314 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00437318 move s0, zero                 |     s0 = 0;
    0x0043731c b 0x437180                    |     goto label_1;
                                             | label_9:
    0x00437320 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00437324 move a1, zero                 |     a1 = 0;
    0x00437328 jal 0x487750                  |     fcn_00487750 ();
    0x0043732c move s4, v0                   |     s4 = v0;
    0x00437330 addiu v0, zero, -1            |     v0 = -1;
    0x00437334 move a0, s4                   |     a0 = s4;
                                             |     if (s4 != v0) {
    0x00437338 bne s4, v0, 0x437394          |         goto label_10;
                                             |     }
    0x0043733c lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
    0x00437340 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x00437344 bltz v0, 0x43717c             |         goto label_0;
                                             |     }
    0x00437348 lui a2, 0x47                  |     a2 = 0x470000;
    0x0043734c move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x00437350 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x00437354 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x00437358 addiu a3, zero, 0xef          |     a3 = 0xef;
    0x0043735c jal 0x4381b8                  |     fcn_004381b8 ();
                                             |     if (v0 == 0) {
    0x00437360 beqz v0, 0x43717c             |         goto label_0;
                                             |     }
    0x00437364 nop                           |     
    0x00437368 move s0, zero                 |     s0 = 0;
    0x0043736c jal 0x4876a0                  |     fcn_004876a0 ();
    0x00437370 lw a0, (v0)                   |     a0 = *(v0);
    0x00437374 jal 0x486ee0                  |     fcn_00486ee0 ();
    0x00437378 lui a0, 0x47                  |     a0 = "load_client_codepage: cannot open file %s. Error was %s\n";
                                             |     /* str.load_client_codepage:_cannot_open_file__s._Error_was__s_n */
    0x0043737c addiu a0, a0, 0x69c           |     
    0x00437380 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00437384 move a2, v0                   |     a2 = v0;
    0x00437388 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x0043738c lw ra, 0x4d4(sp)              |     ra = *(var_4d4h);
    0x00437390 b 0x437184                    |     goto label_3;
                                             | label_10:
    0x00437394 addiu a1, sp, 0x4b0           |     a1 = sp + 0x4b0;
    0x00437398 addiu a2, zero, 8             |     a2 = 8;
    0x0043739c jal 0x487360                  |     fcn_00487360 ();
    0x004373a0 addiu v1, zero, 8             |     v1 = 8;
    0x004373a4 lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
                                             |     if (v0 == v1) {
    0x004373a8 beq v0, v1, 0x4373e4          |         goto label_11;
                                             |     }
    0x004373ac lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x004373b0 bltz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x004373b4 lui a2, 0x47                  |     a2 = 0x470000;
    0x004373b8 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x004373bc addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x004373c0 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x004373c4 addiu a3, zero, 0xf6          |     a3 = 0xf6;
    0x004373c8 jal 0x4381b8                  |     fcn_004381b8 ();
                                             |     if (v0 != 0) {
    0x004373cc bnez v0, 0x437450             |         goto label_12;
                                             |     }
    0x004373d0 nop                           |     
                                             |     do {
                                             | label_4:
    0x004373d4 move a0, s4                   |         a0 = s4;
    0x004373d8 jal 0x487800                  |         fcn_00487800 ();
    0x004373dc move s0, zero                 |         s0 = 0;
    0x004373e0 b 0x437180                    |         goto label_1;
                                             | label_11:
    0x004373e4 lbu v1, 0x4b1(sp)             |         v1 = *(var_4b1h);
    0x004373e8 lbu v0, 0x4b0(sp)             |         v0 = *(var_4b0h);
    0x004373ec sll v1, v1, 8                 |         v1 <<= 8;
    0x004373f0 or v1, v1, v0                 |         v1 |= v0;
    0x004373f4 addiu v0, zero, 1             |         v0 = 1;
    0x004373f8 lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
                                             |         if (v1 == v0) {
    0x004373fc beq v1, v0, 0x43747c          |             goto label_13;
                                             |         }
    0x00437400 lui a1, 0x47                  |         a1 = 0x470000;
    0x00437404 bltz v0, 0x4373d4             |         
                                             |     } while (v0 < 0);
    0x00437408 lui a2, 0x47                  |     a2 = 0x470000;
    0x0043740c move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x00437410 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x00437414 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x00437418 addiu a3, zero, 0x100         |     a3 = 0x100;
    0x0043741c jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437420 lbu v0, 0x4b0(sp)             |     v0 = *(var_4b0h);
                                             |     if (v0 == 0) {
    0x00437424 beqz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x00437428 lbu a3, 0x4b1(sp)             |     a3 = *(var_4b1h);
    0x0043742c lui a0, 0x47                  |     a0 = 0x470000;
    0x00437430 sll a3, a3, 8                 |     a3 <<= 8;
                                             |     /* str.load_client_codepage:_filename__s_has_incorrect_version_id._Needed__hu__got__hu._n */
    0x00437434 addiu a0, a0, 0x720           |     a0 += 0x720;
    0x00437438 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x0043743c addiu a2, zero, 1             |     a2 = 1;
    0x00437440 or a3, a3, v0                 |     a3 |= v0;
    0x00437444 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00437448 b 0x4373d4                    |     goto label_4;
    0x0043744c nop                           |     
                                             | label_12:
    0x00437450 jal 0x4876a0                  |     fcn_004876a0 ();
    0x00437454 nop                           |     
    0x00437458 lw a0, (v0)                   |     a0 = *(v0);
    0x0043745c jal 0x486ee0                  |     fcn_00486ee0 ();
    0x00437460 lui a0, 0x47                  |     a0 = "load_client_codepage: cannot read header from file %s. Error was %s\n";
                                             |     /* str.load_client_codepage:_cannot_read_header_from_file__s._Error_was__s_n */
    0x00437464 addiu a0, a0, 0x6d8           |     
    0x00437468 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x0043746c move a2, v0                   |     a2 = v0;
    0x00437470 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00437474 b 0x4373d4                    |     goto label_4;
    0x00437478 nop                           |     
                                             | label_13:
    0x0043747c lbu v1, 0x4b3(sp)             |     v1 = *(var_4b3h);
    0x00437480 lbu v0, 0x4b2(sp)             |     v0 = *(var_4b2h);
    0x00437484 andi s0, s0, 0xffff           |     s0 &= 0xffff;
    0x00437488 sll v1, v1, 8                 |     v1 <<= 8;
    0x0043748c or v0, v1, v0                 |     v0 = v1 | v0;
    0x00437490 lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
                                             |     if (v0 == s0) {
    0x00437494 beq v0, s0, 0x4374e8          |         goto label_14;
                                             |     }
    0x00437498 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x0043749c bltz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x004374a0 lui a2, 0x47                  |     a2 = 0x470000;
    0x004374a4 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x004374a8 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x004374ac addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x004374b0 addiu a3, zero, 0x10a         |     a3 = 0x10a;
    0x004374b4 jal 0x4381b8                  |     fcn_004381b8 ();
    0x004374b8 lbu v0, 0x4b2(sp)             |     v0 = *(var_4b2h);
                                             |     if (v0 == 0) {
    0x004374bc beqz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x004374c0 lbu a3, 0x4b3(sp)             |     a3 = *(var_4b3h);
    0x004374c4 lui a0, 0x47                  |     a0 = 0x470000;
    0x004374c8 sll a3, a3, 8                 |     a3 <<= 8;
                                             |     /* str.load_client_codepage:_filename__s_has_incorrect_codepage._Needed__hu__got__hu._n */
    0x004374cc addiu a0, a0, 0x774           |     a0 += 0x774;
    0x004374d0 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x004374d4 move a2, s0                   |     a2 = s0;
    0x004374d8 or a3, a3, v0                 |     a3 |= v0;
    0x004374dc jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004374e0 b 0x4373d4                    |     goto label_4;
    0x004374e4 nop                           |     
                                             | label_14:
    0x004374e8 lbu a0, 0x4b7(sp)             |     a0 = *(var_4b7h);
    0x004374ec lbu s5, 0x4b5(sp)             |     s5 = *(var_4b5h);
    0x004374f0 lbu v0, 0x4b6(sp)             |     v0 = *(var_4b6h);
    0x004374f4 lbu v1, 0x4b4(sp)             |     v1 = *(var_4b4h);
    0x004374f8 sll a0, a0, 8                 |     a0 <<= 8;
    0x004374fc sll s5, s5, 8                 |     s5 <<= 8;
    0x00437500 or v0, a0, v0                 |     v0 = a0 | v0;
    0x00437504 or s5, s5, v1                 |     s5 |= v1;
    0x00437508 sll v0, v0, 0x10              |     v0 <<= 0x10;
    0x0043750c or s5, s5, v0                 |     s5 |= v0;
    0x00437510 lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
                                             |     if (s5 == s3) {
    0x00437514 beq s5, s3, 0x437580          |         goto label_15;
                                             |     }
    0x00437518 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x0043751c bltz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x00437520 lui a2, 0x47                  |     a2 = 0x470000;
    0x00437524 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x00437528 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x0043752c addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x00437530 addiu a3, zero, 0x113         |     a3 = 0x113;
    0x00437534 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437538 lbu a0, 0x4b7(sp)             |     a0 = *(var_4b7h);
                                             |     if (v0 == 0) {
    0x0043753c beqz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x00437540 lbu a3, 0x4b5(sp)             |     a3 = *(var_4b5h);
    0x00437544 lbu v0, 0x4b6(sp)             |     v0 = *(var_4b6h);
    0x00437548 lbu v1, 0x4b4(sp)             |     v1 = *(var_4b4h);
    0x0043754c sll a0, a0, 8                 |     a0 <<= 8;
    0x00437550 or v0, a0, v0                 |     v0 = a0 | v0;
    0x00437554 sll a3, a3, 8                 |     a3 <<= 8;
    0x00437558 or a3, a3, v1                 |     a3 |= v1;
    0x0043755c sll v0, v0, 0x10              |     v0 <<= 0x10;
    0x00437560 lui a0, 0x47                  |     a0 = "load_client_codepage: filename %s has incorrect size headers. Needed %u, got %u.\n";
                                             |     /* str.load_client_codepage:_filename__s_has_incorrect_size_headers._Needed__u__got__u._n */
    0x00437564 addiu a0, a0, 0x7c4           |     
    0x00437568 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x0043756c move a2, s3                   |     a2 = s3;
    0x00437570 or a3, a3, v0                 |     a3 |= v0;
    0x00437574 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00437578 b 0x4373d4                    |     goto label_4;
    0x0043757c nop                           |     
                                             | label_15:
    0x00437580 andi v0, s5, 3                |     v0 = s5 & 3;
    0x00437584 lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
                                             |     if (v0 == 0) {
    0x00437588 beqz v0, 0x4375c8             |         goto label_16;
                                             |     }
    0x0043758c lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x00437590 bltz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x00437594 lui a2, 0x47                  |     a2 = 0x470000;
    0x00437598 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x0043759c addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x004375a0 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x004375a4 addiu a3, zero, 0x11d         |     a3 = 0x11d;
    0x004375a8 jal 0x4381b8                  |     fcn_004381b8 ();
    0x004375ac lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 == 0) {
    0x004375b0 beqz v0, 0x4373d4             |         goto label_4;
                                             |     }
                                             |     /* str.load_client_codepage:_filename__s_has_a_codepage_size_not_a_multiple_of_4._n */
    0x004375b4 addiu a0, a0, 0x818           |     a0 += 0x818;
    0x004375b8 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x004375bc jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004375c0 b 0x4373d4                    |     goto label_4;
    0x004375c4 nop                           |     
                                             | label_16:
    0x004375c8 addiu a0, s2, -4              |     a0 = s2 + -4;
    0x004375cc jal 0x487040                  |     fcn_00487040 ();
    0x004375d0 move s0, v0                   |     s0 = v0;
                                             |     if (v0 != 0) {
    0x004375d4 beqz v0, 0x43767c             |         
    0x004375d8 move a0, s4                   |         a0 = s4;
    0x004375dc move a1, v0                   |         a1 = v0;
    0x004375e0 move a2, s5                   |         a2 = s5;
    0x004375e4 jal 0x487360                  |         fcn_00487360 ();
    0x004375e8 lw v0, -0x2b40(s1)            |         v0 = *((s1 - 2768));
                                             |         if (s5 != v0) {
    0x004375ec beq s5, v0, 0x437658          |             
    0x004375f0 lui a1, 0x47                  |             a1 = 0x470000;
                                             |             if (v0 >= 0) {
    0x004375f4 bltz v0, 0x43763c             |                 
    0x004375f8 lui a2, 0x47                  |                 a2 = 0x470000;
    0x004375fc move a0, zero                 |                 a0 = 0;
                                             |                 /* str.lib_charset.c */
    0x00437600 addiu a1, a1, 0x590           |                 a1 += 0x590;
                                             |                 /* str.load_client_codepage */
    0x00437604 addiu a2, a2, 0xa04           |                 a2 += 0xa04;
    0x00437608 addiu a3, zero, 0x12b         |                 a3 = 0x12b;
    0x0043760c jal 0x4381b8                  |                 fcn_004381b8 ();
                                             |                 if (v0 == 0) {
    0x00437610 beqz v0, 0x43763c             |                     goto label_17;
                                             |                 }
    0x00437614 nop                           |                 
    0x00437618 jal 0x4876a0                  |                 fcn_004876a0 ();
    0x0043761c nop                           |                 
    0x00437620 lw a0, (v0)                   |                 a0 = *(v0);
    0x00437624 jal 0x486ee0                  |                 fcn_00486ee0 ();
    0x00437628 lui a0, 0x47                  |                 a0 = "load_client_codepage: read fail on file %s. Error was %s.\n";
                                             |                 /* str.load_client_codepage:_read_fail_on_file__s._Error_was__s._n */
    0x0043762c addiu a0, a0, 0x888           |                 
    0x00437630 addiu a1, sp, 0x18            |                 a1 = sp + 0x18;
    0x00437634 move a2, v0                   |                 a2 = v0;
    0x00437638 jal 0x437cc4                  |                 fcn_00437cc4 ();
                                             |             }
                                             | label_17:
    0x0043763c move a0, s4                   |             a0 = s4;
    0x00437640 jal 0x487800                  |             fcn_00487800 ();
    0x00437644 move a0, s0                   |             a0 = s0;
    0x00437648 move s0, zero                 |             s0 = 0;
    0x0043764c jal 0x487830                  |             fcn_00487830 ();
    0x00437650 lw ra, 0x4d4(sp)              |             ra = *(var_4d4h);
    0x00437654 b 0x437184                    |             goto label_3;
                                             |         }
    0x00437658 addu s5, s0, s5               |         s5 = s0 + s5;
    0x0043765c sb zero, (s5)                 |         *(s5) = 0;
    0x00437660 sb zero, 1(s5)                |         *((s5 + 1)) = 0;
    0x00437664 sb zero, 2(s5)                |         *((s5 + 2)) = 0;
    0x00437668 sb zero, 3(s5)                |         *((s5 + 3)) = 0;
    0x0043766c move a0, s4                   |         a0 = s4;
    0x00437670 jal 0x487800                  |         fcn_00487800 ();
    0x00437674 lw ra, 0x4d4(sp)              |         ra = *(var_4d4h);
    0x00437678 b 0x437184                    |         goto label_3;
                                             |     }
    0x0043767c lw v0, -0x2b40(s1)            |     v0 = *((s1 - 2768));
    0x00437680 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 < 0) {
    0x00437684 bltz v0, 0x4373d4             |         goto label_4;
                                             |     }
    0x00437688 lui a2, 0x47                  |     a2 = 0x470000;
    0x0043768c move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_charset.c */
    0x00437690 addiu a1, a1, 0x590           |     a1 += 0x590;
                                             |     /* str.load_client_codepage */
    0x00437694 addiu a2, a2, 0xa04           |     a2 += 0xa04;
    0x00437698 addiu a3, zero, 0x124         |     a3 = 0x124;
    0x0043769c jal 0x4381b8                  |     fcn_004381b8 ();
    0x004376a0 lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 == 0) {
    0x004376a4 beqz v0, 0x4373d4             |         goto label_4;
                                             |     }
                                             |     /* str.load_client_codepage:_malloc_fail._n */
    0x004376a8 addiu a0, a0, 0x864           |     a0 += 0x864;
    0x004376ac jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004376b0 b 0x4373d4                    |     goto label_4;
    0x004376b4 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x437e54 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00437e54 ()                  | void fcn_00437e54 () {
    0x00437e54 addiu sp, sp, -0x4c0          |     
    0x00437e58 sw ra, 0x4bc(sp)              |     *(var_4bch) = ra;
    0x00437e5c sw s2, 0x4b8(sp)              |     *(var_4b8h) = s2;
    0x00437e60 sw s1, 0x4b4(sp)              |     *(var_4b4h) = s1;
    0x00437e64 sw s0, 0x4b0(sp)              |     *(var_4b0h) = s0;
    0x00437e68 jal 0x486ef0                  |     fcn_00486ef0 ();
    0x00437e6c lw ra, 0x4bc(sp)              |     ra = *(var_4bch);
                                             |     if (v0 != 0) {
    0x00437e70 bnez v0, 0x437e88             |         goto label_5;
                                             |     }
    0x00437e74 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00437e78 lw v0, 0x19bc(v0)             |     v0 = *((v0 + 1647));
                                             |     if (v0 == 0) {
    0x00437e7c beqz v0, 0x437e9c             |         goto label_6;
                                             |     }
    0x00437e80 nop                           |     
                                             | label_0:
    0x00437e84 lw ra, 0x4bc(sp)              |     ra = *(var_4bch);
                                             |     do {
                                             | label_5:
    0x00437e88 lw s2, 0x4b8(sp)              |         s2 = *(var_4b8h);
    0x00437e8c lw s1, 0x4b4(sp)              |         s1 = *(var_4b4h);
    0x00437e90 lw s0, 0x4b0(sp)              |         s0 = *(var_4b0h);
    0x00437e94 addiu sp, sp, 0x4c0           |         
    0x00437e98 jr ra                         |         return v0;
                                             | label_6:
    0x00437e9c jal 0x437c54                  |         fcn_00437c54 ();
    0x00437ea0 nop                           |         
    0x00437ea4 lw ra, 0x4bc(sp)              |         ra = *(var_4bch);
    0x00437ea8 beqz v0, 0x437e88             |         
                                             |     } while (v0 == 0);
    0x00437eac lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x00437eb0 jal 0x410690                  |     fcn_00410690 ();
    0x00437eb4 lw a0, 0x19b4(s0)             |     a0 = *((s0 + 1645));
    0x00437eb8 move s1, v0                   |     s1 = v0;
    0x00437ebc jal 0x487700                  |     fcn_00487700 ();
    0x00437ec0 move a0, v0                   |     a0 = v0;
    0x00437ec4 addiu a1, sp, 0x418           |     a1 = sp + 0x418;
    0x00437ec8 jal 0x43e040                  |     fcn_0043e040 ();
    0x00437ecc lw v0, 0x19b4(s0)             |     v0 = *((s0 + 1645));
                                             |     if (v0 == 0) {
    0x00437ed0 bnez v0, 0x437eec             |         
    0x00437ed4 lw v0, 0x44c(sp)              |         v0 = *(var_44ch);
    0x00437ed8 sll s1, s1, 0xa               |         s1 <<= 0xa;
    0x00437edc slt v0, s1, v0                |         v0 = (s1 < v0) ? 1 : 0;
                                             |         if (v0 != 0) {
    0x00437ee0 bnez v0, 0x437f6c             |             goto label_7;
                                             |         }
    0x00437ee4 nop                           |         
                                             | label_4:
    0x00437ee8 lw v0, 0x19b4(s0)             |         v0 = *((s0 + 1645));
                                             |     }
                                             | label_3:
    0x00437eec lui a0, 0x47                  |     a0 = 0x470000;
    0x00437ef0 beqz v0, 0x437f04             |     
                                             |     while (v0 < 0) {
    0x00437ef4 lui v0, 0x4a                  |         v0 = 0x4a0000;
                                             | label_1:
    0x00437ef8 sw zero, 0x19c0(v0)           |         *((v0 + 1648)) = 0;
    0x00437efc b 0x437e84                    |         goto label_0;
                                             | label_2:
    0x00437f00 lui a0, 0x47                  |         a0 = 0x470000;
    0x00437f04 lui a1, 0x46                  |         a1 = 0x460000;
                                             |         /* str._dev_console */
    0x00437f08 addiu a0, a0, 0xa28           |         a0 += 0xa28;
    0x00437f0c addiu a1, a1, 0x14ec          |         a1 += 0x14ec;
    0x00437f10 jal 0x43e184                  |         fcn_0043e184 ();
    0x00437f14 sw v0, 0x19b4(s0)             |         *((s0 + 1645)) = v0;
                                             |         if (v0 == 0) {
    0x00437f18 beqz v0, 0x437fd8             |             goto label_8;
                                             |         }
    0x00437f1c lui v0, 0x4b                  |         v0 = 0x4b0000;
    0x00437f20 lw v0, -0x2b40(v0)            |         v0 = *((v0 - 2768));
    0x00437f24 lui a2, 0x47                  |         a2 = 0x470000;
    0x00437f28 bltz v0, 0x437ef4             |         
                                             |     }
    0x00437f2c lui a1, 0x47                  |     a1 = 0x470000;
    0x00437f30 move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_debug.c */
    0x00437f34 addiu a1, a1, 0xa40           |     a1 += 0xa40;
                                             |     /* str.check_log_size */
    0x00437f38 addiu a2, a2, 0xbf4           |     a2 += 0xbf4;
    0x00437f3c addiu a3, zero, 0x1c3         |     a3 = 0x1c3;
    0x00437f40 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00437f44 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (v0 == 0) {
    0x00437f48 beqz v0, 0x437ef8             |         goto label_1;
                                             |     }
    0x00437f4c lui a0, 0x47                  |     a0 = 0x470000;
    0x00437f50 lui a1, 0x4a                  |     a1 = 0x4a0000;
                                             |     /* str.check_log_size:_open_of_debug_file__s_failed___using_console._n */
    0x00437f54 addiu a0, a0, 0xa4c           |     a0 += 0xa4c;
    0x00437f58 addiu a1, a1, 0x15b4          |     a1 += 0x15b4;
    0x00437f5c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00437f60 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00437f64 sw zero, 0x19c0(v0)           |     *((v0 + 1648)) = 0;
    0x00437f68 b 0x437e84                    |     goto label_0;
                                             | label_7:
    0x00437f6c jal 0x43853c                  |     fcn_0043853c ();
    0x00437f70 nop                           |     
    0x00437f74 lw v0, 0x19b4(s0)             |     v0 = *((s0 + 1645));
    0x00437f78 lui s2, 0x4a                  |     s2 = 0x4a0000;
                                             |     if (v0 == 0) {
    0x00437f7c beqz v0, 0x437f00             |         goto label_2;
                                             |     }
    0x00437f80 addiu a0, s2, 0x15b4          |     a0 = s2 + 0x15b4;
    0x00437f84 jal 0x44d784                  |     fcn_0044d784 ();
    0x00437f88 slt v0, s1, v0                |     v0 = (s1 < v0) ? 1 : 0;
    0x00437f8c lw v0, 0x19b4(s0)             |     v0 = *((s0 + 1645));
                                             |     if (v0 == 0) {
    0x00437f90 beqz v0, 0x437eec             |         goto label_3;
                                             |     }
    0x00437f94 lui a2, 0x47                  |     a2 = "%s.old";
                                             |     /* str._s.old */
    0x00437f98 addiu a2, a2, 0xa38           |     
    0x00437f9c addiu a3, s2, 0x15b4          |     a3 = s2 + 0x15b4;
    0x00437fa0 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00437fa4 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
    0x00437fa8 jal 0x444430                  |     sym_snprintf ()
    0x00437fac addiu a0, s2, 0x15b4          |     a0 = s2 + 0x15b4;
    0x00437fb0 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00437fb4 jal 0x4871f0                  |     fcn_004871f0 ();
    0x00437fb8 jal 0x43853c                  |     fcn_0043853c ();
    0x00437fbc nop                           |     
    0x00437fc0 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
                                             |     if (v0 != 0) {
    0x00437fc4 bnez v0, 0x437ee8             |         goto label_4;
                                             |     }
    0x00437fc8 addiu a1, s2, 0x15b4          |     a1 = s2 + 0x15b4;
    0x00437fcc jal 0x4871f0                  |     fcn_004871f0 ();
    0x00437fd0 lw v0, 0x19b4(s0)             |     v0 = *((s0 + 1645));
    0x00437fd4 b 0x437eec                    |     goto label_3;
                                             | label_8:
    0x00437fd8 jal 0x487190                  |     fcn_00487190 ();
    0x00437fdc nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x4381b8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.004381b8 ()              | void fcn_004381b8 () {
    0x004381b8 addiu sp, sp, -0x120      |     
    0x004381bc sw s5, 0x10c(sp)          |     *(var_10ch) = s5;
    0x004381c0 sw s4, 0x108(sp)          |     *(var_108h) = s4;
    0x004381c4 sw s3, 0x104(sp)          |     *(var_104h) = s3;
    0x004381c8 sw s2, 0x100(sp)          |     *(var_100h) = s2;
    0x004381cc sw s1, 0xfc(sp)           |     *(var_fch) = s1;
    0x004381d0 sw ra, 0x11c(sp)          |     *(var_11ch) = ra;
    0x004381d4 sw fp, 0x118(sp)          |     *(var_118h) = fp;
    0x004381d8 sw s7, 0x114(sp)          |     *(var_114h) = s7;
    0x004381dc sw s6, 0x110(sp)          |     *(var_110h) = s6;
    0x004381e0 sw s0, 0xf8(sp)           |     *(var_f8h) = s0;
    0x004381e4 move s2, a0               |     s2 = a0;
    0x004381e8 move s5, a1               |     s5 = a1;
    0x004381ec move s4, a2               |     s4 = a2;
    0x004381f0 move s3, a3               |     s3 = a3;
    0x004381f4 jal 0x4876a0              |     fcn_004876a0 ();
    0x004381f8 lui v1, 0x4a              |     v1 = 0x4a0000;
    0x004381fc lw v1, 0x19c4(v1)         |     v1 = *((v1 + 1649));
    0x00438200 lw s1, (v0)               |     s1 = *(v0);
                                         |     if (v1 == 0) {
    0x00438204 bnez v1, 0x43821c         |         
    0x00438208 move s0, v0               |         s0 = v0;
    0x0043820c lui v0, 0x4a              |         v0 = 0x4a0000;
    0x00438210 lw v0, 0x19b8(v0)         |         v0 = *((v0 + 1646));
                                         |         if (v0 == 0) {
    0x00438214 beqz v0, 0x438250         |             goto label_3;
                                         |         }
    0x00438218 nop                       |         
                                         |     }
    0x0043821c lw ra, 0x11c(sp)          |     ra = *(var_11ch);
    0x00438220 lw fp, 0x118(sp)          |     fp = *(var_118h);
    0x00438224 lw s7, 0x114(sp)          |     s7 = *(var_114h);
    0x00438228 lw s6, 0x110(sp)          |     s6 = *(var_110h);
    0x0043822c lw s5, 0x10c(sp)          |     s5 = *(var_10ch);
    0x00438230 lw s4, 0x108(sp)          |     s4 = *(var_108h);
    0x00438234 lw s3, 0x104(sp)          |     s3 = *(var_104h);
    0x00438238 lw s2, 0x100(sp)          |     s2 = *(var_100h);
    0x0043823c lw s1, 0xfc(sp)           |     s1 = *(var_fch);
    0x00438240 lw s0, 0xf8(sp)           |     s0 = *(var_f8h);
    0x00438244 addiu v0, zero, 1         |     v0 = 1;
    0x00438248 addiu sp, sp, 0x120       |     
    0x0043824c jr ra                     |     return v0;
                                         | label_3:
    0x00438250 jal 0x410558              |     fcn_00410558 ();
    0x00438254 nop                       |     
                                         |     if (v0 == 0) {
    0x00438258 beqz v0, 0x4382f0         |         goto label_4;
                                         |     }
    0x0043825c nop                       |     
                                         |     do {
    0x00438260 sb zero, 0x28(sp)         |         *(s) = 0;
    0x00438264 jal 0x410570              |         fcn_00410570 ();
                                         |         if (v0 != 0) {
    0x00438268 bnez v0, 0x438368         |             goto label_5;
                                         |         }
    0x0043826c nop                       |         
    0x00438270 addiu s6, sp, 0x28        |         s6 = sp + 0x28;
                                         | label_2:
    0x00438274 jal 0x41057c              |         fcn_0041057c ();
    0x00438278 nop                       |         
                                         |         if (v0 != 0) {
    0x0043827c bnez v0, 0x438308         |             goto label_6;
                                         |         }
    0x00438280 nop                       |         
                                         | label_1:
    0x00438284 jal 0x410564              |         fcn_00410564 ();
    0x00438288 nop                       |         
    0x0043828c move a0, v0               |         a0 = v0;
    0x00438290 jal 0x43fbd4              |         fcn_0043fbd4 ();
    0x00438294 lui a0, 0x47              |         a0 = 0x470000;
    0x00438298 sw s5, 0x10(sp)           |         *(var_10h) = s5;
    0x0043829c sw s4, 0x14(sp)           |         *(var_14h) = s4;
    0x004382a0 sw s3, 0x18(sp)           |         *(var_18h) = s3;
                                         |         /* str.__s___d_s___s:_s__d__n */
    0x004382a4 addiu a0, a0, 0xabc       |         a0 += 0xabc;
    0x004382a8 move a1, v0               |         a1 = v0;
    0x004382ac move a2, s2               |         a2 = s2;
    0x004382b0 move a3, s6               |         a3 = s6;
    0x004382b4 jal 0x437fe0              |         fcn_00437fe0 ();
    0x004382b8 sw s1, (s0)               |         *(s0) = s1;
                                         | label_0:
    0x004382bc lw ra, 0x11c(sp)          |         ra = *(var_11ch);
    0x004382c0 lw fp, 0x118(sp)          |         fp = *(var_118h);
    0x004382c4 lw s7, 0x114(sp)          |         s7 = *(var_114h);
    0x004382c8 lw s6, 0x110(sp)          |         s6 = *(var_110h);
    0x004382cc lw s5, 0x10c(sp)          |         s5 = *(var_10ch);
    0x004382d0 lw s4, 0x108(sp)          |         s4 = *(var_108h);
    0x004382d4 lw s3, 0x104(sp)          |         s3 = *(var_104h);
    0x004382d8 lw s2, 0x100(sp)          |         s2 = *(var_100h);
    0x004382dc lw s1, 0xfc(sp)           |         s1 = *(var_fch);
    0x004382e0 lw s0, 0xf8(sp)           |         s0 = *(var_f8h);
    0x004382e4 addiu v0, zero, 1         |         v0 = 1;
    0x004382e8 addiu sp, sp, 0x120       |         
    0x004382ec jr ra                     |         return v0;
                                         | label_4:
    0x004382f0 jal 0x4137bc              |         fcn_004137bc ();
    0x004382f4 nop                       |         
    0x004382f8 beqz v0, 0x438260         |         
                                         |     } while (v0 == 0);
    0x004382fc nop                       |     
    0x00438300 sw s1, (s0)               |     *(s0) = s1;
    0x00438304 b 0x4382bc                |     goto label_0;
                                         | label_6:
    0x00438308 move a0, s6               |     a0 = s6;
    0x0043830c jal 0x487740              |     fcn_00487740 ();
    0x00438310 move s7, v0               |     s7 = v0;
    0x00438314 jal 0x486ef0              |     fcn_00486ef0 ();
    0x00438318 move fp, v0               |     fp = v0;
    0x0043831c jal 0x486f40              |     fcn_00486f40 ();
    0x00438320 sw v0, 0xf4(sp)           |     *(var_f4h) = v0;
    0x00438324 jal 0x487000              |     fcn_00487000 ();
    0x00438328 sw v0, 0xf0(sp)           |     *(var_f0h) = v0;
    0x0043832c jal 0x486e90              |     fcn_00486e90 ();
    0x00438330 lw a0, 0xf4(sp)           |     a0 = *(var_f4h);
    0x00438334 lw v1, 0xf0(sp)           |     v1 = *(var_f0h);
    0x00438338 addiu a1, zero, 0xc7      |     a1 = 0xc7;
    0x0043833c lui a2, 0x47              |     a2 = 0x470000;
    0x00438340 sw a0, 0x10(sp)           |     *(var_10h) = a0;
    0x00438344 sw v1, 0x14(sp)           |     *(var_14h) = v1;
    0x00438348 sw v0, 0x18(sp)           |     *(var_18h) = v0;
    0x0043834c addu a0, s6, s7           |     a0 = s6 + s7;
    0x00438350 subu a1, a1, s7           |     __asm ("subu a1, a1, s7");
                                         |     /* str.__effective__u___u___real__u___u_ */
    0x00438354 addiu a2, a2, 0xa98       |     a2 += 0xa98;
    0x00438358 move a3, fp               |     a3 = fp;
    0x0043835c jal 0x444430              |     sym_snprintf ()
    0x00438360 b 0x438284                |     goto label_1;
    0x00438364 nop                       |     
                                         | label_5:
    0x00438368 addiu s6, sp, 0x28        |     s6 = sp + 0x28;
    0x0043836c jal 0x43e4d0              |     fcn_0043e4d0 ();
    0x00438370 lui a2, 0x47              |     a2 = 0x470000;
    0x00438374 move a0, s6               |     a0 = s6;
    0x00438378 addiu a1, zero, 0xc7      |     a1 = 0xc7;
                                         |     /* str.__pid_u */
    0x0043837c addiu a2, a2, 0xa8c       |     a2 += 0xa8c;
    0x00438380 move a3, v0               |     a3 = v0;
    0x00438384 jal 0x444430              |     sym_snprintf ()
    0x00438388 b 0x438274                |     goto label_2;
    0x0043838c nop                       |     
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x43d4f0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0043d4f0 ()                  | void fcn_0043d4f0 () {
    0x0043d4f0 addiu sp, sp, -0x448          |     
    0x0043d4f4 sw ra, 0x444(sp)              |     *(var_444h) = ra;
    0x0043d4f8 sw s1, 0x440(sp)              |     *(var_440h) = s1;
    0x0043d4fc sw s0, 0x43c(sp)              |     *(var_43ch) = s0;
    0x0043d500 move s0, a0                   |     s0 = a0;
    0x0043d504 jal 0x40febc                  |     fcn_0040febc ();
    0x0043d508 lui a2, 0x47                  |     a2 = 0x470000;
    0x0043d50c addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x0043d510 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str._s__s.pid */
    0x0043d514 addiu a2, a2, 0x2370          |     a2 += 0x2370;
    0x0043d518 move a3, v0                   |     a3 = v0;
    0x0043d51c sw s0, 0x10(sp)               |     *(var_10h) = s0;
    0x0043d520 jal 0x444430                  |     sym_snprintf ()
    0x0043d524 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x0043d528 addiu a1, zero, 0x80          |     a1 = 0x80;
    0x0043d52c addiu a2, zero, 0x1a4         |     a2 = 0x1a4;
    0x0043d530 jal 0x43e168                  |     fcn_0043e168 ();
    0x0043d534 move s1, v0                   |     s1 = v0;
    0x0043d538 addiu v0, zero, -1            |     v0 = -1;
    0x0043d53c move s0, zero                 |     s0 = 0;
                                             |     if (s1 == v0) {
    0x0043d540 beq s1, v0, 0x43d5a0          |         goto label_1;
                                             |     }
    0x0043d544 move a0, s1                   |     a0 = s1;
    0x0043d548 addiu a1, sp, 0x420           |     a1 = sp + 0x420;
    0x0043d54c addiu a2, zero, 0x13          |     a2 = 0x13;
    0x0043d550 sw zero, 0x420(sp)            |     *(var_420h) = 0;
    0x0043d554 sw zero, 0x424(sp)            |     *(var_424h) = 0;
    0x0043d558 sw zero, 0x428(sp)            |     *(var_428h) = 0;
    0x0043d55c sw zero, 0x42c(sp)            |     *(var_42ch) = 0;
    0x0043d560 sw zero, 0x430(sp)            |     *(var_430h) = 0;
    0x0043d564 jal 0x487360                  |     fcn_00487360 ();
                                             |     if (v0 <= 0) {
    0x0043d568 blez v0, 0x43d58c             |         goto label_2;
                                             |     }
    0x0043d56c nop                           |     
    0x0043d570 addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x0043d574 jal 0x4876f0                  |     fcn_004876f0 ();
    0x0043d578 move a0, v0                   |     a0 = v0;
    0x0043d57c move s0, v0                   |     s0 = v0;
    0x0043d580 jal 0x44ec38                  |     fcn_0044ec38 ();
    0x0043d584 move a0, s1                   |     a0 = s1;
    0x0043d588 bnez v0, 0x43d5b8             |     
                                             |     while (v0 != 0) {
                                             | label_2:
    0x0043d58c move a0, s1                   |         a0 = s1;
    0x0043d590 jal 0x487800                  |         fcn_00487800 ();
    0x0043d594 move s0, zero                 |         s0 = 0;
    0x0043d598 addiu a0, sp, 0x20            |         a0 = sp + 0x20;
    0x0043d59c jal 0x4873a0                  |         fcn_004873a0 ();
                                             | label_1:
    0x0043d5a0 lw ra, 0x444(sp)              |         ra = *(var_444h);
                                             | label_0:
    0x0043d5a4 move v0, s0                   |         v0 = s0;
    0x0043d5a8 lw s1, 0x440(sp)              |         s1 = *(var_440h);
    0x0043d5ac lw s0, 0x43c(sp)              |         s0 = *(var_43ch);
    0x0043d5b0 addiu sp, sp, 0x448           |         
    0x0043d5b4 jr ra                         |         return v0;
    0x0043d5b8 sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x0043d5bc addiu a1, zero, 6             |         a1 = 6;
    0x0043d5c0 move a2, zero                 |         a2 = 0;
    0x0043d5c4 addiu a3, zero, 1             |         a3 = 1;
    0x0043d5c8 jal 0x44f218                  |         fcn_0044f218 ();
    0x0043d5cc bnez v0, 0x43d58c             |         
                                             |     }
    0x0043d5d0 nop                           |     
    0x0043d5d4 move a0, s1                   |     a0 = s1;
    0x0043d5d8 jal 0x487800                  |     fcn_00487800 ();
    0x0043d5dc lw ra, 0x444(sp)              |     ra = *(var_444h);
    0x0043d5e0 b 0x43d5a4                    |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x43fbd4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0043fbd4 ()                  | void fcn_0043fbd4 () {
    0x0043fbd4 addiu sp, sp, -0x38           |     
    0x0043fbd8 sw ra, 0x34(sp)               |     *(var_34h) = ra;
    0x0043fbdc sw s0, 0x30(sp)               |     *(var_30h) = s0;
                                             |     if (a0 != 0) {
    0x0043fbe0 beqz a0, 0x43fc58             |         
    0x0043fbe4 addiu a0, sp, 0x20            |         a0 = sp + 0x20;
    0x0043fbe8 jal 0x43efbc                  |         fcn_0043efbc ();
    0x0043fbec lw v0, 0x20(sp)               |         v0 = *(var_20h);
    0x0043fbf0 addiu a0, sp, 0x28            |         a0 = sp + 0x28;
    0x0043fbf4 sw v0, 0x28(sp)               |         *(var_28h) = v0;
    0x0043fbf8 jal 0x43f174                  |         fcn_0043f174 ();
    0x0043fbfc lui a2, 0x47                  |         a2 = 0x470000;
                                             |         if (v0 == 0) {
    0x0043fc00 beqz v0, 0x43fca4             |             goto label_1;
                                             |         }
    0x0043fc04 lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x0043fc08 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* str._Y__m__d__H:_M:_S */
    0x0043fc0c addiu a2, a2, 0x2524          |         a2 += 0x2524;
    0x0043fc10 move a3, v0                   |         a3 = v0;
    0x0043fc14 addiu a0, s0, 0x4570          |         a0 = s0 + 0x4570;
    0x0043fc18 jal 0x487670                  |         fcn_00487670 ();
    0x0043fc1c addiu a0, s0, 0x4570          |         a0 = s0 + 0x4570;
    0x0043fc20 jal 0x487740                  |         fcn_00487740 ();
    0x0043fc24 lw a3, 0x24(sp)               |         a3 = *(var_24h);
    0x0043fc28 addiu s0, s0, 0x4570          |         s0 += 0x4570;
    0x0043fc2c addiu a1, zero, 0xff          |         a1 = 0xff;
    0x0043fc30 lui a2, 0x47                  |         a2 = 0x470000;
    0x0043fc34 addu a0, s0, v0               |         a0 = s0 + v0;
    0x0043fc38 subu a1, a1, v0               |         __asm ("subu a1, a1, v0");
                                             |         /* str.._06ld */
    0x0043fc3c addiu a2, a2, 0x2538          |         a2 += 0x2538;
    0x0043fc40 jal 0x444430                  |         sym_snprintf ()
    0x0043fc44 lw ra, 0x34(sp)               |         ra = *(var_34h);
    0x0043fc48 move v0, s0                   |         v0 = s0;
    0x0043fc4c lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x0043fc50 addiu sp, sp, 0x38            |         
    0x0043fc54 jr ra                         |         return v0;
                                             |     }
    0x0043fc58 jal 0x487540                  |     fcn_00487540 ();
    0x0043fc5c nop                           |     
    0x0043fc60 addiu a0, sp, 0x28            |     a0 = sp + 0x28;
    0x0043fc64 sw v0, 0x28(sp)               |     *(var_28h) = v0;
    0x0043fc68 jal 0x43f174                  |     fcn_0043f174 ();
    0x0043fc6c move a3, v0                   |     a3 = v0;
                                             |     if (v0 == 0) {
    0x0043fc70 beqz v0, 0x43fcd4             |         goto label_2;
                                             |     }
    0x0043fc74 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x0043fc78 lui a2, 0x47                  |     a2 = 0x470000;
    0x0043fc7c addiu a0, s0, 0x4570          |     a0 = s0 + 0x4570;
    0x0043fc80 addiu a1, zero, 0x64          |     a1 = 0x64;
                                             |     /* str._Y__m__d__H:_M:_S */
    0x0043fc84 addiu a2, a2, 0x2524          |     a2 += 0x2524;
    0x0043fc88 addiu s0, s0, 0x4570          |     s0 += 0x4570;
    0x0043fc8c jal 0x487670                  |     fcn_00487670 ();
                                             | label_0:
    0x0043fc90 lw ra, 0x34(sp)               |     ra = *(var_34h);
                                             |     do {
    0x0043fc94 move v0, s0                   |         v0 = s0;
    0x0043fc98 lw s0, 0x30(sp)               |         s0 = *(var_30h);
    0x0043fc9c addiu sp, sp, 0x38            |         
    0x0043fca0 jr ra                         |         return v0;
                                             | label_1:
    0x0043fca4 lw v0, 0x24(sp)               |         v0 = *(var_24h);
    0x0043fca8 lw a3, 0x20(sp)               |         a3 = *(var_20h);
    0x0043fcac lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x0043fcb0 lui a2, 0x47                  |         a2 = 0x470000;
    0x0043fcb4 addiu a0, s0, 0x4570          |         a0 = s0 + 0x4570;
    0x0043fcb8 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0043fcbc addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* str._ld._06ld_seconds_since_the_Epoch */
    0x0043fcc0 addiu a2, a2, 0x2540          |         a2 += 0x2540;
    0x0043fcc4 move s0, a0                   |         s0 = a0;
    0x0043fcc8 jal 0x444430                  |         sym_snprintf ()
    0x0043fccc lw ra, 0x34(sp)               |         ra = *(var_34h);
    0x0043fcd0 b 0x43fc94                    |         
                                             |     } while (1);
                                             | label_2:
    0x0043fcd4 lw a3, 0x28(sp)               |     a3 = *(var_28h);
    0x0043fcd8 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x0043fcdc lui a2, 0x47                  |     a2 = 0x470000;
    0x0043fce0 addiu a0, s0, 0x4570          |     a0 = s0 + 0x4570;
    0x0043fce4 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str._ld_seconds_since_the_Epoch */
    0x0043fce8 addiu a2, a2, 0x24ec          |     a2 += 0x24ec;
    0x0043fcec jal 0x444430                  |     sym_snprintf ()
    0x0043fcf0 addiu s0, s0, 0x4570          |     s0 += 0x4570;
    0x0043fcf4 b 0x43fc90                    |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x442a90 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00442a90 ()                  | void fcn_00442a90 () {
    0x00442a90 addiu sp, sp, -0x420          |     
    0x00442a94 sw ra, 0x41c(sp)              |     *(var_41ch) = ra;
    0x00442a98 sw s0, 0x418(sp)              |     *(var_418h) = s0;
    0x00442a9c jal 0x44d488                  |     fcn_0044d488 ();
    0x00442aa0 lui a2, 0x47                  |     a2 = 0x470000;
    0x00442aa4 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00442aa8 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str._s_smb.XXXXXX */
    0x00442aac addiu a2, a2, 0x2d20          |     a2 += 0x2d20;
    0x00442ab0 move a3, v0                   |     a3 = v0;
    0x00442ab4 jal 0x444430                  |     sym_snprintf ()
    0x00442ab8 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00442abc jal 0x4508bc                  |     fcn_004508bc ();
    0x00442ac0 move s0, v0                   |     s0 = v0;
    0x00442ac4 addiu v0, zero, -1            |     v0 = -1;
    0x00442ac8 lui v0, 0x4b                  |     v0 = 0x4b0000;
                                             |     if (s0 == v0) {
    0x00442acc beq s0, v0, 0x442afc          |         goto label_3;
                                             |     }
    0x00442ad0 lw v0, -0x2b40(v0)            |     v0 = *((v0 - 2768));
    0x00442ad4 slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00442ad8 lui a1, 0x47                  |     a1 = 0x470000;
                                             |     if (v0 == 0) {
    0x00442adc beqz v0, 0x442b54             |         goto label_4;
                                             |     }
                                             | label_2:
    0x00442ae0 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00442ae4 jal 0x4873a0                  |     fcn_004873a0 ();
                                             |     do {
                                             | label_0:
    0x00442ae8 lw ra, 0x41c(sp)              |         ra = *(var_41ch);
                                             | label_1:
    0x00442aec move v0, s0                   |         v0 = s0;
    0x00442af0 lw s0, 0x418(sp)              |         s0 = *(var_418h);
    0x00442af4 addiu sp, sp, 0x420           |         
    0x00442af8 jr ra                         |         return v0;
                                             | label_3:
    0x00442afc lw v0, -0x2b40(v0)            |         v0 = *((v0 - 2768));
    0x00442b00 lui a1, 0x47                  |         a1 = 0x470000;
    0x00442b04 bltz v0, 0x442ae8             |         
                                             |     } while (v0 < 0);
    0x00442b08 lui a2, 0x47                  |     a2 = 0x470000;
    0x00442b0c move a0, zero                 |     a0 = 0;
                                             |     /* str.lib_smbrun.c */
    0x00442b10 addiu a1, a1, 0x2d30          |     a1 += 0x2d30;
                                             |     /* str.setup_out_fd */
    0x00442b14 addiu a2, a2, 0x2e18          |     a2 += 0x2e18;
    0x00442b18 addiu a3, zero, 0x2b          |     a3 = 0x2b;
    0x00442b1c jal 0x4381b8                  |     fcn_004381b8 ();
                                             |     if (v0 == 0) {
    0x00442b20 beqz v0, 0x442ae8             |         goto label_0;
                                             |     }
    0x00442b24 nop                           |     
    0x00442b28 jal 0x4876a0                  |     fcn_004876a0 ();
    0x00442b2c nop                           |     
    0x00442b30 lw a0, (v0)                   |     a0 = *(v0);
    0x00442b34 jal 0x486ee0                  |     fcn_00486ee0 ();
    0x00442b38 lui a0, 0x47                  |     a0 = "setup_out_fd: Failed to create file %s. (%s)\n";
                                             |     /* str.setup_out_fd:_Failed_to_create_file__s.___s__n */
    0x00442b3c addiu a0, a0, 0x2d40          |     
    0x00442b40 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00442b44 move a2, v0                   |     a2 = v0;
    0x00442b48 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00442b4c lw ra, 0x41c(sp)              |     ra = *(var_41ch);
    0x00442b50 b 0x442aec                    |     goto label_1;
                                             | label_4:
    0x00442b54 lui a2, 0x47                  |     a2 = 0x470000;
    0x00442b58 addiu a0, zero, 0xa           |     a0 = 0xa;
                                             |     /* str.lib_smbrun.c */
    0x00442b5c addiu a1, a1, 0x2d30          |     a1 += 0x2d30;
                                             |     /* str.setup_out_fd */
    0x00442b60 addiu a2, a2, 0x2e18          |     a2 += 0x2e18;
    0x00442b64 addiu a3, zero, 0x2f          |     a3 = 0x2f;
    0x00442b68 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00442b6c lui a0, 0x47                  |     a0 = 0x470000;
                                             |     if (v0 == 0) {
    0x00442b70 beqz v0, 0x442ae0             |         goto label_2;
                                             |     }
                                             |     /* str.setup_out_fd:_Created_tmp_file__s_n */
    0x00442b74 addiu a0, a0, 0x2d70          |     a0 += 0x2d70;
    0x00442b78 addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00442b7c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00442b80 b 0x442ae0                    |     goto label_2;
    0x00442b84 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x4470c0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.004470c0 ()              | void fcn_004470c0 () {
    0x004470c0 addiu v0, zero, -1        |     v0 = -1;
    0x004470c4 lui a2, 0x47              |     a2 = 0x470000;
                                         |     if (a0 != v0) {
    0x004470c8 beq a0, v0, 0x447104      |         
    0x004470cc addiu sp, sp, -0x20       |         
    0x004470d0 sw s0, 0x18(sp)           |         *(var_18h) = s0;
    0x004470d4 lui s0, 0x4a              |         s0 = 0x4a0000;
    0x004470d8 move a3, a0               |         a3 = a0;
    0x004470dc addiu a1, zero, 0x3f      |         a1 = 0x3f;
    0x004470e0 addiu a0, s0, 0x5298      |         a0 = s0 + 0x5298;
    0x004470e4 sw ra, 0x1c(sp)           |         *(var_1ch) = ra;
                                         |         /* esilref: '0&o' */
    0x004470e8 addiu a2, a2, 0x392c      |         a2 += 0x392c;
    0x004470ec jal 0x444430              |         sym_snprintf ()
    0x004470f0 lw ra, 0x1c(sp)           |         ra = *(var_1ch);
    0x004470f4 addiu v0, s0, 0x5298      |         v0 = s0 + 0x5298;
    0x004470f8 lw s0, 0x18(sp)           |         s0 = *(var_18h);
    0x004470fc addiu sp, sp, 0x20        |         
    0x00447100 jr ra                     |         return v0;
                                         |     }
    0x00447104 lui v0, 0x47              |     v0 = 0x473928;
                                         |     /* esilref: '-1' */
    0x00447108 addiu v0, v0, 0x3928      |     
    0x0044710c jr ra                     |     return v0;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x447790 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00447790 ()              | void fcn_00447790 () {
    0x00447790 addiu sp, sp, -0x48       |     
    0x00447794 sw s3, 0x3c(sp)           |     *(var_3ch) = s3;
    0x00447798 sw s2, 0x38(sp)           |     *(var_38h) = s2;
    0x0044779c sw ra, 0x44(sp)           |     *(var_44h) = ra;
    0x004477a0 sw s4, 0x40(sp)           |     *(var_40h) = s4;
    0x004477a4 sw s1, 0x34(sp)           |     *(var_34h) = s1;
    0x004477a8 sw s0, 0x30(sp)           |     *(var_30h) = s0;
    0x004477ac move s2, a1               |     s2 = a1;
    0x004477b0 lbu a1, 6(a1)             |     a1 = *((a1 + 6));
    0x004477b4 lbu a2, 7(s2)             |     a2 = *((s2 + 7));
    0x004477b8 lbu v1, 5(s2)             |     v1 = *((s2 + 5));
    0x004477bc lbu v0, 4(s2)             |     v0 = *((s2 + 4));
    0x004477c0 sll a1, a1, 8             |     a1 <<= 8;
    0x004477c4 addu a1, a2, a1           |     a1 = a2 + a1;
    0x004477c8 sll v1, v1, 0x10          |     v1 <<= 0x10;
    0x004477cc addu v1, a1, v1           |     v1 = a1 + v1;
    0x004477d0 lbu a3, (s2)              |     a3 = *(s2);
    0x004477d4 sll v0, v0, 0x18          |     v0 <<= 0x18;
    0x004477d8 addu v0, v1, v0           |     v0 = v1 + v0;
    0x004477dc lui a2, 0x47              |     a2 = 0x470000;
    0x004477e0 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x004477e4 addiu a1, zero, 0xff      |     a1 = 0xff;
                                         |     /* str.S__u__lu */
    0x004477e8 addiu a2, a2, 0x3a50      |     a2 += 0x3a50;
    0x004477ec move s3, a0               |     s3 = a0;
    0x004477f0 jal 0x444430              |     sym_snprintf ()
    0x004477f4 lbu v0, 1(s2)             |     v0 = *((s2 + 1));
    0x004477f8 lui s4, 0x47              |     s4 = 0x470000;
                                         |     if (v0 == 0) {
    0x004477fc beqz v0, 0x447844         |         goto label_0;
                                         |     }
    0x00447800 move s1, s2               |     s1 = s2;
    0x00447804 move s0, zero             |     s0 = 0;
                                         |     /* esilref: '-&lu' */
    0x00447808 addiu s4, s4, 0x3a54      |     s4 += 0x3a54;
                                         |     do {
    0x0044780c lw a3, 8(s1)              |         a3 = *((s1 + 2));
    0x00447810 addiu a0, sp, 0x20        |         a0 = sp + 0x20;
    0x00447814 addiu a1, zero, 0xf       |         a1 = 0xf;
    0x00447818 move a2, s4               |         a2 = s4;
    0x0044781c jal 0x444430              |         sym_snprintf ()
    0x00447820 move a0, s3               |         a0 = s3;
    0x00447824 addiu a1, sp, 0x20        |         a1 = sp + 0x20;
    0x00447828 addiu a2, zero, 0xff      |         a2 = 0xff;
    0x0044782c jal 0x4463d8              |         fcn_004463d8 ();
    0x00447830 lbu v1, 1(s2)             |         v1 = *((s2 + 1));
    0x00447834 addiu s0, s0, 1           |         s0++;
    0x00447838 slt v1, s0, v1            |         v1 = (s0 < v1) ? 1 : 0;
    0x0044783c addiu s1, s1, 4           |         s1 += 4;
    0x00447840 bnez v1, 0x44780c         |         
                                         |     } while (v1 != 0);
                                         | label_0:
    0x00447844 lw ra, 0x44(sp)           |     ra = *(var_44h);
    0x00447848 move v0, s3               |     v0 = s3;
    0x0044784c lw s4, 0x40(sp)           |     s4 = *(var_40h);
    0x00447850 lw s3, 0x3c(sp)           |     s3 = *(var_3ch);
    0x00447854 lw s2, 0x38(sp)           |     s2 = *(var_38h);
    0x00447858 lw s1, 0x34(sp)           |     s1 = *(var_34h);
    0x0044785c lw s0, 0x30(sp)           |     s0 = *(var_30h);
    0x00447860 addiu sp, sp, 0x48        |     
    0x00447864 jr ra                     |     return v0;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x449d00 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00449d00 ()                  | void fcn_00449d00 () {
    0x00449d00 addiu sp, sp, -0x120          |     
    0x00449d04 lui a2, 0x47                  |     a2 = 0x470000;
    0x00449d08 move a3, a0                   |     a3 = a0;
    0x00449d0c addiu a1, zero, 0xff          |     a1 = 0xff;
    0x00449d10 addiu a0, sp, 0x18            |     a0 = sp + 0x18;
    0x00449d14 sw ra, 0x11c(sp)              |     *(var_11ch) = ra;
                                             |     /* str._03d */
    0x00449d18 addiu a2, a2, 0x60c           |     a2 += 0x60c;
    0x00449d1c jal 0x444430                  |     sym_snprintf ()
    0x00449d20 lui v0, 0x4b                  |     v0 = 0x4b0000;
    0x00449d24 lw v0, -0x2b40(v0)            |     v0 = *((v0 - 2768));
    0x00449d28 slti v0, v0, 0xa              |     v0 = (v0 < 0xa) ? 1 : 0;
    0x00449d2c lui a1, 0x47                  |     a1 = 0x470000;
    0x00449d30 beqz v0, 0x449d58             |     
                                             |     while (v0 == 0) {
    0x00449d34 lui a1, 0x4a                  |         a1 = 0x4a0000;
                                             | label_0:
    0x00449d38 lui a2, 0x4a                  |         a2 = 0x4a0000;
    0x00449d3c addiu a0, sp, 0x18            |         a0 = sp + 0x18;
    0x00449d40 addiu a1, a1, 0x5514          |         a1 += 0x5514;
    0x00449d44 addiu a2, a2, 0x5518          |         a2 += 0x5518;
    0x00449d48 jal 0x449704                  |         fcn_00449704 ();
    0x00449d4c lw ra, 0x11c(sp)              |         ra = *(var_11ch);
    0x00449d50 addiu sp, sp, 0x120           |         
    0x00449d54 jr ra                         |         return v0;
    0x00449d58 lui a2, 0x47                  |         a2 = 0x470000;
    0x00449d5c addiu a0, zero, 0xa           |         a0 = 0xa;
                                             |         /* str.lib_util_unistr.c */
    0x00449d60 addiu a1, a1, 0x3e70          |         a1 += 0x3e70;
                                             |         /* str.load_dos_unicode_map */
    0x00449d64 addiu a2, a2, 0x4448          |         a2 += 0x4448;
    0x00449d68 addiu a3, zero, 0x2e2         |         a3 = 0x2e2;
    0x00449d6c jal 0x4381b8                  |         fcn_004381b8 ();
    0x00449d70 lui a0, 0x47                  |         a0 = 0x470000;
    0x00449d74 beqz v0, 0x449d34             |         
                                             |     }
                                             |     /* str.load_dos_unicode_map:__s_n */
    0x00449d78 addiu a0, a0, 0x41dc          |     a0 += 0x41dc;
    0x00449d7c addiu a1, sp, 0x18            |     a1 = sp + 0x18;
    0x00449d80 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00449d84 lui a1, 0x4a                  |     a1 = 0x4a0000;
    0x00449d88 b 0x449d38                    |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x44ec74 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0044ec74 ()                  | void fcn_0044ec74 () {
    0x0044ec74 addiu sp, sp, -0x28           |     
    0x0044ec78 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x0044ec7c sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x0044ec80 move s1, a0                   |     s1 = a0;
    0x0044ec84 lui s0, 0x4b                  |     s0 = 0x4b0000;
    0x0044ec88 addiu a0, s0, -0x6414         |     a0 = 0x4a9bec;
    0x0044ec8c sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x0044ec90 move a1, s1                   |     a1 = s1;
    0x0044ec94 jal 0x457c14                  |     fcn_00457c14 ();
    0x0044ec98 addiu s0, s0, -0x6414         |     s0 += -0x6414;
                                             |     if (v0 == 0) {
    0x0044ec9c beqz v0, 0x44ecb8             |         goto label_0;
                                             |     }
    0x0044eca0 lw ra, 0x24(sp)               |     ra = *(var_24h);
                                             |     do {
    0x0044eca4 move v0, s0                   |         v0 = s0;
    0x0044eca8 lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x0044ecac lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x0044ecb0 addiu sp, sp, 0x28            |         
    0x0044ecb4 jr ra                         |         return v0;
                                             | label_0:
    0x0044ecb8 move a0, s1                   |         a0 = s1;
    0x0044ecbc jal 0x43e448                  |         fcn_0043e448 ();
    0x0044ecc0 lui a2, 0x48                  |         a2 = 0x480000;
                                             |         if (v0 != 0) {
    0x0044ecc4 beqz v0, 0x44ece4             |             
    0x0044ecc8 lw s0, (v0)                   |             s0 = *(v0);
    0x0044eccc lw ra, 0x24(sp)               |             ra = *(var_24h);
    0x0044ecd0 lw s1, 0x20(sp)               |             s1 = *(var_20h);
    0x0044ecd4 move v0, s0                   |             v0 = s0;
    0x0044ecd8 lw s0, 0x1c(sp)               |             s0 = *(var_1ch);
    0x0044ecdc addiu sp, sp, 0x28            |             
    0x0044ece0 jr ra                         |             return v0;
                                             |         }
    0x0044ece4 move a0, s0                   |         a0 = s0;
    0x0044ece8 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* esilref: '&d' */
    0x0044ecec addiu a2, a2, 0x5c4c          |         a2 += 0x5c4c;
    0x0044ecf0 move a3, s1                   |         a3 = s1;
    0x0044ecf4 jal 0x444430                  |         sym_snprintf ()
    0x0044ecf8 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x0044ecfc b 0x44eca4                    |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x44ed00 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0044ed00 ()                  | void fcn_0044ed00 () {
    0x0044ed00 addiu sp, sp, -0x28           |     
    0x0044ed04 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x0044ed08 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x0044ed0c move s1, a0                   |     s1 = a0;
    0x0044ed10 lui s0, 0x4b                  |     s0 = 0x4b0000;
    0x0044ed14 addiu a0, s0, -0x6314         |     a0 = 0x4a9cec;
    0x0044ed18 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x0044ed1c move a1, s1                   |     a1 = s1;
    0x0044ed20 jal 0x457ca0                  |     fcn_00457ca0 ();
    0x0044ed24 addiu s0, s0, -0x6314         |     s0 += -0x6314;
                                             |     if (v0 == 0) {
    0x0044ed28 beqz v0, 0x44ed44             |         goto label_0;
                                             |     }
    0x0044ed2c lw ra, 0x24(sp)               |     ra = *(var_24h);
                                             |     do {
    0x0044ed30 move v0, s0                   |         v0 = s0;
    0x0044ed34 lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x0044ed38 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x0044ed3c addiu sp, sp, 0x28            |         
    0x0044ed40 jr ra                         |         return v0;
                                             | label_0:
    0x0044ed44 move a0, s1                   |         a0 = s1;
    0x0044ed48 jal 0x486f20                  |         fcn_00486f20 ();
    0x0044ed4c lui a2, 0x48                  |         a2 = 0x480000;
                                             |         if (v0 != 0) {
    0x0044ed50 beqz v0, 0x44ed70             |             
    0x0044ed54 lw s0, (v0)                   |             s0 = *(v0);
    0x0044ed58 lw ra, 0x24(sp)               |             ra = *(var_24h);
    0x0044ed5c lw s1, 0x20(sp)               |             s1 = *(var_20h);
    0x0044ed60 move v0, s0                   |             v0 = s0;
    0x0044ed64 lw s0, 0x1c(sp)               |             s0 = *(var_1ch);
    0x0044ed68 addiu sp, sp, 0x28            |             
    0x0044ed6c jr ra                         |             return v0;
                                             |         }
    0x0044ed70 move a0, s0                   |         a0 = s0;
    0x0044ed74 addiu a1, zero, 0xff          |         a1 = 0xff;
                                             |         /* esilref: '&d' */
    0x0044ed78 addiu a2, a2, 0x5c4c          |         a2 += 0x5c4c;
    0x0044ed7c move a3, s1                   |         a3 = s1;
    0x0044ed80 jal 0x444430                  |         sym_snprintf ()
    0x0044ed84 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x0044ed88 b 0x44ed30                    |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x456550 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00456550 ()                  | void fcn_00456550 () {
    0x00456550 addiu sp, sp, -0x28           |     
    0x00456554 lui a2, 0x48                  |     a2 = 0x480000;
    0x00456558 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x0045655c lui s1, 0x4b                  |     s1 = 0x4b0000;
    0x00456560 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00456564 move a3, a1                   |     a3 = a1;
    0x00456568 move s0, a0                   |     s0 = a0;
    0x0045656c addiu a1, zero, 0x13          |     a1 = 0x13;
    0x00456570 addiu a0, s1, -0x3298         |     a0 = s1 + -0x3298;
    0x00456574 sw ra, 0x24(sp)               |     *(var_24h) = ra;
                                             |     /* str.PID__d */
    0x00456578 addiu a2, a2, 0x5c48          |     a2 += 0x5c48;
    0x0045657c jal 0x444430                  |     sym_snprintf ()
    0x00456580 addiu a0, s1, -0x3298         |     a0 = s1 + -0x3298;
    0x00456584 jal 0x487740                  |     fcn_00487740 ();
    0x00456588 lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x0045658c addiu v0, v0, 1               |     v0++;
    0x00456590 addiu s1, s1, -0x3298         |     s1 += -0x3298;
    0x00456594 sw s1, (s0)                   |     *(s0) = s1;
    0x00456598 sw v0, 4(s0)                  |     *((s0 + 1)) = v0;
    0x0045659c lw s1, 0x20(sp)               |     s1 = *(var_20h);
    0x004565a0 move v0, s0                   |     v0 = s0;
    0x004565a4 lw s0, 0x1c(sp)               |     s0 = *(var_1ch);
    0x004565a8 addiu sp, sp, 0x28            |     
    0x004565ac jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x457c14 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00457c14 ()                  | void fcn_00457c14 () {
    0x00457c14 addiu sp, sp, -0x270          |     
    0x00457c18 sw s0, 0x268(sp)              |     *(var_268h) = s0;
    0x00457c1c move s0, a0                   |     s0 = a0;
    0x00457c20 sw ra, 0x26c(sp)              |     *(var_26ch) = ra;
    0x00457c24 addiu a0, sp, 0x220           |     a0 = sp + 0x220;
    0x00457c28 jal 0x457760                  |     fcn_00457760 ();
    0x00457c2c addiu a1, sp, 0x120           |     a1 = sp + 0x120;
    0x00457c30 bnez v0, 0x457c48             |     
                                             |     while (v0 == 0) {
                                             | label_0:
    0x00457c34 move v0, zero                 |         v0 = 0;
                                             | label_1:
    0x00457c38 lw ra, 0x26c(sp)              |         ra = *(var_26ch);
    0x00457c3c lw s0, 0x268(sp)              |         s0 = *(var_268h);
    0x00457c40 addiu sp, sp, 0x270           |         
    0x00457c44 jr ra                         |         return v0;
    0x00457c48 addiu a0, sp, 0x220           |         a0 = sp + 0x220;
    0x00457c4c addiu a2, sp, 0x20            |         a2 = sp + 0x20;
    0x00457c50 addiu a3, sp, 0x264           |         a3 = sp + 0x264;
    0x00457c54 jal 0x4575b4                  |         fcn_004575b4 ();
    0x00457c58 lw v1, 0x264(sp)              |         v1 = *(var_264h);
    0x00457c5c beqz v0, 0x457c34             |         
                                             |     }
    0x00457c60 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v1 != v0) {
    0x00457c64 bne v1, v0, 0x457c34          |         goto label_0;
                                             |     }
    0x00457c68 nop                           |     
    0x00457c6c jal 0x410360                  |     fcn_00410360 ();
    0x00457c70 nop                           |     
    0x00457c74 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00457c78 lui a2, 0x48                  |     a2 = 0x480000;
    0x00457c7c addiu v0, sp, 0x20            |     v0 = sp + 0x20;
    0x00457c80 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00457c84 move a0, s0                   |     a0 = s0;
    0x00457c88 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str._s_s_s */
    0x00457c8c addiu a2, a2, 0x601c          |     a2 += 0x601c;
    0x00457c90 addiu a3, sp, 0x120           |     a3 = sp + 0x120;
    0x00457c94 jal 0x444430                  |     sym_snprintf ()
    0x00457c98 addiu v0, zero, 1             |     v0 = 1;
    0x00457c9c b 0x457c38                    |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x457ca0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00457ca0 ()                  | void fcn_00457ca0 () {
    0x00457ca0 addiu sp, sp, -0x270          |     
    0x00457ca4 sw s0, 0x268(sp)              |     *(var_268h) = s0;
    0x00457ca8 move s0, a0                   |     s0 = a0;
    0x00457cac sw ra, 0x26c(sp)              |     *(var_26ch) = ra;
    0x00457cb0 addiu a0, sp, 0x220           |     a0 = sp + 0x220;
    0x00457cb4 jal 0x4578a0                  |     fcn_004578a0 ();
    0x00457cb8 addiu a1, sp, 0x120           |     a1 = sp + 0x120;
    0x00457cbc bnez v0, 0x457cd4             |     
                                             |     while (v0 == 0) {
                                             | label_0:
    0x00457cc0 move v0, zero                 |         v0 = 0;
                                             | label_1:
    0x00457cc4 lw ra, 0x26c(sp)              |         ra = *(var_26ch);
    0x00457cc8 lw s0, 0x268(sp)              |         s0 = *(var_268h);
    0x00457ccc addiu sp, sp, 0x270           |         
    0x00457cd0 jr ra                         |         return v0;
    0x00457cd4 addiu a0, sp, 0x220           |         a0 = sp + 0x220;
    0x00457cd8 addiu a2, sp, 0x20            |         a2 = sp + 0x20;
    0x00457cdc addiu a3, sp, 0x264           |         a3 = sp + 0x264;
    0x00457ce0 jal 0x4575b4                  |         fcn_004575b4 ();
    0x00457ce4 lw v1, 0x264(sp)              |         v1 = *(var_264h);
    0x00457ce8 beqz v0, 0x457cc0             |         
                                             |     }
    0x00457cec addiu v0, zero, 2             |     v0 = 2;
                                             |     if (v1 != v0) {
    0x00457cf0 bne v1, v0, 0x457cc0          |         goto label_0;
                                             |     }
    0x00457cf4 nop                           |     
    0x00457cf8 jal 0x410360                  |     fcn_00410360 ();
    0x00457cfc nop                           |     
    0x00457d00 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00457d04 lui a2, 0x48                  |     a2 = 0x480000;
    0x00457d08 addiu v0, sp, 0x20            |     v0 = sp + 0x20;
    0x00457d0c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00457d10 move a0, s0                   |     a0 = s0;
    0x00457d14 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str._s_s_s */
    0x00457d18 addiu a2, a2, 0x601c          |     a2 += 0x601c;
    0x00457d1c addiu a3, sp, 0x120           |     a3 = sp + 0x120;
    0x00457d20 jal 0x444430                  |     sym_snprintf ()
    0x00457d24 addiu v0, zero, 1             |     v0 = 1;
    0x00457d28 b 0x457cc4                    |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x401e30 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) loc._ftext ()                    | void loc_ftext () {
                                             |     /* [10] -r-x section size 373872 named .text */
    0x00401e30 lw v1, (a1)                   |     v1 = *(a1);
    0x00401e34 addiu sp, sp, -0x16c0         |     
    0x00401e38 lui t9, 0x4a                  |     t9 = 0x4a0000;
    0x00401e3c lw v0, -0x469c(t9)            |     v0 = *((t9 - 4519));
    0x00401e40 sw v1, 0x168c(sp)             |     *(var_168ch) = v1;
    0x00401e44 sw s3, 0x16a4(sp)             |     *(var_16a4h) = s3;
    0x00401e48 move s3, a0                   |     s3 = a0;
    0x00401e4c lw a0, 0x168c(sp)             |     a0 = *(var_168ch);
    0x00401e50 addiu v1, zero, 2             |     v1 = 2;
    0x00401e54 sw ra, 0x16bc(sp)             |     *(var_16bch) = ra;
    0x00401e58 sw fp, 0x16b8(sp)             |     *(var_16b8h) = fp;
    0x00401e5c sw s7, 0x16b4(sp)             |     *(var_16b4h) = s7;
    0x00401e60 sw s6, 0x16b0(sp)             |     *(var_16b0h) = s6;
    0x00401e64 sw s5, 0x16ac(sp)             |     *(var_16ach) = s5;
    0x00401e68 sw s4, 0x16a8(sp)             |     *(var_16a8h) = s4;
    0x00401e6c sw s2, 0x16a0(sp)             |     *(var_16a0h) = s2;
    0x00401e70 sw s1, 0x169c(sp)             |     *(var_169ch) = s1;
    0x00401e74 sw s0, 0x1698(sp)             |     *(var_1698h) = s0;
    0x00401e78 sw a1, 0x16c4(sp)             |     *(arg_16c4h) = a1;
    0x00401e7c sb zero, 0xc20(sp)            |     *(var_c20h) = 0;
    0x00401e80 sb zero, 0x1020(sp)           |     *(var_1020h) = 0;
    0x00401e84 sb zero, 0x1520(sp)           |     *(var_1520h) = 0;
    0x00401e88 sb zero, 0x820(sp)            |     *(var_820h) = 0;
    0x00401e8c addiu a1, zero, 1             |     a1 = 1;
    0x00401e90 sw v1, (v0)                   |     *(v0) = v1;
    0x00401e94 slti v1, s3, 2                |     v1 = (s3 < 2) ? 1 : 0;
    0x00401e98 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00401e9c sw v1, 0x1690(sp)             |     *(var_1690h) = v1;
    0x00401ea0 sw zero, -0x46a0(v0)          |     *((v0 - 4520)) = 0;
    0x00401ea4 jal 0x437bec                  |     fcn_00437bec ();
    0x00401ea8 lw t9, 0x1690(sp)             |     t9 = *(var_1690h);
    0x00401eac lw v1, 0x16c4(sp)             |     v1 = *(arg_16c4h);
                                             |     if (t9 != 0) {
    0x00401eb0 bnez t9, 0x401f50             |         goto label_30;
                                             |     }
    0x00401eb4 lui s4, 0x46                  |     s4 = 0x460000;
    0x00401eb8 lui s7, 0x46                  |     s7 = 0x460000;
    0x00401ebc lui fp, 0x46                  |     fp = 0x460000;
    0x00401ec0 addiu s0, v1, 8               |     s0 = v1 + 8;
    0x00401ec4 addiu s2, zero, 1             |     s2 = 1;
                                             |     /* esilref: '-E' */
    0x00401ec8 addiu s4, s4, -0x1c28         |     s4 += -0x1c28;
                                             |     /* esilref: '-s' */
    0x00401ecc addiu s7, s7, -0x1c24         |     s7 += -0x1c24;
                                             |     /* esilref: '-d' */
    0x00401ed0 addiu fp, fp, -0x1c20         |     fp += -0x1c20;
    0x00401ed4 lui s6, 0x4a                  |     s6 = 0x4a0000;
    0x00401ed8 lui s5, 0x4a                  |     s5 = 0x4a0000;
    0x00401edc b 0x401ef0                    |     
                                             |     while (v0 == 0) {
    0x00401ee0 sw v0, 0x19b4(s6)             |         *((s6 + 1645)) = v0;
                                             | label_1:
    0x00401ee4 addiu s2, s2, 1               |         s2++;
                                             | label_2:
    0x00401ee8 addiu s0, s0, 4               |         s0 += 4;
                                             |         if (s2 == s3) {
    0x00401eec beq s2, s3, 0x401f50          |             goto label_30;
                                             |         }
                                             | label_0:
    0x00401ef0 lw s1, -4(s0)                 |         s1 = *((s0 - 1));
    0x00401ef4 move a1, s4                   |         a1 = s4;
    0x00401ef8 move a0, s1                   |         a0 = s1;
    0x00401efc jal 0x487590                  |         fcn_00487590 ();
    0x00401f00 lw v0, -0x3790(s5)            |         v0 = *((s5 - 3556));
    0x00401f04 beqz v0, 0x401ee0             |         
                                             |     }
    0x00401f08 move a0, s1                   |     a0 = s1;
    0x00401f0c move a1, s7                   |     a1 = s7;
    0x00401f10 addiu a2, zero, 2             |     a2 = 2;
    0x00401f14 jal 0x487370                  |     fcn_00487370 ();
    0x00401f18 move a0, s1                   |     a0 = s1;
                                             |     if (v0 != 0) {
    0x00401f1c bnez v0, 0x40218c             |         goto label_31;
                                             |     }
    0x00401f20 lb v0, 2(s1)                  |     v0 = *((s1 + 2));
    0x00401f24 lui t9, 0x4a                  |     t9 = 0x4a0000;
                                             |     if (v0 != 0) {
    0x00401f28 bnez v0, 0x4021d0             |         goto label_32;
                                             |     }
    0x00401f2c lw a1, (s0)                   |     a1 = *(s0);
    0x00401f30 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (a1 == 0) {
    0x00401f34 beqz a1, 0x402364             |         goto label_14;
                                             |     }
                                             |     /* str._usr_samba_config_smb.conf */
    0x00401f38 addiu a0, v0, -0x7634         |     a0 = v0 + -0x7634;
    0x00401f3c addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00401f40 addiu s2, s2, 1               |     s2++;
    0x00401f44 jal 0x4461f8                  |     fcn_004461f8 ();
    0x00401f48 addiu s0, s0, 4               |     s0 += 4;
                                             |     if (s2 != s3) {
    0x00401f4c bne s2, s3, 0x401ef0          |         goto label_0;
                                             |     }
                                             | label_30:
    0x00401f50 lui s2, 0x4a                  |     s2 = 0x4a0000;
    0x00401f54 jal 0x43efd8                  |     fcn_0043efd8 ();
    0x00401f58 jal 0x4376b8                  |     fcn_004376b8 ();
    0x00401f5c nop                           |     
    0x00401f60 addiu v1, zero, 1             |     v1 = 1;
    0x00401f64 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     /* str._usr_samba_config_smb.conf */
    0x00401f68 addiu a0, s2, -0x7634         |     a0 = s2 + -0x7634;
    0x00401f6c addiu a1, zero, 1             |     a1 = 1;
    0x00401f70 move a2, zero                 |     a2 = 0;
    0x00401f74 move a3, zero                 |     a3 = 0;
    0x00401f78 sw v1, -0x169c(v0)            |     *((v0 - 1447)) = v1;
    0x00401f7c jal 0x413bb8                  |     fcn_00413bb8 ();
    0x00401f80 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (v0 == 0) {
    0x00401f84 beqz v0, 0x402388             |         goto label_33;
                                             |     }
                                             | label_5:
    0x00401f88 lui s5, 0x4a                  |     s5 = 0x4a0000;
    0x00401f8c jal 0x41075c                  |     fcn_0041075c ();
    0x00401f90 move a0, v0                   |     a0 = v0;
    0x00401f94 jal 0x437834                  |     fcn_00437834 ();
    0x00401f98 lui s1, 0x46                  |     s1 = 0x460000;
    0x00401f9c jal 0x41006c                  |     fcn_0041006c ();
    0x00401fa0 move a1, v0                   |     a1 = v0;
    0x00401fa4 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00401fa8 addiu a0, s5, -0x2700         |     a0 = s5 + -0x2700;
    0x00401fac jal 0x4461f8                  |     fcn_004461f8 ();
    0x00401fb0 jal 0x438ec4                  |     fcn_00438ec4 ();
    0x00401fb4 nop                           |     
    0x00401fb8 move a0, zero                 |     a0 = 0;
    0x00401fbc jal 0x487300                  |     fcn_00487300 ();
    0x00401fc0 move a0, v0                   |     a0 = v0;
    0x00401fc4 lui v1, 0x4a                  |     v1 = 0x4a0000;
    0x00401fc8 sw v0, -0x7a44(v1)            |     *((v1 - 7825)) = v0;
    0x00401fcc jal 0x487300                  |     fcn_00487300 ();
                                             |     /* str.USER */
    0x00401fd0 addiu a0, s1, -0x1bf0         |     a0 = s1 + -0x1bf0;
    0x00401fd4 jal 0x486f30                  |     fcn_00486f30 ();
    0x00401fd8 lui s0, 0x46                  |     s0 = 0x460000;
                                             |     if (v0 != 0) {
    0x00401fdc beqz v0, 0x40207c             |         
                                             |         /* str.USER */
    0x00401fe0 addiu a0, s1, -0x1bf0         |         a0 = s1 + -0x1bf0;
    0x00401fe4 jal 0x486f30                  |         fcn_00486f30 ();
    0x00401fe8 lui s0, 0x4a                  |         s0 = 0x4a0000;
    0x00401fec addiu a0, s0, -0x2b00         |         a0 = 0x49d500;
    0x00401ff0 move a1, v0                   |         a1 = v0;
    0x00401ff4 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x00401ff8 lui s4, 0x4a                  |         s4 = 0x4a0000;
    0x00401ffc jal 0x4461f8                  |         fcn_004461f8 ();
    0x00402000 lw t9, -0x4658(s4)            |         t9 = *((s4 - 4502));
    0x00402004 addiu a0, s0, -0x2b00         |         a0 = s0 + -0x2b00;
    0x00402008 addiu a1, zero, 0x25          |         a1 = 0x25;
    0x0040200c jalr t9                       |         t9 ();
    0x00402010 lui s6, 0x4a                  |         s6 = 0x4a0000;
                                             |         if (v0 != 0) {
    0x00402014 beqz v0, 0x402070             |             
    0x00402018 addiu a2, zero, 0x3ff         |             a2 = 0x3ff;
    0x0040201c addiu a1, v0, 1               |             a1 = v0 + 1;
    0x00402020 addiu a0, s6, -0x2f00         |             a0 = s6 + -0x2f00;
    0x00402024 sb zero, (v0)                 |             *(v0) = 0;
    0x00402028 jal 0x4461f8                  |             fcn_004461f8 ();
    0x0040202c lw s4, -0x4658(s4)            |             s4 = *((s4 - 4502));
    0x00402030 addiu v1, zero, 1             |             v1 = 1;
                                             |             /* str.USER */
    0x00402034 addiu a0, s1, -0x1bf0         |             a0 = s1 + -0x1bf0;
    0x00402038 lui v0, 0x4a                  |             v0 = 0x4a0000;
    0x0040203c sw v1, -0x2f04(v0)            |             *((v0 - 3009)) = v1;
    0x00402040 jal 0x486f30                  |             fcn_00486f30 ();
    0x00402044 move a0, v0                   |             a0 = v0;
    0x00402048 move t9, s4                   |             t9 = s4;
    0x0040204c addiu a1, zero, 0x25          |             a1 = 0x25;
    0x00402050 jalr t9                       |             t9 ();
    0x00402054 addiu a0, s6, -0x2f00         |             a0 = s6 + -0x2f00;
    0x00402058 move s1, v0                   |             s1 = v0;
    0x0040205c jal 0x487740                  |             fcn_00487740 ();
    0x00402060 move a2, v0                   |             a2 = v0;
    0x00402064 addiu a0, s1, 1               |             a0 = s1 + 1;
    0x00402068 addiu a1, zero, 0x58          |             a1 = 0x58;
    0x0040206c jal 0x487500                  |             fcn_00487500 ();
                                             |         }
    0x00402070 addiu a0, s0, -0x2b00         |         a0 = s0 + -0x2b00;
    0x00402074 jal 0x4456a0                  |         fcn_004456a0 ();
    0x00402078 lui s0, 0x46                  |         s0 = 0x460000;
                                             |     }
                                             |     /* str.PASSWD */
    0x0040207c addiu a0, s0, -0x1be8         |     a0 = "PASSWD";
    0x00402080 jal 0x486f30                  |     fcn_00486f30 ();
                                             |     if (v0 != 0) {
    0x00402084 beqz v0, 0x4020b4             |         
    0x00402088 nop                           |         
                                             |         /* str.PASSWD */
    0x0040208c addiu a0, s0, -0x1be8         |         a0 = s0 + -0x1be8;
    0x00402090 jal 0x486f30                  |         fcn_00486f30 ();
    0x00402094 lui a0, 0x4a                  |         a0 = 0x49d100;
    0x00402098 addiu a0, a0, -0x2f00         |         
    0x0040209c move a1, v0                   |         a1 = v0;
    0x004020a0 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x004020a4 jal 0x4461f8                  |         fcn_004461f8 ();
    0x004020a8 addiu v1, zero, 1             |         v1 = 1;
    0x004020ac lui v0, 0x4a                  |         v0 = 0x4a0000;
    0x004020b0 sw v1, -0x2f04(v0)            |         *((v0 - 3009)) = v1;
                                             |     }
    0x004020b4 lui s0, 0x46                  |     s0 = 0x460000;
                                             |     /* str.PASSWD_FD */
    0x004020b8 addiu a0, s0, -0x1be0         |     a0 = "PASSWD_FD";
    0x004020bc jal 0x486f30                  |     fcn_00486f30 ();
    0x004020c0 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x004020c4 beqz v0, 0x4027c0             |         goto label_34;
                                             |     }
                                             |     /* str.PASSWD_FD */
                                             | label_6:
    0x004020c8 addiu a0, s0, -0x1be0         |     a0 = s0 + -0x1be0;
    0x004020cc addiu v0, zero, -1            |     v0 = -1;
    0x004020d0 sw v0, 0x167c(sp)             |     *(var_167ch) = v0;
    0x004020d4 jal 0x486f30                  |     fcn_00486f30 ();
    0x004020d8 move s0, v0                   |     s0 = v0;
                                             |     if (v0 == 0) {
    0x004020dc beqz v0, 0x4027d8             |         goto label_35;
                                             |     }
    0x004020e0 addiu s1, sp, 0x20            |     s1 = sp + 0x20;
    0x004020e4 lui a1, 0x46                  |     a1 = 0x460000;
    0x004020e8 move a0, s1                   |     a0 = s1;
                                             |     /* str.descriptor_ */
    0x004020ec addiu a1, a1, -0x1bc8         |     a1 += -0x1bc8;
    0x004020f0 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x004020f4 jal 0x4461f8                  |     fcn_004461f8 ();
    0x004020f8 move a0, s1                   |     a0 = s1;
    0x004020fc move a1, s0                   |     a1 = s0;
    0x00402100 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x00402104 jal 0x4463d8                  |     fcn_004463d8 ();
    0x00402108 lui a1, 0x48                  |     a1 = 0x480000;
    0x0040210c move a0, s0                   |     a0 = s0;
                                             |     /* esilref: '&d' */
    0x00402110 addiu a1, a1, 0x5c4c          |     a1 += 0x5c4c;
    0x00402114 addiu a2, sp, 0x167c          |     a2 = sp + 0x167c;
    0x00402118 move s4, zero                 |     s4 = 0;
    0x0040211c jal 0x487420                  |     fcn_00487420 ();
                                             | label_8:
    0x00402120 addiu s0, sp, 0x420           |     s0 = sp + 0x420;
    0x00402124 sb zero, 0x420(sp)            |     *(var_420h) = 0;
    0x00402128 move s6, s0                   |     s6 = s0;
    0x0040212c addiu s1, zero, 0xa           |     s1 = 0xa;
                                             | label_3:
    0x00402130 subu v0, s6, s0               |     __asm ("subu v0, s6, s0");
    0x00402134 sltiu v0, v0, 0x80            |     v0 = (v0 < 0x80) ? 1 : 0;
    0x00402138 lw a0, 0x167c(sp)             |     a0 = *(var_167ch);
                                             |     if (v0 == 0) {
    0x0040213c beqz v0, 0x402244             |         goto label_36;
                                             |     }
    0x00402140 move a1, s6                   |     a1 = s6;
    0x00402144 addiu a2, zero, 1             |     a2 = 1;
    0x00402148 jal 0x487360                  |     fcn_00487360 ();
    0x0040214c addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v0 == 0) {
    0x00402150 beqz v0, 0x402238             |         goto label_37;
                                             |     }
    0x00402154 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (v0 == v1) {
    0x00402158 beq v0, v1, 0x402224          |         goto label_38;
                                             |     }
    0x0040215c lw s0, -0x3790(v0)            |     s0 = *((v0 - 3556));
    0x00402160 jal 0x4876a0                  |     fcn_004876a0 ();
    0x00402164 lw a0, (v0)                   |     a0 = *(v0);
    0x00402168 jal 0x486ee0                  |     fcn_00486ee0 ();
    0x0040216c lui a1, 0x46                  |     a1 = 0x460000;
    0x00402170 move a0, s0                   |     a0 = s0;
                                             |     /* str.Error_reading_password_from_file__s:__s_n */
    0x00402174 addiu a1, a1, -0x1b98         |     a1 += -0x1b98;
    0x00402178 addiu a2, sp, 0x20            |     a2 = sp + 0x20;
                                             | label_9:
    0x0040217c move a3, v0                   |     a3 = v0;
    0x00402180 jal 0x487250                  |     fcn_00487250 ();
    0x00402184 addiu a0, zero, 1             |     a0 = 1;
    0x00402188 jal 0x4876c0                  |     fcn_004876c0 ();
                                             | label_31:
    0x0040218c move a1, fp                   |     a1 = fp;
    0x00402190 addiu a2, zero, 2             |     a2 = 2;
    0x00402194 jal 0x487370                  |     fcn_00487370 ();
                                             |     if (v0 != 0) {
    0x00402198 bnez v0, 0x401ee4             |         goto label_1;
                                             |     }
    0x0040219c nop                           |     
    0x004021a0 lb v0, 2(s1)                  |     v0 = *((s1 + 2));
    0x004021a4 addiu v1, zero, 0x41          |     v1 = 0x41;
                                             |     if (v0 != 0) {
    0x004021a8 beqz v0, 0x4021e8             |         
    0x004021ac lui t9, 0x4a                  |         t9 = 0x4a0000;
                                             |         if (v0 == v1) {
    0x004021b0 beq v0, v1, 0x402210          |             goto label_39;
                                             |         }
    0x004021b4 lw v1, -0x469c(t9)            |         v1 = *((t9 - 4519));
    0x004021b8 addiu a0, s1, 2               |         a0 = s1 + 2;
    0x004021bc sw v1, 0x1694(sp)             |         *(var_1694h) = v1;
    0x004021c0 jal 0x4876f0                  |         fcn_004876f0 ();
    0x004021c4 lw v1, 0x1694(sp)             |         v1 = *(var_1694h);
    0x004021c8 sw v0, (v1)                   |         *(v1) = v0;
    0x004021cc b 0x401ee4                    |         goto label_1;
                                             |         /* str._usr_samba_config_smb.conf */
                                             | label_32:
    0x004021d0 addiu a0, t9, -0x7634         |         a0 = t9 + -0x7634;
    0x004021d4 addiu a1, s1, 2               |         a1 = s1 + 2;
    0x004021d8 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x004021dc jal 0x4461f8                  |         fcn_004461f8 ();
    0x004021e0 addiu s2, s2, 1               |         s2++;
    0x004021e4 b 0x401ee8                    |         goto label_2;
                                             |     }
    0x004021e8 lw a0, (s0)                   |     a0 = *(s0);
    0x004021ec addiu v0, zero, 0x41          |     v0 = 0x41;
                                             |     if (a0 != 0) {
    0x004021f0 beqz a0, 0x402364             |         
    0x004021f4 lb v1, (a0)                   |         v1 = *(a0);
    0x004021f8 lui t9, 0x4a                  |         t9 = 0x4a0000;
                                             |         if (v1 != v0) {
    0x004021fc beq v1, v0, 0x402210          |             
    0x00402200 lw s1, -0x469c(t9)            |             s1 = *((t9 - 4519));
    0x00402204 jal 0x4876f0                  |             fcn_004876f0 ();
    0x00402208 sw v0, (s1)                   |             *(s1) = v0;
    0x0040220c b 0x401ee4                    |             goto label_1;
                                             |         }
                                             | label_39:
    0x00402210 lui v1, 0x4a                  |         v1 = 0x4a0000;
    0x00402214 lw v0, -0x469c(v1)            |         v0 = *((v1 - 4519));
    0x00402218 addiu v1, zero, 0x2710        |         v1 = 0x2710;
    0x0040221c sw v1, (v0)                   |         *(v0) = v1;
    0x00402220 b 0x401ee4                    |         goto label_1;
                                             | label_38:
    0x00402224 lb v0, (s6)                   |         v0 = *(s6);
                                             |         if (v0 != s1) {
    0x00402228 beq v0, s1, 0x402238          |             
    0x0040222c nop                           |             
                                             |             if (v0 != 0) {
    0x00402230 bnez v0, 0x402374             |                 goto label_40;
                                             |             }
    0x00402234 nop                           |             
                                             |         }
                                             | label_37:
    0x00402238 lui v0, 0x4a                  |         v0 = 0x4a0000;
                                             |         if (s6 == s0) {
    0x0040223c beq s6, s0, 0x403148          |             goto label_41;
                                             |         }
    0x00402240 sb zero, (s6)                 |         *(s6) = 0;
                                             | label_36:
    0x00402244 lui a0, 0x4a                  |         a0 = 0x49d100;
                                             | label_4:
    0x00402248 addiu a0, a0, -0x2f00         |         
    0x0040224c move a1, s0                   |         a1 = s0;
    0x00402250 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x00402254 jal 0x4461f8                  |         fcn_004461f8 ();
                                             |         if (s4 != 0) {
    0x00402258 bnez s4, 0x4028c8             |             goto label_42;
                                             |         }
    0x0040225c nop                           |         
    0x00402260 addiu v1, zero, 1             |         v1 = 1;
                                             | label_11:
    0x00402264 lui v0, 0x4a                  |         v0 = 0x4a0000;
    0x00402268 sw v1, -0x2f04(v0)            |         *((v0 - 3009)) = v1;
    0x0040226c lui s0, 0x4a                  |         s0 = 0x4a0000;
                                             | label_7:
    0x00402270 lb v0, -0x2b00(s0)            |         v0 = *((s0 - 11008));
                                             |         if (v0 == 0) {
    0x00402274 beqz v0, 0x40290c             |             goto label_43;
                                             |         }
    0x00402278 nop                           |         
                                             | label_12:
    0x0040227c lw v1, 0x1690(sp)             |         v1 = *(var_1690h);
                                             | label_13:
    0x00402280 lw t9, 0x16c4(sp)             |         t9 = *(arg_16c4h);
                                             |         if (v1 != 0) {
    0x00402284 bnez v1, 0x402364             |             goto label_14;
                                             |         }
    0x00402288 addiu s6, zero, 0x2d          |         s6 = 0x2d;
    0x0040228c lw a1, 4(t9)                  |         a1 = *((t9 + 1));
    0x00402290 lb v0, (a1)                   |         v0 = *(a1);
    0x00402294 lui s1, 0x4a                  |         s1 = 0x4a0000;
                                             |         if (v0 == s6) {
    0x00402298 beq v0, s6, 0x402848          |             goto label_44;
                                             |         }
    0x0040229c addiu a0, s1, -0x2300         |         a0 = s1 + -0x2300;
    0x004022a0 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x004022a4 jal 0x4461f8                  |         fcn_004461f8 ();
    0x004022a8 addiu a0, s1, -0x2300         |         a0 = s1 + -0x2300;
    0x004022ac addiu a1, zero, 0x2f          |         a1 = 0x2f;
    0x004022b0 addiu a2, zero, 0x5c          |         a2 = 0x5c;
    0x004022b4 jal 0x445820                  |         fcn_00445820 ();
    0x004022b8 addiu a0, s1, -0x2300         |         a0 = s1 + -0x2300;
    0x004022bc addiu a1, zero, 0x5c          |         a1 = 0x5c;
    0x004022c0 jal 0x445f9c                  |         fcn_00445f9c ();
    0x004022c4 lw v1, 0x16c4(sp)             |         v1 = *(arg_16c4h);
    0x004022c8 sltiu v0, v0, 3               |         v0 = (v0 < 3) ? 1 : 0;
    0x004022cc addiu s3, s3, -1              |         s3 += -1;
    0x004022d0 addiu s4, v1, 4               |         s4 = v1 + 4;
                                             |         if (v0 != 0) {
    0x004022d4 bnez v0, 0x402e68             |             goto label_45;
                                             |         }
    0x004022d8 addiu v0, zero, 1             |         v0 = 1;
    0x004022dc lw t9, 0x16c4(sp)             |         t9 = *(arg_16c4h);
                                             |         if (s3 != v0) {
    0x004022e0 beq s3, v0, 0x402330          |             
    0x004022e4 lw a1, 8(t9)                  |             a1 = *((t9 + 2));
    0x004022e8 lb v1, (a1)                   |             v1 = *(a1);
    0x004022ec lui a0, 0x4a                  |             a0 = 0x4a0000;
                                             |             if (v1 == s6) {
    0x004022f0 beq v1, s6, 0x402330          |                 goto label_10;
                                             |             }
    0x004022f4 addiu a2, zero, 0x3ff         |             a2 = 0x3ff;
    0x004022f8 lui v1, 0x4a                  |             v1 = 0x4a0000;
    0x004022fc addiu a0, a0, -0x2f00         |             a0 += -0x2f00;
    0x00402300 sw v0, -0x2f04(v1)            |             *((v1 - 3009)) = v0;
    0x00402304 jal 0x4461f8                  |             fcn_004461f8 ();
    0x00402308 lw v1, 0x16c4(sp)             |             v1 = *(arg_16c4h);
    0x0040230c addiu s3, s3, -1              |             s3 += -1;
    0x00402310 lw s1, 8(v1)                  |             s1 = *((v1 + 2));
    0x00402314 addiu s4, v1, 8               |             s4 = v1 + 8;
    0x00402318 move a0, s1                   |             a0 = s1;
    0x0040231c jal 0x487740                  |             fcn_00487740 ();
    0x00402320 move a2, v0                   |             a2 = v0;
    0x00402324 move a0, s1                   |             a0 = s1;
    0x00402328 addiu a1, zero, 0x58          |             a1 = 0x58;
    0x0040232c jal 0x487500                  |             fcn_00487500 ();
                                             |         }
                                             | label_10:
    0x00402330 sw zero, 0x1688(sp)           |         *(var_1688h) = 0;
    0x00402334 lui s7, 0x46                  |         s7 = 0x460000;
    0x00402338 lui fp, 0x4a                  |         fp = 0x4a0000;
    0x0040233c move a0, s3                   |         a0 = s3;
    0x00402340 move a1, s4                   |         a1 = s4;
                                             |         /* str.s:O:R:M:i:Nn:d:Pp:l:hI:EU:L:t:m:W:T:D:c:b:A: */
    0x00402344 addiu a2, s7, -0x1ad0         |         a2 = s7 + -0x1ad0;
    0x00402348 jal 0x4874e0                  |         fcn_004874e0 ();
    0x0040234c addiu v1, zero, -1            |         v1 = -1;
    0x00402350 addiu v0, v0, -0x41           |         v0 += -0x41;
                                             |         if (v0 == v1) {
    0x00402354 beq v0, v1, 0x402968          |             goto label_46;
                                             |         }
    0x00402358 sltiu v1, v0, 0x34            |         v1 = (v0 < 0x34) ? 1 : 0;
    0x0040235c lui t9, 0x46                  |         t9 = 0x460000;
                                             |         if (v1 != 0) {
    0x00402360 bnez v1, 0x4023a4             |             goto label_47;
                                             |         }
                                             |     }
                                             | label_14:
    0x00402364 lw a0, 0x168c(sp)             |     a0 = *(var_168ch);
    0x00402368 jal 0x403420                  |     fcn_00403420 ();
    0x0040236c addiu a0, zero, 1             |     a0 = 1;
    0x00402370 jal 0x4876c0                  |     fcn_004876c0 ();
                                             | label_40:
    0x00402374 addiu s6, s6, 1               |     s6++;
    0x00402378 sb zero, (s6)                 |     *(s6) = 0;
                                             |     if (s6 != 0) {
    0x0040237c bnez s6, 0x402130             |         goto label_3;
                                             |     }
    0x00402380 lui a0, 0x4a                  |     a0 = 0x4a0000;
    0x00402384 b 0x402248                    |     goto label_4;
                                             | label_33:
    0x00402388 lw a0, -0x3790(v0)            |     a0 = *((v0 - 3556));
    0x0040238c lui a1, 0x46                  |     a1 = "Can't load %s - run testparm to debug it\n";
                                             |     /* str.Cant_load__s___run_testparm_to_debug_it_n */
    0x00402390 addiu a1, a1, -0x1c1c         |     
                                             |     /* str._usr_samba_config_smb.conf */
    0x00402394 addiu a2, s2, -0x7634         |     a2 = s2 + -0x7634;
    0x00402398 jal 0x487250                  |     fcn_00487250 ();
    0x0040239c b 0x401f88                    |     goto label_5;
    0x004023a0 nop                           |     
                                             | label_47:
    0x004023a4 sll v0, v0, 2                 |     v0 <<= 2;
    0x004023a8 addiu t9, t9, -0x10e0         |     t9 += -0x10e0;
    0x004023ac addu v0, t9, v0               |     v0 = t9 + v0;
    0x004023b0 lw v0, (v0)                   |     v0 = *(v0);
    0x004023b4 jr v0                         |     v0 ();
    0x004023b8 nop                           |     
                                             |     /* str.PASSWD_FILE */
                                             | label_34:
    0x004027c0 addiu a0, a0, -0x1bd4         |     a0 += -0x1bd4;
    0x004027c4 jal 0x486f30                  |     fcn_00486f30 ();
                                             |     if (v0 != 0) {
    0x004027c8 bnez v0, 0x4020c8             |         goto label_6;
                                             |     }
    0x004027cc nop                           |     
    0x004027d0 lui s0, 0x4a                  |     s0 = 0x4a0000;
    0x004027d4 b 0x402270                    |     goto label_7;
                                             | label_35:
    0x004027d8 lui a0, 0x46                  |     a0 = "PASSWD_FILE";
                                             |     /* str.PASSWD_FILE */
    0x004027dc addiu a0, a0, -0x1bd4         |     
    0x004027e0 jal 0x486f30                  |     fcn_00486f30 ();
    0x004027e4 move s0, v0                   |     s0 = v0;
                                             |     if (v0 == 0) {
    0x004027e8 beqz v0, 0x402904             |         goto label_48;
                                             |     }
    0x004027ec move a0, v0                   |     a0 = v0;
    0x004027f0 move a1, zero                 |     a1 = 0;
    0x004027f4 move a2, zero                 |     a2 = 0;
    0x004027f8 addiu s1, sp, 0x20            |     s1 = sp + 0x20;
    0x004027fc jal 0x43e168                  |     fcn_0043e168 ();
    0x00402800 move a0, s1                   |     a0 = s1;
    0x00402804 move a1, s0                   |     a1 = s0;
    0x00402808 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x0040280c sw v0, 0x167c(sp)             |     *(var_167ch) = v0;
    0x00402810 jal 0x4461f8                  |     fcn_004461f8 ();
    0x00402814 lw v0, 0x167c(sp)             |     v0 = *(var_167ch);
    0x00402818 addiu s4, zero, 1             |     s4 = 1;
                                             |     if (v0 >= 0) {
    0x0040281c bgez v0, 0x402120             |         goto label_8;
                                             |     }
    0x00402820 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00402824 lw s0, -0x3790(v0)            |     s0 = *((v0 - 3556));
    0x00402828 jal 0x4876a0                  |     fcn_004876a0 ();
    0x0040282c lw a0, (v0)                   |     a0 = *(v0);
    0x00402830 jal 0x486ee0                  |     fcn_00486ee0 ();
    0x00402834 lui a1, 0x46                  |     a1 = 0x460000;
    0x00402838 move a0, s0                   |     a0 = s0;
                                             |     /* str.Error_opening_PASSWD_FILE__s:__s_n */
    0x0040283c addiu a1, a1, -0x1bbc         |     a1 += -0x1bbc;
    0x00402840 move a2, s1                   |     a2 = s1;
    0x00402844 b 0x40217c                    |     goto label_9;
                                             | label_44:
    0x00402848 lw s4, 0x16c4(sp)             |     s4 = *(arg_16c4h);
    0x0040284c b 0x402330                    |     goto label_10;
                                             | label_42:
    0x004028c8 lw a0, 0x167c(sp)             |     a0 = *(var_167ch);
    0x004028cc jal 0x487800                  |     fcn_00487800 ();
    0x004028d0 addiu v1, zero, 1             |     v1 = 1;
    0x004028d4 b 0x402264                    |     goto label_11;
                                             | label_48:
    0x00402904 move s4, zero                 |     s4 = 0;
    0x00402908 b 0x402120                    |     goto label_8;
                                             | label_43:
    0x0040290c lui s1, 0x46                  |     s1 = 0x460000;
                                             |     /* str.LOGNAME */
    0x00402910 addiu a0, s1, -0x1b5c         |     a0 = "LOGNAME";
    0x00402914 jal 0x486f30                  |     fcn_00486f30 ();
    0x00402918 lb v0, -0x2b00(s0)            |     v0 = *((s0 - 11008));
                                             |     if (v0 != 0) {
    0x0040291c beqz v0, 0x402944             |         
                                             |         /* str.LOGNAME */
    0x00402920 addiu a0, s1, -0x1b5c         |         a0 = s1 + -0x1b5c;
    0x00402924 jal 0x486f30                  |         fcn_00486f30 ();
    0x00402928 move a1, v0                   |         a1 = v0;
    0x0040292c addiu a0, s0, -0x2b00         |         a0 = s0 + -0x2b00;
    0x00402930 addiu a2, zero, 0x3ff         |         a2 = 0x3ff;
    0x00402934 jal 0x4461f8                  |         fcn_004461f8 ();
    0x00402938 addiu a0, s0, -0x2b00         |         a0 = s0 + -0x2b00;
    0x0040293c jal 0x4456a0                  |         fcn_004456a0 ();
    0x00402940 lb v0, -0x2b00(s0)            |         v0 = *((s0 - 11008));
                                             |     }
    0x00402944 lui a0, 0x4a                  |     a0 = 0x4a0000;
                                             |     if (v0 != 0) {
    0x00402948 bnez v0, 0x40227c             |         goto label_12;
                                             |     }
    0x0040294c lui a1, 0x46                  |     a1 = 0x460000;
    0x00402950 addiu a0, a0, -0x2b00         |     a0 += -0x2b00;
                                             |     /* str.GUEST */
    0x00402954 addiu a1, a1, -0x1b54         |     a1 += -0x1b54;
    0x00402958 addiu a2, zero, 0x3ff         |     a2 = 0x3ff;
    0x0040295c jal 0x4461f8                  |     fcn_004461f8 ();
    0x00402960 lw v1, 0x1690(sp)             |     v1 = *(var_1690h);
    0x00402964 b 0x402280                    |     goto label_13;
                                             | label_46:
    0x00402968 lui s1, 0x4b                  |     s1 = 0x4b0000;
    0x0040296c lb a0, -0x6930(s1)            |     a0 = *((s1 - 26928));
    0x00402970 addiu v0, s1, -0x6930         |     v0 = s1 + -0x6930;
                                             |     if (a0 == 0) {
    0x00402974 movn v0, zero, a0             |         v0 = 0;
                                             |     }
    0x00402978 move a0, v0                   |     a0 = v0;
    0x0040297c jal 0x44e75c                  |     fcn_0044e75c ();
    0x00402980 lb v0, 0x820(sp)              |     v0 = *(var_820h);
    0x00402984 lb v0, 0xc20(sp)              |     v0 = *(var_c20h);
                                             |     if (v0 != 0) {
    0x00402988 beqz v0, 0x402998             |         
    0x0040298c addiu a0, sp, 0x820           |         a0 = sp + 0x820;
    0x00402990 jal 0x414dc4                  |         fcn_00414dc4 ();
    0x00402994 lb v0, 0xc20(sp)              |         v0 = *(var_c20h);
                                             |     }
    0x00402998 lui s2, 0x4a                  |     s2 = 0x4a0000;
                                             |     if (v0 != 0) {
    0x0040299c beqz v0, 0x4029ac             |         
    0x004029a0 addiu a0, sp, 0xc20           |         a0 = sp + 0xc20;
    0x004029a4 jal 0x43beec                  |         fcn_0043beec ();
    0x004029a8 lui s2, 0x4a                  |         s2 = 0x4a0000;
                                             |     }
    0x004029ac lb v0, -0x1af0(s2)            |     v0 = *((s2 - 6896));
    0x004029b0 lui s3, 0x4b                  |     s3 = 0x4b0000;
                                             |     if (v0 != 0) {
    0x004029b4 bnez v0, 0x4029e0             |         goto label_49;
                                             |     }
    0x004029b8 lb v0, 0x1020(sp)             |     v0 = *(var_1020h);
    0x004029bc lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 != 0) {
    0x004029c0 bnez v0, 0x4029e4             |         goto label_50;
                                             |     }
    0x004029c4 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x004029c8 lb v0, -0x2300(v0)            |     v0 = *((v0 - 8960));
    0x004029cc lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 != 0) {
    0x004029d0 bnez v0, 0x4029e4             |         goto label_50;
                                             |     }
    0x004029d4 lw t9, 0x1688(sp)             |     t9 = *(var_1688h);
                                             |     if (t9 == 0) {
    0x004029d8 beqz t9, 0x402364             |         goto label_14;
                                             |     }
    0x004029dc nop                           |     
                                             | label_49:
    0x004029e0 lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             | label_50:
    0x004029e4 slti v0, v0, 3                |     v0 = (v0 < 3) ? 1 : 0;
    0x004029e8 lui a1, 0x46                  |     a1 = 0x460000;
    0x004029ec beqz v0, 0x402b20             |     
                                             |     while (v0 == 0) {
    0x004029f0 lb v0, -0x1af0(s2)            |         v0 = *((s2 - 6896));
                                             | label_15:
    0x004029f4 lui v0, 0x4a                  |         v0 = 0x4a0000;
                                             |         if (v0 != 0) {
    0x004029f8 beqz v0, 0x402a80             |             
    0x004029fc lw a0, -0x1b00(v0)            |             a0 = *((v0 - 1728));
    0x00402a00 lui s2, 0x4a                  |             s2 = 0x4a0000;
                                             |             if (a0 != 0) {
    0x00402a04 beqz a0, 0x402a10             |                 
    0x00402a08 jal 0x408c6c                  |                 fcn_00408c6c ();
    0x00402a0c nop                           |                 
                                             |             }
    0x00402a10 lw v0, -0x3804(s2)            |             v0 = *((s2 - 3585));
    0x00402a14 lui a0, 0x4a                  |             a0 = 0x4a0000;
                                             |             if (v0 == 0) {
    0x00402a18 beqz v0, 0x402d14             |                 goto label_51;
                                             |             }
                                             | label_19:
    0x00402a1c lb v0, 0x1520(sp)             |             v0 = *(var_1520h);
    0x00402a20 addiu a0, zero, 1             |             a0 = 1;
    0x00402a24 lui v1, 0x4a                  |             v1 = 0x4a0000;
    0x00402a28 sw a0, -0x1afc(v1)            |             *((v1 - 1727)) = a0;
                                             |             if (v0 != 0) {
    0x00402a2c beqz v0, 0x402a38             |                 
    0x00402a30 addiu a0, sp, 0x1520          |                 a0 = sp + 0x1520;
    0x00402a34 jal 0x404238                  |                 fcn_00404238 ();
                                             |             }
    0x00402a38 jal 0x40bd6c                  |             fcn_0040bd6c ();
    0x00402a3c nop                           |             
    0x00402a40 lw a0, -0x3804(s2)            |             a0 = *((s2 - 3585));
    0x00402a44 move s0, v0                   |             s0 = v0;
    0x00402a48 jal 0x41650c                  |             fcn_0041650c ();
                                             | label_16:
    0x00402a4c lw ra, 0x16bc(sp)             |             ra = *(var_16bch);
                                             |         }
    0x00402a80 lui v0, 0x4a                  |         v0 = 0x4a0000;
    0x00402a84 lw t9, -0x4658(v0)            |         t9 = *((v0 - 4502));
    0x00402a88 addiu a0, sp, 0x1020          |         a0 = sp + 0x1020;
    0x00402a8c addiu a1, zero, 0x23          |         a1 = 0x23;
    0x00402a90 jalr t9                       |         t9 ();
    0x00402a94 lui a1, 0x46                  |         a1 = 0x460000;
                                             |         if (v0 != 0) {
    0x00402a98 beqz v0, 0x402ab4             |             
    0x00402a9c lui a2, 0x4a                  |             a2 = 0x4a0000;
    0x00402aa0 sb zero, (v0)                 |             *(v0) = 0;
    0x00402aa4 addiu a0, v0, 1               |             a0 = v0 + 1;
                                             |             /* esilref: '&x' */
    0x00402aa8 addiu a1, a1, -0x1a80         |             a1 += -0x1a80;
    0x00402aac addiu a2, a2, -0x7640         |             a2 += -0x7640;
    0x00402ab0 jal 0x487420                  |             fcn_00487420 ();
                                             |         }
    0x00402ab4 lb v0, 0x1020(sp)             |         v0 = *(var_1020h);
    0x00402ab8 lw v1, 0x1688(sp)             |         v1 = *(var_1688h);
                                             |         if (v0 != 0) {
    0x00402abc bnez v0, 0x402c0c             |             goto label_52;
                                             |         }
                                             |         if (v1 != 0) {
    0x00402ac0 bnez v1, 0x402b58             |             goto label_53;
                                             |         }
    0x00402ac4 nop                           |         
    0x00402ac8 lui a0, 0x4a                  |         a0 = 0x4a0000;
    0x00402acc lui a1, 0x4a                  |         a1 = 0x4a0000;
    0x00402ad0 addiu a0, a0, -0x1f00         |         a0 += -0x1f00;
    0x00402ad4 addiu a1, a1, -0x2300         |         a1 += -0x2300;
    0x00402ad8 jal 0x408690                  |         fcn_00408690 ();
    0x00402adc lui s2, 0x4a                  |         s2 = 0x4a0000;
    0x00402ae0 sw v0, -0x3804(s2)            |         *((s2 - 3585)) = v0;
                                             |         if (v0 == 0) {
    0x00402ae4 beqz v0, 0x402c04             |             goto label_21;
                                             |         }
    0x00402ae8 lb v0, 0x1520(sp)             |         v0 = *(var_1520h);
                                             |         if (v0 != 0) {
    0x00402aec bnez v0, 0x402d04             |             goto label_54;
                                             |         }
    0x00402af0 nop                           |         
    0x00402af4 lui v0, 0x4a                  |         v0 = 0x4a0000;
                                             | label_18:
    0x00402af8 lw a0, -0x1b00(v0)            |         a0 = *((v0 - 1728));
    0x00402afc lui s4, 0x46                  |         s4 = 0x460000;
                                             |         if (a0 == 0) {
    0x00402b00 beqz a0, 0x402e88             |             goto label_55;
                                             |         }
    0x00402b04 jal 0x408c6c                  |         fcn_00408c6c ();
    0x00402b08 nop                           |         
                                             | label_17:
    0x00402b0c lw a0, -0x3804(s2)            |         a0 = *((s2 - 3585));
    0x00402b20 lui a2, 0x46                  |         a2 = 0x460000;
    0x00402b24 addiu a0, zero, 3             |         a0 = 3;
                                             |         /* str.client_client.c */
    0x00402b28 addiu a1, a1, -0x2d20         |         a1 += -0x2d20;
                                             |         /* str.main */
    0x00402b2c addiu a2, a2, -0xf80          |         a2 += -0xf80;
    0x00402b30 addiu a3, zero, 0xaf9         |         a3 = 0xaf9;
    0x00402b34 jal 0x4381b8                  |         fcn_004381b8 ();
    0x00402b38 lui a0, 0x46                  |         a0 = 0x460000;
    0x00402b3c beqz v0, 0x4029f0             |         
                                             |     }
    0x00402b40 lui a1, 0x46                  |     a1 = 0x460000;
                                             |     /* str.Client_started__version__s_._n */
    0x00402b44 addiu a0, a0, -0x1aa0         |     a0 += -0x1aa0;
                                             |     /* str.2.2.7a */
    0x00402b48 addiu a1, a1, -0x2cd8         |     a1 += -0x2cd8;
    0x00402b4c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00402b50 lb v0, -0x1af0(s2)            |     v0 = *((s2 - 6896));
    0x00402b54 b 0x4029f4                    |     goto label_15;
                                             | label_53:
    0x00402b58 addiu a0, sp, 0x1680          |     a0 = sp + 0x1680;
    0x00402b5c jal 0x44eb3c                  |     fcn_0044eb3c ();
    0x00402b60 lui s2, 0x4a                  |     s2 = 0x4a0000;
    0x00402b64 addiu a1, s1, -0x6930         |     a1 = s1 + -0x6930;
    0x00402b68 addiu a0, sp, 0x1420          |     a0 = sp + 0x1420;
    0x00402b6c move a2, zero                 |     a2 = 0;
    0x00402b70 jal 0x4258b4                  |     fcn_004258b4 ();
    0x00402b74 lw a2, -0x7640(s2)            |     a2 = *((s2 - 7568));
    0x00402b78 lui s1, 0x4a                  |     s1 = 0x4a0000;
    0x00402b7c addiu a0, sp, 0x1620          |     a0 = sp + 0x1620;
    0x00402b80 addiu a1, s1, -0x1f00         |     a1 = s1 + -0x1f00;
    0x00402b84 jal 0x4258b4                  |     fcn_004258b4 ();
    0x00402b88 addiu a0, sp, 0x1680          |     a0 = sp + 0x1680;
    0x00402b8c jal 0x44eb3c                  |     fcn_0044eb3c ();
    0x00402b90 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00402b94 lw v0, -0x2f08(v0)            |     v0 = *((v0 - 3010));
    0x00402b98 lw a2, -0x7640(s2)            |     a2 = *((s2 - 7568));
                                             |     if (v0 == 0) {
    0x00402b9c beqz v0, 0x402d34             |         goto label_56;
                                             |     }
    0x00402ba0 lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00402ba4 lw v0, -0x3800(v0)            |     v0 = *((v0 - 3584));
    0x00402ba8 sw v0, 0x1680(sp)             |     *(var_1680h) = v0;
                                             | label_20:
    0x00402bac move a0, zero                 |     a0 = 0;
    0x00402bb0 jal 0x4162b8                  |     fcn_004162b8 ();
    0x00402bb4 lui s2, 0x4a                  |     s2 = 0x4a0000;
    0x00402bb8 sw v0, -0x3804(s2)            |     *((s2 - 3585)) = v0;
                                             |     if (v0 != 0) {
    0x00402bbc beqz v0, 0x402bd8             |         
    0x00402bc0 lui v1, 0x4a                  |         v1 = 0x4a0000;
    0x00402bc4 lw a1, -0x763c(v1)            |         a1 = *((v1 - 7567));
    0x00402bc8 move a0, v0                   |         a0 = v0;
    0x00402bcc jal 0x415d80                  |         fcn_00415d80 ();
    0x00402bd0 addiu a1, s1, -0x1f00         |         a1 = s1 + -0x1f00;
                                             |         if (v0 != 0) {
    0x00402bd4 bnez v0, 0x402d90             |             goto label_57;
                                             |         }
                                             |     }
    0x00402bd8 lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             | label_22:
    0x00402bdc lui a1, 0x46                  |     a1 = 0x460000;
                                             |     if (v0 < 0) {
    0x00402be0 bltz v0, 0x402c04             |         goto label_21;
                                             |     }
    0x00402be4 lui a2, 0x46                  |     a2 = 0x460000;
    0x00402be8 move a0, zero                 |     a0 = 0;
                                             |     /* str.client_client.c */
    0x00402bec addiu a1, a1, -0x2d20         |     a1 += -0x2d20;
                                             |     /* str.do_message_op */
    0x00402bf0 addiu a2, a2, -0xdb8          |     a2 += -0xdb8;
    0x00402bf4 addiu a3, zero, 0x992         |     a3 = 0x992;
    0x00402bf8 jal 0x4381b8                  |     fcn_004381b8 ();
    0x00402bfc lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 != 0) {
    0x00402c00 bnez v0, 0x402cf0             |         goto label_58;
                                             |     }
                                             |     do {
                                             | label_21:
    0x00402c04 addiu s0, zero, 1             |         s0 = 1;
    0x00402c08 b 0x402a4c                    |         goto label_16;
                                             | label_52:
    0x00402c0c lui a1, 0x46                  |         a1 = 0x460000;
    0x00402c10 addiu a0, sp, 0x1020          |         a0 = sp + 0x1020;
                                             |         /* str.IPC_ */
    0x00402c14 addiu a1, a1, -0x1a7c         |         a1 += -0x1a7c;
    0x00402c18 jal 0x408690                  |         fcn_00408690 ();
    0x00402c1c lui s2, 0x4a                  |         s2 = 0x4a0000;
    0x00402c20 sw v0, -0x3804(s2)            |         *((s2 - 3585)) = v0;
    0x00402c24 beqz v0, 0x402c04             |         
                                             |     } while (v0 == 0);
    0x00402c28 lui a0, 0x46                  |     a0 = "\n\tSharename      Type      Comment";
                                             |     /* str._n_tSharename______Type______Comment */
    0x00402c2c addiu a0, a0, -0x1a74         |     
    0x00402c30 jal 0x486fe0                  |     fcn_00486fe0 ();
    0x00402c34 lui a0, 0x46                  |     a0 = "\t---------      ----      -------";
                                             |     /* str._t________________________________ */
    0x00402c38 addiu a0, a0, -0x1a50         |     
    0x00402c3c jal 0x486fe0                  |     fcn_00486fe0 ();
    0x00402c40 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402c44 lui a1, 0x40                  |     a1 = 0x405454;
    0x00402c48 addiu a1, a1, 0x5454          |     
    0x00402c4c move a2, zero                 |     a2 = 0;
    0x00402c50 jal 0x41b718                  |     fcn_0041b718 ();
    0x00402c54 addiu v1, zero, -1            |     v1 = -1;
    0x00402c58 lw v0, -0x3804(s2)            |     v0 = *((s2 - 3585));
                                             |     if (v0 == v1) {
    0x00402c5c bne v0, v1, 0x402c7c          |         
    0x00402c60 lw a0, -0x3804(s2)            |         a0 = *((s2 - 3585));
    0x00402c64 jal 0x41cccc                  |         fcn_0041cccc ();
    0x00402c68 lui a0, 0x46                  |         a0 = "Error returning browse list: %s\n";
                                             |         /* str.Error_returning_browse_list:__s_n */
    0x00402c6c addiu a0, a0, -0x1a2c         |         
    0x00402c70 move a1, v0                   |         a1 = v0;
    0x00402c74 jal 0x486ea0                  |         fcn_00486ea0 ();
    0x00402c78 lw v0, -0x3804(s2)            |         v0 = *((s2 - 3585));
                                             |     }
    0x00402c7c addiu v0, v0, 0x624           |     v0 += 0x624;
    0x00402c80 lui s3, 0x4a                  |     s3 = 0x4a0000;
                                             |     if (v0 == 0) {
    0x00402c84 beqz v0, 0x402b0c             |         goto label_17;
                                             |     }
    0x00402c88 lui a0, 0x46                  |     a0 = "\n\tServer               Comment";
                                             |     /* str._n_tServer_______________Comment */
    0x00402c8c addiu a0, a0, -0x1a08         |     
    0x00402c90 lui s0, 0x46                  |     s0 = 0x460000;
    0x00402c94 jal 0x486fe0                  |     fcn_00486fe0 ();
                                             |     /* str._t____________________________ */
    0x00402c98 addiu a0, s0, -0x19e8         |     a0 = s0 + -0x19e8;
    0x00402c9c jal 0x486fe0                  |     fcn_00486fe0 ();
    0x00402ca0 lw a0, -0x3804(s3)            |     a0 = *((s3 - 3585));
    0x00402ca4 lui s1, 0x40                  |     s1 = 0x400000;
    0x00402ca8 addiu a2, zero, -1            |     a2 = -1;
    0x00402cac addiu a1, a0, 0x624           |     a1 = a0 + 0x624;
    0x00402cb0 addiu a3, s1, 0x5538          |     a3 = s1 + 0x5538;
    0x00402cb4 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00402cb8 jal 0x41ba14                  |     fcn_0041ba14 ();
    0x00402cbc lui a0, 0x46                  |     a0 = "\n\tWorkgroup            Master";
                                             |     /* str._n_tWorkgroup____________Master */
    0x00402cc0 addiu a0, a0, -0x19c8         |     
    0x00402cc4 jal 0x486fe0                  |     fcn_00486fe0 ();
                                             |     /* str._t____________________________ */
    0x00402cc8 addiu a0, s0, -0x19e8         |     a0 = s0 + -0x19e8;
    0x00402ccc jal 0x486fe0                  |     fcn_00486fe0 ();
    0x00402cd0 lw a0, -0x3804(s3)            |     a0 = *((s3 - 3585));
    0x00402cd4 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00402cd8 lui a2, 0x8000                |     a2 = 0x80000000;
    0x00402cdc addiu a1, a0, 0x624           |     a1 = a0 + 0x624;
    0x00402ce0 addiu a3, s1, 0x5538          |     a3 = s1 + 0x5538;
    0x00402ce4 jal 0x41ba14                  |     fcn_0041ba14 ();
    0x00402ce8 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402cec b 0x402b10                    |     void (*0x402b10)() ();
                                             |     /* str.Connection_to__s_failed_n */
                                             | label_58:
    0x00402cf0 addiu a0, a0, -0x1d94         |     a0 += -0x1d94;
    0x00402cf4 addiu a1, s1, -0x1f00         |     a1 = s1 + -0x1f00;
    0x00402cf8 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00402cfc addiu s0, zero, 1             |     s0 = 1;
    0x00402d00 b 0x402a4c                    |     goto label_16;
                                             | label_54:
    0x00402d04 addiu a0, sp, 0x1520          |     a0 = sp + 0x1520;
    0x00402d08 jal 0x404238                  |     fcn_00404238 ();
    0x00402d0c lui v0, 0x4a                  |     v0 = 0x4a0000;
    0x00402d10 b 0x402af8                    |     goto label_18;
                                             | label_51:
    0x00402d14 lui a1, 0x4a                  |     a1 = 0x4a0000;
    0x00402d18 addiu a0, a0, -0x1f00         |     a0 += -0x1f00;
    0x00402d1c addiu a1, a1, -0x2300         |     a1 += -0x2300;
    0x00402d20 jal 0x408690                  |     fcn_00408690 ();
    0x00402d24 sw v0, -0x3804(s2)            |     *((s2 - 3585)) = v0;
                                             |     if (v0 != 0) {
    0x00402d28 bnez v0, 0x402a1c             |         goto label_19;
                                             |     }
    0x00402d2c addiu s0, zero, 1             |     s0 = 1;
    0x00402d30 b 0x402a4c                    |     goto label_16;
                                             | label_56:
    0x00402d34 addiu v0, zero, 0x20          |     v0 = 0x20;
    0x00402d38 addiu a0, s1, -0x1f00         |     a0 = s1 + -0x1f00;
                                             |     if (a2 == v0) {
    0x00402d3c beq a2, v0, 0x402bac          |         goto label_20;
                                             |     }
    0x00402d40 addiu a1, sp, 0x1680          |     a1 = sp + 0x1680;
    0x00402d44 jal 0x423968                  |     fcn_00423968 ();
    0x00402d48 lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 != 0) {
    0x00402d4c bnez v0, 0x402bac             |         goto label_20;
                                             |     }
    0x00402d50 lui a1, 0x46                  |     a1 = 0x460000;
                                             |     if (v0 < 0) {
    0x00402d54 bltz v0, 0x402c04             |         goto label_21;
                                             |     }
    0x00402d58 lui a2, 0x46                  |     a2 = 0x460000;
    0x00402d5c move a0, zero                 |     a0 = 0;
                                             |     /* str.client_client.c */
    0x00402d60 addiu a1, a1, -0x2d20         |     a1 += -0x2d20;
                                             |     /* str.do_message_op */
    0x00402d64 addiu a2, a2, -0xdb8          |     a2 += -0xdb8;
    0x00402d68 addiu a3, zero, 0x98c         |     a3 = 0x98c;
    0x00402d6c jal 0x4381b8                  |     fcn_004381b8 ();
    0x00402d70 lw a2, -0x7640(s2)            |     a2 = *((s2 - 7568));
                                             |     if (v0 == 0) {
    0x00402d74 beqz v0, 0x402c04             |         goto label_21;
                                             |     }
    0x00402d78 lui a0, 0x46                  |     a0 = "Cannot resolve name %s#0x%x\n";
                                             |     /* str.Cannot_resolve_name__s0x_x_n */
    0x00402d7c addiu a0, a0, -0x19a8         |     
    0x00402d80 addiu a1, s1, -0x1f00         |     a1 = s1 + -0x1f00;
    0x00402d84 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00402d88 addiu s0, zero, 1             |     s0 = 1;
    0x00402d8c b 0x402a4c                    |     goto label_16;
                                             | label_57:
    0x00402d90 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402d94 addiu a2, sp, 0x1680          |     a2 = sp + 0x1680;
    0x00402d98 jal 0x418234                  |     fcn_00418234 ();
    0x00402d9c lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 == 0) {
    0x00402da0 beqz v0, 0x402bdc             |         goto label_22;
                                             |     }
    0x00402da4 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402da8 addiu a1, sp, 0x1420          |     a1 = sp + 0x1420;
    0x00402dac addiu a2, sp, 0x1620          |     a2 = sp + 0x1620;
    0x00402db0 jal 0x417e98                  |     fcn_00417e98 ();
    0x00402db4 lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 == 0) {
    0x00402db8 bnez v0, 0x402e00             |         
    0x00402dbc lui a1, 0x46                  |         a1 = 0x460000;
                                             |         if (v0 >= 0) {
    0x00402dc0 bltz v0, 0x402dec             |             
    0x00402dc4 lui a2, 0x46                  |             a2 = 0x460000;
    0x00402dc8 move a0, zero                 |             a0 = 0;
                                             |             /* str.client_client.c */
    0x00402dcc addiu a1, a1, -0x2d20         |             a1 += -0x2d20;
                                             |             /* str.do_message_op */
    0x00402dd0 addiu a2, a2, -0xdb8          |             a2 += -0xdb8;
    0x00402dd4 addiu a3, zero, 0x997         |             a3 = 0x997;
    0x00402dd8 jal 0x4381b8                  |             fcn_004381b8 ();
    0x00402ddc lui a0, 0x46                  |             a0 = 0x460000;
                                             |             if (v0 == 0) {
    0x00402de0 beqz v0, 0x402dec             |                 goto label_59;
                                             |             }
                                             |             /* str.session_request_failed_n */
    0x00402de4 addiu a0, a0, -0x1988         |             a0 += -0x1988;
    0x00402de8 jal 0x437cc4                  |             fcn_00437cc4 ();
                                             |         }
                                             | label_59:
    0x00402dec lw a0, -0x3804(s2)            |         a0 = *((s2 - 3585));
    0x00402df0 addiu s0, zero, 1             |         s0 = 1;
    0x00402df4 jal 0x41650c                  |         fcn_0041650c ();
    0x00402df8 lw ra, 0x16bc(sp)             |         ra = *(var_16bch);
    0x00402dfc b 0x402a50                    |         void (*0x402a50)() ();
                                             |     }
    0x00402e00 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402e04 lui a1, 0x4a                  |     a1 = 0x49e100;
    0x00402e08 addiu a1, a1, -0x1f00         |     
    0x00402e0c addiu a2, s0, -0x2b00         |     a2 = s0 + -0x2b00;
    0x00402e10 addiu a3, sp, 0x167c          |     a3 = sp + 0x167c;
    0x00402e14 jal 0x41d230                  |     fcn_0041d230 ();
    0x00402e18 lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 != 0) {
    0x00402e1c bnez v0, 0x402f28             |         goto label_60;
                                             |     }
    0x00402e20 lui a1, 0x46                  |     a1 = 0x460000;
                                             |     if (v0 < 0) {
    0x00402e24 bltz v0, 0x402b0c             |         goto label_17;
                                             |     }
    0x00402e28 lui a2, 0x46                  |     a2 = 0x460000;
    0x00402e2c move a0, zero                 |     a0 = 0;
                                             |     /* str.client_client.c */
    0x00402e30 addiu a1, a1, -0x2d20         |     a1 += -0x2d20;
                                             |     /* str.send_message */
    0x00402e34 addiu a2, a2, -0xda8          |     a2 += -0xda8;
    0x00402e38 addiu a3, zero, 0xa9          |     a3 = 0xa9;
    0x00402e3c jal 0x4381b8                  |     fcn_004381b8 ();
                                             |     if (v0 == 0) {
    0x00402e40 beqz v0, 0x402b0c             |         goto label_17;
                                             |     }
    0x00402e44 nop                           |     
    0x00402e48 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402e4c jal 0x41cccc                  |     fcn_0041cccc ();
    0x00402e50 lui a0, 0x46                  |     a0 = "message start: %s\n";
                                             |     /* str.message_start:__s_n */
    0x00402e54 addiu a0, a0, -0x1970         |     
    0x00402e58 move a1, v0                   |     a1 = v0;
    0x00402e5c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x00402e60 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00402e64 b 0x402b10                    |     void (*0x402b10)() ();
                                             | label_45:
    0x00402e68 lw a0, 0x168c(sp)             |     a0 = *(var_168ch);
    0x00402e6c jal 0x403420                  |     fcn_00403420 ();
    0x00402e70 lui a0, 0x46                  |     a0 = "\n%s: Not enough '\\' characters in service\n";
                                             |     /* str._n_s:_Not_enough__characters_in_service_n */
    0x00402e74 addiu a0, a0, -0x1b4c         |     
    0x00402e78 addiu a1, s1, -0x2300         |     a1 = s1 + -0x2300;
    0x00402e7c jal 0x486ea0                  |     fcn_00486ea0 ();
    0x00402e80 addiu a0, zero, 1             |     a0 = 1;
    0x00402e84 jal 0x4876c0                  |     fcn_004876c0 ();
                                             | label_55:
    0x00402e88 addiu s1, sp, 0x20            |     s1 = sp + 0x20;
    0x00402e8c lui fp, 0x46                  |     fp = 0x460000;
    0x00402e90 lui s7, 0x4a                  |     s7 = 0x4a0000;
    0x00402e94 lui s6, 0x40                  |     s6 = 0x400000;
    0x00402e98 lui s5, 0x40                  |     s5 = 0x400000;
                                             |     /* str.client_client.c */
    0x00402e9c addiu s4, s4, -0x2d20         |     s4 += -0x2d20;
    0x00402ea0 lui s0, 0x46                  |     s0 = 0x460000;
                                             | label_29:
    0x00402ea4 move a0, s1                   |     a0 = s1;
                                             | label_23:
    0x00402ea8 addiu a1, zero, 0xff          |     a1 = 0xff;
                                             |     /* str.smb:__s__ */
    0x00402eac addiu a2, fp, -0x18b8         |     a2 = fp + -0x18b8;
    0x00402eb0 addiu a3, s7, -0x7a40         |     a3 = s7 + -0x7a40;
    0x00402eb4 jal 0x444430                  |     sym_snprintf ()
    0x00402eb8 move a0, s1                   |     a0 = s1;
    0x00402ebc addiu a1, s6, 0x6844          |     a1 = s6 + 0x6844;
    0x00402ec0 addiu a2, s5, 0x59a4          |     a2 = s5 + 0x59a4;
    0x00402ec4 jal 0x45d0c0                  |     fcn_0045d0c0 ();
    0x00402ec8 addiu v1, zero, 0x21          |     v1 = 0x21;
                                             |     if (v0 == 0) {
    0x00402ecc beqz v0, 0x402b0c             |         goto label_17;
                                             |     }
    0x00402ed0 lb a0, (v0)                   |     a0 = *(v0);
    0x00402ed4 addiu a1, sp, 0x1420          |     a1 = sp + 0x1420;
                                             |     if (a0 == v1) {
    0x00402ed8 beq a0, v1, 0x4030b4          |         goto label_61;
                                             |     }
    0x00402edc addiu a0, sp, 0x1678          |     a0 = sp + 0x1678;
    0x00402ee0 move a2, zero                 |     a2 = 0;
    0x00402ee4 addiu a3, zero, 0x100         |     a3 = 0x100;
    0x00402ee8 sw v0, 0x1678(sp)             |     *(var_1678h) = v0;
    0x00402eec jal 0x444a7c                  |     fcn_00444a7c ();
    0x00402ef0 move a0, s1                   |     a0 = s1;
                                             |     if (v0 == 0) {
    0x00402ef4 beqz v0, 0x402ea8             |         goto label_23;
                                             |     }
    0x00402ef8 addiu a0, sp, 0x1420          |     a0 = sp + 0x1420;
    0x00402efc jal 0x4056b0                  |     fcn_004056b0 ();
    0x00402f00 lui t9, 0x4a                  |     t9 = 0x4a0000;
                                             |     if (v0 < 0) {
    0x00402f04 bltz v0, 0x4030c4             |         goto label_62;
                                             |     }
    0x00402f08 addiu t9, t9, -0x7d40         |     t9 += -0x7d40;
    0x00402f0c sll v0, v0, 4                 |     v0 <<= 4;
    0x00402f10 addu v0, t9, v0               |     v0 = t9 + v0;
    0x00402f14 lw t9, 4(v0)                  |     t9 = *((v0 + 1));
    0x00402f18 jalr t9                       |     t9 ();
    0x00402f1c nop                           |     
    0x00402f20 move a0, s1                   |     a0 = s1;
    0x00402f24 b 0x402ea8                    |     goto label_23;
                                             | label_60:
    0x00402f28 lui a0, 0x46                  |     a0 = "Connected. Type your message, ending it with a Control-D";
                                             |     /* str.Connected._Type_your_message__ending_it_with_a_Control_D */
    0x00402f2c addiu a0, a0, -0x195c         |     
    0x00402f30 move s0, zero                 |     s0 = 0;
    0x00402f34 lui s3, 0x4a                  |     s3 = 0x4a0000;
    0x00402f38 lui s4, 0x4a                  |     s4 = 0x4a0000;
    0x00402f3c jal 0x486fe0                  |     fcn_00486fe0 ();
                                             | label_25:
    0x00402f40 lw a0, -0x3794(s3)            |     a0 = *((s3 - 3557));
    0x00402f44 jal 0x487030                  |     fcn_00487030 ();
    0x00402f48 slti v0, s0, 0x640            |     v0 = (s0 < 0x640) ? 1 : 0;
                                             |     if (v0 != 0) {
    0x00402f4c bnez v0, 0x403094             |         goto label_63;
                                             |     }
    0x00402f50 addiu t9, zero, 0x640         |     t9 = 0x640;
                                             |     if (v0 == 0) {
    0x00402f54 beqz v0, 0x403054             |         goto label_27;
                                             |     }
    0x00402f58 subu s1, t9, s0               |     __asm ("subu s1, t9, s0");
    0x00402f5c slti v0, s1, 0x80             |     v0 = (s1 < 0x80) ? 1 : 0;
    0x00402f60 addiu v1, zero, 0x7f          |     v1 = 0x7f;
    0x00402f64 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x00402f68 move a1, zero                 |     a1 = 0;
    0x00402f6c addiu a2, zero, 0x400         |     a2 = 0x400;
    0x00402f70 move s5, zero                 |     s5 = 0;
    0x00402f74 addiu fp, zero, -1            |     fp = -1;
    0x00402f78 addiu s7, zero, 0xa           |     s7 = 0xa;
    0x00402f7c addiu s6, zero, 0xd           |     s6 = 0xd;
                                             |     if (v0 != 0) {
    0x00402f80 movz s1, v1, v0               |         s1 = v1;
                                             |     }
    0x00402f84 jal 0x487500                  |     fcn_00487500 ();
                                             |     do {
    0x00402f88 lw a0, -0x3794(s3)            |         a0 = *((s3 - 3557));
    0x00402f8c lw v0, 0x48(a0)               |         v0 = *((a0 + 18));
                                             |         if (v0 == 0) {
    0x00402f90 beqz v0, 0x403024             |             goto label_64;
                                             |         }
    0x00402f94 nop                           |         
    0x00402f98 lw v0, 0x10(a0)               |         v0 = *((a0 + 4));
    0x00402f9c lw a1, 0x18(a0)               |         a1 = *((a0 + 6));
    0x00402fa0 sltu a1, v0, a1               |         a1 = (v0 < a1) ? 1 : 0;
    0x00402fa4 addiu a1, v0, 1               |         a1 = v0 + 1;
                                             |         if (a1 == 0) {
    0x00402fa8 beqz a1, 0x402fe8             |             goto label_65;
                                             |         }
    0x00402fac lbu v0, (v0)                  |         v0 = *(v0);
    0x00402fb0 sw a1, 0x10(a0)               |         *((a0 + 4)) = a1;
                                             | label_24:
    0x00402fb4 addiu v1, sp, 0x20            |         v1 = sp + 0x20;
                                             |         if (v0 == s7) {
    0x00402fb8 bne v0, s7, 0x402fcc          |             
    0x00402fbc addiu t9, sp, 0x20            |             t9 = sp + 0x20;
    0x00402fc0 addu a0, t9, s5               |             a0 = t9 + s5;
    0x00402fc4 sb s6, (a0)                   |             *(a0) = s6;
    0x00402fc8 addiu s5, s5, 1               |             s5++;
                                             |         }
    0x00402fcc addu a1, v1, s5               |         a1 = v1 + s5;
    0x00402fd0 addiu s5, s5, 1               |         s5++;
    0x00402fd4 slt a0, s5, s1                |         a0 = (s5 < s1) ? 1 : 0;
    0x00402fd8 sb v0, (a1)                   |         *(a1) = v0;
    0x00402fdc bnez a0, 0x402f88             |         
                                             |     } while (a0 != 0);
    0x00402fe0 lw t9, -0x4670(s4)            |     t9 = *((s4 - 4508));
    0x00402fe4 b 0x402ff8                    |     goto label_66;
                                             | label_65:
    0x00402fe8 jal 0x487180                  |     fcn_00487180 ();
    0x00402fec nop                           |     
                                             | label_26:
    0x00402ff0 lw t9, -0x4670(s4)            |     t9 = *((s4 - 4508));
                                             |     if (v0 != fp) {
    0x00402ff4 bne v0, fp, 0x402fb4          |         goto label_24;
                                             |     }
                                             | label_66:
    0x00402ff8 addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x00402ffc jalr t9                       |     t9 ();
    0x00403000 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00403004 lw a3, 0x167c(sp)             |     a3 = *(var_167ch);
    0x00403008 addiu a1, sp, 0x20            |     a1 = sp + 0x20;
    0x0040300c move a2, s5                   |     a2 = s5;
    0x00403010 jal 0x41d3ac                  |     fcn_0041d3ac ();
    0x00403014 lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (v0 != 0) {
    0x00403018 beqz v0, 0x403034             |         
    0x0040301c addu s0, s0, s5               |         s0 += s5;
    0x00403020 b 0x402f40                    |         goto label_25;
                                             | label_64:
    0x00403024 jal 0x4875f0                  |         fcn_004875f0 ();
    0x00403028 nop                           |         
    0x0040302c b 0x402ff0                    |         goto label_26;
    0x00403030 nop                           |         
                                             |     }
    0x00403034 lw a0, -0x3804(v0)            |     a0 = *((v0 - 3585));
    0x00403038 jal 0x41cccc                  |     fcn_0041cccc ();
    0x0040303c lui a0, 0x46                  |     a0 = 0x460000;
                                             | label_27:
    0x00403054 lui a0, 0x46                  |     a0 = "the message was truncated to 1600 bytes";
                                             |     /* str.the_message_was_truncated_to_1600_bytes */
    0x00403058 addiu a0, a0, -0x1908         |     
    0x0040305c jal 0x486fe0                  |     fcn_00486fe0 ();
    0x00403060 lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
                                             | label_28:
    0x00403064 lw a1, 0x167c(sp)             |     a1 = *(var_167ch);
    0x00403068 jal 0x41d4c8                  |     fcn_0041d4c8 ();
    0x0040306c lui v0, 0x4a                  |     v0 = 0x4a0000;
                                             |     if (v0 != 0) {
    0x00403070 bnez v0, 0x402b0c             |         goto label_17;
                                             |     }
    0x00403074 lw a0, -0x3804(v0)            |     a0 = *((v0 - 3585));
    0x00403078 jal 0x41cccc                  |     fcn_0041cccc ();
    0x0040307c lui a0, 0x46                  |     a0 = "SMBsendend failed (%s)\n";
                                             |     /* str.SMBsendend_failed___s__n */
    0x00403080 addiu a0, a0, -0x18d0         |     
    0x00403084 move a1, v0                   |     a1 = v0;
    0x00403088 jal 0x486ea0                  |     fcn_00486ea0 ();
    0x0040308c lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x00403090 b 0x402b10                    |     void (*0x402b10)() ();
                                             |     if (v0 == 0) {
                                             | label_63:
    0x00403094 beqz v0, 0x403054             |         goto label_27;
                                             |     }
    0x00403098 nop                           |     
    0x0040309c lui a0, 0x46                  |     a0 = "sent %d bytes\n";
                                             |     /* str.sent__d_bytes_n */
    0x004030a0 addiu a0, a0, -0x18e0         |     
    0x004030a4 move a1, s0                   |     a1 = s0;
    0x004030a8 jal 0x486ea0                  |     fcn_00486ea0 ();
    0x004030ac lw a0, -0x3804(s2)            |     a0 = *((s2 - 3585));
    0x004030b0 b 0x403064                    |     goto label_28;
                                             | label_61:
    0x004030b4 addiu a0, v0, 1               |     a0 = v0 + 1;
    0x004030b8 jal 0x487020                  |     fcn_00487020 ();
    0x004030bc move a0, s1                   |     a0 = s1;
    0x004030c0 b 0x402ea8                    |     goto label_23;
                                             | label_62:
    0x004030c4 addiu v1, zero, -2            |     v1 = -2;
    0x004030c8 lw v0, -0x2b40(s3)            |     v0 = *((s3 - 2768));
                                             |     if (v0 == v1) {
    0x004030cc beq v0, v1, 0x403174          |         goto label_67;
                                             |     }
    0x004030d0 move a0, zero                 |     a0 = 0;
                                             |     if (v0 < 0) {
    0x004030d4 bltz v0, 0x402ea4             |         goto label_29;
                                             |     }
    0x004030d8 move a1, s4                   |     a1 = s4;
                                             |     /* str.process_stdin */
    0x004030dc addiu a2, s0, -0xd98          |     a2 = s0 + -0xd98;
    0x004030e0 addiu a3, zero, 0x85e         |     a3 = 0x85e;
    0x004030e4 jal 0x4381b8                  |     fcn_004381b8 ();
    0x004030e8 lui a0, 0x46                  |     a0 = 0x460000;
                                             |     if (v0 == 0) {
    0x004030ec beqz v0, 0x402ea4             |         goto label_29;
                                             |     }
                                             |     /* str._s:_command_not_found_n */
    0x004030f0 addiu a0, a0, -0x1c40         |     a0 += -0x1c40;
    0x004030f4 addiu a1, sp, 0x1420          |     a1 = sp + 0x1420;
    0x004030f8 jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004030fc move a0, s1                   |     a0 = s1;
    0x00403100 b 0x402ea8                    |     goto label_23;
                                             | label_41:
    0x00403148 lw a0, -0x3790(v0)            |     a0 = *((v0 - 3556));
    0x0040314c lui a1, 0x46                  |     a1 = 0x460000;
    0x00403150 lui a3, 0x46                  |     a3 = 0x460000;
                                             |     /* str.Error_reading_password_from_file__s:__s_n */
    0x00403154 addiu a1, a1, -0x1b98         |     a1 += -0x1b98;
    0x00403158 addiu a2, sp, 0x20            |     a2 = sp + 0x20;
                                             |     /* str.empty_password_n */
    0x0040315c addiu a3, a3, -0x1b6c         |     a3 += -0x1b6c;
    0x00403160 jal 0x487250                  |     fcn_00487250 ();
    0x00403164 addiu a0, zero, 1             |     a0 = 1;
    0x00403168 jal 0x4876c0                  |     fcn_004876c0 ();
    0x0040316c addiu a0, zero, 1             |     a0 = 1;
    0x00403170 jal 0x4876c0                  |     fcn_004876c0 ();
                                             | label_67:
    0x00403174 move a0, zero                 |     a0 = 0;
                                             |     if (v0 < 0) {
    0x00403178 bltz v0, 0x402ea4             |         goto label_29;
                                             |     }
    0x0040317c move a1, s4                   |     a1 = s4;
                                             |     /* str.process_stdin */
    0x00403180 addiu a2, s0, -0xd98          |     a2 = s0 + -0xd98;
    0x00403184 addiu a3, zero, 0x85c         |     a3 = 0x85c;
    0x00403188 jal 0x4381b8                  |     fcn_004381b8 ();
    0x0040318c lui v0, 0x46                  |     v0 = 0x460000;
                                             |     if (v0 == 0) {
    0x00403190 beqz v0, 0x402ea4             |         goto label_29;
                                             |     }
                                             |     /* str._s:_command_abbreviation_ambiguous_n */
    0x00403194 addiu a0, v0, -0x1c64         |     a0 = v0 + -0x1c64;
    0x00403198 addiu a1, sp, 0x1420          |     a1 = sp + 0x1420;
    0x0040319c jal 0x437cc4                  |     fcn_00437cc4 ();
    0x004031a0 move a0, s1                   |     a0 = s1;
    0x004031a4 b 0x402ea8                    |     goto label_23;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/bin/smbclient @ 0x402434 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.imp.getgrent ()              | void getgrent () {
    0x00402434 lw a3, -0x37ac(fp)            |     a3 = *(var_37ach);
    0x00402438 lui a2, 0x46                  |     a2 = 0x460000;
    0x0040243c addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x00402440 addiu a1, zero, 0x3ff         |     a1 = 0x3ff;
                                             |     /* str._s.client */
    0x00402444 addiu a2, a2, -0x1b20         |     a2 += -0x1b20;
    0x00402448 jal 0x444430                  |     sym_snprintf ()
    0x0040244c addiu a0, sp, 0x420           |     a0 = sp + 0x420;
    0x00402450 jal 0x414ec0                  |     fcn_00414ec0 ();
    0x00402454 move a0, s3                   |     a0 = s3;
    0x00402458 b 0x402340                    |     return void (*0x402340)() ();
                                             | }

[*] Function printf used 43 times smbclient