[*] Binary protection state of ipv6_checkroute
Full RELRO Canary found NX disabled No PIE No RPATH No RUNPATH No Symbols
[*] Function system tear down of ipv6_checkroute
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/ipv6_checkroute @ 0x40452c */
| #include <stdint.h>
|
; (fcn) main () | int32_t main () {
0x0040452c lui gp, 2 |
0x00404530 addiu gp, gp, -0x250c |
0x00404534 addu gp, gp, t9 | gp += t9;
0x00404538 addiu sp, sp, -0x50 |
0x0040453c sw ra, 0x4c(sp) | *(var_4ch) = ra;
0x00404540 sw fp, 0x48(sp) | *(var_48h) = fp;
0x00404544 move fp, sp | fp = sp;
0x00404548 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0040454c sw a0, 0x1c(fp) | *(arg_1ch) = a0;
0x00404550 sw a1, 0x18(fp) | *(envp) = a1;
0x00404554 lw t8, -0x7da4(gp) | t8 = *((gp - 8041));
0x00404558 lw t8, (t8) | t8 = *(t8);
0x0040455c sw t8, 0x44(fp) | *(arg_44h) = t8;
0x00404560 sw zero, 0x3c(fp) | *(arg_3ch) = 0;
0x00404564 sw zero, 0x40(fp) | *(arg_40h) = 0;
0x00404568 addiu t8, fp, 0x3c | t8 = fp + 0x3c;
0x0040456c lui v0, 0x6e61 | v0 = 0x6e616c77;
0x00404570 ori v0, v0, 0x6c77 |
0x00404574 sw v0, (t8) | *(t8) = v0;
0x00404578 addiu v0, zero, 0x30 | v0 = 0x30;
0x0040457c sh v0, 4(t8) | *((t8 + 4)) = v0;
0x00404580 addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00404584 lw v0, -0x7fb8(gp) | v0 = *((gp - 8174));
| /* str.eth0 */
0x00404588 addiu a0, v0, -0x792c | a0 = v0 + -0x792c;
0x0040458c move a1, t8 | a1 = t8;
0x00404590 lw t8, -0x7dd0(gp) | t8 = sym.imp.get_active_interface_char_const__IF_INFO_;
0x00404594 move t9, t8 | t9 = t8;
0x00404598 jalr t9 | t9 ();
0x0040459c nop |
0x004045a0 lw gp, 0x10(fp) | gp = *(argv);
0x004045a4 move t8, v0 | t8 = v0;
| if (t8 != 0) {
0x004045a8 beqz t8, 0x4045c8 |
0x004045ac nop |
0x004045b0 lw t8, 0x2c(fp) | t8 = *(arg_2ch);
| if (t8 == 0) {
0x004045b4 beqz t8, 0x4045c8 | goto label_0;
| }
0x004045b8 nop |
0x004045bc addiu t8, zero, 1 | t8 = 1;
0x004045c0 b 0x4045cc | goto label_1;
0x004045c4 nop |
| }
| label_0:
0x004045c8 move t8, zero | t8 = 0;
| if (t8 != 0) {
| label_1:
0x004045cc beqz t8, 0x4045e8 |
0x004045d0 nop |
0x004045d4 addiu t8, fp, 0x3c | t8 = fp + 0x3c;
0x004045d8 lui v0, 0x3068 | v0 = 0x30687465;
0x004045dc ori v0, v0, 0x7465 |
0x004045e0 sw v0, (t8) | *(t8) = v0;
0x004045e4 sb zero, 4(t8) | *((t8 + 4)) = 0;
| }
0x004045e8 addiu t8, fp, 0x3c | t8 = fp + 0x3c;
0x004045ec move a0, t8 | a0 = t8;
0x004045f0 lw t8, -0x7f94(gp) | t8 = sym.check_route_char_;
0x004045f4 move t9, t8 | t9 = t8;
0x004045f8 jalr t9 | t9 ();
0x004045fc nop |
0x00404600 lw gp, 0x10(fp) | gp = *(argv);
0x00404604 move t8, v0 | t8 = v0;
0x00404608 sltu t8, zero, t8 | t8 = (0 < t8) ? 1 : 0;
0x0040460c andi t8, t8, 0xff | t8 &= 0xff;
| if (t8 != 0) {
0x00404610 beqz t8, 0x404634 |
0x00404614 nop |
0x00404618 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.sleep_5___etc_rc.d_init.d_network_services_ipv6.sh_restart_ */
0x0040461c addiu a0, t8, -0x7924 | a0 = t8 + -0x7924;
0x00404620 lw t8, -0x7dac(gp) | t8 = sym.imp.system
0x00404624 move t9, t8 | t9 = t8;
0x00404628 jalr t9 | t9 ();
0x0040462c nop |
0x00404630 lw gp, 0x10(fp) | gp = *(argv);
| }
0x00404634 move t8, zero | t8 = 0;
0x00404638 move v0, t8 | v0 = t8;
0x0040463c lw t8, -0x7da4(gp) | t8 = *((gp - 8041));
0x00404640 lw v1, 0x44(fp) | v1 = *(arg_44h);
0x00404644 lw t8, (t8) | t8 = *(t8);
| if (v1 != t8) {
0x00404648 beq v1, t8, 0x404660 |
0x0040464c nop |
0x00404650 lw t8, -0x7e10(gp) | t8 = sym.imp.__stack_chk_fail;
0x00404654 move t9, t8 | t9 = t8;
0x00404658 jalr t9 | t9 ();
0x0040465c nop |
| }
0x00404660 move sp, fp |
0x00404664 lw ra, 0x4c(sp) | ra = *(var_4ch);
0x00404668 lw fp, 0x48(sp) | fp = *(var_48h);
0x0040466c addiu sp, sp, 0x50 |
0x00404670 jr ra | return v1;
0x00404674 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/ipv6_checkroute @ 0x403358 */
| #include <stdint.h>
|
; (fcn) sym.check_route_char_ () | void check_route_char_ () {
| /* check_route(char*) */
0x00403358 lui gp, 2 |
0x0040335c addiu gp, gp, -0x1338 |
0x00403360 addu gp, gp, t9 | gp += t9;
0x00403364 addiu sp, sp, -0x590 |
0x00403368 sw ra, 0x58c(sp) | *(var_58ch) = ra;
0x0040336c sw fp, 0x588(sp) | *(var_588h) = fp;
0x00403370 sw s0, 0x584(sp) | *(var_584h) = s0;
0x00403374 move fp, sp | fp = sp;
0x00403378 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0040337c sw a0, 0x1c(fp) | *(arg_1ch) = a0;
0x00403380 lw t8, -0x7da4(gp) | t8 = *((gp - 8041));
0x00403384 lw t8, (t8) | t8 = *(t8);
0x00403388 sw t8, 0x57c(fp) | *(arg_57ch) = t8;
0x0040338c addiu v0, fp, 0x2fc | v0 = fp + 0x2fc;
0x00403390 addiu t8, zero, 0x80 | t8 = 0x80;
0x00403394 move a0, v0 | a0 = v0;
0x00403398 move a1, zero | a1 = 0;
0x0040339c move a2, t8 | a2 = t8;
0x004033a0 lw t8, -0x7e38(gp) | t8 = sym.imp.memset;
0x004033a4 move t9, t8 | t9 = t8;
0x004033a8 jalr t9 | t9 ();
0x004033ac nop |
0x004033b0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004033b4 sw zero, 0x68(fp) | *(arg_68h) = 0;
0x004033b8 addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x004033bc move a0, t8 | a0 = t8;
0x004033c0 lw t8, -0x7da0(gp) | t8 = *(gp);
0x004033c4 move t9, t8 | t9 = t8;
0x004033c8 jalr t9 | t9 ();
0x004033cc nop |
0x004033d0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004033d4 addiu t8, fp, 0x94 | t8 = fp + 0x94;
0x004033d8 move a0, t8 | a0 = t8;
0x004033dc lw t8, -0x7fc0(gp) | t8 = *(gp);
0x004033e0 move t9, t8 | t9 = t8;
0x004033e4 jalr t9 | t9 ();
0x004033e8 nop |
0x004033ec lw gp, 0x10(fp) | gp = *(arg_10h);
0x004033f0 addiu t8, fp, 0xac | t8 = fp + 0xac;
0x004033f4 move a0, t8 | a0 = t8;
0x004033f8 lw t8, -0x7fc0(gp) | t8 = *(gp);
0x004033fc move t9, t8 | t9 = t8;
0x00403400 jalr t9 | t9 ();
0x00403404 nop |
0x00403408 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040340c addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403410 move a0, t8 | a0 = t8;
0x00403414 lw t8, -0x7fbc(gp) | t8 = *(gp);
0x00403418 move t9, t8 | t9 = t8;
0x0040341c jalr t9 | t9 ();
0x00403420 nop |
0x00403424 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403428 addiu t8, fp, 0x28 | t8 = fp + 0x28;
0x0040342c move a0, t8 | a0 = t8;
0x00403430 lw t8, -0x7fbc(gp) | t8 = *(gp);
0x00403434 move t9, t8 | t9 = t8;
0x00403438 jalr t9 | t9 ();
0x0040343c nop |
0x00403440 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403444 sw zero, 0x54(fp) | *(arg_54h) = 0;
0x00403448 sw zero, 0x58(fp) | *(arg_58h) = 0;
0x0040344c sw zero, 0x5c(fp) | *(arg_5ch) = 0;
0x00403450 sw zero, 0x60(fp) | *(arg_60h) = 0;
0x00403454 addiu t8, fp, 0x2fc | t8 = fp + 0x2fc;
0x00403458 move a0, t8 | a0 = t8;
0x0040345c addiu a1, zero, 0x80 | a1 = 0x80;
0x00403460 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.ifconfig__s__grep_inet6____tmp_addr6 */
0x00403464 addiu a2, t8, -0x79c0 | a2 = t8 + -0x79c0;
0x00403468 lw a3, 0x1c(fp) | a3 = *(arg_1ch);
0x0040346c lw t8, -0x7df0(gp) | t8 = sym.imp.snprintf;
0x00403470 move t9, t8 | t9 = t8;
0x00403474 jalr t9 | t9 ();
0x00403478 nop |
0x0040347c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403480 addiu t8, fp, 0x2fc | t8 = fp + 0x2fc;
0x00403484 move a0, t8 | a0 = t8;
0x00403488 lw t8, -0x7dac(gp) | t8 = sym.imp.system
0x0040348c move t9, t8 | t9 = t8;
0x00403490 jalr t9 | t9 ();
0x00403494 nop |
0x00403498 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040349c addiu t8, fp, 0xc4 | t8 = fp + 0xc4;
0x004034a0 move a0, t8 | a0 = t8;
0x004034a4 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str._tmp_addr6 */
0x004034a8 addiu a1, t8, -0x7998 | a1 = t8 + -0x7998;
0x004034ac addiu a2, zero, 8 | a2 = 8;
0x004034b0 lw t8, -0x7de4(gp) | t8 = *(gp);
0x004034b4 move t9, t8 | t9 = t8;
0x004034b8 jalr t9 | t9 ();
0x004034bc nop |
0x004034c0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004034c4 addiu t8, fp, 0xc4 | t8 = fp + 0xc4;
0x004034c8 addiu t8, t8, 0x94 | t8 += 0x94;
0x004034cc move a0, t8 | a0 = t8;
0x004034d0 lw t8, -0x7e04(gp) | t8 = *(gp);
0x004034d4 move t9, t8 | t9 = t8;
0x004034d8 jalr t9 | t9 ();
0x004034dc nop |
0x004034e0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004034e4 move t8, v0 | t8 = v0;
| if (t8 != 0) {
0x004034e8 beqz t8, 0x4034fc |
0x004034ec nop |
0x004034f0 move s0, zero | s0 = 0;
0x004034f4 b 0x404170 | goto label_1;
0x004034f8 nop |
| }
0x004034fc sw zero, 0x68(fp) | *(arg_68h) = 0;
0x00403500 b 0x4037fc | goto label_2;
0x00403504 nop |
| do {
0x00403508 addiu v0, fp, 0x2c | v0 = fp + 0x2c;
0x0040350c addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x00403510 move a0, v0 | a0 = v0;
0x00403514 move a1, t8 | a1 = t8;
0x00403518 lw t8, -0x7fb4(gp) | t8 = sym.trim_std::string_const_;
0x0040351c move t9, t8 | t9 = t8;
0x00403520 jalr t9 | t9 ();
0x00403524 nop |
0x00403528 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040352c addiu v0, fp, 0x20 | v0 = fp + 0x20;
0x00403530 addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x00403534 move a0, v0 | a0 = v0;
0x00403538 move a1, t8 | a1 = t8;
0x0040353c lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403540 move t9, t8 | t9 = t8;
0x00403544 jalr t9 | t9 ();
0x00403548 nop |
0x0040354c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403550 addiu t8, fp, 0x2c | t8 = fp + 0x2c;
0x00403554 move a0, t8 | a0 = t8;
0x00403558 lw t8, -0x7df8(gp) | t8 = *(gp);
0x0040355c move t9, t8 | t9 = t8;
0x00403560 jalr t9 | t9 ();
0x00403564 nop |
0x00403568 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040356c addiu t8, fp, 0x50 | t8 = fp + 0x50;
0x00403570 move a0, t8 | a0 = t8;
0x00403574 lw t8, -0x7da0(gp) | t8 = *(gp);
0x00403578 move t9, t8 | t9 = t8;
0x0040357c jalr t9 | t9 ();
0x00403580 nop |
0x00403584 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403588 addiu t8, fp, 0x8c | t8 = fp + 0x8c;
0x0040358c move a0, t8 | a0 = t8;
0x00403590 lw t8, -0x7da0(gp) | t8 = *(gp);
0x00403594 move t9, t8 | t9 = t8;
0x00403598 jalr t9 | t9 ();
0x0040359c nop |
0x004035a0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004035a4 addiu t8, zero, 5 | t8 = 5;
0x004035a8 sw t8, 0x6c(fp) | *(arg_6ch) = t8;
0x004035ac addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x004035b0 move a0, t8 | a0 = t8;
0x004035b4 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.addr: */
0x004035b8 addiu a1, t8, -0x798c | a1 = t8 + -0x798c;
0x004035bc move a2, zero | a2 = 0;
0x004035c0 lw t8, -0x7dec(gp) | t8 = *(gp);
0x004035c4 move t9, t8 | t9 = t8;
0x004035c8 jalr t9 | t9 ();
0x004035cc nop |
0x004035d0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004035d4 move t8, v0 | t8 = v0;
0x004035d8 sw t8, 0x70(fp) | *(arg_70h) = t8;
0x004035dc addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x004035e0 move a0, t8 | a0 = t8;
0x004035e4 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.Scope: */
0x004035e8 addiu a1, t8, -0x7984 | a1 = t8 + -0x7984;
0x004035ec move a2, zero | a2 = 0;
0x004035f0 lw t8, -0x7dec(gp) | t8 = *(gp);
0x004035f4 move t9, t8 | t9 = t8;
0x004035f8 jalr t9 | t9 ();
0x004035fc nop |
0x00403600 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403604 move t8, v0 | t8 = v0;
0x00403608 sw t8, 0x74(fp) | *(arg_74h) = t8;
0x0040360c lw v0, 0x70(fp) | v0 = *(arg_70h);
0x00403610 addiu t8, zero, -1 | t8 = -1;
| if (v0 != t8) {
0x00403614 beq v0, t8, 0x4037c4 |
0x00403618 nop |
0x0040361c lw v0, 0x74(fp) | v0 = *(arg_74h);
0x00403620 addiu t8, zero, -1 | t8 = -1;
| if (v0 == t8) {
0x00403624 beq v0, t8, 0x4037c4 | goto label_3;
| }
0x00403628 nop |
0x0040362c lw v0, 0x6c(fp) | v0 = *(arg_6ch);
0x00403630 lw t8, 0x70(fp) | t8 = *(arg_70h);
0x00403634 addu v0, v0, t8 | v0 += t8;
0x00403638 lw v1, 0x74(fp) | v1 = *(arg_74h);
0x0040363c lw t8, 0x70(fp) | t8 = *(arg_70h);
0x00403640 subu v1, v1, t8 | __asm ("subu v1, v1, t8");
0x00403644 lw t8, 0x6c(fp) | t8 = *(arg_6ch);
0x00403648 subu t8, v1, t8 | __asm ("subu t8, v1, t8");
0x0040364c addiu a0, fp, 0x30 | a0 = fp + 0x30;
0x00403650 addiu v1, fp, 0x20 | v1 = fp + 0x20;
0x00403654 move a1, v1 | a1 = v1;
0x00403658 move a2, v0 | a2 = v0;
0x0040365c move a3, t8 | a3 = t8;
0x00403660 lw t8, -0x7e24(gp) | t8 = *(gp);
0x00403664 move t9, t8 | t9 = t8;
0x00403668 jalr t9 | t9 ();
0x0040366c nop |
0x00403670 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403674 addiu v0, fp, 0x50 | v0 = fp + 0x50;
0x00403678 addiu t8, fp, 0x30 | t8 = fp + 0x30;
0x0040367c move a0, v0 | a0 = v0;
0x00403680 move a1, t8 | a1 = t8;
0x00403684 lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403688 move t9, t8 | t9 = t8;
0x0040368c jalr t9 | t9 ();
0x00403690 nop |
0x00403694 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403698 addiu t8, fp, 0x30 | t8 = fp + 0x30;
0x0040369c move a0, t8 | a0 = t8;
0x004036a0 lw t8, -0x7df8(gp) | t8 = *(gp);
0x004036a4 move t9, t8 | t9 = t8;
0x004036a8 jalr t9 | t9 ();
0x004036ac nop |
0x004036b0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004036b4 addiu t8, fp, 0x50 | t8 = fp + 0x50;
0x004036b8 move a0, t8 | a0 = t8;
0x004036bc lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
0x004036c0 addiu a1, t8, -0x797c | a1 = t8 + -0x797c;
0x004036c4 move a2, zero | a2 = 0;
0x004036c8 lw t8, -0x7dec(gp) | t8 = *(gp);
0x004036cc move t9, t8 | t9 = t8;
0x004036d0 jalr t9 | t9 ();
0x004036d4 nop |
0x004036d8 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004036dc move t8, v0 | t8 = v0;
0x004036e0 addiu v1, fp, 0x34 | v1 = fp + 0x34;
0x004036e4 addiu v0, fp, 0x50 | v0 = fp + 0x50;
0x004036e8 move a0, v1 | a0 = v1;
0x004036ec move a1, v0 | a1 = v0;
0x004036f0 move a2, zero | a2 = 0;
0x004036f4 move a3, t8 | a3 = t8;
0x004036f8 lw t8, -0x7e24(gp) | t8 = *(gp);
0x004036fc move t9, t8 | t9 = t8;
0x00403700 jalr t9 | t9 ();
0x00403704 nop |
0x00403708 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040370c addiu v0, fp, 0x38 | v0 = fp + 0x38;
0x00403710 addiu t8, fp, 0x34 | t8 = fp + 0x34;
0x00403714 move a0, v0 | a0 = v0;
0x00403718 move a1, t8 | a1 = t8;
0x0040371c lw t8, -0x7fb4(gp) | t8 = sym.trim_std::string_const_;
0x00403720 move t9, t8 | t9 = t8;
0x00403724 jalr t9 | t9 ();
0x00403728 nop |
0x0040372c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403730 addiu v0, fp, 0x8c | v0 = fp + 0x8c;
0x00403734 addiu t8, fp, 0x38 | t8 = fp + 0x38;
0x00403738 move a0, v0 | a0 = v0;
0x0040373c move a1, t8 | a1 = t8;
0x00403740 lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403744 move t9, t8 | t9 = t8;
0x00403748 jalr t9 | t9 ();
0x0040374c nop |
0x00403750 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403754 addiu t8, fp, 0x38 | t8 = fp + 0x38;
0x00403758 move a0, t8 | a0 = t8;
0x0040375c lw t8, -0x7df8(gp) | t8 = *(gp);
0x00403760 move t9, t8 | t9 = t8;
0x00403764 jalr t9 | t9 ();
0x00403768 nop |
0x0040376c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403770 addiu t8, fp, 0x34 | t8 = fp + 0x34;
0x00403774 move a0, t8 | a0 = t8;
0x00403778 lw t8, -0x7df8(gp) | t8 = *(gp);
0x0040377c move t9, t8 | t9 = t8;
0x00403780 jalr t9 | t9 ();
0x00403784 nop |
0x00403788 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040378c addiu v1, fp, 0x84 | v1 = fp + 0x84;
0x00403790 addiu v0, fp, 0x94 | v0 = fp + 0x94;
0x00403794 addiu t8, fp, 0x8c | t8 = fp + 0x8c;
0x00403798 move a0, v1 | a0 = v1;
0x0040379c move a1, v0 | a1 = v0;
0x004037a0 move a2, t8 | a2 = t8;
0x004037a4 lw t8, -0x7fb0(gp) | t8 = *(gp);
0x004037a8 move t9, t8 | t9 = t8;
0x004037ac jalr t9 | t9 ();
0x004037b0 nop |
0x004037b4 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004037b8 lw t8, 0x60(fp) | t8 = *(arg_60h);
0x004037bc addiu t8, t8, 1 | t8++;
0x004037c0 sw t8, 0x60(fp) | *(arg_60h) = t8;
| }
| label_3:
0x004037c4 addiu t8, fp, 0x8c | t8 = fp + 0x8c;
0x004037c8 move a0, t8 | a0 = t8;
0x004037cc lw t8, -0x7df8(gp) | t8 = *(gp);
0x004037d0 move t9, t8 | t9 = t8;
0x004037d4 jalr t9 | t9 ();
0x004037d8 nop |
0x004037dc lw gp, 0x10(fp) | gp = *(arg_10h);
0x004037e0 addiu t8, fp, 0x50 | t8 = fp + 0x50;
0x004037e4 move a0, t8 | a0 = t8;
0x004037e8 lw t8, -0x7df8(gp) | t8 = *(gp);
0x004037ec move t9, t8 | t9 = t8;
0x004037f0 jalr t9 | t9 ();
0x004037f4 nop |
0x004037f8 lw gp, 0x10(fp) | gp = *(arg_10h);
| label_2:
0x004037fc addiu v0, fp, 0xc4 | v0 = fp + 0xc4;
0x00403800 addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x00403804 move a0, v0 | a0 = v0;
0x00403808 move a1, t8 | a1 = t8;
0x0040380c lw t8, -0x7db0(gp) | t8 = *(gp);
0x00403810 move t9, t8 | t9 = t8;
0x00403814 jalr t9 | t9 ();
0x00403818 nop |
0x0040381c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403820 move t8, v0 | t8 = v0;
0x00403824 lw v0, (t8) | v0 = *(t8);
0x00403828 addiu v0, v0, -0xc | v0 += -0xc;
0x0040382c lw v0, (v0) | v0 = *(v0);
0x00403830 addu t8, t8, v0 | t8 += v0;
0x00403834 move a0, t8 | a0 = t8;
0x00403838 lw t8, -0x7da8(gp) | t8 = *(gp);
0x0040383c move t9, t8 | t9 = t8;
0x00403840 jalr t9 | t9 ();
0x00403844 nop |
0x00403848 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040384c move t8, v0 | t8 = v0;
0x00403850 sltu t8, zero, t8 | t8 = (0 < t8) ? 1 : 0;
0x00403854 andi t8, t8, 0xff | t8 &= 0xff;
0x00403858 bnez t8, 0x403508 |
| } while (t8 != 0);
0x0040385c nop |
0x00403860 addiu t8, fp, 0xc4 | t8 = fp + 0xc4;
0x00403864 move a0, t8 | a0 = t8;
0x00403868 lw t8, -0x7df4(gp) | t8 = *(gp);
0x0040386c move t9, t8 | t9 = t8;
0x00403870 jalr t9 | t9 ();
0x00403874 nop |
0x00403878 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040387c lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str._tmp_addr6 */
0x00403880 addiu a0, t8, -0x7998 | a0 = t8 + -0x7998;
0x00403884 lw t8, -0x7e30(gp) | t8 = sym.imp.unlink;
0x00403888 move t9, t8 | t9 = t8;
0x0040388c jalr t9 | t9 ();
0x00403890 nop |
0x00403894 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403898 addiu t8, fp, 0x2fc | t8 = fp + 0x2fc;
0x0040389c move a0, t8 | a0 = t8;
0x004038a0 addiu a1, zero, 0x80 | a1 = 0x80;
0x004038a4 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.ip__6_route_show_dev__s____tmp_route6 */
0x004038a8 addiu a2, t8, -0x7978 | a2 = t8 + -0x7978;
0x004038ac lw a3, 0x1c(fp) | a3 = *(arg_1ch);
0x004038b0 lw t8, -0x7df0(gp) | t8 = sym.imp.snprintf;
0x004038b4 move t9, t8 | t9 = t8;
0x004038b8 jalr t9 | t9 ();
0x004038bc nop |
0x004038c0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004038c4 addiu t8, fp, 0x2fc | t8 = fp + 0x2fc;
0x004038c8 move a0, t8 | a0 = t8;
0x004038cc lw t8, -0x7dac(gp) | t8 = sym.imp.system
0x004038d0 move t9, t8 | t9 = t8;
0x004038d4 jalr t9 | t9 ();
0x004038d8 nop |
0x004038dc lw gp, 0x10(fp) | gp = *(arg_10h);
0x004038e0 addiu t8, fp, 0x1e0 | t8 = fp + 0x1e0;
0x004038e4 move a0, t8 | a0 = t8;
0x004038e8 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str._tmp_route6 */
0x004038ec addiu a1, t8, -0x7950 | a1 = t8 + -0x7950;
0x004038f0 addiu a2, zero, 8 | a2 = 8;
0x004038f4 lw t8, -0x7de4(gp) | t8 = *(gp);
0x004038f8 move t9, t8 | t9 = t8;
0x004038fc jalr t9 | t9 ();
0x00403900 nop |
0x00403904 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403908 addiu t8, fp, 0x1e0 | t8 = fp + 0x1e0;
0x0040390c addiu t8, t8, 0x94 | t8 += 0x94;
0x00403910 move a0, t8 | a0 = t8;
0x00403914 lw t8, -0x7e04(gp) | t8 = *(gp);
0x00403918 move t9, t8 | t9 = t8;
0x0040391c jalr t9 | t9 ();
0x00403920 nop |
0x00403924 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403928 move t8, v0 | t8 = v0;
| if (t8 != 0) {
0x0040392c beqz t8, 0x403940 |
0x00403930 nop |
0x00403934 move s0, zero | s0 = 0;
0x00403938 b 0x404154 | goto label_4;
0x0040393c nop |
| }
0x00403940 sw zero, 0x68(fp) | *(arg_68h) = 0;
0x00403944 b 0x403a90 | goto label_5;
0x00403948 nop |
| do {
0x0040394c addiu v0, fp, 0x3c | v0 = fp + 0x3c;
0x00403950 addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x00403954 move a0, v0 | a0 = v0;
0x00403958 move a1, t8 | a1 = t8;
0x0040395c lw t8, -0x7fb4(gp) | t8 = sym.trim_std::string_const_;
0x00403960 move t9, t8 | t9 = t8;
0x00403964 jalr t9 | t9 ();
0x00403968 nop |
0x0040396c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403970 addiu v0, fp, 0x20 | v0 = fp + 0x20;
0x00403974 addiu t8, fp, 0x3c | t8 = fp + 0x3c;
0x00403978 move a0, v0 | a0 = v0;
0x0040397c move a1, t8 | a1 = t8;
0x00403980 lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403984 move t9, t8 | t9 = t8;
0x00403988 jalr t9 | t9 ();
0x0040398c nop |
0x00403990 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403994 addiu t8, fp, 0x3c | t8 = fp + 0x3c;
0x00403998 move a0, t8 | a0 = t8;
0x0040399c lw t8, -0x7df8(gp) | t8 = *(gp);
0x004039a0 move t9, t8 | t9 = t8;
0x004039a4 jalr t9 | t9 ();
0x004039a8 nop |
0x004039ac lw gp, 0x10(fp) | gp = *(arg_10h);
0x004039b0 addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x004039b4 move a0, t8 | a0 = t8;
0x004039b8 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* esilref: 'dev' */
0x004039bc addiu a1, t8, -0x7944 | a1 = t8 + -0x7944;
0x004039c0 move a2, zero | a2 = 0;
0x004039c4 lw t8, -0x7dec(gp) | t8 = *(gp);
0x004039c8 move t9, t8 | t9 = t8;
0x004039cc jalr t9 | t9 ();
0x004039d0 nop |
0x004039d4 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004039d8 move t8, v0 | t8 = v0;
0x004039dc addiu v1, fp, 0x40 | v1 = fp + 0x40;
0x004039e0 addiu v0, fp, 0x20 | v0 = fp + 0x20;
0x004039e4 move a0, v1 | a0 = v1;
0x004039e8 move a1, v0 | a1 = v0;
0x004039ec move a2, zero | a2 = 0;
0x004039f0 move a3, t8 | a3 = t8;
0x004039f4 lw t8, -0x7e24(gp) | t8 = *(gp);
0x004039f8 move t9, t8 | t9 = t8;
0x004039fc jalr t9 | t9 ();
0x00403a00 nop |
0x00403a04 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403a08 addiu v0, fp, 0x44 | v0 = fp + 0x44;
0x00403a0c addiu t8, fp, 0x40 | t8 = fp + 0x40;
0x00403a10 move a0, v0 | a0 = v0;
0x00403a14 move a1, t8 | a1 = t8;
0x00403a18 lw t8, -0x7fb4(gp) | t8 = sym.trim_std::string_const_;
0x00403a1c move t9, t8 | t9 = t8;
0x00403a20 jalr t9 | t9 ();
0x00403a24 nop |
0x00403a28 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403a2c addiu v1, fp, 0x8c | v1 = fp + 0x8c;
0x00403a30 addiu v0, fp, 0xac | v0 = fp + 0xac;
0x00403a34 addiu t8, fp, 0x44 | t8 = fp + 0x44;
0x00403a38 move a0, v1 | a0 = v1;
0x00403a3c move a1, v0 | a1 = v0;
0x00403a40 move a2, t8 | a2 = t8;
0x00403a44 lw t8, -0x7fb0(gp) | t8 = *(gp);
0x00403a48 move t9, t8 | t9 = t8;
0x00403a4c jalr t9 | t9 ();
0x00403a50 nop |
0x00403a54 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403a58 addiu t8, fp, 0x44 | t8 = fp + 0x44;
0x00403a5c move a0, t8 | a0 = t8;
0x00403a60 lw t8, -0x7df8(gp) | t8 = *(gp);
0x00403a64 move t9, t8 | t9 = t8;
0x00403a68 jalr t9 | t9 ();
0x00403a6c nop |
0x00403a70 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403a74 addiu t8, fp, 0x40 | t8 = fp + 0x40;
0x00403a78 move a0, t8 | a0 = t8;
0x00403a7c lw t8, -0x7df8(gp) | t8 = *(gp);
0x00403a80 move t9, t8 | t9 = t8;
0x00403a84 jalr t9 | t9 ();
0x00403a88 nop |
0x00403a8c lw gp, 0x10(fp) | gp = *(arg_10h);
| label_5:
0x00403a90 addiu v0, fp, 0x1e0 | v0 = fp + 0x1e0;
0x00403a94 addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x00403a98 move a0, v0 | a0 = v0;
0x00403a9c move a1, t8 | a1 = t8;
0x00403aa0 lw t8, -0x7db0(gp) | t8 = *(gp);
0x00403aa4 move t9, t8 | t9 = t8;
0x00403aa8 jalr t9 | t9 ();
0x00403aac nop |
0x00403ab0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403ab4 move t8, v0 | t8 = v0;
0x00403ab8 lw v0, (t8) | v0 = *(t8);
0x00403abc addiu v0, v0, -0xc | v0 += -0xc;
0x00403ac0 lw v0, (v0) | v0 = *(v0);
0x00403ac4 addu t8, t8, v0 | t8 += v0;
0x00403ac8 move a0, t8 | a0 = t8;
0x00403acc lw t8, -0x7da8(gp) | t8 = *(gp);
0x00403ad0 move t9, t8 | t9 = t8;
0x00403ad4 jalr t9 | t9 ();
0x00403ad8 nop |
0x00403adc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403ae0 move t8, v0 | t8 = v0;
0x00403ae4 sltu t8, zero, t8 | t8 = (0 < t8) ? 1 : 0;
0x00403ae8 andi t8, t8, 0xff | t8 &= 0xff;
0x00403aec bnez t8, 0x40394c |
| } while (t8 != 0);
0x00403af0 nop |
0x00403af4 addiu t8, fp, 0x1e0 | t8 = fp + 0x1e0;
0x00403af8 move a0, t8 | a0 = t8;
0x00403afc lw t8, -0x7df4(gp) | t8 = *(gp);
0x00403b00 move t9, t8 | t9 = t8;
0x00403b04 jalr t9 | t9 ();
0x00403b08 nop |
0x00403b0c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403b10 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str._tmp_route6 */
0x00403b14 addiu a0, t8, -0x7950 | a0 = t8 + -0x7950;
0x00403b18 lw t8, -0x7e30(gp) | t8 = sym.imp.unlink;
0x00403b1c move t9, t8 | t9 = t8;
0x00403b20 jalr t9 | t9 ();
0x00403b24 nop |
0x00403b28 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403b2c addiu v0, fp, 0x18 | v0 = fp + 0x18;
0x00403b30 addiu t8, fp, 0xac | t8 = fp + 0xac;
0x00403b34 move a0, v0 | a0 = v0;
0x00403b38 move a1, t8 | a1 = t8;
0x00403b3c lw t8, -0x7fac(gp) | t8 = *(gp);
0x00403b40 move t9, t8 | t9 = t8;
0x00403b44 jalr t9 | t9 ();
0x00403b48 nop |
0x00403b4c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403b50 lw t8, 0x18(fp) | t8 = *(arg_18h);
0x00403b54 sw t8, 0x24(fp) | *(arg_24h) = t8;
0x00403b58 b 0x4040b8 | goto label_6;
0x00403b5c nop |
| label_0:
0x00403b60 addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403b64 move a0, t8 | a0 = t8;
0x00403b68 lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403b6c move t9, t8 | t9 = t8;
0x00403b70 jalr t9 | t9 ();
0x00403b74 nop |
0x00403b78 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403b7c move t8, v0 | t8 = v0;
0x00403b80 move a0, t8 | a0 = t8;
0x00403b84 lw t8, -0x7db4(gp) | t8 = *(gp);
0x00403b88 move t9, t8 | t9 = t8;
0x00403b8c jalr t9 | t9 ();
0x00403b90 nop |
0x00403b94 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403b98 move t8, v0 | t8 = v0;
0x00403b9c move a0, t8 | a0 = t8;
0x00403ba0 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.ff00::_8 */
0x00403ba4 addiu a1, t8, -0x7940 | a1 = t8 + -0x7940;
0x00403ba8 addiu a2, zero, 8 | a2 = 8;
0x00403bac lw t8, -0x7dfc(gp) | t8 = sym.imp.strncasecmp;
0x00403bb0 move t9, t8 | t9 = t8;
0x00403bb4 jalr t9 | t9 ();
0x00403bb8 nop |
0x00403bbc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403bc0 move t8, v0 | t8 = v0;
0x00403bc4 sltiu t8, t8, 1 | t8 = (t8 < 1) ? 1 : 0;
0x00403bc8 andi t8, t8, 0xff | t8 &= 0xff;
| if (t8 != 0) {
0x00403bcc beqz t8, 0x403be4 |
0x00403bd0 nop |
0x00403bd4 addiu t8, zero, 1 | t8 = 1;
0x00403bd8 sw t8, 0x54(fp) | *(arg_54h) = t8;
0x00403bdc b 0x404090 | goto label_7;
0x00403be0 nop |
| }
0x00403be4 addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403be8 move a0, t8 | a0 = t8;
0x00403bec lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403bf0 move t9, t8 | t9 = t8;
0x00403bf4 jalr t9 | t9 ();
0x00403bf8 nop |
0x00403bfc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403c00 move t8, v0 | t8 = v0;
0x00403c04 move a0, t8 | a0 = t8;
0x00403c08 lw t8, -0x7db4(gp) | t8 = *(gp);
0x00403c0c move t9, t8 | t9 = t8;
0x00403c10 jalr t9 | t9 ();
0x00403c14 nop |
0x00403c18 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403c1c move t8, v0 | t8 = v0;
0x00403c20 move a0, t8 | a0 = t8;
0x00403c24 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
| /* str.default */
0x00403c28 addiu a1, t8, -0x7934 | a1 = t8 + -0x7934;
0x00403c2c addiu a2, zero, 7 | a2 = 7;
0x00403c30 lw t8, -0x7dfc(gp) | t8 = sym.imp.strncasecmp;
0x00403c34 move t9, t8 | t9 = t8;
0x00403c38 jalr t9 | t9 ();
0x00403c3c nop |
0x00403c40 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403c44 move t8, v0 | t8 = v0;
0x00403c48 sltiu t8, t8, 1 | t8 = (t8 < 1) ? 1 : 0;
0x00403c4c andi t8, t8, 0xff | t8 &= 0xff;
| if (t8 != 0) {
0x00403c50 beqz t8, 0x403c6c |
0x00403c54 nop |
0x00403c58 lw t8, 0x58(fp) | t8 = *(arg_58h);
0x00403c5c addiu t8, t8, 1 | t8++;
0x00403c60 sw t8, 0x58(fp) | *(arg_58h) = t8;
0x00403c64 b 0x404090 | goto label_7;
0x00403c68 nop |
| }
0x00403c6c addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403c70 move a0, t8 | a0 = t8;
0x00403c74 lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403c78 move t9, t8 | t9 = t8;
0x00403c7c jalr t9 | t9 ();
0x00403c80 nop |
0x00403c84 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403c88 move t8, v0 | t8 = v0;
0x00403c8c move a0, t8 | a0 = t8;
0x00403c90 lw t8, -0x7fb8(gp) | t8 = *((gp - 8174));
0x00403c94 addiu a1, t8, -0x797c | a1 = t8 + -0x797c;
0x00403c98 move a2, zero | a2 = 0;
0x00403c9c lw t8, -0x7dec(gp) | t8 = *(gp);
0x00403ca0 move t9, t8 | t9 = t8;
0x00403ca4 jalr t9 | t9 ();
0x00403ca8 nop |
0x00403cac lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403cb0 move t8, v0 | t8 = v0;
0x00403cb4 sw t8, 0x78(fp) | *(arg_78h) = t8;
0x00403cb8 addiu t8, fp, 0x84 | t8 = fp + 0x84;
0x00403cbc move a0, t8 | a0 = t8;
0x00403cc0 lw t8, -0x7da0(gp) | t8 = *(gp);
0x00403cc4 move t9, t8 | t9 = t8;
0x00403cc8 jalr t9 | t9 ();
0x00403ccc nop |
0x00403cd0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403cd4 sw zero, 0x64(fp) | *(arg_64h) = 0;
0x00403cd8 lw v0, 0x78(fp) | v0 = *(arg_78h);
0x00403cdc addiu t8, zero, -1 | t8 = -1;
| if (v0 != t8) {
0x00403ce0 beq v0, t8, 0x403e1c |
0x00403ce4 nop |
0x00403ce8 addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403cec move a0, t8 | a0 = t8;
0x00403cf0 lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403cf4 move t9, t8 | t9 = t8;
0x00403cf8 jalr t9 | t9 ();
0x00403cfc nop |
0x00403d00 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403d04 move t8, v0 | t8 = v0;
0x00403d08 addiu v0, fp, 0x4c | v0 = fp + 0x4c;
0x00403d0c move a0, v0 | a0 = v0;
0x00403d10 move a1, t8 | a1 = t8;
0x00403d14 move a2, zero | a2 = 0;
0x00403d18 lw a3, 0x78(fp) | a3 = *(arg_78h);
0x00403d1c lw t8, -0x7e24(gp) | t8 = *(gp);
0x00403d20 move t9, t8 | t9 = t8;
0x00403d24 jalr t9 | t9 ();
0x00403d28 nop |
0x00403d2c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403d30 addiu v0, fp, 0x84 | v0 = fp + 0x84;
0x00403d34 addiu t8, fp, 0x4c | t8 = fp + 0x4c;
0x00403d38 move a0, v0 | a0 = v0;
0x00403d3c move a1, t8 | a1 = t8;
0x00403d40 lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403d44 move t9, t8 | t9 = t8;
0x00403d48 jalr t9 | t9 ();
0x00403d4c nop |
0x00403d50 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403d54 addiu t8, fp, 0x4c | t8 = fp + 0x4c;
0x00403d58 move a0, t8 | a0 = t8;
0x00403d5c lw t8, -0x7df8(gp) | t8 = *(gp);
0x00403d60 move t9, t8 | t9 = t8;
0x00403d64 jalr t9 | t9 ();
0x00403d68 nop |
0x00403d6c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403d70 addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403d74 move a0, t8 | a0 = t8;
0x00403d78 lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403d7c move t9, t8 | t9 = t8;
0x00403d80 jalr t9 | t9 ();
0x00403d84 nop |
0x00403d88 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403d8c lw t8, 0x78(fp) | t8 = *(arg_78h);
0x00403d90 addiu t8, t8, 1 | t8++;
0x00403d94 addiu v1, fp, 0x8c | v1 = fp + 0x8c;
0x00403d98 move a0, v1 | a0 = v1;
0x00403d9c move a1, v0 | a1 = v0;
0x00403da0 move a2, t8 | a2 = t8;
0x00403da4 addiu a3, zero, -1 | a3 = -1;
0x00403da8 lw t8, -0x7e24(gp) | t8 = *(gp);
0x00403dac move t9, t8 | t9 = t8;
0x00403db0 jalr t9 | t9 ();
0x00403db4 nop |
0x00403db8 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403dbc addiu t8, fp, 0x8c | t8 = fp + 0x8c;
0x00403dc0 move a0, t8 | a0 = t8;
0x00403dc4 lw t8, -0x7db4(gp) | t8 = *(gp);
0x00403dc8 move t9, t8 | t9 = t8;
0x00403dcc jalr t9 | t9 ();
0x00403dd0 nop |
0x00403dd4 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403dd8 move t8, v0 | t8 = v0;
0x00403ddc move a0, t8 | a0 = t8;
0x00403de0 lw t8, -0x7e5c(gp) | t8 = sym.imp.atoi;
0x00403de4 move t9, t8 | t9 = t8;
0x00403de8 jalr t9 | t9 ();
0x00403dec nop |
0x00403df0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403df4 sw v0, 0x64(fp) | *(arg_64h) = v0;
0x00403df8 addiu t8, fp, 0x8c | t8 = fp + 0x8c;
0x00403dfc move a0, t8 | a0 = t8;
0x00403e00 lw t8, -0x7df8(gp) | t8 = *(gp);
0x00403e04 move t9, t8 | t9 = t8;
0x00403e08 jalr t9 | t9 ();
0x00403e0c nop |
0x00403e10 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403e14 b 0x403e64 | goto label_8;
0x00403e18 nop |
| }
0x00403e1c addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00403e20 move a0, t8 | a0 = t8;
0x00403e24 lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403e28 move t9, t8 | t9 = t8;
0x00403e2c jalr t9 | t9 ();
0x00403e30 nop |
0x00403e34 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403e38 move t8, v0 | t8 = v0;
0x00403e3c addiu v0, fp, 0x84 | v0 = fp + 0x84;
0x00403e40 move a0, v0 | a0 = v0;
0x00403e44 move a1, t8 | a1 = t8;
0x00403e48 lw t8, -0x7e70(gp) | t8 = *(gp);
0x00403e4c move t9, t8 | t9 = t8;
0x00403e50 jalr t9 | t9 ();
0x00403e54 nop |
0x00403e58 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403e5c addiu t8, zero, 0x80 | t8 = 0x80;
0x00403e60 sw t8, 0x64(fp) | *(arg_64h) = t8;
| label_8:
0x00403e64 addiu v0, fp, 0x18 | v0 = fp + 0x18;
0x00403e68 addiu t8, fp, 0x94 | t8 = fp + 0x94;
0x00403e6c move a0, v0 | a0 = v0;
0x00403e70 move a1, t8 | a1 = t8;
0x00403e74 lw t8, -0x7fac(gp) | t8 = *(gp);
0x00403e78 move t9, t8 | t9 = t8;
0x00403e7c jalr t9 | t9 ();
0x00403e80 nop |
0x00403e84 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403e88 lw t8, 0x18(fp) | t8 = *(arg_18h);
0x00403e8c sw t8, 0x28(fp) | *(arg_28h) = t8;
0x00403e90 b 0x404020 | goto label_9;
0x00403e94 nop |
| do {
0x00403e98 addiu v0, fp, 0x37c | v0 = fp + 0x37c;
0x00403e9c addiu t8, zero, 0x100 | t8 = 0x100;
0x00403ea0 move a0, v0 | a0 = v0;
0x00403ea4 move a1, zero | a1 = 0;
0x00403ea8 move a2, t8 | a2 = t8;
0x00403eac lw t8, -0x7e38(gp) | t8 = sym.imp.memset;
0x00403eb0 move t9, t8 | t9 = t8;
0x00403eb4 jalr t9 | t9 ();
0x00403eb8 nop |
0x00403ebc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403ec0 addiu v0, fp, 0x47c | v0 = fp + 0x47c;
0x00403ec4 addiu t8, zero, 0x100 | t8 = 0x100;
0x00403ec8 move a0, v0 | a0 = v0;
0x00403ecc move a1, zero | a1 = 0;
0x00403ed0 move a2, t8 | a2 = t8;
0x00403ed4 lw t8, -0x7e38(gp) | t8 = sym.imp.memset;
0x00403ed8 move t9, t8 | t9 = t8;
0x00403edc jalr t9 | t9 ();
0x00403ee0 nop |
0x00403ee4 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403ee8 sw zero, 0x7c(fp) | *(arg_7ch) = 0;
0x00403eec sw zero, 0x80(fp) | *(arg_80h) = 0;
0x00403ef0 addiu t8, fp, 0x28 | t8 = fp + 0x28;
0x00403ef4 move a0, t8 | a0 = t8;
0x00403ef8 lw t8, -0x7fa8(gp) | t8 = *(gp);
0x00403efc move t9, t8 | t9 = t8;
0x00403f00 jalr t9 | t9 ();
0x00403f04 nop |
0x00403f08 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403f0c move t8, v0 | t8 = v0;
0x00403f10 move a0, t8 | a0 = t8;
0x00403f14 lw t8, -0x7db4(gp) | t8 = *(gp);
0x00403f18 move t9, t8 | t9 = t8;
0x00403f1c jalr t9 | t9 ();
0x00403f20 nop |
0x00403f24 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403f28 addiu t8, fp, 0x37c | t8 = fp + 0x37c;
0x00403f2c move a0, v0 | a0 = v0;
0x00403f30 lw a1, 0x64(fp) | a1 = *(arg_64h);
0x00403f34 move a2, t8 | a2 = t8;
0x00403f38 addiu a3, zero, 0x100 | a3 = 0x100;
0x00403f3c lw t8, -0x7e28(gp) | t8 = sym.imp.get_network_id_char_const__int__char__int_;
0x00403f40 move t9, t8 | t9 = t8;
0x00403f44 jalr t9 | t9 ();
0x00403f48 nop |
0x00403f4c lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403f50 move t8, v0 | t8 = v0;
0x00403f54 sw t8, 0x7c(fp) | *(arg_7ch) = t8;
0x00403f58 addiu t8, fp, 0x84 | t8 = fp + 0x84;
0x00403f5c move a0, t8 | a0 = t8;
0x00403f60 lw t8, -0x7db4(gp) | t8 = *(gp);
0x00403f64 move t9, t8 | t9 = t8;
0x00403f68 jalr t9 | t9 ();
0x00403f6c nop |
0x00403f70 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403f74 addiu t8, fp, 0x47c | t8 = fp + 0x47c;
0x00403f78 move a0, v0 | a0 = v0;
0x00403f7c lw a1, 0x64(fp) | a1 = *(arg_64h);
0x00403f80 move a2, t8 | a2 = t8;
0x00403f84 addiu a3, zero, 0x100 | a3 = 0x100;
0x00403f88 lw t8, -0x7e28(gp) | t8 = sym.imp.get_network_id_char_const__int__char__int_;
0x00403f8c move t9, t8 | t9 = t8;
0x00403f90 jalr t9 | t9 ();
0x00403f94 nop |
0x00403f98 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403f9c move t8, v0 | t8 = v0;
0x00403fa0 sw t8, 0x80(fp) | *(arg_80h) = t8;
0x00403fa4 lw t8, 0x7c(fp) | t8 = *(arg_7ch);
| if (t8 == 0) {
0x00403fa8 bnez t8, 0x403ff8 |
0x00403fac nop |
0x00403fb0 lw t8, 0x80(fp) | t8 = *(arg_80h);
| if (t8 != 0) {
0x00403fb4 bnez t8, 0x403ff8 | goto label_10;
| }
0x00403fb8 nop |
0x00403fbc addiu v0, fp, 0x37c | v0 = fp + 0x37c;
0x00403fc0 addiu t8, fp, 0x47c | t8 = fp + 0x47c;
0x00403fc4 move a0, v0 | a0 = v0;
0x00403fc8 move a1, t8 | a1 = t8;
0x00403fcc lw t8, -0x7dc8(gp) | t8 = sym.imp.strcasecmp;
0x00403fd0 move t9, t8 | t9 = t8;
0x00403fd4 jalr t9 | t9 ();
0x00403fd8 nop |
0x00403fdc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00403fe0 move t8, v0 | t8 = v0;
| if (t8 != 0) {
0x00403fe4 bnez t8, 0x403ff8 | goto label_10;
| }
0x00403fe8 nop |
0x00403fec lw t8, 0x5c(fp) | t8 = *(arg_5ch);
0x00403ff0 addiu t8, t8, 1 | t8++;
0x00403ff4 sw t8, 0x5c(fp) | *(arg_5ch) = t8;
| }
| label_10:
0x00403ff8 addiu v0, fp, 0x8c | v0 = fp + 0x8c;
0x00403ffc addiu t8, fp, 0x28 | t8 = fp + 0x28;
0x00404000 move a0, v0 | a0 = v0;
0x00404004 move a1, t8 | a1 = t8;
0x00404008 move a2, zero | a2 = 0;
0x0040400c lw t8, -0x7fa4(gp) | t8 = *(gp);
0x00404010 move t9, t8 | t9 = t8;
0x00404014 jalr t9 | t9 ();
0x00404018 nop |
0x0040401c lw gp, 0x10(fp) | gp = *(arg_10h);
| label_9:
0x00404020 addiu v0, fp, 0x50 | v0 = fp + 0x50;
0x00404024 addiu t8, fp, 0x94 | t8 = fp + 0x94;
0x00404028 move a0, v0 | a0 = v0;
0x0040402c move a1, t8 | a1 = t8;
0x00404030 lw t8, -0x7fa0(gp) | t8 = *(gp);
0x00404034 move t9, t8 | t9 = t8;
0x00404038 jalr t9 | t9 ();
0x0040403c nop |
0x00404040 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00404044 addiu v0, fp, 0x28 | v0 = fp + 0x28;
0x00404048 addiu t8, fp, 0x50 | t8 = fp + 0x50;
0x0040404c move a0, v0 | a0 = v0;
0x00404050 move a1, t8 | a1 = t8;
0x00404054 lw t8, -0x7f9c(gp) | t8 = *(gp);
0x00404058 move t9, t8 | t9 = t8;
0x0040405c jalr t9 | t9 ();
0x00404060 nop |
0x00404064 lw gp, 0x10(fp) | gp = *(arg_10h);
0x00404068 move t8, v0 | t8 = v0;
0x0040406c bnez t8, 0x403e98 |
| } while (t8 != 0);
0x00404070 nop |
0x00404074 addiu t8, fp, 0x84 | t8 = fp + 0x84;
0x00404078 move a0, t8 | a0 = t8;
0x0040407c lw t8, -0x7df8(gp) | t8 = *(gp);
0x00404080 move t9, t8 | t9 = t8;
0x00404084 jalr t9 | t9 ();
0x00404088 nop |
0x0040408c lw gp, 0x10(fp) | gp = *(arg_10h);
| label_7:
0x00404090 addiu v0, fp, 0x8c | v0 = fp + 0x8c;
0x00404094 addiu t8, fp, 0x24 | t8 = fp + 0x24;
0x00404098 move a0, v0 | a0 = v0;
0x0040409c move a1, t8 | a1 = t8;
0x004040a0 move a2, zero | a2 = 0;
0x004040a4 lw t8, -0x7fa4(gp) | t8 = *(gp);
0x004040a8 move t9, t8 | t9 = t8;
0x004040ac jalr t9 | t9 ();
0x004040b0 nop |
0x004040b4 lw gp, 0x10(fp) | gp = *(arg_10h);
| label_6:
0x004040b8 addiu v0, fp, 0x48 | v0 = fp + 0x48;
0x004040bc addiu t8, fp, 0xac | t8 = fp + 0xac;
0x004040c0 move a0, v0 | a0 = v0;
0x004040c4 move a1, t8 | a1 = t8;
0x004040c8 lw t8, -0x7fa0(gp) | t8 = *(gp);
0x004040cc move t9, t8 | t9 = t8;
0x004040d0 jalr t9 | t9 ();
0x004040d4 nop |
0x004040d8 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004040dc addiu v0, fp, 0x24 | v0 = fp + 0x24;
0x004040e0 addiu t8, fp, 0x48 | t8 = fp + 0x48;
0x004040e4 move a0, v0 | a0 = v0;
0x004040e8 move a1, t8 | a1 = t8;
0x004040ec lw t8, -0x7f9c(gp) | t8 = *(gp);
0x004040f0 move t9, t8 | t9 = t8;
0x004040f4 jalr t9 | t9 ();
0x004040f8 nop |
0x004040fc lw gp, 0x10(fp) | gp = *(arg_10h);
0x00404100 move t8, v0 | t8 = v0;
| if (t8 != 0) {
0x00404104 bnez t8, 0x403b60 | goto label_0;
| }
0x00404108 nop |
0x0040410c lw t8, 0x54(fp) | t8 = *(arg_54h);
| if (t8 == 0) {
0x00404110 bnez t8, 0x404124 |
0x00404114 nop |
0x00404118 addiu s0, zero, -1 | s0 = -1;
0x0040411c b 0x404154 | goto label_4;
0x00404120 nop |
| }
0x00404124 lw t8, 0x58(fp) | t8 = *(arg_58h);
| if (t8 != 0) {
0x00404128 beqz t8, 0x404144 |
0x0040412c nop |
0x00404130 lw v0, 0x5c(fp) | v0 = *(arg_5ch);
0x00404134 lw t8, 0x60(fp) | t8 = *(arg_60h);
0x00404138 slt t8, v0, t8 | t8 = (v0 < t8) ? 1 : 0;
| if (t8 == 0) {
0x0040413c beqz t8, 0x404150 | goto label_11;
| }
0x00404140 nop |
| }
0x00404144 addiu s0, zero, -1 | s0 = -1;
0x00404148 b 0x404154 | goto label_4;
0x0040414c nop |
| label_11:
0x00404150 move s0, zero | s0 = 0;
| label_4:
0x00404154 addiu t8, fp, 0x1e0 | t8 = fp + 0x1e0;
0x00404158 move a0, t8 | a0 = t8;
0x0040415c lw t8, -0x7e14(gp) | t8 = *(gp);
0x00404160 move t9, t8 | t9 = t8;
0x00404164 jalr t9 | t9 ();
0x00404168 nop |
0x0040416c lw gp, 0x10(fp) | gp = *(arg_10h);
| label_1:
0x00404170 addiu t8, fp, 0xc4 | t8 = fp + 0xc4;
0x00404174 move a0, t8 | a0 = t8;
0x00404178 lw t8, -0x7e14(gp) | t8 = *(gp);
0x0040417c move t9, t8 | t9 = t8;
0x00404180 jalr t9 | t9 ();
0x00404184 nop |
0x00404188 lw gp, 0x10(fp) | gp = *(arg_10h);
0x0040418c addiu t8, fp, 0xac | t8 = fp + 0xac;
0x00404190 move a0, t8 | a0 = t8;
0x00404194 lw t8, -0x7f98(gp) | t8 = *(gp);
0x00404198 move t9, t8 | t9 = t8;
0x0040419c jalr t9 | t9 ();
0x004041a0 nop |
0x004041a4 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004041a8 addiu t8, fp, 0x94 | t8 = fp + 0x94;
0x004041ac move a0, t8 | a0 = t8;
0x004041b0 lw t8, -0x7f98(gp) | t8 = *(gp);
0x004041b4 move t9, t8 | t9 = t8;
0x004041b8 jalr t9 | t9 ();
0x004041bc nop |
0x004041c0 lw gp, 0x10(fp) | gp = *(arg_10h);
0x004041c4 addiu t8, fp, 0x20 | t8 = fp + 0x20;
0x004041c8 move a0, t8 | a0 = t8;
0x004041cc lw t8, -0x7df8(gp) | t8 = *(gp);
0x004041d0 move t9, t8 | t9 = t8;
0x004041d4 jalr t9 | t9 ();
0x004041d8 nop |
0x004041dc lw gp, 0x10(fp) | gp = *(arg_10h);
0x004041e0 move t8, s0 | t8 = s0;
0x004041e4 move v0, t8 | v0 = t8;
0x004041e8 lw t8, -0x7da4(gp) | t8 = *((gp - 8041));
0x004041ec lw v1, 0x57c(fp) | v1 = *(arg_57ch);
0x004041f0 lw t8, (t8) | t8 = *(t8);
| if (v1 != t8) {
0x004041f4 beq v1, t8, 0x404510 |
0x004041f8 nop |
0x004041fc b 0x404500 | goto label_12;
0x00404200 nop |
| label_12:
0x00404500 lw t8, -0x7e10(gp) | t8 = sym.imp.__stack_chk_fail;
0x00404504 move t9, t8 | t9 = t8;
0x00404508 jalr t9 | t9 ();
0x0040450c nop |
| }
0x00404510 move sp, fp |
0x00404514 lw ra, 0x58c(sp) | ra = *(var_58ch);
0x00404518 lw fp, 0x588(sp) | fp = *(var_588h);
0x0040451c lw s0, 0x584(sp) | s0 = *(var_584h);
0x00404520 addiu sp, sp, 0x590 |
0x00404524 jr ra | return v1;
0x00404528 nop |
| }
[*] Function system used 4 times ipv6_checkroute