[*] Binary protection state of ip.iproute2

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


[*] Function system tear down of ip.iproute2

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/ip.iproute2 @ 0x4f994 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.lwt_print_encap ()           | void lwt_print_encap () {
    0x0004f994 lui gp, 4                     |     
    0x0004f998 addiu gp, gp, 0x78fc          |     
    0x0004f99c addu gp, gp, t9               |     gp += t9;
    0x0004f9a0 addiu sp, sp, -0x78           |     
    0x0004f9a4 sw s2, 0x6c(sp)               |     *(var_6ch) = s2;
    0x0004f9a8 lw s2, -0x79c4(gp)            |     s2 = *((gp - 7793));
    0x0004f9ac sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0004f9b0 sw ra, 0x74(sp)               |     *(var_74h) = ra;
    0x0004f9b4 lw v0, (s2)                   |     v0 = *(s2);
    0x0004f9b8 sw s3, 0x70(sp)               |     *(var_70h) = s3;
    0x0004f9bc sw s1, 0x68(sp)               |     *(var_68h) = s1;
    0x0004f9c0 sw s0, 0x64(sp)               |     *(var_64h) = s0;
    0x0004f9c4 sw v0, 0x5c(sp)               |     *(var_5ch) = v0;
    0x0004f9c8 move s3, a2                   |     s3 = a2;
                                             |     if (a1 == 0) {
    0x0004f9cc beqz a1, 0x4fb74              |         goto label_0;
                                             |     }
    0x0004f9d0 lhu s1, 4(a1)                 |     s1 = *((a1 + 2));
    0x0004f9d4 move s0, a0                   |     s0 = a0;
    0x0004f9d8 sltiu v0, s1, 7               |     v0 = (s1 < 7) ? 1 : 0;
    0x0004f9dc lw t9, -0x7b5c(gp)            |     t9 = sym.imp.__fprintf_chk;
                                             |     if (v0 == 0) {
    0x0004f9e0 beqz v0, 0x4ff40              |         goto label_6;
                                             |     }
    0x0004f9e4 lw v1, -0x7fdc(gp)            |     v1 = *(gp);
    0x0004f9e8 sll v0, s1, 2                 |     v0 = s1 << 2;
    0x0004f9ec addiu v1, v1, 0x6b10          |     v1 += entry0;
    0x0004f9f0 lwx v0, v0(v1)                |     __asm ("lwx v0, v0(v1)");
    0x0004f9f4 addu v0, v0, gp               |     v0 += gp;
    0x0004f9f8 jr v0                         |     v0 ();
    0x0004f9fc nop                           |     
                                             | label_4:
    0x0004fa20 lw t9, -0x7f54(gp)            |     t9 = sym.parse_rtattr;
    0x0004fa24 addiu a3, a3, -4              |     a3 += -4;
    0x0004fa28 addiu a2, s3, 4               |     a2 = s3 + 4;
    0x0004fa2c addiu a1, zero, 7             |     a1 = 7;
    0x0004fa30 addiu a0, sp, 0x28            |     a0 = sp + 0x28;
    0x0004fa34 bal 0x58c18                   |     sym_parse_rtattr ();
    0x0004fa38 lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
    0x0004fa3c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0004fa40 beqz v0, 0x4fa9c              |         
    0x0004fa44 addiu v0, v0, 4               |         v0 += 4;
    0x0004fa48 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004fa4c lwl v1, 3(v0)                 |         __asm ("lwl v1, 3(v0)");
    0x0004fa50 lwl a0, 7(v0)                 |         __asm ("lwl a0, 7(v0)");
    0x0004fa54 lwl a1, 3(v0)                 |         __asm ("lwl a1, 3(v0)");
    0x0004fa58 lwr v1, (v0)                  |         __asm ("lwr v1, (v0)");
    0x0004fa5c lwr a0, 4(v0)                 |         __asm ("lwr a0, 4(v0)");
    0x0004fa60 lwr a1, (v0)                  |         __asm ("lwr a1, (v0)");
    0x0004fa64 wsbh v0, v1                   |         __asm ("wsbh v0, v1");
    0x0004fa68 wsbh v1, a0                   |         __asm ("wsbh v1, a0");
    0x0004fa6c lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
    0x0004fa70 rotr v0, v0, 0x10             |         __asm ("rotr v0, v0, 0x10");
    0x0004fa74 rotr v1, v1, 0x10             |         __asm ("rotr v1, v1, 0x10");
    0x0004fa78 sw a1, 0x20(sp)               |         *(var_20h) = a1;
    0x0004fa7c sw a0, 0x24(sp)               |         *(var_24h_2) = a0;
    0x0004fa80 sw v1, 0x10(sp)               |         *(var_10h_2) = v1;
    0x0004fa84 sw v0, 0x14(sp)               |         *(var_14h) = v0;
                                             |         /* str.id__llu_ */
    0x0004fa88 addiu a2, a2, 0x68cc          |         a2 += 0x68cc;
    0x0004fa8c addiu a1, zero, 1             |         a1 = 1;
    0x0004fa90 move a0, s0                   |         a0 = s0;
    0x0004fa94 jalr t9                       |         t9 ();
    0x0004fa98 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fa9c lw a2, 0x34(sp)               |     a2 = *(var_34h);
    0x0004faa0 lw t9, -0x7e80(gp)            |     t9 = sym.rt_addr_n2a;
                                             |     if (a2 != 0) {
    0x0004faa4 beqz a2, 0x4fae0              |         
    0x0004faa8 lhu a1, (a2)                  |         a1 = *(a2);
    0x0004faac addiu a2, a2, 4               |         a2 += 4;
    0x0004fab0 addiu a1, a1, -4              |         a1 += -4;
    0x0004fab4 addiu a0, zero, 0xa           |         a0 = 0xa;
    0x0004fab8 bal 0x5aa4c                   |         sym_rt_addr_n2a ();
    0x0004fabc lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004fac0 move a3, v0                   |         a3 = v0;
    0x0004fac4 addiu a1, zero, 1             |         a1 = 1;
    0x0004fac8 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004facc lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
                                             |         /* str.src__s_ */
    0x0004fad0 addiu a2, a2, -0x6174         |         a2 += -0x6174;
    0x0004fad4 move a0, s0                   |         a0 = s0;
    0x0004fad8 jalr t9                       |         t9 ();
    0x0004fadc lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fae0 lw a2, 0x30(sp)               |     a2 = *(var_30h_2);
    0x0004fae4 lw t9, -0x7e80(gp)            |     t9 = sym.rt_addr_n2a;
                                             |     if (a2 != 0) {
    0x0004fae8 beqz a2, 0x4fb24              |         
    0x0004faec lhu a1, (a2)                  |         a1 = *(a2);
    0x0004faf0 addiu a2, a2, 4               |         a2 += 4;
    0x0004faf4 addiu a1, a1, -4              |         a1 += -4;
    0x0004faf8 addiu a0, zero, 0xa           |         a0 = 0xa;
    0x0004fafc bal 0x5aa4c                   |         sym_rt_addr_n2a ();
    0x0004fb00 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004fb04 move a3, v0                   |         a3 = v0;
    0x0004fb08 addiu a1, zero, 1             |         a1 = 1;
    0x0004fb0c lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004fb10 lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
                                             |         /* str.dst__s_ */
    0x0004fb14 addiu a2, a2, 0x1370          |         a2 += 0x1370;
    0x0004fb18 move a0, s0                   |         a0 = s0;
    0x0004fb1c jalr t9                       |         t9 ();
    0x0004fb20 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fb24 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x0004fb28 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             |     if (v0 != 0) {
    0x0004fb2c beqz v0, 0x4fb4c              |         
    0x0004fb30 lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
    0x0004fb34 lbu a3, 4(v0)                 |         a3 = *((v0 + 4));
                                             |         /* str.hoplimit__d_ */
    0x0004fb38 addiu a2, a2, 0x4314          |         a2 += 0x4314;
    0x0004fb3c addiu a1, zero, 1             |         a1 = 1;
    0x0004fb40 move a0, s0                   |         a0 = s0;
    0x0004fb44 jalr t9                       |         t9 ();
    0x0004fb48 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fb4c lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
    0x0004fb50 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             |     if (v0 == 0) {
    0x0004fb54 beqz v0, 0x4fb74              |         goto label_0;
                                             |     }
    0x0004fb58 lw t9, -0x7b5c(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0004fb5c lbu a3, 4(v0)                 |     a3 = *((v0 + 4));
                                             |     /* str.tc__d_ */
    0x0004fb60 addiu a2, a2, 0x68f0          |     a2 += 0x68f0;
    0x0004fb64 addiu a1, zero, 1             |     a1 = 1;
    0x0004fb68 move a0, s0                   |     a0 = s0;
    0x0004fb6c jalr t9                       |     t9 ();
    0x0004fb70 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     do {
                                             | label_0:
    0x0004fb74 lw v1, 0x5c(sp)               |         v1 = *(var_5ch);
    0x0004fb78 lw v0, (s2)                   |         v0 = *(s2);
    0x0004fb7c lw ra, 0x74(sp)               |         ra = *(var_74h);
                                             |         if (v1 != v0) {
    0x0004fb80 bne v1, v0, 0x4ffbc           |             goto label_7;
                                             |         }
    0x0004fb84 lw s3, 0x70(sp)               |         s3 = *(var_70h);
    0x0004fb88 lw s2, 0x6c(sp)               |         s2 = *(var_6ch);
    0x0004fb8c lw s1, 0x68(sp)               |         s1 = *(var_68h);
    0x0004fb90 lw s0, 0x64(sp)               |         s0 = *(var_64h);
    0x0004fb94 addiu sp, sp, 0x78            |         
    0x0004fb98 jr ra                         |         return v0;
                                             | label_2:
    0x0004fc90 lw t9, -0x7f54(gp)            |         t9 = sym.parse_rtattr;
    0x0004fc94 addiu a2, s3, 4               |         a2 = s3 + 4;
    0x0004fc98 addiu a3, a3, -4              |         a3 += -4;
    0x0004fc9c addiu a1, zero, 1             |         a1 = 1;
    0x0004fca0 addiu a0, sp, 0x28            |         a0 = sp + 0x28;
    0x0004fca4 bal 0x58c18                   |         sym_parse_rtattr ();
    0x0004fca8 lw a2, 0x2c(sp)               |         a2 = *(var_2ch_2);
    0x0004fcac lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004fcb0 beqz a2, 0x4fb74              |         
                                             |     } while (a2 == 0);
    0x0004fcb4 lhu a1, (a2)                  |     a1 = *(a2);
    0x0004fcb8 lw t9, -0x7f2c(gp)            |     t9 = sym.format_host;
    0x0004fcbc addiu a2, a2, 4               |     a2 += 4;
    0x0004fcc0 addiu a1, a1, -4              |     a1 += -4;
    0x0004fcc4 addiu a0, zero, 0x1c          |     a0 = 0x1c;
    0x0004fcc8 bal 0x5b0b0                   |     sym_format_host ();
    0x0004fccc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004fcd0 move a3, v0                   |     a3 = v0;
    0x0004fcd4 addiu a1, zero, 1             |     a1 = 1;
    0x0004fcd8 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0004fcdc lw t9, -0x7b5c(gp)            |     t9 = sym.imp.__fprintf_chk;
                                             |     /* esilref: ' &s ' */
    0x0004fce0 addiu a2, a2, -0x5f98         |     a2 += -0x5f98;
    0x0004fce4 move a0, s0                   |     a0 = s0;
    0x0004fce8 jalr t9                       |     t9 ();
    0x0004fcec lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004fcf0 b 0x4fb74                     |     goto label_0;
                                             | label_1:
    0x0004fd10 lhu a3, (s3)                  |     a3 = *(s3);
    0x0004fd14 lw t9, -0x7f54(gp)            |     t9 = sym.parse_rtattr;
    0x0004fd18 addiu a3, a3, -4              |     a3 += -4;
    0x0004fd1c addiu a2, s3, 4               |     a2 = s3 + 4;
    0x0004fd20 addiu a1, zero, 7             |     a1 = 7;
    0x0004fd24 addiu a0, sp, 0x28            |     a0 = sp + 0x28;
    0x0004fd28 bal 0x58c18                   |     sym_parse_rtattr ();
    0x0004fd2c lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
    0x0004fd30 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0004fd34 beqz v0, 0x4fd90              |         
    0x0004fd38 addiu v0, v0, 4               |         v0 += 4;
    0x0004fd3c lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004fd40 lwl v1, 3(v0)                 |         __asm ("lwl v1, 3(v0)");
    0x0004fd44 lwl a0, 7(v0)                 |         __asm ("lwl a0, 7(v0)");
    0x0004fd48 lwl a1, 3(v0)                 |         __asm ("lwl a1, 3(v0)");
    0x0004fd4c lwr v1, (v0)                  |         __asm ("lwr v1, (v0)");
    0x0004fd50 lwr a0, 4(v0)                 |         __asm ("lwr a0, 4(v0)");
    0x0004fd54 lwr a1, (v0)                  |         __asm ("lwr a1, (v0)");
    0x0004fd58 wsbh v0, v1                   |         __asm ("wsbh v0, v1");
    0x0004fd5c wsbh v1, a0                   |         __asm ("wsbh v1, a0");
    0x0004fd60 lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
    0x0004fd64 rotr v0, v0, 0x10             |         __asm ("rotr v0, v0, 0x10");
    0x0004fd68 rotr v1, v1, 0x10             |         __asm ("rotr v1, v1, 0x10");
    0x0004fd6c sw a1, 0x20(sp)               |         *(var_20h) = a1;
    0x0004fd70 sw a0, 0x24(sp)               |         *(var_24h_2) = a0;
    0x0004fd74 sw v1, 0x10(sp)               |         *(var_10h_2) = v1;
    0x0004fd78 sw v0, 0x14(sp)               |         *(var_14h) = v0;
                                             |         /* str.id__llu_ */
    0x0004fd7c addiu a2, a2, 0x68cc          |         a2 += 0x68cc;
    0x0004fd80 addiu a1, zero, 1             |         a1 = 1;
    0x0004fd84 move a0, s0                   |         a0 = s0;
    0x0004fd88 jalr t9                       |         t9 ();
    0x0004fd8c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fd90 lw a2, 0x34(sp)               |     a2 = *(var_34h);
    0x0004fd94 lw t9, -0x7e80(gp)            |     t9 = sym.rt_addr_n2a;
                                             |     if (a2 != 0) {
    0x0004fd98 beqz a2, 0x4fdd4              |         
    0x0004fd9c lhu a1, (a2)                  |         a1 = *(a2);
    0x0004fda0 addiu a2, a2, 4               |         a2 += 4;
    0x0004fda4 addiu a1, a1, -4              |         a1 += -4;
    0x0004fda8 addiu a0, zero, 2             |         a0 = 2;
    0x0004fdac bal 0x5aa4c                   |         sym_rt_addr_n2a ();
    0x0004fdb0 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004fdb4 move a3, v0                   |         a3 = v0;
    0x0004fdb8 addiu a1, zero, 1             |         a1 = 1;
    0x0004fdbc lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004fdc0 lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
                                             |         /* str.src__s_ */
    0x0004fdc4 addiu a2, a2, -0x6174         |         a2 += -0x6174;
    0x0004fdc8 move a0, s0                   |         a0 = s0;
    0x0004fdcc jalr t9                       |         t9 ();
    0x0004fdd0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fdd4 lw a2, 0x30(sp)               |     a2 = *(var_30h_2);
    0x0004fdd8 lw t9, -0x7e80(gp)            |     t9 = sym.rt_addr_n2a;
                                             |     if (a2 != 0) {
    0x0004fddc beqz a2, 0x4fe18              |         
    0x0004fde0 lhu a1, (a2)                  |         a1 = *(a2);
    0x0004fde4 addiu a2, a2, 4               |         a2 += 4;
    0x0004fde8 addiu a1, a1, -4              |         a1 += -4;
    0x0004fdec addiu a0, zero, 2             |         a0 = 2;
    0x0004fdf0 bal 0x5aa4c                   |         sym_rt_addr_n2a ();
    0x0004fdf4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004fdf8 move a3, v0                   |         a3 = v0;
    0x0004fdfc addiu a1, zero, 1             |         a1 = 1;
    0x0004fe00 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004fe04 lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
                                             |         /* str.dst__s_ */
    0x0004fe08 addiu a2, a2, 0x1370          |         a2 += 0x1370;
    0x0004fe0c move a0, s0                   |         a0 = s0;
    0x0004fe10 jalr t9                       |         t9 ();
    0x0004fe14 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fe18 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x0004fe1c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             |     if (v0 != 0) {
    0x0004fe20 beqz v0, 0x4fe40              |         
    0x0004fe24 lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
    0x0004fe28 lbu a3, 4(v0)                 |         a3 = *((v0 + 4));
                                             |         /* str.ttl__d_ */
    0x0004fe2c addiu a2, a2, 0x1a88          |         a2 += 0x1a88;
    0x0004fe30 addiu a1, zero, 1             |         a1 = 1;
    0x0004fe34 move a0, s0                   |         a0 = s0;
    0x0004fe38 jalr t9                       |         t9 ();
    0x0004fe3c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fe40 lw v0, 0x3c(sp)               |     v0 = *(var_3ch_2);
    0x0004fe44 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             |     if (v0 == 0) {
    0x0004fe48 beqz v0, 0x4fb74              |         goto label_0;
                                             |     }
    0x0004fe4c lw t9, -0x7b5c(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0004fe50 lbu a3, 4(v0)                 |     a3 = *((v0 + 4));
                                             |     /* str.tos__d_ */
    0x0004fe54 addiu a2, a2, 0x68d8          |     a2 += 0x68d8;
    0x0004fe58 addiu a1, zero, 1             |     a1 = 1;
    0x0004fe5c move a0, s0                   |     a0 = s0;
    0x0004fe60 jalr t9                       |     t9 ();
    0x0004fe64 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004fe68 b 0x4fb74                     |     goto label_0;
                                             | label_3:
    0x0004fe88 lhu a3, (s3)                  |     a3 = *(s3);
    0x0004fe8c lw t9, -0x7f54(gp)            |     t9 = sym.parse_rtattr;
    0x0004fe90 addiu a3, a3, -4              |     a3 += -4;
    0x0004fe94 addiu a2, s3, 4               |     a2 = s3 + 4;
    0x0004fe98 addiu a1, zero, 7             |     a1 = 7;
    0x0004fe9c addiu a0, sp, 0x28            |     a0 = sp + 0x28;
    0x0004fea0 bal 0x58c18                   |     sym_parse_rtattr ();
    0x0004fea4 lw v0, 0x2c(sp)               |     v0 = *(var_2ch_2);
    0x0004fea8 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0004feac beqz v0, 0x4fef0              |         
    0x0004feb0 lw t9, -0x7c58(gp)            |         t9 = sym.addr64_n2a;
    0x0004feb4 lw a0, 4(v0)                  |         a0 = *((v0 + 1));
    0x0004feb8 lw a1, 8(v0)                  |         a1 = *((v0 + 2));
    0x0004febc addiu s1, sp, 0x48            |         s1 = sp + 0x48;
    0x0004fec0 addiu a3, zero, 0x14          |         a3 = 0x14;
    0x0004fec4 move a2, s1                   |         a2 = s1;
    0x0004fec8 bal 0x5b3f4                   |         sym_addr64_n2a ();
    0x0004fecc lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004fed0 move a3, s1                   |         a3 = s1;
    0x0004fed4 addiu a1, zero, 1             |         a1 = 1;
    0x0004fed8 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0004fedc lw t9, -0x7b5c(gp)            |         t9 = sym.imp.__fprintf_chk;
                                             |         /* esilref: ' &s ' */
    0x0004fee0 addiu a2, a2, -0x5f98         |         a2 += -0x5f98;
    0x0004fee4 move a0, s0                   |         a0 = s0;
    0x0004fee8 jalr t9                       |         t9 ();
    0x0004feec lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004fef0 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x0004fef4 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v0 == 0) {
    0x0004fef8 beqz v0, 0x4fb74              |         goto label_0;
                                             |     }
    0x0004fefc lbu v0, 4(v0)                 |     v0 = *((v0 + 4));
    0x0004ff00 lw a3, -0x7fdc(gp)            |     a3 = *(gp);
                                             |     if (v0 == v1) {
    0x0004ff04 beq v0, v1, 0x4ffb4           |         goto label_8;
                                             |     }
    0x0004ff08 addiu v1, zero, 2             |     v1 = 2;
                                             |     if (v0 == 0) {
    0x0004ff0c beqz v0, 0x4ffa8              |         goto label_9;
                                             |     }
    0x0004ff10 lw a3, -0x7fdc(gp)            |     a3 = *(gp);
                                             |     if (v0 == v1) {
    0x0004ff14 beq v0, v1, 0x4ffa0           |         goto label_10;
                                             |     }
    0x0004ff18 lw a3, -0x7fdc(gp)            |     a3 = *(gp);
                                             |     /* str.unknown */
    0x0004ff1c addiu a3, a3, -0x3744         |     a3 += -0x3744;
                                             | label_5:
    0x0004ff20 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0004ff24 lw t9, -0x7b5c(gp)            |     t9 = sym.imp.__fprintf_chk;
                                             |     /* str._csum_mode__s_ */
    0x0004ff28 addiu a2, a2, 0x68e0          |     a2 += 0x68e0;
    0x0004ff2c addiu a1, zero, 1             |     a1 = 1;
    0x0004ff30 move a0, s0                   |     a0 = s0;
    0x0004ff34 jalr t9                       |     t9 ();
    0x0004ff38 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004ff3c b 0x4fb74                     |     goto label_0;
                                             | label_6:
    0x0004ff40 lw a3, -0x7fdc(gp)            |     a3 = *(gp);
    0x0004ff44 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             |     /* str.unknown */
    0x0004ff48 addiu a3, a3, -0x3744         |     a3 += -0x3744;
                                             |     /* str._encap__s_ */
    0x0004ff4c addiu a2, a2, 0x68c0          |     a2 += 0x68c0;
    0x0004ff50 addiu a1, zero, 1             |     a1 = 1;
    0x0004ff54 move a0, s0                   |     a0 = s0;
    0x0004ff58 jalr t9                       |     t9 ();
    0x0004ff5c addiu v0, zero, 2             |     v0 = 2;
    0x0004ff60 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s1 == v0) {
    0x0004ff64 beq s1, v0, 0x4fd10           |         goto label_1;
                                             |     }
    0x0004ff68 sltiu v0, s1, 3               |     v0 = (s1 < 3) ? 1 : 0;
    0x0004ff6c addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v0 == 0) {
    0x0004ff70 beqz v0, 0x4ff84              |         goto label_11;
                                             |     }
                                             |     if (s1 != v0) {
    0x0004ff74 bne s1, v0, 0x4fb74           |         goto label_0;
                                             |     }
    0x0004ff78 nop                           |     
    0x0004ff7c lhu a3, (s3)                  |     a3 = *(s3);
    0x0004ff80 b 0x4fc90                     |     goto label_2;
                                             | label_11:
    0x0004ff84 addiu v0, zero, 3             |     v0 = 3;
    0x0004ff88 addiu v0, zero, 4             |     v0 = 4;
                                             |     if (s1 == v0) {
    0x0004ff8c beq s1, v0, 0x4fe88           |         goto label_3;
                                             |     }
                                             |     if (s1 != v0) {
    0x0004ff90 bne s1, v0, 0x4fb74           |         goto label_0;
                                             |     }
    0x0004ff94 nop                           |     
    0x0004ff98 lhu a3, (s3)                  |     a3 = *(s3);
    0x0004ff9c b 0x4fa20                     |     goto label_4;
                                             |     /* str.no_action */
                                             | label_10:
    0x0004ffa0 addiu a3, a3, 0x68a8          |     a3 += 0x68a8;
    0x0004ffa4 b 0x4ff20                     |     goto label_5;
                                             | label_9:
    0x0004ffa8 lw a3, -0x7fdc(gp)            |     a3 = *(gp);
                                             |     /* str.adj_transport */
    0x0004ffac addiu a3, a3, 0x6898          |     a3 += 0x6898;
    0x0004ffb0 b 0x4ff20                     |     goto label_5;
                                             |     /* str.neutral_map */
                                             | label_8:
    0x0004ffb4 addiu a3, a3, 0x68b4          |     a3 += 0x68b4;
    0x0004ffb8 b 0x4ff20                     |     goto label_5;
                                             | label_7:
    0x0004ffbc lw t9, -0x79ec(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0004ffc0 jalr t9                       |     t9 ();
    0x0004ffc4 nop                           |     
                                             | }

[*] Function system used 1 times ip.iproute2