[*] Binary protection state of network_setup
Full RELRO Canary found NX disabled No PIE No RPATH No RUNPATH No Symbols
[*] Function system tear down of network_setup
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/network_setup @ 0x403374 */
| #include <stdint.h>
|
; (fcn) main () | int32_t main () {
0x00403374 lui gp, 3 |
0x00403378 addiu gp, gp, -0x7334 |
0x0040337c addu gp, gp, t9 | gp += t9;
0x00403380 addiu sp, sp, -0x46b8 |
0x00403384 sw ra, 0x46b4(sp) | *(arg_46b4h) = ra;
0x00403388 sw fp, 0x46b0(sp) | *(arg_46b0h) = fp;
0x0040338c sw s2, 0x46ac(sp) | *(arg_46ach) = s2;
0x00403390 sw s1, 0x46a8(sp) | *(arg_46a8h) = s1;
0x00403394 sw s0, 0x46a4(sp) | *(arg_46a4h) = s0;
0x00403398 move fp, sp | fp = sp;
0x0040339c sw gp, 0x18(sp) | *(arg_18h) = gp;
0x004033a0 sw a0, 0x24(fp) | *(arg_24h) = a0;
0x004033a4 sw a1, 0x20(fp) | *(arg_20h) = a1;
0x004033a8 lw t8, -0x7dd0(gp) | t8 = *((gp - 8052));
0x004033ac lw t8, (t8) | t8 = *(t8);
0x004033b0 sw t8, 0x469c(fp) | *(arg_469ch) = t8;
0x004033b4 sw zero, 0x38(fp) | *(arg_38h) = 0;
0x004033b8 sw zero, 0x4588(fp) | *(arg_4588h) = 0;
0x004033bc sw zero, 0x458c(fp) | *(arg_458ch) = 0;
0x004033c0 sw zero, 0x4590(fp) | *(arg_4590h) = 0;
0x004033c4 sw zero, 0x4594(fp) | *(arg_4594h) = 0;
0x004033c8 sw zero, 0x4598(fp) | *(arg_4598h) = 0;
0x004033cc sw zero, 0x459c(fp) | *(arg_459ch) = 0;
0x004033d0 sw zero, 0x45a0(fp) | *(arg_45a0h) = 0;
0x004033d4 sw zero, 0x45a4(fp) | *(arg_45a4h) = 0;
0x004033d8 sw zero, 0x45a8(fp) | *(arg_45a8h) = 0;
0x004033dc sw zero, 0x45ac(fp) | *(arg_45ach) = 0;
0x004033e0 sw zero, 0x45b0(fp) | *(arg_45b0h) = 0;
0x004033e4 sw zero, 0x45b4(fp) | *(arg_45b4h) = 0;
0x004033e8 sw zero, 0x45b8(fp) | *(arg_45b8h) = 0;
0x004033ec sw zero, 0x45bc(fp) | *(arg_45bch) = 0;
0x004033f0 sw zero, 0x45c0(fp) | *(arg_45c0h) = 0;
0x004033f4 sw zero, 0x45c4(fp) | *(arg_45c4h) = 0;
0x004033f8 sb zero, 0x45c8(fp) | *(arg_45c8h) = 0;
0x004033fc sw zero, 0x3c(fp) | *(arg_3ch) = 0;
0x00403400 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x00403404 move a0, t8 | a0 = t8;
0x00403408 lw t8, -0x7fbc(gp) | t8 = *(gp);
0x0040340c move t9, t8 | t9 = t8;
0x00403410 jalr t9 | t9 ();
0x00403414 nop |
0x00403418 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040341c addiu t8, fp, 0x1060 | t8 = fp + 0x1060;
0x00403420 move a0, t8 | a0 = t8;
0x00403424 lw t8, -0x7fb8(gp) | t8 = *(gp);
0x00403428 move t9, t8 | t9 = t8;
0x0040342c jalr t9 | t9 ();
0x00403430 nop |
0x00403434 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403438 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str._tmp_wifiLinkStatus */
0x0040343c addiu a0, t8, 0x15ac | a0 = t8 + 0x15ac;
0x00403440 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
0x00403444 addiu a1, t8, 0x15c0 | a1 = t8 + 0x15c0;
0x00403448 lw t8, -0x7fb4(gp) | t8 = sym.echo_data_char_const__char_const_;
0x0040344c move t9, t8 | t9 = t8;
0x00403450 jalr t9 | t9 ();
0x00403454 nop |
0x00403458 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040345c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str._tmp_network_setup.pid */
0x00403460 addiu a0, t8, 0x15c4 | a0 = t8 + 0x15c4;
0x00403464 lw t8, -0x7fb0(gp) | t8 = sym.create_pidfile_char_const_;
0x00403468 move t9, t8 | t9 = t8;
0x0040346c jalr t9 | t9 ();
0x00403470 nop |
0x00403474 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403478 move t8, v0 | t8 = v0;
0x0040347c srl t8, t8, 0x1f | t8 >>= 0x1f;
0x00403480 andi t8, t8, 0xff | t8 &= 0xff;
| if (t8 != 0) {
0x00403484 beqz t8, 0x40349c |
0x00403488 nop |
0x0040348c addiu s0, zero, -1 | s0 = -1;
0x00403490 move s1, zero | s1 = 0;
0x00403494 b 0x403e28 | goto label_0;
0x00403498 nop |
| }
0x0040349c addiu t8, fp, 0x45cc | t8 = fp + 0x45cc;
0x004034a0 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x004034a4 lw a2, 0x1404(v0) | a2 = *((v0 + 1281));
| /* str._var_tmp_watchdog */
0x004034a8 addiu v1, v0, 0x1404 | v1 = v0 + 0x1404;
0x004034ac lw a1, 4(v1) | a1 = *((v1 + 1));
| /* str._var_tmp_watchdog */
0x004034b0 addiu v1, v0, 0x1404 | v1 = v0 + 0x1404;
0x004034b4 lw a0, 8(v1) | a0 = *((v1 + 2));
| /* str._var_tmp_watchdog */
0x004034b8 addiu v1, v0, 0x1404 | v1 = v0 + 0x1404;
0x004034bc lw v1, 0xc(v1) | v1 = *((v1 + 3));
0x004034c0 sw a2, (t8) | *(t8) = a2;
0x004034c4 sw a1, 4(t8) | *((t8 + 4)) = a1;
0x004034c8 sw a0, 8(t8) | *((t8 + 8)) = a0;
0x004034cc sw v1, 0xc(t8) | *((t8 + 12)) = v1;
| /* str._var_tmp_watchdog */
0x004034d0 addiu v0, v0, 0x1404 | v0 += 0x1404;
0x004034d4 lhu v0, 0x10(v0) | v0 = *((v0 + 8));
0x004034d8 sh v0, 0x10(t8) | *((t8 + 16)) = v0;
0x004034dc addiu t8, fp, 0x1060 | t8 = fp + 0x1060;
0x004034e0 move a0, t8 | a0 = t8;
0x004034e4 lw t8, -0x7ecc(gp) | t8 = *(gp);
0x004034e8 move t9, t8 | t9 = t8;
0x004034ec jalr t9 | t9 ();
0x004034f0 nop |
0x004034f4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004034f8 addiu v0, fp, 0x2c | v0 = fp + 0x2c;
0x004034fc addiu t8, fp, 0x1060 | t8 = fp + 0x1060;
0x00403500 move a0, v0 | a0 = v0;
0x00403504 move a1, t8 | a1 = t8;
0x00403508 lw t8, -0x7ec0(gp) | t8 = *(gp);
0x0040350c move t9, t8 | t9 = t8;
0x00403510 jalr t9 | t9 ();
0x00403514 nop |
0x00403518 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040351c addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x00403520 move a0, t8 | a0 = t8;
0x00403524 lw t8, -0x7de4(gp) | t8 = *(gp);
0x00403528 move t9, t8 | t9 = t8;
0x0040352c jalr t9 | t9 ();
0x00403530 nop |
0x00403534 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403538 move t8, v0 | t8 = v0;
0x0040353c move a0, t8 | a0 = t8;
0x00403540 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* esilref: 'mfg' */
0x00403544 addiu a1, t8, 0x15dc | a1 = t8 + 0x15dc;
0x00403548 lw t8, -0x7ee4(gp) | t8 = sym.imp.strcmp;
0x0040354c move t9, t8 | t9 = t8;
0x00403550 jalr t9 | t9 ();
0x00403554 nop |
0x00403558 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040355c move t8, v0 | t8 = v0;
0x00403560 sltiu t8, t8, 1 | t8 = (t8 < 1) ? 1 : 0;
0x00403564 andi s0, t8, 0xff | s0 = t8 & 0xff;
0x00403568 addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x0040356c move a0, t8 | a0 = t8;
0x00403570 lw t8, -0x7e3c(gp) | t8 = *((gp - 8079));
0x00403574 move t9, t8 | t9 = t8;
0x00403578 jalr t9 | t9 ();
0x0040357c nop |
0x00403580 lw gp, 0x18(fp) | gp = *(arg_18h);
| if (s0 != 0) {
0x00403584 beqz s0, 0x40360c |
0x00403588 nop |
0x0040358c lw t8, -0x7e30(gp) | t8 = sym.imp.run_stop_ap_mode__;
0x00403590 move t9, t8 | t9 = t8;
0x00403594 jalr t9 | t9 ();
0x00403598 nop |
0x0040359c lw gp, 0x18(fp) | gp = *(arg_18h);
0x004035a0 addiu t8, zero, 0x7f | t8 = 0x7f;
0x004035a4 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x004035a8 move a0, v0 | a0 = v0;
0x004035ac move a1, t8 | a1 = t8;
0x004035b0 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifconfig_wlan1_up */
0x004035b4 addiu a2, t8, 0x15e0 | a2 = t8 + 0x15e0;
0x004035b8 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x004035bc move t9, t8 | t9 = t8;
0x004035c0 jalr t9 | t9 ();
0x004035c4 nop |
0x004035c8 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004035cc addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x004035d0 move a0, t8 | a0 = t8;
0x004035d4 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x004035d8 move t9, t8 | t9 = t8;
0x004035dc jalr t9 | t9 ();
0x004035e0 nop |
0x004035e4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004035e8 lw t8, -0x7dbc(gp) | t8 = sym.imp.run_ap_mode_base_db__;
0x004035ec move t9, t8 | t9 = t8;
0x004035f0 jalr t9 | t9 ();
0x004035f4 nop |
0x004035f8 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004035fc move s0, zero | s0 = 0;
0x00403600 move s1, zero | s1 = 0;
0x00403604 b 0x403e28 | goto label_0;
0x00403608 nop |
| }
0x0040360c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.eth0 */
0x00403610 addiu a0, t8, 0x15f4 | a0 = t8 + 0x15f4;
0x00403614 lw t8, -0x7fac(gp) | t8 = sym.probe_ethernet_link_char_const_;
0x00403618 move t9, t8 | t9 = t8;
0x0040361c jalr t9 | t9 ();
0x00403620 nop |
0x00403624 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403628 move t8, v0 | t8 = v0;
0x0040362c xori t8, t8, 1 | t8 ^= 1;
0x00403630 sltiu t8, t8, 1 | t8 = (t8 < 1) ? 1 : 0;
0x00403634 andi t8, t8, 0xff | t8 &= 0xff;
| if (t8 != 0) {
0x00403638 beqz t8, 0x403648 |
0x0040363c nop |
0x00403640 addiu t8, zero, 1 | t8 = 1;
0x00403644 sw t8, 0x3c(fp) | *(arg_3ch) = t8;
| }
0x00403648 lw t8, 0x3c(fp) | t8 = *(arg_3ch);
0x0040364c sw t8, 0x10(sp) | *(arg_10h) = t8;
0x00403650 lw a0, -0x7fd8(gp) | a0 = *(gp);
0x00403654 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str._s__d__ethernet_link_d */
0x00403658 addiu a1, t8, 0x15fc | a1 = t8 + 0x15fc;
0x0040365c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.network_setup.cpp */
0x00403660 addiu a2, t8, 0x1614 | a2 = t8 + 0x1614;
0x00403664 addiu a3, zero, 0x11b | a3 = 0x11b;
0x00403668 lw t8, -0x7e34(gp) | t8 = *(gp);
0x0040366c move t9, t8 | t9 = t8;
0x00403670 jalr t9 | t9 ();
0x00403674 nop |
0x00403678 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040367c lw t8, 0x3c(fp) | t8 = *(arg_3ch);
| if (t8 == 0) {
0x00403680 bnez t8, 0x4036bc |
0x00403684 nop |
0x00403688 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.eth0 */
0x0040368c addiu a0, t8, 0x15f4 | a0 = t8 + 0x15f4;
0x00403690 lw t8, -0x7dc4(gp) | t8 = sym.imp.does_ifup_char_const_;
0x00403694 move t9, t8 | t9 = t8;
0x00403698 jalr t9 | t9 ();
0x0040369c nop |
0x004036a0 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004036a4 addiu t8, zero, 1 | t8 = 1;
| if (v0 != t8) {
0x004036a8 bne v0, t8, 0x4036bc | goto label_1;
| }
0x004036ac nop |
0x004036b0 addiu t8, zero, 1 | t8 = 1;
0x004036b4 b 0x4036c0 | goto label_2;
0x004036b8 nop |
| }
| label_1:
0x004036bc move t8, zero | t8 = 0;
| if (t8 != 0) {
| label_2:
0x004036c0 beqz t8, 0x403710 |
0x004036c4 nop |
0x004036c8 addiu t8, zero, 0x7f | t8 = 0x7f;
0x004036cc addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x004036d0 move a0, v0 | a0 = v0;
0x004036d4 move a1, t8 | a1 = t8;
0x004036d8 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifconfig_eth0_0.0.0.0_down */
0x004036dc addiu a2, t8, 0x1628 | a2 = t8 + 0x1628;
0x004036e0 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x004036e4 move t9, t8 | t9 = t8;
0x004036e8 jalr t9 | t9 ();
0x004036ec nop |
0x004036f0 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004036f4 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x004036f8 move a0, t8 | a0 = t8;
0x004036fc lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403700 move t9, t8 | t9 = t8;
0x00403704 jalr t9 | t9 ();
0x00403708 nop |
0x0040370c lw gp, 0x18(fp) | gp = *(arg_18h);
| }
0x00403710 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x00403714 move a0, t8 | a0 = t8;
0x00403718 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* esilref: 'Wireless' */
0x0040371c addiu a1, t8, 0x1644 | a1 = t8 + 0x1644;
0x00403720 move a2, zero | a2 = 0;
0x00403724 lw t8, -0x7ed4(gp) | t8 = *(gp);
0x00403728 move t9, t8 | t9 = t8;
0x0040372c jalr t9 | t9 ();
0x00403730 nop |
0x00403734 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403738 addiu t8, fp, 0x45cc | t8 = fp + 0x45cc;
0x0040373c move a0, t8 | a0 = t8;
0x00403740 addiu a1, zero, 0x30b | a1 = 0x30b;
0x00403744 move a2, zero | a2 = 0;
0x00403748 move a3, zero | a3 = 0;
0x0040374c lw t8, -0x7fc4(gp) | t8 = sym.sendCmd_char_const__unsigned_int__unsigned_int__unsigned_int_;
0x00403750 move t9, t8 | t9 = t8;
0x00403754 jalr t9 | t9 ();
0x00403758 nop |
0x0040375c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403760 addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x00403764 move a0, t8 | a0 = t8;
0x00403768 lw t8, -0x7ef8(gp) | t8 = *(gp);
0x0040376c move t9, t8 | t9 = t8;
0x00403770 jalr t9 | t9 ();
0x00403774 nop |
0x00403778 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040377c addiu v0, fp, 0x30 | v0 = fp + 0x30;
0x00403780 addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x00403784 move a0, v0 | a0 = v0;
0x00403788 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| /* esilref: 'ESSID' */
0x0040378c addiu a1, v0, 0x1650 | a1 = v0 + 0x1650;
0x00403790 move a2, t8 | a2 = t8;
0x00403794 lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403798 move t9, t8 | t9 = t8;
0x0040379c jalr t9 | t9 ();
0x004037a0 nop |
0x004037a4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004037a8 addiu v1, fp, 0x34 | v1 = fp + 0x34;
0x004037ac addiu v0, fp, 0x48 | v0 = fp + 0x48;
0x004037b0 addiu t8, fp, 0x30 | t8 = fp + 0x30;
0x004037b4 move a0, v1 | a0 = v1;
0x004037b8 move a1, v0 | a1 = v0;
0x004037bc move a2, t8 | a2 = t8;
0x004037c0 lw t8, -0x7e60(gp) | t8 = *(gp);
0x004037c4 move t9, t8 | t9 = t8;
0x004037c8 jalr t9 | t9 ();
0x004037cc nop |
0x004037d0 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004037d4 addiu t8, fp, 0x34 | t8 = fp + 0x34;
0x004037d8 move a0, t8 | a0 = t8;
0x004037dc lw t8, -0x7de4(gp) | t8 = *(gp);
0x004037e0 move t9, t8 | t9 = t8;
0x004037e4 jalr t9 | t9 ();
0x004037e8 nop |
0x004037ec lw gp, 0x18(fp) | gp = *(arg_18h);
0x004037f0 move t8, v0 | t8 = v0;
0x004037f4 addiu v0, fp, 0x45a8 | v0 = fp + 0x45a8;
0x004037f8 move a0, v0 | a0 = v0;
0x004037fc addiu a1, zero, 0x20 | a1 = 0x20;
0x00403800 move a2, t8 | a2 = t8;
0x00403804 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403808 move t9, t8 | t9 = t8;
0x0040380c jalr t9 | t9 ();
0x00403810 nop |
0x00403814 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403818 addiu t8, fp, 0x34 | t8 = fp + 0x34;
0x0040381c move a0, t8 | a0 = t8;
0x00403820 lw t8, -0x7e3c(gp) | t8 = *((gp - 8079));
0x00403824 move t9, t8 | t9 = t8;
0x00403828 jalr t9 | t9 ();
0x0040382c nop |
0x00403830 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403834 addiu t8, fp, 0x30 | t8 = fp + 0x30;
0x00403838 move a0, t8 | a0 = t8;
0x0040383c lw t8, -0x7e3c(gp) | t8 = *((gp - 8079));
0x00403840 move t9, t8 | t9 = t8;
0x00403844 jalr t9 | t9 ();
0x00403848 nop |
0x0040384c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403850 addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x00403854 move a0, t8 | a0 = t8;
0x00403858 lw t8, -0x7eb0(gp) | t8 = *(gp);
0x0040385c move t9, t8 | t9 = t8;
0x00403860 jalr t9 | t9 ();
0x00403864 nop |
0x00403868 lw gp, 0x18(fp) | gp = *(arg_18h);
0x0040386c addiu v0, fp, 0x45a8 | v0 = fp + 0x45a8;
0x00403870 addiu t8, fp, 0x4588 | t8 = fp + 0x4588;
0x00403874 move a0, v0 | a0 = v0;
0x00403878 move a1, t8 | a1 = t8;
0x0040387c addiu a2, zero, 0x20 | a2 = 0x20;
0x00403880 lw t8, -0x7fa8(gp) | t8 = sym.get_ap_channel_char_const__char__int_;
0x00403884 move t9, t8 | t9 = t8;
0x00403888 jalr t9 | t9 ();
0x0040388c nop |
0x00403890 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403894 move t8, v0 | t8 = v0;
0x00403898 sw t8, 0x40(fp) | *(arg_40h) = t8;
0x0040389c lw t8, 0x40(fp) | t8 = *(arg_40h);
| if (t8 == 0) {
0x004038a0 bnez t8, 0x4038ec |
0x004038a4 nop |
0x004038a8 addiu t8, fp, 0x45a8 | t8 = fp + 0x45a8;
0x004038ac sw t8, 0x10(sp) | *(arg_10h) = t8;
0x004038b0 lw a0, -0x7fd8(gp) | a0 = *(gp);
0x004038b4 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str._s__d__Fail_to_get_channel_of__s_network_n */
0x004038b8 addiu a1, t8, 0x1658 | a1 = t8 + 0x1658;
0x004038bc lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.main */
0x004038c0 addiu a2, t8, 0x1c48 | a2 = t8 + 0x1c48;
0x004038c4 addiu a3, zero, 0x12d | a3 = 0x12d;
0x004038c8 lw t8, -0x7e34(gp) | t8 = *(gp);
0x004038cc move t9, t8 | t9 = t8;
0x004038d0 jalr t9 | t9 ();
0x004038d4 nop |
0x004038d8 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004038dc addiu t8, zero, 1 | t8 = 1;
0x004038e0 sw t8, 0x38(fp) | *(arg_38h) = t8;
0x004038e4 b 0x40396c | goto label_3;
0x004038e8 nop |
| }
0x004038ec addiu t8, fp, 0x45a8 | t8 = fp + 0x45a8;
0x004038f0 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| /* str.ESSID:_s_Channel:_d_n */
0x004038f4 addiu a0, v0, 0x1684 | a0 = v0 + 0x1684;
0x004038f8 move a1, t8 | a1 = t8;
0x004038fc lw a2, 0x40(fp) | a2 = *(arg_40h);
0x00403900 lw t8, -0x7fd4(gp) | t8 = sym.show_msg_char_const__..._;
0x00403904 move t9, t8 | t9 = t8;
0x00403908 jalr t9 | t9 ();
0x0040390c nop |
0x00403910 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403914 lw t8, 0x40(fp) | t8 = *(arg_40h);
0x00403918 addiu v0, fp, 0x48 | v0 = fp + 0x48;
0x0040391c move a0, v0 | a0 = v0;
0x00403920 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| /* str.Channel */
0x00403924 addiu a1, v0, 0x169c | a1 = v0 + 0x169c;
0x00403928 move a2, t8 | a2 = t8;
0x0040392c lw t8, -0x7f10(gp) | t8 = *(gp);
0x00403930 move t9, t8 | t9 = t8;
0x00403934 jalr t9 | t9 ();
0x00403938 nop |
0x0040393c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403940 addiu v0, fp, 0x48 | v0 = fp + 0x48;
0x00403944 addiu t8, fp, 0x4588 | t8 = fp + 0x4588;
0x00403948 move a0, v0 | a0 = v0;
0x0040394c lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| /* str.BSSID */
0x00403950 addiu a1, v0, 0x16a4 | a1 = v0 + 0x16a4;
0x00403954 move a2, t8 | a2 = t8;
0x00403958 lw t8, -0x7df4(gp) | t8 = *(gp);
0x0040395c move t9, t8 | t9 = t8;
0x00403960 jalr t9 | t9 ();
0x00403964 nop |
0x00403968 lw gp, 0x18(fp) | gp = *(arg_18h);
| label_3:
0x0040396c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.wlan0 */
0x00403970 addiu a0, t8, 0x16ac | a0 = t8 + 0x16ac;
0x00403974 lw a1, 0x38(fp) | a1 = *(arg_38h);
0x00403978 lw a2, 0x3c(fp) | a2 = *(arg_3ch);
0x0040397c lw t8, -0x7fa4(gp) | t8 = sym.create_network_config_char_const__int__int_;
0x00403980 move t9, t8 | t9 = t8;
0x00403984 jalr t9 | t9 ();
0x00403988 nop |
0x0040398c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403990 lw t8, -0x7fa0(gp) | t8 = sym.network_stop__;
0x00403994 move t9, t8 | t9 = t8;
0x00403998 jalr t9 | t9 ();
0x0040399c nop |
0x004039a0 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004039a4 addiu t8, fp, 0x1060 | t8 = fp + 0x1060;
0x004039a8 move a0, t8 | a0 = t8;
0x004039ac addiu a1, zero, 6 | a1 = 6;
0x004039b0 lw t8, -0x7f9c(gp) | t8 = *(gp);
0x004039b4 move t9, t8 | t9 = t8;
0x004039b8 jalr t9 | t9 ();
0x004039bc nop |
0x004039c0 lw gp, 0x18(fp) | gp = *(arg_18h);
0x004039c4 move t8, v0 | t8 = v0;
0x004039c8 xori t8, t8, 1 | t8 ^= 1;
0x004039cc andi t8, t8, 0xff | t8 &= 0xff;
| if (t8 != 0) {
0x004039d0 beqz t8, 0x4039f4 |
0x004039d4 nop |
0x004039d8 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.killall__9_cda_strmsvr____dev_null_2_1 */
0x004039dc addiu a0, t8, 0x16b4 | a0 = t8 + 0x16b4;
0x004039e0 lw t8, -0x7ddc(gp) | t8 = sym.imp.system
0x004039e4 move t9, t8 | t9 = t8;
0x004039e8 jalr t9 | t9 ();
0x004039ec nop |
0x004039f0 lw gp, 0x18(fp) | gp = *(arg_18h);
| }
0x004039f4 addiu t8, zero, 0x7f | t8 = 0x7f;
0x004039f8 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x004039fc move a0, v0 | a0 = v0;
0x00403a00 move a1, t8 | a1 = t8;
0x00403a04 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifconfig_eth0_0.0.0.0 */
0x00403a08 addiu a2, t8, 0x16dc | a2 = t8 + 0x16dc;
0x00403a0c lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403a10 move t9, t8 | t9 = t8;
0x00403a14 jalr t9 | t9 ();
0x00403a18 nop |
0x00403a1c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403a20 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403a24 move a0, t8 | a0 = t8;
0x00403a28 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403a2c move t9, t8 | t9 = t8;
0x00403a30 jalr t9 | t9 ();
0x00403a34 nop |
0x00403a38 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403a3c lw v0, 0x3c(fp) | v0 = *(arg_3ch);
0x00403a40 addiu t8, zero, 1 | t8 = 1;
| if (v0 == t8) {
0x00403a44 bne v0, t8, 0x403aec |
0x00403a48 nop |
0x00403a4c addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403a50 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403a54 move a0, v0 | a0 = v0;
0x00403a58 move a1, t8 | a1 = t8;
0x00403a5c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifdown__s__f */
0x00403a60 addiu a2, t8, 0x16f4 | a2 = t8 + 0x16f4;
0x00403a64 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.wlan0 */
0x00403a68 addiu a3, t8, 0x16ac | a3 = t8 + 0x16ac;
0x00403a6c lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403a70 move t9, t8 | t9 = t8;
0x00403a74 jalr t9 | t9 ();
0x00403a78 nop |
0x00403a7c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403a80 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403a84 move a0, t8 | a0 = t8;
0x00403a88 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403a8c move t9, t8 | t9 = t8;
0x00403a90 jalr t9 | t9 ();
0x00403a94 nop |
0x00403a98 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403a9c addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403aa0 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403aa4 move a0, v0 | a0 = v0;
0x00403aa8 move a1, t8 | a1 = t8;
0x00403aac lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifconfig_wlan0_down */
0x00403ab0 addiu a2, t8, 0x1704 | a2 = t8 + 0x1704;
0x00403ab4 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403ab8 move t9, t8 | t9 = t8;
0x00403abc jalr t9 | t9 ();
0x00403ac0 nop |
0x00403ac4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403ac8 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403acc move a0, t8 | a0 = t8;
0x00403ad0 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403ad4 move t9, t8 | t9 = t8;
0x00403ad8 jalr t9 | t9 ();
0x00403adc nop |
0x00403ae0 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403ae4 b 0x403b3c | goto label_4;
0x00403ae8 nop |
| }
0x00403aec addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403af0 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403af4 move a0, v0 | a0 = v0;
0x00403af8 move a1, t8 | a1 = t8;
0x00403afc lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifdown__s__f */
0x00403b00 addiu a2, t8, 0x16f4 | a2 = t8 + 0x16f4;
0x00403b04 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.eth0 */
0x00403b08 addiu a3, t8, 0x15f4 | a3 = t8 + 0x15f4;
0x00403b0c lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403b10 move t9, t8 | t9 = t8;
0x00403b14 jalr t9 | t9 ();
0x00403b18 nop |
0x00403b1c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403b20 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403b24 move a0, t8 | a0 = t8;
0x00403b28 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403b2c move t9, t8 | t9 = t8;
0x00403b30 jalr t9 | t9 ();
0x00403b34 nop |
0x00403b38 lw gp, 0x18(fp) | gp = *(arg_18h);
| label_4:
0x00403b3c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str._tmp_dhcptemp.log */
0x00403b40 addiu a0, t8, 0x1718 | a0 = t8 + 0x1718;
0x00403b44 lw t8, -0x7e90(gp) | t8 = sym.imp.unlink;
0x00403b48 move t9, t8 | t9 = t8;
0x00403b4c jalr t9 | t9 ();
0x00403b50 nop |
0x00403b54 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403b58 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str._tmp_wifiConnected */
0x00403b5c addiu a0, t8, 0x172c | a0 = t8 + 0x172c;
0x00403b60 lw t8, -0x7e90(gp) | t8 = sym.imp.unlink;
0x00403b64 move t9, t8 | t9 = t8;
0x00403b68 jalr t9 | t9 ();
0x00403b6c nop |
0x00403b70 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403b74 lw v0, 0x3c(fp) | v0 = *(arg_3ch);
0x00403b78 addiu t8, zero, 1 | t8 = 1;
| if (v0 == t8) {
0x00403b7c bne v0, t8, 0x403c1c |
0x00403b80 nop |
0x00403b84 addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403b88 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403b8c move a0, v0 | a0 = v0;
0x00403b90 move a1, t8 | a1 = t8;
0x00403b94 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.echo_eth0____tmp_network_interface */
0x00403b98 addiu a2, t8, 0x1740 | a2 = t8 + 0x1740;
0x00403b9c lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403ba0 move t9, t8 | t9 = t8;
0x00403ba4 jalr t9 | t9 ();
0x00403ba8 nop |
0x00403bac lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403bb0 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403bb4 move a0, t8 | a0 = t8;
0x00403bb8 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403bbc move t9, t8 | t9 = t8;
0x00403bc0 jalr t9 | t9 ();
0x00403bc4 nop |
0x00403bc8 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403bcc addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403bd0 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403bd4 move a0, v0 | a0 = v0;
0x00403bd8 move a1, t8 | a1 = t8;
0x00403bdc lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifup__f_eth0 */
0x00403be0 addiu a2, t8, 0x1764 | a2 = t8 + 0x1764;
0x00403be4 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403be8 move t9, t8 | t9 = t8;
0x00403bec jalr t9 | t9 ();
0x00403bf0 nop |
0x00403bf4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403bf8 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403bfc move a0, t8 | a0 = t8;
0x00403c00 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403c04 move t9, t8 | t9 = t8;
0x00403c08 jalr t9 | t9 ();
0x00403c0c nop |
0x00403c10 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403c14 b 0x403cf4 | goto label_5;
0x00403c18 nop |
| }
0x00403c1c addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403c20 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403c24 move a0, v0 | a0 = v0;
0x00403c28 move a1, t8 | a1 = t8;
0x00403c2c lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.echo_wlan0____tmp_network_interface */
0x00403c30 addiu a2, t8, 0x1774 | a2 = t8 + 0x1774;
0x00403c34 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403c38 move t9, t8 | t9 = t8;
0x00403c3c jalr t9 | t9 ();
0x00403c40 nop |
0x00403c44 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403c48 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403c4c move a0, t8 | a0 = t8;
0x00403c50 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403c54 move t9, t8 | t9 = t8;
0x00403c58 jalr t9 | t9 ();
0x00403c5c nop |
0x00403c60 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403c64 addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403c68 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403c6c move a0, v0 | a0 = v0;
0x00403c70 move a1, t8 | a1 = t8;
0x00403c74 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.wifiAutoReconnect_ */
0x00403c78 addiu a2, t8, 0x1798 | a2 = t8 + 0x1798;
0x00403c7c lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403c80 move t9, t8 | t9 = t8;
0x00403c84 jalr t9 | t9 ();
0x00403c88 nop |
0x00403c8c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403c90 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403c94 move a0, t8 | a0 = t8;
0x00403c98 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403c9c move t9, t8 | t9 = t8;
0x00403ca0 jalr t9 | t9 ();
0x00403ca4 nop |
0x00403ca8 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403cac addiu t8, zero, 0x7f | t8 = 0x7f;
0x00403cb0 addiu v0, fp, 0x461c | v0 = fp + 0x461c;
0x00403cb4 move a0, v0 | a0 = v0;
0x00403cb8 move a1, t8 | a1 = t8;
0x00403cbc lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.ifup__f_wlan0 */
0x00403cc0 addiu a2, t8, 0x17ac | a2 = t8 + 0x17ac;
0x00403cc4 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403cc8 move t9, t8 | t9 = t8;
0x00403ccc jalr t9 | t9 ();
0x00403cd0 nop |
0x00403cd4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403cd8 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403cdc move a0, t8 | a0 = t8;
0x00403ce0 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403ce4 move t9, t8 | t9 = t8;
0x00403ce8 jalr t9 | t9 ();
0x00403cec nop |
0x00403cf0 lw gp, 0x18(fp) | gp = *(arg_18h);
| label_5:
0x00403cf4 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x00403cf8 move a0, t8 | a0 = t8;
0x00403cfc lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* esilref: 'PPPoE' */
0x00403d00 addiu a1, t8, 0x17bc | a1 = t8 + 0x17bc;
0x00403d04 lw t8, -0x7dfc(gp) | t8 = *(gp);
0x00403d08 move t9, t8 | t9 = t8;
0x00403d0c jalr t9 | t9 ();
0x00403d10 nop |
0x00403d14 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403d18 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x00403d1c move a0, t8 | a0 = t8;
0x00403d20 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* esilref: 'Enable' */
0x00403d24 addiu a1, t8, 0x17c4 | a1 = t8 + 0x17c4;
0x00403d28 lw t8, -0x7e58(gp) | t8 = *(gp);
0x00403d2c move t9, t8 | t9 = t8;
0x00403d30 jalr t9 | t9 ();
0x00403d34 nop |
0x00403d38 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403d3c move t8, v0 | t8 = v0;
0x00403d40 sw t8, 0x44(fp) | *(arg_44h) = t8;
0x00403d44 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x00403d48 move a0, t8 | a0 = t8;
0x00403d4c lw t8, -0x7db8(gp) | t8 = *(gp);
0x00403d50 move t9, t8 | t9 = t8;
0x00403d54 jalr t9 | t9 ();
0x00403d58 nop |
0x00403d5c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403d60 lw v0, 0x44(fp) | v0 = *(arg_44h);
0x00403d64 addiu t8, zero, 1 | t8 = 1;
| if (v0 == t8) {
0x00403d68 bne v0, t8, 0x403de4 |
0x00403d6c nop |
0x00403d70 addiu v0, zero, 0x7f | v0 = 0x7f;
0x00403d74 lw v1, 0x3c(fp) | v1 = *(arg_3ch);
0x00403d78 addiu t8, zero, 1 | t8 = 1;
| if (v1 == t8) {
0x00403d7c bne v1, t8, 0x403d94 |
0x00403d80 nop |
0x00403d84 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.eth0 */
0x00403d88 addiu t8, t8, 0x15f4 | t8 += 0x15f4;
0x00403d8c b 0x403d9c | goto label_6;
0x00403d90 nop |
| }
0x00403d94 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.wlan0 */
0x00403d98 addiu t8, t8, 0x16ac | t8 += 0x16ac;
| label_6:
0x00403d9c addiu v1, fp, 0x461c | v1 = fp + 0x461c;
0x00403da0 move a0, v1 | a0 = v1;
0x00403da4 move a1, v0 | a1 = v0;
0x00403da8 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
| /* str.ifup__f__s:1 */
0x00403dac addiu a2, v0, 0x17cc | a2 = v0 + 0x17cc;
0x00403db0 move a3, t8 | a3 = t8;
0x00403db4 lw t8, -0x7e28(gp) | t8 = sym.imp.snprintf;
0x00403db8 move t9, t8 | t9 = t8;
0x00403dbc jalr t9 | t9 ();
0x00403dc0 nop |
0x00403dc4 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403dc8 addiu t8, fp, 0x461c | t8 = fp + 0x461c;
0x00403dcc move a0, t8 | a0 = t8;
0x00403dd0 lw t8, -0x7fc8(gp) | t8 = sym.run_command_char_const_;
0x00403dd4 move t9, t8 | t9 = t8;
0x00403dd8 jalr t9 | t9 ();
0x00403ddc nop |
0x00403de0 lw gp, 0x18(fp) | gp = *(arg_18h);
| }
0x00403de4 lw t8, -0x7fc0(gp) | t8 = *(gp);
0x00403de8 lw t8, (t8) | t8 = *(t8);
0x00403dec move a0, t8 | a0 = t8;
0x00403df0 lw t8, -0x7e7c(gp) | t8 = sym.imp.close;
0x00403df4 move t9, t8 | t9 = t8;
0x00403df8 jalr t9 | t9 ();
0x00403dfc nop |
0x00403e00 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403e04 lw t8, -0x7fdc(gp) | t8 = *((gp - 8183));
| /* str.network_setup_finished._n */
0x00403e08 addiu a0, t8, 0x17dc | a0 = t8 + 0x17dc;
0x00403e0c lw t8, -0x7fd4(gp) | t8 = sym.show_msg_char_const__..._;
0x00403e10 move t9, t8 | t9 = t8;
0x00403e14 jalr t9 | t9 ();
0x00403e18 nop |
0x00403e1c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403e20 addiu s1, zero, 1 | s1 = 1;
0x00403e24 move s0, s2 | s0 = s2;
| label_0:
0x00403e28 addiu t8, fp, 0x1060 | t8 = fp + 0x1060;
0x00403e2c move a0, t8 | a0 = t8;
0x00403e30 lw t8, -0x7db4(gp) | t8 = sym.imp.PIB::PIB__;
0x00403e34 move t9, t8 | t9 = t8;
0x00403e38 jalr t9 | t9 ();
0x00403e3c nop |
0x00403e40 lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403e44 addiu t8, zero, 1 | t8 = 1;
| if (s1 != t8) {
0x00403e48 beq s1, t8, 0x403e5c |
0x00403e4c nop |
0x00403e50 move s1, zero | s1 = 0;
0x00403e54 b 0x403e64 | goto label_7;
0x00403e58 nop |
| }
0x00403e5c nop |
0x00403e60 addiu s1, zero, 1 | s1 = 1;
| label_7:
0x00403e64 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x00403e68 move a0, t8 | a0 = t8;
0x00403e6c lw t8, -0x7ea0(gp) | t8 = sym.imp.TinyDB::TinyDB__;
0x00403e70 move t9, t8 | t9 = t8;
0x00403e74 jalr t9 | t9 ();
0x00403e78 nop |
0x00403e7c lw gp, 0x18(fp) | gp = *(arg_18h);
0x00403e80 addiu t8, zero, 1 | t8 = 1;
| if (s1 == t8) {
0x00403e84 bne s1, t8, 0x403e94 |
0x00403e88 nop |
0x00403e8c nop |
0x00403e90 move s0, zero | s0 = 0;
| }
0x00403e94 move t8, s0 | t8 = s0;
0x00403e98 move v0, t8 | v0 = t8;
0x00403e9c lw t8, -0x7dd0(gp) | t8 = *((gp - 8052));
0x00403ea0 lw v1, 0x469c(fp) | v1 = *(arg_469ch);
0x00403ea4 lw t8, (t8) | t8 = *(t8);
| if (v1 != t8) {
0x00403ea8 beq v1, t8, 0x403fe0 |
0x00403eac nop |
0x00403eb0 b 0x403fd0 | goto label_8;
0x00403eb4 nop |
| label_8:
0x00403fd0 lw t8, -0x7e5c(gp) | t8 = sym.imp.__stack_chk_fail;
0x00403fd4 move t9, t8 | t9 = t8;
0x00403fd8 jalr t9 | t9 ();
0x00403fdc nop |
| }
0x00403fe0 move sp, fp |
0x00403fe4 lw ra, 0x46b4(sp) | ra = *(arg_46b4h);
0x00403fe8 lw fp, 0x46b0(sp) | fp = *(arg_46b0h);
0x00403fec lw s2, 0x46ac(sp) | s2 = *(arg_46ach);
0x00403ff0 lw s1, 0x46a8(sp) | s1 = *(arg_46a8h);
0x00403ff4 lw s0, 0x46a4(sp) | s0 = *(arg_46a4h);
0x00403ff8 addiu sp, sp, 0x46b8 |
0x00403ffc jr ra | return v1;
0x00404000 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/network_setup @ 0x4026b8 */
| #include <stdint.h>
|
; (fcn) sym.run_command_char_const_ () | void run_command_char_const_ () {
| /* run_command(char const*) */
0x004026b8 lui gp, 3 |
0x004026bc addiu gp, gp, -0x6678 |
0x004026c0 addu gp, gp, t9 | gp += t9;
0x004026c4 addiu sp, sp, -0x30 |
0x004026c8 sw ra, 0x2c(sp) | *(var_2ch) = ra;
0x004026cc sw fp, 0x28(sp) | *(var_28h) = fp;
0x004026d0 move fp, sp | fp = sp;
0x004026d4 sw gp, 0x10(sp) | *(var_10h) = gp;
0x004026d8 sw a0, 0x1c(fp) | *(arg_1ch) = a0;
0x004026dc lw t8, -0x7dd0(gp) | t8 = *((gp - 8052));
0x004026e0 lw t8, (t8) | t8 = *(t8);
0x004026e4 sw t8, 0x24(fp) | *(arg_24h) = t8;
0x004026e8 lw a0, 0x1c(fp) | a0 = *(arg_1ch);
0x004026ec lw t8, -0x7fd4(gp) | t8 = sym.show_msg_char_const__..._;
0x004026f0 move t9, t8 | t9 = t8;
0x004026f4 jalr t9 | t9 ();
0x004026f8 nop |
0x004026fc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00402700 lw a0, 0x1c(fp) | a0 = *(arg_1ch);
0x00402704 lw t8, -0x7ddc(gp) | t8 = sym.imp.system
0x00402708 move t9, t8 | t9 = t8;
0x0040270c jalr t9 | t9 ();
0x00402710 nop |
0x00402714 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00402718 lw t8, -0x7dd0(gp) | t8 = *((gp - 8052));
0x0040271c lw v0, 0x24(fp) | v0 = *(arg_24h);
0x00402720 lw t8, (t8) | t8 = *(t8);
| if (v0 != t8) {
0x00402724 beq v0, t8, 0x40273c |
0x00402728 nop |
0x0040272c lw t8, -0x7e5c(gp) | t8 = sym.imp.__stack_chk_fail;
0x00402730 move t9, t8 | t9 = t8;
0x00402734 jalr t9 | t9 ();
0x00402738 nop |
| }
0x0040273c move sp, fp |
0x00402740 lw ra, 0x2c(sp) | ra = *(var_2ch);
0x00402744 lw fp, 0x28(sp) | fp = *(var_28h);
0x00402748 addiu sp, sp, 0x30 |
0x0040274c jr ra | return v0;
0x00402750 nop |
| }
[*] Function system used 3 times network_setup