[*] Binary protection state of netd_migrate
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function popen tear down of netd_migrate
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/libexec/netd_migrate @ 0x5484 */
| #include <stdint.h>
|
; (fcn) fcn.00005484 () | void fcn_00005484 () {
0x00005484 lui gp, 2 |
0x00005488 addiu gp, gp, 0x8dc |
0x0000548c addu gp, gp, t9 | gp += t9;
0x00005490 lw v0, -0x7e00(gp) | v0 = *((gp - 8064));
0x00005494 addiu sp, sp, -0x58 |
0x00005498 sw v0, 0x24(sp) | *(var_24h) = v0;
0x0000549c lw v0, (v0) | v0 = *(v0);
0x000054a0 sw gp, 0x10(sp) | *(var_10h) = gp;
0x000054a4 sw ra, 0x54(sp) | *(var_54h) = ra;
0x000054a8 sw fp, 0x50(sp) | *(var_50h) = fp;
0x000054ac sw s7, 0x4c(sp) | *(var_4ch) = s7;
0x000054b0 sw s6, 0x48(sp) | *(var_48h) = s6;
0x000054b4 sw s5, 0x44(sp) | *(var_44h) = s5;
0x000054b8 sw s4, 0x40(sp) | *(var_40h) = s4;
0x000054bc sw s3, 0x3c(sp) | *(var_3ch) = s3;
0x000054c0 sw s2, 0x38(sp) | *(var_38h) = s2;
0x000054c4 sw s1, 0x34(sp) | *(var_34h) = s1;
0x000054c8 sw s0, 0x30(sp) | *(var_30h) = s0;
0x000054cc sw zero, 0x28(sp) | *(var_28h) = 0;
0x000054d0 sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x000054d4 lw v0, -0x7fd0(gp) | v0 = *((gp - 8180));
| if (a0 == 0) {
0x000054d8 beqz a0, 0x5688 | goto label_7;
| }
0x000054dc lw s6, -0x7fd0(gp) | s6 = *((gp - 8180));
0x000054e0 lw s2, -0x7fc8(gp) | s2 = *((gp - 8178));
0x000054e4 lw s5, -0x7fd0(gp) | s5 = *((gp - 8180));
0x000054e8 lw s4, -0x7fd0(gp) | s4 = *((gp - 8180));
0x000054ec sw v0, 0x20(sp) | *(var_20h_2) = v0;
0x000054f0 addiu v0, s6, -0x4b78 | v0 = s6 + -0x4b78;
0x000054f4 move s0, a0 | s0 = a0;
0x000054f8 lw s3, -0x7fd0(gp) | s3 = *((gp - 8180));
0x000054fc lw s7, -0x7fd0(gp) | s7 = *((gp - 8180));
0x00005500 addiu s2, s2, 0x502c | s2 += fcn.0000502c;
0x00005504 sw v0, 0x1c(sp) | *(var_1ch) = v0;
0x00005508 addiu s5, s5, -0x4de0 | s5 += -0x4de0;
0x0000550c addiu s4, s4, -0x4dbc | s4 += -0x4dbc;
0x00005510 b 0x5530 |
| while (a2 != v0) {
0x00005514 addiu a1, s7, -0x4b94 | a1 = s7 + -0x4b94;
0x00005518 addiu a0, zero, 3 | a0 = 3;
0x0000551c bal 0x5f90 | sym_netd_log_esc ();
0x00005520 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005524 lw s0, 4(s0) | s0 = *((s0 + 1));
| label_3:
0x00005528 lw v0, 0x24(sp) | v0 = *(var_24h);
| if (s0 == 0) {
0x0000552c beqz s0, 0x568c | goto label_8;
| }
| label_0:
0x00005530 lw s1, (s0) | s1 = *(s0);
0x00005534 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x00005538 move a2, s1 | a2 = s1;
0x0000553c addiu a1, s3, -0x4c28 | a1 = s3 + -0x4c28;
0x00005540 addiu a0, zero, 1 | a0 = 1;
0x00005544 bal 0x5f90 | sym_netd_log_esc ();
0x00005548 move a1, zero | a1 = 0;
0x0000554c move t9, s2 | t9 = s2;
0x00005550 move a0, s1 | a0 = s1;
0x00005554 bal 0x502c | fcn_0000502c ();
0x00005558 move fp, v0 | fp = v0;
0x0000555c lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00005560 beqz v0, 0x571c | goto label_9;
| }
0x00005564 lw a2, 4(v0) | a2 = *((v0 + 1));
0x00005568 addiu v0, zero, 1 | v0 = 1;
0x0000556c addiu v0, zero, 2 | v0 = 2;
| if (a2 == v0) {
0x00005570 beq a2, v0, 0x56c8 | goto label_10;
| }
0x00005574 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x00005578 bne a2, v0, 0x5514 |
| }
0x0000557c lw t9, -0x7eec(gp) | t9 = sym.imp.g_strdup;
0x00005580 move a0, s4 | a0 = s4;
0x00005584 jalr t9 | t9 ();
0x00005588 lw a0, 8(fp) | a0 = *(arg_8h);
0x0000558c lw gp, 0x10(sp) | gp = *(var_10h);
0x00005590 lw a2, (a0) | a2 = *(a0);
0x00005594 move s6, v0 | s6 = v0;
| if (a2 != 0) {
0x00005598 beqz a2, 0x55cc |
0x0000559c lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x000055a0 lw t9, -0x7e60(gp) | t9 = sym.imp.g_strdup_printf;
0x000055a4 move a1, v0 | a1 = v0;
0x000055a8 addiu a0, a0, -0x4bb8 | a0 += -0x4bb8;
0x000055ac jalr t9 | t9 ();
0x000055b0 lw gp, 0x10(sp) | gp = *(var_10h);
0x000055b4 move a0, s6 | a0 = s6;
0x000055b8 lw t9, -0x7de0(gp) | t9 = *((gp - 8056));
0x000055bc move s6, v0 | s6 = v0;
0x000055c0 jalr t9 | t9 ();
0x000055c4 lw gp, 0x10(sp) | gp = *(var_10h);
0x000055c8 lw a0, 8(fp) | a0 = *(arg_8h);
| }
0x000055cc lw a2, 4(a0) | a2 = *((a0 + 1));
0x000055d0 lw t9, -0x7e60(gp) | t9 = sym.imp.g_strdup_printf;
| if (a2 != 0) {
0x000055d4 beqz a2, 0x5604 |
0x000055d8 lw a0, -0x7fd0(gp) | a0 = *((gp - 8180));
0x000055dc move a1, s6 | a1 = s6;
0x000055e0 addiu a0, a0, -0x4bb8 | a0 += -0x4bb8;
0x000055e4 jalr t9 | t9 ();
0x000055e8 lw gp, 0x10(sp) | gp = *(var_10h);
0x000055ec move a0, s6 | a0 = s6;
0x000055f0 lw t9, -0x7de0(gp) | t9 = *((gp - 8056));
0x000055f4 move s6, v0 | s6 = v0;
0x000055f8 jalr t9 | t9 ();
0x000055fc lw gp, 0x10(sp) | gp = *(var_10h);
0x00005600 lw a0, 8(fp) | a0 = *(arg_8h);
| }
0x00005604 lw a2, 8(a0) | a2 = *((a0 + 2));
0x00005608 lw v0, 0x20(sp) | v0 = *(var_20h_2);
| if (a2 != 0) {
0x0000560c beqz a2, 0x5640 |
0x00005610 lw t9, -0x7e60(gp) | t9 = sym.imp.g_strdup_printf;
0x00005614 move a1, s6 | a1 = s6;
0x00005618 addiu a0, v0, -0x4ba4 | a0 = v0 + -0x4ba4;
0x0000561c jalr t9 | t9 ();
0x00005620 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005624 sw v0, 0x18(sp) | *(var_18h_2) = v0;
0x00005628 lw t9, -0x7de0(gp) | t9 = *((gp - 8056));
0x0000562c move a0, s6 | a0 = s6;
0x00005630 jalr t9 | t9 ();
0x00005634 lw v0, 0x18(sp) | v0 = *(var_18h_2);
0x00005638 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000563c move s6, v0 | s6 = v0;
| }
| label_1:
0x00005640 lw t9, -0x7e7c(gp) | t9 = sym.imp.strlen;
0x00005644 move a0, s6 | a0 = s6;
0x00005648 jalr t9 | t9 ();
0x0000564c lw gp, 0x10(sp) | gp = *(var_10h);
0x00005650 addiu a3, sp, 0x28 | a3 = sp + 0x28;
0x00005654 move a2, v0 | a2 = v0;
0x00005658 lw t9, -0x7fd4(gp) | t9 = sym.netd_util_write_to_file;
0x0000565c move a1, s6 | a1 = s6;
0x00005660 move a0, s1 | a0 = s1;
0x00005664 bal 0x8ad8 | sym_netd_util_write_to_file ();
0x00005668 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0000566c beqz v0, 0x56e4 | goto label_11;
| }
| label_2:
0x00005670 lw t9, -0x7de0(gp) | t9 = *((gp - 8056));
0x00005674 move a0, s6 | a0 = s6;
0x00005678 jalr t9 | t9 ();
0x0000567c lw s0, 4(s0) | s0 = *((s0 + 1));
0x00005680 lw gp, 0x10(sp) | gp = *(var_10h);
| if (s0 != 0) {
0x00005684 bnez s0, 0x5530 | goto label_0;
| }
| label_7:
0x00005688 lw v0, 0x24(sp) | v0 = *(var_24h);
| label_8:
0x0000568c lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x00005690 lw v0, (v0) | v0 = *(v0);
0x00005694 lw ra, 0x54(sp) | ra = *(var_54h);
| if (v1 == v0) {
0x00005698 bne v1, v0, 0x5740 |
0x0000569c lw fp, 0x50(sp) | fp = *(var_50h);
0x000056a0 lw s7, 0x4c(sp) | s7 = *(var_4ch);
0x000056a4 lw s6, 0x48(sp) | s6 = *(var_48h);
0x000056a8 lw s5, 0x44(sp) | s5 = *(var_44h);
0x000056ac lw s4, 0x40(sp) | s4 = *(var_40h);
0x000056b0 lw s3, 0x3c(sp) | s3 = *(var_3ch);
0x000056b4 lw s2, 0x38(sp) | s2 = *(var_38h);
0x000056b8 lw s1, 0x34(sp) | s1 = *(var_34h);
0x000056bc lw s0, 0x30(sp) | s0 = *(var_30h);
0x000056c0 addiu sp, sp, 0x58 |
0x000056c4 jr ra | return v0;
| label_10:
0x000056c8 lw t9, -0x7e10(gp) | t9 = sym.imp.g_strjoinv;
0x000056cc lw a1, 8(fp) | a1 = *(arg_8h);
0x000056d0 move a0, s5 | a0 = s5;
0x000056d4 jalr t9 | t9 ();
0x000056d8 move s6, v0 | s6 = v0;
0x000056dc lw gp, 0x10(sp) | gp = *(var_10h);
0x000056e0 b 0x5640 | goto label_1;
| label_11:
0x000056e4 lw v0, 0x28(sp) | v0 = *(var_28h);
0x000056e8 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x000056ec lw a1, 0x1c(sp) | a1 = *(var_1ch);
0x000056f0 lw a3, 8(v0) | a3 = *((v0 + 2));
0x000056f4 move a2, s1 | a2 = s1;
0x000056f8 addiu a0, zero, 3 | a0 = 3;
0x000056fc bal 0x5f90 | sym_netd_log_esc ();
0x00005700 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005704 lw t9, -0x7f48(gp) | t9 = sym.imp.g_error_free;
0x00005708 lw a0, 0x28(sp) | a0 = *(var_28h);
0x0000570c jalr t9 | t9 ();
0x00005710 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005714 sw zero, 0x28(sp) | *(var_28h) = 0;
0x00005718 b 0x5670 | goto label_2;
| label_9:
0x0000571c lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x00005720 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x00005724 move a2, s1 | a2 = s1;
0x00005728 addiu a1, a1, -0x4bdc | a1 += -0x4bdc;
0x0000572c addiu a0, zero, 3 | a0 = 3;
0x00005730 bal 0x5f90 | sym_netd_log_esc ();
0x00005734 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005738 lw s0, 4(s0) | s0 = *((s0 + 1));
0x0000573c b 0x5528 | goto label_3;
| }
0x00005740 lw t9, -0x7e1c(gp) | t9 = sym.imp.__stack_chk_fail;
0x00005744 jalr t9 | t9 ();
0x00005748 nop |
0x0000574c lui gp, 2 |
0x00005750 addiu gp, gp, 0x614 |
0x00005754 addu gp, gp, t9 | gp += t9;
0x00005758 addiu sp, sp, -0x40 |
0x0000575c sw gp, 0x18(sp) | *(var_18h) = gp;
0x00005760 sw ra, 0x3c(sp) | *(var_3ch_2) = ra;
0x00005764 sw s6, 0x38(sp) | *(var_38h_2) = s6;
0x00005768 sw s5, 0x34(sp) | *(var_34h_2) = s5;
0x0000576c sw s4, 0x30(sp) | *(var_30h_2) = s4;
0x00005770 sw s3, 0x2c(sp) | *(var_2ch_2) = s3;
0x00005774 sw s2, 0x28(sp) | *(var_28h_2) = s2;
0x00005778 sw s1, 0x24(sp) | *(var_24h_2) = s1;
0x0000577c sw s0, 0x20(sp) | *(var_20h) = s0;
0x00005780 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
| if (a0 == 0) {
0x00005784 beqz a0, 0x58f8 | goto label_12;
| }
0x00005788 lb v0, (a0) | v0 = *(a0);
0x0000578c move s3, a0 | s3 = a0;
| if (v0 == 0) {
0x00005790 beqz v0, 0x58f8 | goto label_12;
| }
0x00005794 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x00005798 lw t9, -0x7ec4(gp) | t9 = sym.imp.popen
0x0000579c addiu a1, a1, -0x4b3c | a1 += -0x4b3c;
0x000057a0 jalr t9 | t9 ();
0x000057a4 move s2, v0 | s2 = v0;
0x000057a8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000057ac beqz v0, 0x5970 | goto label_13;
| }
0x000057b0 lw t9, -0x7ee0(gp) | t9 = sym.imp.g_malloc0;
0x000057b4 addiu a0, zero, 0x10 | a0 = 0x10;
0x000057b8 jalr t9 | t9 ();
0x000057bc move s6, v0 | s6 = v0;
0x000057c0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000057c4 beqz v0, 0x582c | goto label_14;
| }
0x000057c8 move s0, zero | s0 = 0;
0x000057cc addiu s1, zero, 0x10 | s1 = 0x10;
0x000057d0 addiu s4, zero, -1 | s4 = -1;
0x000057d4 b 0x57e4 | goto label_15;
| label_4:
0x000057d8 addu v0, s6, s0 | v0 = s6 + s0;
| do {
0x000057dc addiu s0, s0, 1 | s0++;
0x000057e0 sb s5, (v0) | *(v0) = s5;
| label_15:
0x000057e4 lw t9, -0x7ea0(gp) | t9 = sym.imp.fgetc;
0x000057e8 move a0, s2 | a0 = s2;
0x000057ec jalr t9 | t9 ();
0x000057f0 addiu v1, s1, -1 | v1 = s1 + -1;
0x000057f4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000057f8 move s5, v0 | s5 = v0;
0x000057fc slt v1, s0, v1 | v1 = (s0 < v1) ? 1 : 0;
| if (v0 == s4) {
0x00005800 beq v0, s4, 0x5880 | goto label_16;
| }
0x00005804 addu v0, s6, s0 | v0 = s6 + s0;
0x00005808 bnez v1, 0x57dc |
| } while (v1 != 0);
0x0000580c lw t9, -0x7ecc(gp) | t9 = sym.imp.g_realloc;
0x00005810 addiu s1, s1, 0x10 | s1 += 0x10;
0x00005814 move a0, s6 | a0 = s6;
0x00005818 move a1, s1 | a1 = s1;
0x0000581c jalr t9 | t9 ();
0x00005820 move s6, v0 | s6 = v0;
0x00005824 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00005828 bnez v0, 0x57d8 | goto label_4;
| }
| label_14:
0x0000582c lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x00005830 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x00005834 move a2, s3 | a2 = s3;
0x00005838 addiu a1, a1, -0x4b1c | a1 += -0x4b1c;
0x0000583c addiu a0, zero, 3 | a0 = 3;
0x00005840 bal 0x5f90 | sym_netd_log_esc ();
0x00005844 lw gp, 0x18(sp) | gp = *(var_18h);
0x00005848 lw t9, -0x7f50(gp) | t9 = sym.imp.pclose;
0x0000584c move a0, s2 | a0 = s2;
0x00005850 jalr t9 | t9 ();
| label_5:
0x00005854 lw ra, 0x3c(sp) | ra = *(var_3ch_2);
| do {
| label_6:
0x00005858 move v0, s6 | v0 = s6;
0x0000585c lw s5, 0x34(sp) | s5 = *(var_34h_2);
0x00005860 lw s6, 0x38(sp) | s6 = *(var_38h_2);
0x00005864 lw s4, 0x30(sp) | s4 = *(var_30h_2);
0x00005868 lw s3, 0x2c(sp) | s3 = *(var_2ch_2);
0x0000586c lw s2, 0x28(sp) | s2 = *(var_28h_2);
0x00005870 lw s1, 0x24(sp) | s1 = *(var_24h_2);
0x00005874 lw s0, 0x20(sp) | s0 = *(var_20h);
0x00005878 addiu sp, sp, 0x40 |
0x0000587c jr ra | return v0;
| label_16:
0x00005880 addu s0, s6, s0 | s0 = s6 + s0;
0x00005884 lw t9, -0x7e98(gp) | t9 = sym.imp.__errno_location;
0x00005888 sb zero, (s0) | *(s0) = 0;
0x0000588c jalr t9 | t9 ();
0x00005890 lw gp, 0x18(sp) | gp = *(var_18h);
0x00005894 sw zero, (v0) | *(v0) = 0;
0x00005898 move a0, s2 | a0 = s2;
0x0000589c lw t9, -0x7f50(gp) | t9 = sym.imp.pclose;
0x000058a0 move s0, v0 | s0 = v0;
0x000058a4 jalr t9 | t9 ();
0x000058a8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x000058ac bltz v0, 0x5990 | goto label_17;
| }
0x000058b0 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
| if (v0 == 0) {
0x000058b4 bnez v0, 0x5938 |
0x000058b8 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x000058bc move a2, s6 | a2 = s6;
0x000058c0 addiu a1, a1, -0x4a90 | a1 += -0x4a90;
0x000058c4 addiu a0, zero, 1 | a0 = 1;
0x000058c8 bal 0x5f90 | sym_netd_log_esc ();
0x000058cc lw ra, 0x3c(sp) | ra = *(var_3ch_2);
0x000058d0 move v0, s6 | v0 = s6;
0x000058d4 lw s5, 0x34(sp) | s5 = *(var_34h_2);
0x000058d8 lw s6, 0x38(sp) | s6 = *(var_38h_2);
0x000058dc lw s4, 0x30(sp) | s4 = *(var_30h_2);
0x000058e0 lw s3, 0x2c(sp) | s3 = *(var_2ch_2);
0x000058e4 lw s2, 0x28(sp) | s2 = *(var_28h_2);
0x000058e8 lw s1, 0x24(sp) | s1 = *(var_24h_2);
0x000058ec lw s0, 0x20(sp) | s0 = *(var_20h);
0x000058f0 addiu sp, sp, 0x40 |
0x000058f4 jr ra | return v0;
| label_12:
0x000058f8 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x000058fc addiu a1, a1, -0x4b58 | a1 += -0x4b58;
0x00005900 addiu a0, zero, 2 | a0 = 2;
0x00005904 bal 0x5f90 | sym_netd_log_esc ();
0x00005908 lw ra, 0x3c(sp) | ra = *(var_3ch_2);
0x0000590c move s6, zero | s6 = 0;
0x00005910 move v0, s6 | v0 = s6;
0x00005914 lw s5, 0x34(sp) | s5 = *(var_34h_2);
0x00005918 lw s6, 0x38(sp) | s6 = *(var_38h_2);
0x0000591c lw s4, 0x30(sp) | s4 = *(var_30h_2);
0x00005920 lw s3, 0x2c(sp) | s3 = *(var_2ch_2);
0x00005924 lw s2, 0x28(sp) | s2 = *(var_28h_2);
0x00005928 lw s1, 0x24(sp) | s1 = *(var_24h_2);
0x0000592c lw s0, 0x20(sp) | s0 = *(var_20h);
0x00005930 addiu sp, sp, 0x40 |
0x00005934 jr ra | return v0;
| }
0x00005938 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x0000593c sw s6, 0x10(sp) | *(var_10h_2) = s6;
0x00005940 move a3, v0 | a3 = v0;
0x00005944 move a2, s3 | a2 = s3;
0x00005948 addiu a1, a1, -0x4ac4 | a1 += -0x4ac4;
0x0000594c addiu a0, zero, 3 | a0 = 3;
0x00005950 bal 0x5f90 | sym_netd_log_esc ();
0x00005954 lw gp, 0x18(sp) | gp = *(var_18h);
0x00005958 move a0, s6 | a0 = s6;
0x0000595c lw t9, -0x7de0(gp) | t9 = *((gp - 8056));
0x00005960 move s6, zero | s6 = 0;
0x00005964 jalr t9 | t9 ();
0x00005968 lw ra, 0x3c(sp) | ra = *(var_3ch_2);
0x0000596c b 0x5858 |
| } while (1);
| label_13:
0x00005970 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x00005974 lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x00005978 move a2, s3 | a2 = s3;
0x0000597c addiu a1, a1, -0x4b38 | a1 += -0x4b38;
0x00005980 addiu a0, zero, 3 | a0 = 3;
0x00005984 bal 0x5f90 | sym_netd_log_esc ();
0x00005988 move s6, zero | s6 = 0;
0x0000598c b 0x5854 | goto label_5;
| label_17:
0x00005990 lw t9, -0x7e64(gp) | t9 = sym.imp.strerror;
0x00005994 lw a0, (s0) | a0 = *(s0);
0x00005998 jalr t9 | t9 ();
0x0000599c lw gp, 0x18(sp) | gp = *(var_18h);
0x000059a0 sw s6, 0x10(sp) | *(var_10h_2) = s6;
0x000059a4 move a3, v0 | a3 = v0;
0x000059a8 lw a1, -0x7fd0(gp) | a1 = *((gp - 8180));
0x000059ac lw t9, -0x7fcc(gp) | t9 = sym.netd_log_esc;
0x000059b0 move a2, s3 | a2 = s3;
0x000059b4 addiu a1, a1, -0x4af0 | a1 += -0x4af0;
0x000059b8 addiu a0, zero, 3 | a0 = 3;
0x000059bc bal 0x5f90 | sym_netd_log_esc ();
0x000059c0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000059c4 move a0, s6 | a0 = s6;
0x000059c8 sw zero, (s0) | *(s0) = 0;
0x000059cc lw t9, -0x7de0(gp) | t9 = *((gp - 8056));
0x000059d0 move s6, zero | s6 = 0;
0x000059d4 jalr t9 | t9 ();
0x000059d8 lw ra, 0x3c(sp) | ra = *(var_3ch_2);
0x000059dc b 0x5858 | goto label_6;
| }
[*] Function popen used 2 times netd_migrate