[*] Binary protection state of ir

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


[*] Function system tear down of ir

    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/ir @ 0x4018bc */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) method.ScheduleIR.Start_int__int__bool_ ()       | void method_ScheduleIR_Start_int_int_bool_ () {
                                                             |     /* ScheduleIR::Start(int, int, bool) */
    0x004018bc lui gp, 2                                     |     
    0x004018c0 addiu gp, gp, -0x688c                         |     
    0x004018c4 addu gp, gp, t9                               |     gp += t9;
    0x004018c8 addiu sp, sp, -0x1060                         |     
    0x004018cc sw ra, 0x105c(sp)                             |     *(var_105ch) = ra;
    0x004018d0 sw fp, 0x1058(sp)                             |     *(var_1058h) = fp;
    0x004018d4 sw s1, 0x1054(sp)                             |     *(var_1054h) = s1;
    0x004018d8 sw s0, 0x1050(sp)                             |     *(var_1050h) = s0;
    0x004018dc move fp, sp                                   |     fp = sp;
    0x004018e0 sw gp, 0x10(sp)                               |     *(var_10h) = gp;
    0x004018e4 sw a0, 0x24(fp)                               |     *(arg_24h) = a0;
    0x004018e8 sw a1, 0x20(fp)                               |     *(arg_20h) = a1;
    0x004018ec sw a2, 0x1c(fp)                               |     *(arg_1ch) = a2;
    0x004018f0 move t8, a3                                   |     t8 = a3;
    0x004018f4 sb t8, 0x18(fp)                               |     *(arg_18h) = t8;
    0x004018f8 lw t8, -0x7f38(gp)                            |     t8 = *((gp - 8142));
    0x004018fc lw t8, (t8)                                   |     t8 = *(t8);
    0x00401900 sw t8, 0x104c(fp)                             |     *(arg_104ch) = t8;
    0x00401904 addiu t8, fp, 0x34                            |     t8 = fp + 0x34;
    0x00401908 move a0, t8                                   |     a0 = t8;
    0x0040190c lw t8, -0x7fb4(gp)                            |     t8 = *(gp);
    0x00401910 move t9, t8                                   |     t9 = t8;
    0x00401914 jalr t9                                       |     t9 ();
    0x00401918 nop                                           |     
    0x0040191c lw gp, 0x10(fp)                               |     gp = *(arg_10h);
    0x00401920 addiu t8, fp, 0x34                            |     t8 = fp + 0x34;
    0x00401924 move a0, t8                                   |     a0 = t8;
    0x00401928 lw t8, -0x7fd4(gp)                            |     t8 = *(gp);
                                                             |     /* str.Rule11 */
    0x0040192c addiu a1, t8, 0x2080                          |     a1 = t8 + 0x2080;
    0x00401930 move a2, zero                                 |     a2 = 0;
    0x00401934 lw t8, -0x7f88(gp)                            |     t8 = *(gp);
    0x00401938 move t9, t8                                   |     t9 = t8;
    0x0040193c jalr t9                                       |     t9 ();
    0x00401940 nop                                           |     
    0x00401944 lw gp, 0x10(fp)                               |     gp = *(arg_10h);
    0x00401948 addiu t8, fp, 0x34                            |     t8 = fp + 0x34;
    0x0040194c move a0, t8                                   |     a0 = t8;
    0x00401950 lw t8, -0x7fd4(gp)                            |     t8 = *(gp);
                                                             |     /* str.Etag */
    0x00401954 addiu a1, t8, 0x2088                          |     a1 = t8 + 0x2088;
    0x00401958 lw t8, -0x7f70(gp)                            |     t8 = *(gp);
    0x0040195c move t9, t8                                   |     t9 = t8;
    0x00401960 jalr t9                                       |     t9 ();
    0x00401964 nop                                           |     
    0x00401968 lw gp, 0x10(fp)                               |     gp = *(arg_10h);
    0x0040196c move t8, v0                                   |     t8 = v0;
    0x00401970 sw t8, 0x2c(fp)                               |     *(arg_2ch) = t8;
    0x00401974 lbu t8, 0x18(fp)                              |     t8 = *(arg_18h);
                                                             |     if (t8 != 0) {
    0x00401978 beqz t8, 0x4019a4                             |         
    0x0040197c nop                                           |         
    0x00401980 lw t8, 0x24(fp)                               |         t8 = *(arg_24h);
    0x00401984 lw v0, 4(t8)                                  |         v0 = *((t8 + 1));
    0x00401988 lw t8, 0x2c(fp)                               |         t8 = *(arg_2ch);
                                                             |         if (v0 == t8) {
    0x0040198c beq v0, t8, 0x4019a4                          |             goto label_0;
                                                             |         }
    0x00401990 nop                                           |         
    0x00401994 move s0, zero                                 |         s0 = 0;
    0x00401998 move s1, zero                                 |         s1 = 0;
    0x0040199c b 0x4019a8                                    |         goto label_1;
    0x004019a0 nop                                           |         
                                                             |     }
                                                             | label_0:
    0x004019a4 addiu s1, zero, 1                             |     s1 = 1;
                                                             | label_1:
    0x004019a8 addiu t8, fp, 0x34                            |     t8 = fp + 0x34;
    0x004019ac move a0, t8                                   |     a0 = t8;
    0x004019b0 lw t8, -0x7f78(gp)                            |     t8 = sym.imp.TinyDB::TinyDB__;
    0x004019b4 move t9, t8                                   |     t9 = t8;
    0x004019b8 jalr t9                                       |     t9 ();
    0x004019bc nop                                           |     
    0x004019c0 lw gp, 0x10(fp)                               |     gp = *(arg_10h);
    0x004019c4 addiu t8, zero, 1                             |     t8 = 1;
                                                             |     if (s1 == t8) {
    0x004019c8 bne s1, t8, 0x401a94                          |         
    0x004019cc nop                                           |         
    0x004019d0 nop                                           |         
    0x004019d4 lbu t8, 0x18(fp)                              |         t8 = *(arg_18h);
                                                             |         if (t8 != 0) {
    0x004019d8 beqz t8, 0x401a08                             |             
    0x004019dc nop                                           |             
    0x004019e0 lw t8, -0x7fd4(gp)                            |             t8 = *(gp);
                                                             |             /* str.send_cmd_watchdog_650 */
    0x004019e4 addiu a0, t8, 0x2090                          |             a0 = t8 + 0x2090;
    0x004019e8 lw t8, -0x7f3c(gp)                            |             t8 = sym.imp.system
    0x004019ec move t9, t8                                   |             t9 = t8;
    0x004019f0 jalr t9                                       |             t9 ();
    0x004019f4 nop                                           |             
    0x004019f8 lw gp, 0x10(fp)                               |             gp = *(arg_10h);
    0x004019fc move s0, zero                                 |             s0 = 0;
    0x00401a00 b 0x401a94                                    |             goto label_2;
    0x00401a04 nop                                           |             
                                                             |         }
    0x00401a08 lw t8, 0x24(fp)                               |         t8 = *(arg_24h);
    0x00401a0c lbu t8, (t8)                                  |         t8 = *(t8);
                                                             |         if (t8 != 0) {
    0x00401a10 beqz t8, 0x401a24                             |             
    0x00401a14 nop                                           |             
    0x00401a18 addiu s0, zero, 1                             |             s0 = 1;
    0x00401a1c b 0x401a94                                    |             goto label_2;
    0x00401a20 nop                                           |             
                                                             |         }
    0x00401a24 lw t8, -0x7fd4(gp)                            |         t8 = *(gp);
                                                             |         /* str.send_cmd_watchdog_651 */
    0x00401a28 addiu a0, t8, 0x20a8                          |         a0 = t8 + 0x20a8;
    0x00401a2c lw t8, -0x7f3c(gp)                            |         t8 = sym.imp.system
    0x00401a30 move t9, t8                                   |         t9 = t8;
    0x00401a34 jalr t9                                       |         t9 ();
    0x00401a38 nop                                           |         
    0x00401a3c lw gp, 0x10(fp)                               |         gp = *(arg_10h);
    0x00401a40 lw a0, -0x7f6c(gp)                            |         a0 = *((gp - 8155));
    0x00401a44 lw t8, -0x7fd4(gp)                            |         t8 = *(gp);
                                                             |         /* str.day_mode */
    0x00401a48 addiu a1, t8, 0x20c0                          |         a1 = t8 + 0x20c0;
    0x00401a4c lw t8, -0x7f58(gp)                            |         t8 = *(gp);
    0x00401a50 move t9, t8                                   |         t9 = t8;
    0x00401a54 jalr t9                                       |         t9 ();
    0x00401a58 nop                                           |         
    0x00401a5c lw gp, 0x10(fp)                               |         gp = *(arg_10h);
    0x00401a60 move t8, v0                                   |         t8 = v0;
    0x00401a64 move a0, t8                                   |         a0 = t8;
    0x00401a68 lw a1, -0x7f90(gp)                            |         a1 = *((gp - 8164));
    0x00401a6c lw t8, -0x7f84(gp)                            |         t8 = *(gp);
    0x00401a70 move t9, t8                                   |         t9 = t8;
    0x00401a74 jalr t9                                       |         t9 ();
    0x00401a78 nop                                           |         
    0x00401a7c lw gp, 0x10(fp)                               |         gp = *(arg_10h);
    0x00401a80 lw t8, 0x24(fp)                               |         t8 = *(arg_24h);
    0x00401a84 addiu v0, zero, 1                             |         v0 = 1;
    0x00401a88 sb v0, (t8)                                   |         *(t8) = v0;
    0x00401a8c lw t8, 0x24(fp)                               |         t8 = *(arg_24h);
    0x00401a90 lbu s0, (t8)                                  |         s0 = *(t8);
                                                             |     }
                                                             | label_2:
    0x00401a94 move t8, s0                                   |     t8 = s0;
    0x00401a98 move v0, t8                                   |     v0 = t8;
    0x00401a9c lw t8, -0x7f38(gp)                            |     t8 = *((gp - 8142));
    0x00401aa0 lw v1, 0x104c(fp)                             |     v1 = *(arg_104ch);
    0x00401aa4 lw t8, (t8)                                   |     t8 = *(t8);
                                                             |     if (v1 != t8) {
    0x00401aa8 beq v1, t8, 0x401bfc                          |         
    0x00401aac nop                                           |         
    0x00401ab0 b 0x401bec                                    |         goto label_3;
    0x00401ab4 nop                                           |         
                                                             | label_3:
    0x00401bec lw t8, -0x7f60(gp)                            |         t8 = sym.imp.__stack_chk_fail;
    0x00401bf0 move t9, t8                                   |         t9 = t8;
    0x00401bf4 jalr t9                                       |         t9 ();
    0x00401bf8 nop                                           |         
                                                             |     }
    0x00401bfc move sp, fp                                   |     
    0x00401c00 lw ra, 0x105c(sp)                             |     ra = *(var_105ch);
    0x00401c04 lw fp, 0x1058(sp)                             |     fp = *(var_1058h);
    0x00401c08 lw s1, 0x1054(sp)                             |     s1 = *(var_1054h);
    0x00401c0c lw s0, 0x1050(sp)                             |     s0 = *(var_1050h);
    0x00401c10 addiu sp, sp, 0x1060                          |     
    0x00401c14 jr ra                                         |     return v1;
    0x00401c18 nop                                           |     
                                                             | }

[*] Function system used 3 times ir