[*] Binary protection state of parhand
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function strcat tear down of parhand
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/parhand @ 0xca48 */
| #include <stdint.h>
|
; (fcn) fcn.0000ca48 () | void fcn_0000ca48 () {
0x0000ca48 lui gp, 3 |
0x0000ca4c addiu gp, gp, 0x6908 |
0x0000ca50 addu gp, gp, t9 | gp += t9;
0x0000ca54 addiu sp, sp, -0x38 |
0x0000ca58 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x0000ca5c sw gp, 0x10(sp) | *(var_10h) = gp;
0x0000ca60 sw s4, 0x2c(sp) | *(var_2ch) = s4;
0x0000ca64 sw s1, 0x20(sp) | *(var_20h) = s1;
0x0000ca68 sw s0, 0x1c(sp) | *(var_1ch) = s0;
0x0000ca6c sw ra, 0x34(sp) | *(var_34h) = ra;
0x0000ca70 sw s5, 0x30(sp) | *(var_30h) = s5;
0x0000ca74 sw s3, 0x28(sp) | *(var_28h) = s3;
0x0000ca78 sw s2, 0x24(sp) | *(var_24h) = s2;
0x0000ca7c move s1, a0 | s1 = a0;
0x0000ca80 addiu a0, zero, 0x50 | a0 = 0x50;
0x0000ca84 move s4, a1 | s4 = a1;
0x0000ca88 move s0, a2 | s0 = a2;
0x0000ca8c jalr t9 | t9 ();
0x0000ca90 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0000ca94 beqz v0, 0xcd68 | goto label_7;
| }
0x0000ca98 move s2, v0 | s2 = v0;
0x0000ca9c lw v0, -0x7fd4(gp) | v0 = *((gp - 8181));
0x0000caa0 lw s3, -0x4660(v0) | s3 = *((v0 - 4504));
| if (s3 == 0) {
0x0000caa4 beql s3, zero, 0xccf0 | goto label_8;
| }
0x0000caa8 sw s2, -0x4660(v0) | *((v0 - 4504)) = s2;
0x0000caac lw v1, (s3) | v1 = *(s3);
0x0000cab0 lw v0, (v1) | v0 = *(v1);
| if (v1 == 0) {
0x0000cab4 bnel v1, zero, 0xcac4 | goto label_9;
| }
0x0000cab8 move v1, s3 | v1 = s3;
0x0000cabc b 0xcd60 | goto label_10;
| do {
0x0000cac0 lw v0, (v1) | v0 = *(v1);
| label_9:
0x0000cac4 move v1, v0 | v1 = v0;
0x0000cac8 bnel v0, zero, 0xcac0 |
| } while (v0 == 0);
0x0000cacc addiu v0, zero, 2 | v0 = 2;
| label_5:
0x0000cad0 sw s2, (v1) | *(v1) = s2;
0x0000cad4 sw zero, (s2) | *(s2) = 0;
0x0000cad8 addiu v1, s2, 8 | v1 = s2 + 8;
| if (s0 == v0) {
0x0000cadc beq s0, v0, 0xcd04 | goto label_11;
| }
| label_2:
0x0000cae0 lw t9, -0x7b88(gp) | t9 = sym.imp.strncpy;
0x0000cae4 addiu a2, zero, 0x40 | a2 = 0x40;
0x0000cae8 move a1, s1 | a1 = s1;
0x0000caec move a0, v1 | a0 = v1;
0x0000caf0 jalr t9 | t9 ();
0x0000caf4 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000caf8 sw s4, 0x4c(s2) | *((s2 + 19)) = s4;
| label_3:
0x0000cafc sw s0, 4(s2) | *((s2 + 1)) = s0;
0x0000cb00 sb zero, 0x48(s2) | *((s2 + 72)) = 0;
0x0000cb04 move s0, s3 | s0 = s3;
0x0000cb08 move s1, zero | s1 = 0;
| do {
0x0000cb0c lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x0000cb10 addiu a0, s0, 8 | a0 = s0 + 8;
0x0000cb14 jalr t9 | t9 ();
0x0000cb18 lw s0, (s0) | s0 = *(s0);
0x0000cb1c lw gp, 0x10(sp) | gp = *(var_10h);
0x0000cb20 addu s1, s1, v0 | s1 += v0;
0x0000cb24 bnez s0, 0xcb0c |
| } while (s0 != 0);
0x0000cb28 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
| if (s1 == 0) {
0x0000cb2c beqz s1, 0xcd4c | goto label_12;
| }
0x0000cb30 addiu a0, s1, 1 | a0 = s1 + 1;
0x0000cb34 jalr t9 | t9 ();
0x0000cb38 move s1, v0 | s1 = v0;
0x0000cb3c lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0000cb40 beqz v0, 0xcc64 | goto label_13;
| }
0x0000cb44 sb zero, (v0) | *(v0) = 0;
0x0000cb48 move s0, s3 | s0 = s3;
0x0000cb4c move s5, zero | s5 = 0;
0x0000cb50 addiu s4, zero, 1 | s4 = 1;
0x0000cb54 lw t9, -0x7ce0(gp) | t9 = sym.imp.strcat
| do {
0x0000cb58 addiu a1, s0, 8 | a1 = s0 + 8;
0x0000cb5c move a0, s1 | a0 = s1;
0x0000cb60 jalr t9 | t9 ();
0x0000cb64 lw v0, 4(s0) | v0 = *((s0 + 1));
0x0000cb68 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == s4) {
0x0000cb6c bne v0, s4, 0xcb74 |
0x0000cb70 lw s5, 0x4c(s3) | s5 = *((s3 + 19));
| }
0x0000cb74 lw s0, (s0) | s0 = *(s0);
0x0000cb78 lw t9, -0x7ce0(gp) | t9 = sym.imp.strcat
0x0000cb7c bnez s0, 0xcb58 |
| } while (s0 != 0);
0x0000cb80 lw t9, -0x7edc(gp) | t9 = sym.map_getParamByGroupAndMapping;
0x0000cb84 move a1, s1 | a1 = s1;
0x0000cb88 move a0, s5 | a0 = s5;
0x0000cb8c bal 0x7744 | sym_map_getParamByGroupAndMapping ();
0x0000cb90 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000cb94 move a0, s1 | a0 = s1;
0x0000cb98 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x0000cb9c move s0, v0 | s0 = v0;
0x0000cba0 jalr t9 | t9 ();
0x0000cba4 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000cba8 lw s1, -0x7fd4(gp) | s1 = *((gp - 8181));
| if (s0 == 0) {
0x0000cbac beqz s0, 0xcd58 | goto label_14;
| }
0x0000cbb0 lw v0, -0x4670(s1) | v0 = *((s1 - 4508));
0x0000cbb4 lw a1, -0x7fc4(gp) | a1 = *(gp);
| if (v0 != 0) {
0x0000cbb8 beqz v0, 0xcbd8 |
0x0000cbbc lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.No_double_mapping_allowed_ */
0x0000cbc0 addiu a1, a1, 0x738c | a1 += 0x738c;
| label_6:
0x0000cbc4 lw a0, -0x7fc4(gp) | a0 = *(gp);
| /* str.mappinginterface.c */
0x0000cbc8 addiu a0, a0, 0x7238 | a0 += 0x7238;
0x0000cbcc bal 0x199c0 | sym_fatald ();
0x0000cbd0 addiu v0, zero, -1 | v0 = -1;
0x0000cbd4 b 0xcc40 | goto label_15;
| }
0x0000cbd8 lw v0, -0x7fd4(gp) | v0 = *((gp - 8181));
0x0000cbdc sw s0, -0x4670(s1) | *((s1 - 4508)) = s0;
0x0000cbe0 sw s2, -0x4664(v0) | *((v0 - 4505)) = s2;
| do {
0x0000cbe4 lw v0, 0x38(s0) | v0 = *((s0 + 14));
0x0000cbe8 addiu v0, v0, -2 | v0 += -2;
0x0000cbec sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x0000cbf0 lw t9, -0x7ee0(gp) | t9 = sym.parser_setSynchronizationMode;
| if (v0 != 0) {
0x0000cbf4 bnez v0, 0xcc94 | goto label_16;
| }
0x0000cbf8 move a0, zero | a0 = 0;
0x0000cbfc bal 0x958c | sym_parser_setSynchronizationMode ();
0x0000cc00 lw a0, -0x4670(s1) | a0 = *((s1 - 4508));
0x0000cc04 lw gp, 0x10(sp) | gp = *(var_10h);
| if (a0 == 0) {
0x0000cc08 beqz a0, 0xccac | goto label_17;
| }
| label_0:
0x0000cc0c lw v1, 0x38(a0) | v1 = *((a0 + 14));
0x0000cc10 lw a1, -0x7fd4(gp) | a1 = *((gp - 8181));
0x0000cc14 xori v0, v1, 2 | v0 = v1 ^ 2;
0x0000cc18 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x0000cc1c sw v0, -0x4674(a1) | *((a1 - 4509)) = v0;
0x0000cc20 lw v0, -0x7fd4(gp) | v0 = *((gp - 8181));
| if (v1 != 0) {
0x0000cc24 bnez v1, 0xcce8 | goto label_18;
| }
0x0000cc28 addiu v1, zero, 1 | v1 = 1;
0x0000cc2c sw v1, -0x4678(v0) | *((v0 - 4510)) = v1;
| label_1:
0x0000cc30 lw t9, -0x7ed8(gp) | t9 = sym.map_notifyParamHandled;
0x0000cc34 bal 0x714c | sym_map_notifyParamHandled ();
0x0000cc38 nop |
0x0000cc3c move v0, zero | v0 = 0;
| label_15:
0x0000cc40 lw ra, 0x34(sp) | ra = *(var_34h);
0x0000cc44 lw s5, 0x30(sp) | s5 = *(var_30h);
0x0000cc48 lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x0000cc4c lw s3, 0x28(sp) | s3 = *(var_28h);
0x0000cc50 lw s2, 0x24(sp) | s2 = *(var_24h);
0x0000cc54 lw s1, 0x20(sp) | s1 = *(var_20h);
0x0000cc58 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x0000cc5c addiu sp, sp, 0x38 |
0x0000cc60 jr ra | return v0;
| label_13:
0x0000cc64 lw s1, -0x7fd4(gp) | s1 = *((gp - 8181));
0x0000cc68 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x0000cc6c lw a0, -0x7fc4(gp) | a0 = *(gp);
0x0000cc70 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.Memory_allocation_failed._Couldnt_allocate_Mapping_Path_buffer_ */
0x0000cc74 addiu a1, a1, 0x7348 | a1 += 0x7348;
| /* str.mappinginterface.c */
0x0000cc78 addiu a0, a0, 0x7238 | a0 += 0x7238;
0x0000cc7c bal 0x199c0 | sym_fatald ();
0x0000cc80 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000cc84 lw s0, -0x4670(s1) | s0 = *((s1 - 4508));
| label_4:
0x0000cc88 lw v0, -0x7fd4(gp) | v0 = *((gp - 8181));
0x0000cc8c sw s2, -0x4664(v0) | *((v0 - 4505)) = s2;
0x0000cc90 bnez s0, 0xcbe4 |
| } while (s0 != 0);
| label_16:
0x0000cc94 lw t9, -0x7ee0(gp) | t9 = sym.parser_setSynchronizationMode;
0x0000cc98 addiu a0, zero, 1 | a0 = 1;
0x0000cc9c bal 0x958c | sym_parser_setSynchronizationMode ();
0x0000cca0 lw a0, -0x4670(s1) | a0 = *((s1 - 4508));
0x0000cca4 lw gp, 0x10(sp) | gp = *(var_10h);
| if (a0 != 0) {
0x0000cca8 bnez a0, 0xcc0c | goto label_0;
| }
| label_17:
0x0000ccac lw v0, -0x7fd4(gp) | v0 = *((gp - 8181));
0x0000ccb0 addiu v1, zero, 1 | v1 = 1;
0x0000ccb4 lw ra, 0x34(sp) | ra = *(var_34h);
0x0000ccb8 sw v1, -0x4674(v0) | *((v0 - 4509)) = v1;
0x0000ccbc lw v0, -0x7fd4(gp) | v0 = *((gp - 8181));
0x0000ccc0 lw s5, 0x30(sp) | s5 = *(var_30h);
0x0000ccc4 lw s4, 0x2c(sp) | s4 = *(var_2ch);
0x0000ccc8 lw s3, 0x28(sp) | s3 = *(var_28h);
0x0000cccc lw s2, 0x24(sp) | s2 = *(var_24h);
0x0000ccd0 lw s1, 0x20(sp) | s1 = *(var_20h);
0x0000ccd4 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x0000ccd8 sw zero, -0x4678(v0) | *((v0 - 4510)) = 0;
0x0000ccdc move v0, zero | v0 = 0;
0x0000cce0 addiu sp, sp, 0x38 |
0x0000cce4 jr ra | return v0;
| label_18:
0x0000cce8 sw zero, -0x4678(v0) | *((v0 - 4510)) = 0;
0x0000ccec b 0xcc30 | goto label_1;
| label_8:
0x0000ccf0 addiu v0, zero, 2 | v0 = 2;
0x0000ccf4 move s3, s2 | s3 = s2;
0x0000ccf8 sw zero, (s2) | *(s2) = 0;
0x0000ccfc addiu v1, s2, 8 | v1 = s2 + 8;
| if (s0 != v0) {
0x0000cd00 bne s0, v0, 0xcae0 | goto label_2;
| }
| label_11:
0x0000cd04 lw t9, -0x7d54(gp) | t9 = sym.imp.__strncat_chk;
0x0000cd08 addiu v0, zero, 0x7b | v0 = 0x7b;
0x0000cd0c move a0, v1 | a0 = v1;
0x0000cd10 sb v0, 8(s2) | *((s2 + 8)) = v0;
0x0000cd14 addiu a3, zero, 0x41 | a3 = 0x41;
0x0000cd18 addiu a2, zero, 0x3e | a2 = 0x3e;
0x0000cd1c move a1, s1 | a1 = s1;
0x0000cd20 sb zero, 1(v1) | *((v1 + 1)) = 0;
0x0000cd24 jalr t9 | t9 ();
0x0000cd28 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000cd2c addiu a2, zero, 0x41 | a2 = 0x41;
0x0000cd30 move a0, v0 | a0 = v0;
0x0000cd34 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x0000cd38 lw t9, -0x7bd4(gp) | t9 = sym.imp.__strcat_chk
0x0000cd3c addiu a1, a1, 0x7344 | a1 += 0x7344;
0x0000cd40 jalr t9 | t9 ();
0x0000cd44 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000cd48 b 0xcafc | goto label_3;
| label_12:
0x0000cd4c lw s1, -0x7fd4(gp) | s1 = *((gp - 8181));
0x0000cd50 lw s0, -0x4670(s1) | s0 = *((s1 - 4508));
0x0000cd54 b 0xcc88 | goto label_4;
| label_14:
0x0000cd58 lw s0, -0x4670(s1) | s0 = *((s1 - 4508));
0x0000cd5c b 0xcc88 | goto label_4;
| label_10:
0x0000cd60 addiu v0, zero, 2 | v0 = 2;
0x0000cd64 b 0xcad0 | goto label_5;
| label_7:
0x0000cd68 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x0000cd6c lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.Memory_allocation_failed._Couldnt_allocate_Mapping_Context_Entry_ */
0x0000cd70 addiu a1, a1, 0x7300 | a1 += 0x7300;
0x0000cd74 b 0xcbc4 | goto label_6;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/parhand @ 0x2063c */
| #include <stdint.h>
|
; (fcn) sym.delete_group () | void delete_group () {
0x0002063c lui gp, 2 |
0x00020640 addiu gp, gp, 0x2d14 |
0x00020644 addu gp, gp, t9 | gp += t9;
0x00020648 lw v0, -0x7c68(gp) | v0 = *((gp - 7962));
0x0002064c addiu sp, sp, -0x1c0 |
0x00020650 lw t9, -0x7e80(gp) | t9 = sym.map_getGroupByPath;
0x00020654 sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x00020658 lw v0, (v0) | v0 = *(v0);
0x0002065c sw gp, 0x20(sp) | *(var_20h) = gp;
0x00020660 sw s0, 0x198(sp) | *(var_198h) = s0;
0x00020664 sw ra, 0x1bc(sp) | *(var_1bch) = ra;
0x00020668 sw fp, 0x1b8(sp) | *(var_1b8h) = fp;
0x0002066c sw s7, 0x1b4(sp) | *(var_1b4h) = s7;
0x00020670 sw s6, 0x1b0(sp) | *(var_1b0h) = s6;
0x00020674 sw s5, 0x1ac(sp) | *(var_1ach) = s5;
0x00020678 sw s4, 0x1a8(sp) | *(var_1a8h) = s4;
0x0002067c sw s3, 0x1a4(sp) | *(var_1a4h) = s3;
0x00020680 sw s2, 0x1a0(sp) | *(var_1a0h) = s2;
0x00020684 sw s1, 0x19c(sp) | *(var_19ch) = s1;
0x00020688 sw a0, 0x34(sp) | *(var_34h) = a0;
0x0002068c sw a1, 0x1c4(sp) | *(arg_1c4h) = a1;
0x00020690 sw v0, 0x194(sp) | *(var_194h) = v0;
0x00020694 sw zero, 0x68(sp) | *(var_68h) = 0;
0x00020698 move s0, a0 | s0 = a0;
0x0002069c bal 0x7978 | sym_map_getGroupByPath ();
0x000206a0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000206a4 beqz v0, 0x21764 | goto label_36;
| }
0x000206a8 lw t9, -0x7d34(gp) | t9 = sym.imp.strdup;
0x000206ac move a0, s0 | a0 = s0;
0x000206b0 jalr t9 | t9 ();
0x000206b4 sw v0, 0x30(sp) | *(var_30h) = v0;
0x000206b8 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000206bc beqz v0, 0x21778 | goto label_37;
| }
0x000206c0 lw t9, -0x7fc4(gp) | t9 = *(gp);
0x000206c4 lw a0, 0x30(sp) | a0 = *(var_30h);
| /* fcn.0001cf08 */
0x000206c8 addiu t9, t9, -0x30f8 | t9 += -0x30f8;
0x000206cc addiu a1, sp, 0x68 | a1 = sp + 0x68;
0x000206d0 bal 0x1cf08 | fcn_0001cf08 ();
0x000206d4 lw s1, 0x68(sp) | s1 = *(var_68h);
0x000206d8 lw a0, (s1) | a0 = *(s1);
0x000206dc lw gp, 0x20(sp) | gp = *(var_20h);
| if (a0 == 0) {
0x000206e0 beqz a0, 0x21888 | goto label_38;
| }
0x000206e4 lw v0, 4(s1) | v0 = *((s1 + 1));
0x000206e8 sw v0, 0x2c(sp) | *(var_2ch) = v0;
| if (v0 == 0) {
0x000206ec beqz v0, 0x20c84 | goto label_39;
| }
0x000206f0 addiu s0, s1, 4 | s0 = s1 + 4;
0x000206f4 sw zero, 0x6c(sp) | *(var_6ch) = 0;
0x000206f8 sw zero, 0x70(sp) | *(var_70h) = 0;
0x000206fc sw zero, 0x74(sp) | *(var_74h) = 0;
0x00020700 move s3, s0 | s3 = s0;
0x00020704 move s2, zero | s2 = 0;
| do {
0x00020708 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x0002070c addiu s3, s3, 4 | s3 += 4;
0x00020710 jalr t9 | t9 ();
0x00020714 lw a0, -4(s3) | a0 = *((s3 - 1));
0x00020718 addiu s2, s2, 1 | s2++;
0x0002071c lw gp, 0x20(sp) | gp = *(var_20h);
0x00020720 addu s2, s2, v0 | s2 += v0;
0x00020724 bnez a0, 0x20708 |
| } while (a0 != 0);
0x00020728 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x0002072c move a0, s2 | a0 = s2;
0x00020730 jalr t9 | t9 ();
0x00020734 move s7, v0 | s7 = v0;
0x00020738 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0002073c beqz v0, 0x21858 | goto label_40;
| }
0x00020740 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x00020744 addiu a0, zero, 0xe | a0 = 0xe;
0x00020748 jalr t9 | t9 ();
0x0002074c sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x00020750 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020754 beqz v0, 0x21818 | goto label_41;
| }
0x00020758 lw s4, -0x7fbc(gp) | s4 = *((gp - 8175));
0x0002075c lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00020760 lw s2, -0x7fc4(gp) | s2 = *(gp);
0x00020764 lw fp, -0x7fbc(gp) | fp = *((gp - 8175));
0x00020768 lw s3, 0x2c(sp) | s3 = *(var_2ch);
0x0002076c lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
| /* str._tmp */
0x00020770 addiu v0, v0, -0x6d4c | v0 += -0x6d4c;
| /* str.temp_grp */
0x00020774 addiu s4, s4, -0x6d58 | s4 += -0x6d58;
| /* str._s__s */
0x00020778 addiu a3, fp, -0x7280 | a3 = fp + -0x7280;
0x0002077c addiu a2, zero, 0xe | a2 = 0xe;
0x00020780 addiu a1, zero, 1 | a1 = 1;
0x00020784 move a0, s3 | a0 = s3;
0x00020788 sw s2, 0x54(sp) | *(var_54h) = s2;
0x0002078c sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x00020790 sw s4, 0x14(sp) | *(var_14h) = s4;
0x00020794 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00020798 jalr t9 | t9 ();
0x0002079c lw gp, 0x20(sp) | gp = *(var_20h);
0x000207a0 addiu a1, s2, 0x68e0 | a1 = s2 + 0x68e0;
0x000207a4 lw t9, -0x7cc8(gp) | t9 = sym.imp.fopen;
0x000207a8 move a0, s3 | a0 = s3;
0x000207ac jalr t9 | t9 ();
0x000207b0 move s2, v0 | s2 = v0;
0x000207b4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000207b8 beqz v0, 0x21918 | goto label_42;
| }
0x000207bc sb zero, (s7) | *(s7) = 0;
0x000207c0 lw s6, (s1) | s6 = *(s1);
0x000207c4 move s3, zero | s3 = 0;
0x000207c8 addiu s5, zero, 0x2e | s5 = 0x2e;
| if (s6 != 0) {
0x000207cc bnez s6, 0x20c68 | goto label_43;
| }
| label_1:
0x000207d0 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x000207d4 move a0, s7 | a0 = s7;
| /* fcn.0001dca8 */
0x000207d8 addiu t9, v0, -0x2358 | t9 = v0 + -0x2358;
0x000207dc sw t9, 0x50(sp) | *(var_50h) = t9;
0x000207e0 bal 0x1dca8 | fcn_0001dca8 ();
0x000207e4 move s0, v0 | s0 = v0;
0x000207e8 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000207ec beqz v0, 0x21310 | goto label_44;
| }
0x000207f0 lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x000207f4 sw zero, 0x78(sp) | *(var_78h) = 0;
0x000207f8 lw t9, -0x7cc8(gp) | t9 = sym.imp.fopen;
0x000207fc lw a0, 8(v0) | a0 = *((v0 + 2));
0x00020800 addiu a1, a1, -0x6754 | a1 += -0x6754;
0x00020804 jalr t9 | t9 ();
0x00020808 move s3, v0 | s3 = v0;
0x0002080c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020810 beqz v0, 0x21468 | goto label_45;
| }
0x00020814 lw v0, 8(s0) | v0 = *((s0 + 2));
0x00020818 sw v0, 0x58(sp) | *(var_58h) = v0;
| label_15:
0x0002081c lw v0, 0x78(sp) | v0 = *(var_78h);
0x00020820 move s0, zero | s0 = 0;
0x00020824 sw v0, 0x5c(sp) | *(var_5ch) = v0;
0x00020828 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0002082c lw s6, -0x7fc4(gp) | s6 = *(gp);
| /* fcn.0001d1d8 */
0x00020830 addiu v0, v0, -0x2e28 | v0 += -0x2e28;
0x00020834 sw v0, 0x28(sp) | *(var_28h) = v0;
0x00020838 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0002083c sw zero, 0x74(sp) | *(var_74h) = 0;
0x00020840 addiu v0, v0, -0x2fd4 | v0 += -0x2fd4;
0x00020844 sw v0, 0x38(sp) | *(var_38h) = v0;
0x00020848 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x0002084c sw zero, 0x70(sp) | *(var_70h) = 0;
0x00020850 sw v0, 0x40(sp) | *(var_40h) = v0;
0x00020854 move v0, s0 | v0 = s0;
0x00020858 move s4, zero | s4 = 0;
0x0002085c move s0, s1 | s0 = s1;
0x00020860 sw zero, 0x44(sp) | *(var_44h) = 0;
0x00020864 addiu s5, sp, 0x6c | s5 = sp + 0x6c;
| /* str.group */
0x00020868 addiu s6, s6, 0x6e58 | s6 += 0x6e58;
0x0002086c move s1, v0 | s1 = v0;
0x00020870 b 0x20908 |
| while (v0 != 0) {
0x00020874 lw a0, 0x70(sp) | a0 = *(var_70h);
0x00020878 lw v0, 0x74(sp) | v0 = *(var_74h);
0x0002087c lw t9, 0x38(sp) | t9 = *(var_38h);
| if (a0 == v0) {
0x00020880 bne a0, v0, 0x208d8 |
0x00020884 addiu a2, sp, 0x74 | a2 = sp + 0x74;
| if (s4 != 0) {
0x00020888 bnez s4, 0x208dc | goto label_46;
| }
0x0002088c lw t9, -0x7c98(gp) | t9 = sym.imp.strstr;
0x00020890 move a1, s6 | a1 = s6;
0x00020894 move a0, s1 | a0 = s1;
0x00020898 jalr t9 | t9 ();
0x0002089c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x000208a0 beqz v0, 0x208d4 |
0x000208a4 addiu v1, sp, 0x154 | v1 = sp + 0x154;
0x000208a8 sw v1, 0x48(sp) | *(var_48h) = v1;
0x000208ac move a3, v1 | a3 = v1;
0x000208b0 lw v1, 0x40(sp) | v1 = *(var_40h);
0x000208b4 lw t9, -0x7cf4(gp) | t9 = sym.imp.sscanf;
0x000208b8 move a0, v0 | a0 = v0;
0x000208bc addiu a2, sp, 0x114 | a2 = sp + aav.0x00000114;
0x000208c0 addiu a1, v1, -0x7278 | a1 = v1 + -0x7278;
0x000208c4 jalr t9 | t9 ();
0x000208c8 addiu a0, zero, 2 | a0 = 2;
0x000208cc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == a0) {
0x000208d0 beq v0, a0, 0x212b4 | goto label_47;
| }
| }
| label_14:
0x000208d4 lw t9, 0x38(sp) | t9 = *(var_38h);
| }
0x000208d8 addiu a2, sp, 0x74 | a2 = sp + 0x74;
| label_46:
0x000208dc addiu a1, sp, 0x70 | a1 = sp + 0x70;
0x000208e0 move a0, s1 | a0 = s1;
0x000208e4 jalr t9 | t9 ();
0x000208e8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000208ec move a0, s1 | a0 = s1;
0x000208f0 lw t9, -0x7afc(gp) | t9 = sym.imp.fputs;
0x000208f4 move a1, s2 | a1 = s2;
0x000208f8 jalr t9 | t9 ();
0x000208fc addiu a0, zero, -1 | a0 = -1;
0x00020900 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == a0) {
0x00020904 beq v0, a0, 0x211e4 | goto label_48;
| }
0x00020908 lw t9, 0x28(sp) | t9 = *(var_28h);
| label_33:
0x0002090c move a1, s1 | a1 = s1;
0x00020910 move a2, s5 | a2 = s5;
0x00020914 move a0, s3 | a0 = s3;
0x00020918 jalr t9 | t9 ();
0x0002091c move s1, v0 | s1 = v0;
0x00020920 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020924 bnez v0, 0x20874 |
| }
0x00020928 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x0002092c move a0, s7 | a0 = s7;
0x00020930 move s0, v0 | s0 = v0;
0x00020934 jalr t9 | t9 ();
0x00020938 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002093c lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00020940 move a0, s3 | a0 = s3;
0x00020944 jalr t9 | t9 ();
0x00020948 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002094c lw t9, -0x7bfc(gp) | t9 = sym.imp.fflush;
0x00020950 move a0, s2 | a0 = s2;
0x00020954 jalr t9 | t9 ();
0x00020958 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002095c lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00020960 move a0, s2 | a0 = s2;
0x00020964 jalr t9 | t9 ();
0x00020968 lw s4, 0x68(sp) | s4 = *(var_68h);
0x0002096c sw zero, 0x78(sp) | *(var_78h) = 0;
0x00020970 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020974 lw a0, (s4) | a0 = *(s4);
0x00020978 sw zero, 0x74(sp) | *(var_74h) = 0;
0x0002097c addiu v0, zero, 1 | v0 = 1;
| if (a0 == 0) {
0x00020980 beqz a0, 0x209b0 | goto label_49;
| }
0x00020984 addiu s3, s4, 4 | s3 = s4 + 4;
0x00020988 addiu s1, zero, 1 | s1 = 1;
| do {
0x0002098c lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020990 addiu s3, s3, 4 | s3 += 4;
0x00020994 jalr t9 | t9 ();
0x00020998 addiu s1, s1, 1 | s1++;
0x0002099c lw a0, -4(s3) | a0 = *((s3 - 1));
0x000209a0 addu s1, s1, v0 | s1 += v0;
0x000209a4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000209a8 move v0, s1 | v0 = s1;
0x000209ac bnez a0, 0x2098c |
| } while (a0 != 0);
| label_49:
0x000209b0 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x000209b4 move a0, v0 | a0 = v0;
0x000209b8 jalr t9 | t9 ();
0x000209bc move s1, v0 | s1 = v0;
0x000209c0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000209c4 beqz v0, 0x218cc | goto label_50;
| }
0x000209c8 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x000209cc addiu a0, zero, 0xe | a0 = 0xe;
0x000209d0 jalr t9 | t9 ();
0x000209d4 move s7, v0 | s7 = v0;
0x000209d8 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000209dc beqz v0, 0x2194c | goto label_51;
| }
0x000209e0 lw s6, -0x7fbc(gp) | s6 = *((gp - 8175));
0x000209e4 move a0, v0 | a0 = v0;
0x000209e8 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x000209ec lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
| /* str.temp_par */
0x000209f0 addiu s6, s6, -0x6d64 | s6 += -0x6d64;
| /* str._s__s */
0x000209f4 addiu a3, fp, -0x7280 | a3 = fp + -0x7280;
0x000209f8 addiu a2, zero, 0xe | a2 = 0xe;
0x000209fc addiu a1, zero, 1 | a1 = 1;
0x00020a00 sw s6, 0x14(sp) | *(var_14h) = s6;
0x00020a04 sw v0, 0x10(sp) | *(var_10h) = v0;
0x00020a08 jalr t9 | t9 ();
0x00020a0c lw gp, 0x20(sp) | gp = *(var_20h);
0x00020a10 lw v0, 0x54(sp) | v0 = *(var_54h);
0x00020a14 move a0, s7 | a0 = s7;
0x00020a18 lw t9, -0x7cc8(gp) | t9 = sym.imp.fopen;
0x00020a1c addiu a1, v0, 0x68e0 | a1 = v0 + 0x68e0;
0x00020a20 jalr t9 | t9 ();
0x00020a24 move s5, v0 | s5 = v0;
0x00020a28 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020a2c beqz v0, 0x2199c | goto label_52;
| }
0x00020a30 lw a3, -0x7fbc(gp) | a3 = *((gp - 8175));
0x00020a34 lw v0, (s4) | v0 = *(s4);
0x00020a38 lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
0x00020a3c sw v0, 0x10(sp) | *(var_10h) = v0;
| /* esilref: '[&s' */
0x00020a40 addiu a3, a3, -0x6f94 | a3 += -0x6f94;
0x00020a44 addiu a2, zero, -1 | a2 = -1;
0x00020a48 addiu a1, zero, 1 | a1 = 1;
0x00020a4c move a0, s1 | a0 = s1;
0x00020a50 jalr t9 | t9 ();
0x00020a54 lw fp, 4(s4) | fp = *((s4 + 1));
0x00020a58 lw gp, 0x20(sp) | gp = *(var_20h);
| if (fp == 0) {
0x00020a5c beqz fp, 0x2175c | goto label_53;
| }
0x00020a60 addiu s4, s4, 8 | s4 += 8;
0x00020a64 move s3, zero | s3 = 0;
0x00020a68 addiu s2, zero, 0x2e | s2 = 0x2e;
0x00020a6c b 0x20aa8 |
| while (v0 != 0) {
0x00020a70 move a0, s1 | a0 = s1;
0x00020a74 jalr t9 | t9 ();
0x00020a78 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020a7c addu v1, s1, v0 | v1 = s1 + v0;
0x00020a80 addiu v0, v0, 1 | v0++;
0x00020a84 lw t9, -0x7c60(gp) | t9 = sym.map_getChildGroupByParentGroupAndNr;
0x00020a88 addiu s4, s4, 4 | s4 += 4;
0x00020a8c move a1, fp | a1 = fp;
0x00020a90 sb s2, (v1) | *(v1) = s2;
0x00020a94 addu a0, s1, v0 | a0 = s1 + v0;
0x00020a98 jalr t9 | t9 ();
0x00020a9c lw fp, -4(s4) | fp = *((s4 - 1));
0x00020aa0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (fp == 0) {
0x00020aa4 beqz fp, 0x20ac8 | goto label_29;
| }
0x00020aa8 lw v0, (s4) | v0 = *(s4);
| label_0:
0x00020aac lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020ab0 bnez v0, 0x20a70 |
| }
0x00020ab4 addiu s4, s4, 4 | s4 += 4;
0x00020ab8 move s3, fp | s3 = fp;
0x00020abc lw fp, -4(s4) | fp = *((s4 - 1));
0x00020ac0 lw v0, (s4) | v0 = *(s4);
| if (fp == 0) {
0x00020ac4 bnel fp, zero, 0x20aac | goto label_0;
| }
| label_29:
0x00020ac8 addiu s4, s1, 1 | s4 = s1 + 1;
0x00020acc lw t9, 0x50(sp) | t9 = *(var_50h);
0x00020ad0 move a0, s4 | a0 = s4;
0x00020ad4 jalr t9 | t9 ();
0x00020ad8 move fp, v0 | fp = v0;
0x00020adc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020ae0 beqz v0, 0x21594 | goto label_54;
| }
0x00020ae4 lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x00020ae8 sw zero, 0x78(sp) | *(var_78h) = 0;
0x00020aec lw t9, -0x7cc8(gp) | t9 = sym.imp.fopen;
0x00020af0 lw a0, 0xc(v0) | a0 = *((v0 + 3));
0x00020af4 addiu a1, a1, -0x6754 | a1 += -0x6754;
0x00020af8 jalr t9 | t9 ();
0x00020afc move s2, v0 | s2 = v0;
0x00020b00 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020b04 beqz v0, 0x21630 | goto label_55;
| }
0x00020b08 lw v0, 0xc(fp) | v0 = *(arg_ch);
0x00020b0c sw v0, 0x38(sp) | *(var_38h) = v0;
| label_26:
0x00020b10 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020b14 move a0, s1 | a0 = s1;
0x00020b18 jalr t9 | t9 ();
0x00020b1c addu v1, s1, v0 | v1 = s1 + v0;
0x00020b20 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020b24 addiu v0, v0, 1 | v0++;
0x00020b28 addiu a0, zero, 0x2e | a0 = 0x2e;
0x00020b2c sb a0, (v1) | *(v1) = a0;
0x00020b30 addu a0, s1, v0 | a0 = s1 + v0;
0x00020b34 lw v0, 0x78(sp) | v0 = *(var_78h);
0x00020b38 lw t9, -0x7bb8(gp) | t9 = sym.imp.stpcpy;
0x00020b3c move a1, s3 | a1 = s3;
0x00020b40 sw v0, 0x40(sp) | *(var_40h) = v0;
0x00020b44 jalr t9 | t9 ();
0x00020b48 subu s4, v0, s1 | __asm ("subu s4, v0, s1");
0x00020b4c addiu fp, sp, 0x74 | fp = sp + 0x74;
0x00020b50 addiu s3, zero, 0x5d | s3 = 0x5d;
| do {
| label_16:
0x00020b54 lw t9, 0x28(sp) | t9 = *(var_28h);
0x00020b58 move a1, s0 | a1 = s0;
0x00020b5c move a2, fp | a2 = fp;
0x00020b60 move a0, s2 | a0 = s2;
0x00020b64 jalr t9 | t9 ();
0x00020b68 move s0, v0 | s0 = v0;
0x00020b6c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020b70 beqz v0, 0x214d0 | goto label_56;
| }
0x00020b74 lw t9, -0x7c98(gp) | t9 = sym.imp.strstr;
0x00020b78 move a1, s1 | a1 = s1;
0x00020b7c move a0, s0 | a0 = s0;
0x00020b80 jalr t9 | t9 ();
0x00020b84 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00020b88 beqz v0, 0x20ba4 |
0x00020b8c addu v0, v0, s4 | v0 += s4;
0x00020b90 lb v0, (v0) | v0 = *(v0);
0x00020b94 addiu v1, zero, 0x2e | v1 = 0x2e;
| if (v0 == s3) {
0x00020b98 beq v0, s3, 0x213cc | goto label_57;
| }
| if (v0 == v1) {
0x00020b9c beql v0, v1, 0x213d0 | goto label_58;
| }
0x00020ba0 addiu s6, zero, 0x2e | s6 = 0x2e;
| }
| label_18:
0x00020ba4 lw t9, -0x7afc(gp) | t9 = sym.imp.fputs;
| label_20:
0x00020ba8 move a1, s5 | a1 = s5;
0x00020bac move a0, s0 | a0 = s0;
0x00020bb0 jalr t9 | t9 ();
0x00020bb4 addiu v1, zero, -1 | v1 = -1;
0x00020bb8 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020bbc bne v0, v1, 0x20b54 |
| } while (v0 != v1);
0x00020bc0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00020bc4 move a0, s2 | a0 = s2;
0x00020bc8 jalr t9 | t9 ();
0x00020bcc lw gp, 0x20(sp) | gp = *(var_20h);
0x00020bd0 lw t9, -0x7bfc(gp) | t9 = sym.imp.fflush;
0x00020bd4 move a0, s5 | a0 = s5;
0x00020bd8 jalr t9 | t9 ();
0x00020bdc lw gp, 0x20(sp) | gp = *(var_20h);
0x00020be0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00020be4 move a0, s5 | a0 = s5;
0x00020be8 jalr t9 | t9 ();
0x00020bec lw gp, 0x20(sp) | gp = *(var_20h);
0x00020bf0 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00020bf4 move a0, s1 | a0 = s1;
0x00020bf8 jalr t9 | t9 ();
0x00020bfc lw gp, 0x20(sp) | gp = *(var_20h);
0x00020c00 lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x00020c04 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x00020c08 jalr t9 | t9 ();
0x00020c0c lw gp, 0x20(sp) | gp = *(var_20h);
0x00020c10 lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x00020c14 move a0, s7 | a0 = s7;
0x00020c18 jalr t9 | t9 ();
0x00020c1c lw gp, 0x20(sp) | gp = *(var_20h);
0x00020c20 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00020c24 sw v0, 0x38(sp) | *(var_38h) = v0;
0x00020c28 b 0x2127c | goto label_27;
| label_4:
0x00020c2c move a0, s7 | a0 = s7;
0x00020c30 jalr t9 | t9 ();
0x00020c34 addu v0, s7, v0 | v0 = s7 + v0;
0x00020c38 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020c3c sb s5, (v0) | *(v0) = s5;
0x00020c40 sb zero, 1(v0) | *((v0 + 1)) = 0;
0x00020c44 lw t9, -0x7ce0(gp) | t9 = sym.imp.strcat
| label_3:
0x00020c48 move a1, s6 | a1 = s6;
0x00020c4c move a0, s7 | a0 = s7;
0x00020c50 jalr t9 | t9 ();
0x00020c54 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020c58 addiu s0, s0, 4 | s0 += 4;
| label_2:
0x00020c5c lw s6, -4(s0) | s6 = *((s0 - 1));
0x00020c60 addiu s3, s3, 1 | s3++;
| if (s6 == 0) {
0x00020c64 beqz s6, 0x207d0 | goto label_1;
| }
| label_43:
0x00020c68 lw v0, (s0) | v0 = *(s0);
| if (v0 == 0) {
0x00020c6c beql v0, zero, 0x20c5c | goto label_2;
| }
0x00020c70 addiu s0, s0, 4 | s0 += 4;
| if (s3 == 0) {
0x00020c74 beql s3, zero, 0x20c48 | goto label_3;
| }
0x00020c78 lw t9, -0x7ce0(gp) | t9 = sym.imp.strcat
0x00020c7c lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020c80 b 0x20c2c | goto label_4;
| label_39:
0x00020c84 addiu v0, zero, 1 | v0 = 1;
0x00020c88 sw zero, 0x7c(sp) | *(var_7ch) = 0;
0x00020c8c sw v0, 0x80(sp) | *(var_80h) = v0;
0x00020c90 move s7, zero | s7 = 0;
| label_23:
0x00020c94 addiu s0, s1, 4 | s0 = s1 + 4;
0x00020c98 move s2, zero | s2 = 0;
| do {
0x00020c9c lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020ca0 addiu s0, s0, 4 | s0 += 4;
0x00020ca4 jalr t9 | t9 ();
0x00020ca8 lw a0, -4(s0) | a0 = *((s0 - 1));
0x00020cac addiu v0, v0, 1 | v0++;
0x00020cb0 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020cb4 addu s2, s2, v0 | s2 += v0;
0x00020cb8 bnez a0, 0x20c9c |
| } while (a0 != 0);
| label_24:
0x00020cbc lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x00020cc0 move a0, s2 | a0 = s2;
0x00020cc4 jalr t9 | t9 ();
0x00020cc8 sw v0, 0x28(sp) | *(var_28h) = v0;
0x00020ccc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020cd0 beqz v0, 0x218ec | goto label_59;
| }
0x00020cd4 lw s3, 0x28(sp) | s3 = *(var_28h);
0x00020cd8 sb zero, (s3) | *(s3) = 0;
0x00020cdc lw s2, (s1) | s2 = *(s1);
0x00020ce0 addiu s1, s1, 4 | s1 += 4;
| if (s2 == 0) {
0x00020ce4 beqz s2, 0x21460 | goto label_60;
| }
0x00020ce8 addiu s0, zero, 0x2e | s0 = 0x2e;
0x00020cec lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
| do {
0x00020cf0 move a0, s3 | a0 = s3;
0x00020cf4 jalr t9 | t9 ();
0x00020cf8 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020cfc move a1, s2 | a1 = s2;
0x00020d00 lw t9, -0x7bb8(gp) | t9 = sym.imp.stpcpy;
0x00020d04 addu a0, s3, v0 | a0 = s3 + v0;
0x00020d08 jalr t9 | t9 ();
0x00020d0c lw s2, (s1) | s2 = *(s1);
0x00020d10 lw gp, 0x20(sp) | gp = *(var_20h);
| if (s2 == 0) {
0x00020d14 beqz s2, 0x21460 | goto label_60;
| }
0x00020d18 addiu s1, s1, 4 | s1 += 4;
0x00020d1c lw v1, (s1) | v1 = *(s1);
0x00020d20 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
| if (v1 == 0) {
0x00020d24 beqz v1, 0x20d34 | goto label_61;
| }
0x00020d28 sb s0, (v0) | *(v0) = s0;
0x00020d2c sb zero, 1(v0) | *((v0 + 1)) = 0;
0x00020d30 b 0x20cf0 |
| } while (1);
| label_61:
0x00020d34 move a0, s2 | a0 = s2;
0x00020d38 jalr t9 | t9 ();
0x00020d3c lw gp, 0x20(sp) | gp = *(var_20h);
0x00020d40 move a0, v0 | a0 = v0;
| label_22:
0x00020d44 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x00020d48 lw v1, -0x7fbc(gp) | v1 = *((gp - 8175));
| /* fcn.0001d93c */
0x00020d4c addiu v0, v0, -0x26c4 | v0 += -0x26c4;
0x00020d50 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x00020d54 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00020d58 sw v1, 0x38(sp) | *(var_38h) = v1;
| /* str..conf */
0x00020d5c addiu v0, v0, -0x6f50 | v0 += -0x6f50;
0x00020d60 sw v0, 0x50(sp) | *(var_50h) = v0;
0x00020d64 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x00020d68 lw v1, -0x7fbc(gp) | v1 = *((gp - 8175));
| /* fcn.0001d0dc */
0x00020d6c addiu v0, v0, -0x2f24 | v0 += -0x2f24;
0x00020d70 sw v1, 0x48(sp) | *(var_48h) = v1;
0x00020d74 sw v0, 0x54(sp) | *(var_54h) = v0;
0x00020d78 lw v1, -0x7fbc(gp) | v1 = *((gp - 8175));
0x00020d7c lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00020d80 sw v1, 0x64(sp) | *(var_64h) = v1;
0x00020d84 addiu s6, sp, 0x78 | s6 = sp + 0x78;
0x00020d88 addiu v1, sp, 0x7c | v1 = sp + 0x7c;
| /* esilref: '..' */
0x00020d8c addiu v0, v0, -0x6f44 | v0 += -0x6f44;
0x00020d90 sw s7, 0x60(sp) | *(var_60h) = s7;
0x00020d94 addiu s3, sp, 0x84 | s3 = sp + 0x84;
0x00020d98 move a2, zero | a2 = 0;
0x00020d9c sw v0, 0x58(sp) | *(var_58h) = v0;
0x00020da0 move s7, v1 | s7 = v1;
0x00020da4 move fp, a0 | fp = a0;
0x00020da8 sw s6, 0x5c(sp) | *(var_5ch) = s6;
| label_8:
0x00020dac lw a1, 0x5c(sp) | a1 = *(var_5ch);
0x00020db0 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00020db4 lw t9, 0x4c(sp) | t9 = *(var_4ch);
0x00020db8 addiu a3, zero, 1 | a3 = 1;
0x00020dbc sw zero, 0x78(sp) | *(var_78h) = 0;
0x00020dc0 jalr t9 | t9 ();
0x00020dc4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00020dc8 beqz v0, 0x20ddc |
0x00020dcc lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00020dd0 move a0, v0 | a0 = v0;
0x00020dd4 jalr t9 | t9 ();
0x00020dd8 lw gp, 0x20(sp) | gp = *(var_20h);
| }
0x00020ddc lw s0, 0x78(sp) | s0 = *(var_78h);
0x00020de0 lw t9, -0x7bbc(gp) | t9 = sym.imp.strrchr;
0x00020de4 addiu a1, zero, 0x2f | a1 = 0x2f;
0x00020de8 move a0, s0 | a0 = s0;
0x00020dec jalr t9 | t9 ();
0x00020df0 addiu fp, fp, 1 | fp++;
0x00020df4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020df8 beqz v0, 0x21168 | goto label_62;
| }
0x00020dfc lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020e00 addiu s0, v0, 1 | s0 = v0 + 1;
0x00020e04 move a0, s0 | a0 = s0;
0x00020e08 sb zero, (v0) | *(v0) = 0;
0x00020e0c jalr t9 | t9 ();
0x00020e10 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020e14 addu a0, v0, fp | a0 = v0 + fp;
0x00020e18 move s5, v0 | s5 = v0;
0x00020e1c lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x00020e20 lw s4, 0x78(sp) | s4 = *(var_78h);
0x00020e24 jalr t9 | t9 ();
0x00020e28 move s1, v0 | s1 = v0;
0x00020e2c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020e30 beqz v0, 0x216bc | goto label_63;
| }
0x00020e34 lw t9, -0x7c38(gp) | t9 = sym.imp.memcpy;
0x00020e38 addiu a2, s5, 1 | a2 = s5 + 1;
0x00020e3c move a1, s0 | a1 = s0;
0x00020e40 move a0, v0 | a0 = v0;
0x00020e44 jalr t9 | t9 ();
0x00020e48 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020e4c lw t9, -0x7c04(gp) | t9 = sym.imp.opendir;
0x00020e50 move a0, s4 | a0 = s4;
0x00020e54 jalr t9 | t9 ();
0x00020e58 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020e5c move s5, v0 | s5 = v0;
| label_10:
0x00020e60 lw t9, -0x7c98(gp) | t9 = sym.imp.strstr;
| if (s5 == 0) {
0x00020e64 beqz s5, 0x216f8 | goto label_64;
| }
0x00020e68 lw a1, 0x50(sp) | a1 = *(var_50h);
0x00020e6c move a0, s1 | a0 = s1;
0x00020e70 jalr t9 | t9 ();
0x00020e74 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020e78 beqz v0, 0x21744 | goto label_65;
| }
0x00020e7c lw v1, 0x64(sp) | v1 = *(var_64h);
| if (s2 == 0) {
0x00020e80 beqz s2, 0x21160 | goto label_66;
| }
0x00020e84 lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
0x00020e88 sw s2, 0x10(sp) | *(var_10h) = s2;
0x00020e8c addiu a3, v1, -0x6f48 | a3 = v1 + -0x6f48;
0x00020e90 addiu a2, zero, -1 | a2 = -1;
0x00020e94 addiu a1, zero, 1 | a1 = 1;
0x00020e98 move a0, v0 | a0 = v0;
0x00020e9c jalr t9 | t9 ();
| label_9:
0x00020ea0 lw t9, 0x54(sp) | t9 = *(var_54h);
0x00020ea4 move a0, s1 | a0 = s1;
0x00020ea8 jalr t9 | t9 ();
0x00020eac lw gp, 0x20(sp) | gp = *(var_20h);
0x00020eb0 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020eb4 move a0, s1 | a0 = s1;
0x00020eb8 jalr t9 | t9 ();
0x00020ebc move fp, v0 | fp = v0;
0x00020ec0 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020ec4 lw v0, 0x48(sp) | v0 = *(var_48h);
0x00020ec8 addiu v0, v0, -0x6f34 | v0 += -0x6f34;
0x00020ecc sw v0, 0x40(sp) | *(var_40h) = v0;
0x00020ed0 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00020ed4 sw v0, 0x44(sp) | *(var_44h) = v0;
| do {
| label_5:
0x00020ed8 lw t9, -0x7bdc(gp) | t9 = sym.imp.readdir;
| label_7:
0x00020edc move a0, s5 | a0 = s5;
0x00020ee0 jalr t9 | t9 ();
0x00020ee4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020ee8 beqz v0, 0x20ffc | goto label_21;
| }
| label_6:
0x00020eec lw t9, -0x7d40(gp) | t9 = sym.imp.strcmp;
0x00020ef0 addiu s0, v0, 0xb | s0 = v0 + 0xb;
0x00020ef4 lw a1, 0x40(sp) | a1 = *(var_40h);
0x00020ef8 move a0, s0 | a0 = s0;
0x00020efc jalr t9 | t9 ();
0x00020f00 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020f04 beqz v0, 0x20ed8 |
| } while (v0 == 0);
0x00020f08 lw t9, -0x7d40(gp) | t9 = sym.imp.strcmp;
0x00020f0c lw a1, 0x58(sp) | a1 = *(var_58h);
0x00020f10 move a0, s0 | a0 = s0;
0x00020f14 jalr t9 | t9 ();
0x00020f18 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020f1c beqz v0, 0x20ed8 | goto label_5;
| }
0x00020f20 lw t9, -0x7d04(gp) | t9 = sym.imp.strncmp;
0x00020f24 move a2, fp | a2 = fp;
0x00020f28 move a1, s0 | a1 = s0;
0x00020f2c move a0, s1 | a0 = s1;
0x00020f30 jalr t9 | t9 ();
0x00020f34 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00020f38 bnez v0, 0x20ed8 | goto label_5;
| }
0x00020f3c lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
| if (s4 == 0) {
0x00020f40 beqz s4, 0x21114 | goto label_67;
| }
0x00020f44 move a0, s4 | a0 = s4;
0x00020f48 jalr t9 | t9 ();
0x00020f4c lw gp, 0x20(sp) | gp = *(var_20h);
0x00020f50 move a0, s0 | a0 = s0;
0x00020f54 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x00020f58 move s6, v0 | s6 = v0;
0x00020f5c jalr t9 | t9 ();
0x00020f60 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020f64 addu v0, s6, v0 | v0 = s6 + v0;
0x00020f68 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x00020f6c addiu a0, v0, 2 | a0 = v0 + 2;
0x00020f70 jalr t9 | t9 ();
0x00020f74 move s6, v0 | s6 = v0;
0x00020f78 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020f7c beqz v0, 0x21438 | goto label_68;
| }
0x00020f80 lw v0, 0x44(sp) | v0 = *(var_44h);
0x00020f84 lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
0x00020f88 addiu a3, v0, -0x7280 | a3 = v0 + -0x7280;
0x00020f8c addiu a2, zero, -1 | a2 = -1;
0x00020f90 addiu a1, zero, 1 | a1 = 1;
0x00020f94 move a0, s6 | a0 = s6;
0x00020f98 sw s0, 0x14(sp) | *(var_14h) = s0;
0x00020f9c sw s4, 0x10(sp) | *(var_10h) = s4;
0x00020fa0 jalr t9 | t9 ();
0x00020fa4 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020fa8 move a2, s3 | a2 = s3;
0x00020fac move a1, s6 | a1 = s6;
0x00020fb0 lw t9, -0x7b50(gp) | t9 = sym.imp.__xstat;
0x00020fb4 addiu a0, zero, 3 | a0 = 3;
0x00020fb8 jalr t9 | t9 ();
0x00020fbc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00020fc0 bnez v0, 0x20fd8 |
0x00020fc4 lw v0, 0x98(sp) | v0 = *(var_98h);
0x00020fc8 ori v1, zero, 0x8000 | v1 = 0x8000;
0x00020fcc andi v0, v0, 0xf000 | v0 &= 0xf000;
0x00020fd0 lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
| if (v0 == v1) {
0x00020fd4 beq v0, v1, 0x212a4 | goto label_69;
| }
| }
| label_13:
0x00020fd8 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00020fdc move a0, s6 | a0 = s6;
0x00020fe0 jalr t9 | t9 ();
0x00020fe4 lw gp, 0x20(sp) | gp = *(var_20h);
0x00020fe8 lw t9, -0x7bdc(gp) | t9 = sym.imp.readdir;
0x00020fec move a0, s5 | a0 = s5;
0x00020ff0 jalr t9 | t9 ();
0x00020ff4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x00020ff8 bnez v0, 0x20eec | goto label_6;
| }
| label_21:
0x00020ffc lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021000 lw a0, 0x78(sp) | a0 = *(var_78h);
0x00021004 addiu s7, s7, 4 | s7 += 4;
0x00021008 jalr t9 | t9 ();
0x0002100c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021010 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021014 move a0, s1 | a0 = s1;
0x00021018 jalr t9 | t9 ();
0x0002101c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021020 lw t9, -0x7c8c(gp) | t9 = sym.imp.closedir;
0x00021024 move a0, s5 | a0 = s5;
0x00021028 jalr t9 | t9 ();
0x0002102c lw gp, 0x20(sp) | gp = *(var_20h);
| if (s3 != s7) {
0x00021030 bne s3, s7, 0x21158 | goto label_70;
| }
0x00021034 lw s7, 0x60(sp) | s7 = *(var_60h);
| label_28:
0x00021038 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x0002103c lw a0, 0x28(sp) | a0 = *(var_28h);
0x00021040 jalr t9 | t9 ();
0x00021044 lw gp, 0x20(sp) | gp = *(var_20h);
| label_34:
0x00021048 lw v0, 0x1c4(sp) | v0 = *(arg_1c4h);
0x0002104c sltiu v0, v0, 9 | v0 = (v0 < 9) ? 1 : 0;
0x00021050 lw t9, -0x7da0(gp) | t9 = sym.map_removeGroupByPath;
| if (v0 != 0) {
0x00021054 bnez v0, 0x211cc | goto label_71;
| }
0x00021058 lw a2, 0x1c4(sp) | a2 = *(arg_1c4h);
0x0002105c lw a0, 0x34(sp) | a0 = *(var_34h);
0x00021060 addiu a1, zero, 1 | a1 = 1;
0x00021064 bal 0x8250 | sym_map_removeGroupByPath ();
0x00021068 lw gp, 0x20(sp) | gp = *(var_20h);
| label_11:
0x0002106c lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x00021070 lw v0, 0x38(sp) | v0 = *(var_38h);
0x00021074 lw t9, -0x7fb8(gp) | t9 = sym.loginfo;
0x00021078 lw a2, 0x34(sp) | a2 = *(var_34h);
| /* str.Deleted__s. */
0x0002107c addiu a1, a1, -0x6f40 | a1 += -0x6f40;
0x00021080 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021084 bal 0x19b04 | sym_loginfo ();
0x00021088 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002108c move s0, zero | s0 = 0;
| label_12:
0x00021090 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021094 lw a0, 0x68(sp) | a0 = *(var_68h);
0x00021098 jalr t9 | t9 ();
0x0002109c lw gp, 0x20(sp) | gp = *(var_20h);
0x000210a0 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000210a4 lw a0, 0x30(sp) | a0 = *(var_30h);
0x000210a8 jalr t9 | t9 ();
0x000210ac lw gp, 0x20(sp) | gp = *(var_20h);
0x000210b0 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000210b4 move a0, s7 | a0 = s7;
0x000210b8 jalr t9 | t9 ();
0x000210bc lw gp, 0x20(sp) | gp = *(var_20h);
0x000210c0 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000210c4 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x000210c8 jalr t9 | t9 ();
0x000210cc lw gp, 0x20(sp) | gp = *(var_20h);
| label_30:
0x000210d0 lw v0, 0x3c(sp) | v0 = *(var_3ch);
0x000210d4 lw a0, 0x194(sp) | a0 = *(var_194h);
0x000210d8 lw v1, (v0) | v1 = *(v0);
0x000210dc move v0, s0 | v0 = s0;
| if (a0 != v1) {
0x000210e0 bne a0, v1, 0x21a74 | goto label_72;
| }
0x000210e4 lw ra, 0x1bc(sp) | ra = *(var_1bch);
0x000210e8 lw fp, 0x1b8(sp) | fp = *(var_1b8h);
0x000210ec lw s7, 0x1b4(sp) | s7 = *(var_1b4h);
0x000210f0 lw s6, 0x1b0(sp) | s6 = *(var_1b0h);
0x000210f4 lw s5, 0x1ac(sp) | s5 = *(var_1ach);
0x000210f8 lw s4, 0x1a8(sp) | s4 = *(var_1a8h);
0x000210fc lw s3, 0x1a4(sp) | s3 = *(var_1a4h);
0x00021100 lw s2, 0x1a0(sp) | s2 = *(var_1a0h);
0x00021104 lw s1, 0x19c(sp) | s1 = *(var_19ch);
0x00021108 lw s0, 0x198(sp) | s0 = *(var_198h);
0x0002110c addiu sp, sp, 0x1c0 |
0x00021110 jr ra | return v0;
| label_67:
0x00021114 lw t9, -0x7b50(gp) | t9 = sym.imp.__xstat;
0x00021118 move a2, s3 | a2 = s3;
0x0002111c move a1, s0 | a1 = s0;
0x00021120 addiu a0, zero, 3 | a0 = 3;
0x00021124 jalr t9 | t9 ();
0x00021128 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x0002112c bnez v0, 0x20ed8 | goto label_5;
| }
0x00021130 lw v0, 0x98(sp) | v0 = *(var_98h);
0x00021134 ori v1, zero, 0x8000 | v1 = 0x8000;
0x00021138 andi v0, v0, 0xf000 | v0 &= 0xf000;
0x0002113c lw t9, -0x7bdc(gp) | t9 = sym.imp.readdir;
| if (v0 != v1) {
0x00021140 bne v0, v1, 0x20edc | goto label_7;
| }
0x00021144 lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x00021148 move a0, s0 | a0 = s0;
0x0002114c jalr t9 | t9 ();
0x00021150 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021154 b 0x20ed8 | goto label_5;
| label_70:
0x00021158 lw a2, (s7) | a2 = *(s7);
0x0002115c b 0x20dac | goto label_8;
| label_66:
0x00021160 sb zero, (v0) | *(v0) = 0;
0x00021164 b 0x20ea0 | goto label_9;
| label_62:
0x00021168 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x0002116c move a0, s0 | a0 = s0;
0x00021170 jalr t9 | t9 ();
0x00021174 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021178 addu a0, v0, fp | a0 = v0 + fp;
0x0002117c lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x00021180 move s4, v0 | s4 = v0;
0x00021184 jalr t9 | t9 ();
0x00021188 move s1, v0 | s1 = v0;
0x0002118c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00021190 beqz v0, 0x216bc | goto label_63;
| }
0x00021194 lw t9, -0x7c38(gp) | t9 = sym.imp.memcpy;
0x00021198 addiu a2, s4, 1 | a2 = s4 + 1;
0x0002119c move a1, s0 | a1 = s0;
0x000211a0 move a0, v0 | a0 = v0;
0x000211a4 jalr t9 | t9 ();
0x000211a8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000211ac lw v0, 0x48(sp) | v0 = *(var_48h);
0x000211b0 move s4, zero | s4 = 0;
0x000211b4 lw t9, -0x7c04(gp) | t9 = sym.imp.opendir;
0x000211b8 addiu a0, v0, -0x6f34 | a0 = v0 + -0x6f34;
0x000211bc jalr t9 | t9 ();
0x000211c0 move s5, v0 | s5 = v0;
0x000211c4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000211c8 b 0x20e60 | goto label_10;
| label_71:
0x000211cc lw a0, 0x34(sp) | a0 = *(var_34h);
0x000211d0 addiu a2, zero, 0xa | a2 = 0xa;
0x000211d4 addiu a1, zero, 1 | a1 = 1;
0x000211d8 bal 0x8250 | sym_map_removeGroupByPath ();
0x000211dc lw gp, 0x20(sp) | gp = *(var_20h);
0x000211e0 b 0x2106c | goto label_11;
| label_48:
0x000211e4 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x000211e8 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x000211ec lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x000211f0 move s0, s1 | s0 = s1;
0x000211f4 lw s1, 0x2c(sp) | s1 = *(var_2ch);
0x000211f8 lw t9, -0x7fb0(gp) | t9 = sym.logerr;
0x000211fc move a3, s1 | a3 = s1;
| /* str.remove_group_file */
0x00021200 addiu a2, a2, -0x6e8c | a2 += -0x6e8c;
| /* str._s__fputs___failed_to_put_line_in_file__s. */
0x00021204 addiu a1, a1, -0x6fc4 | a1 += -0x6fc4;
| /* str.dynamic.c */
0x00021208 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x0002120c sw v0, 0x38(sp) | *(var_38h) = v0;
0x00021210 bal 0x19b80 | sym_logerr ();
0x00021214 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021218 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x0002121c move a0, s0 | a0 = s0;
0x00021220 jalr t9 | t9 ();
0x00021224 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021228 move a0, s7 | a0 = s7;
0x0002122c lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021230 move s7, zero | s7 = 0;
0x00021234 jalr t9 | t9 ();
0x00021238 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002123c lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00021240 move a0, s3 | a0 = s3;
0x00021244 jalr t9 | t9 ();
0x00021248 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002124c lw t9, -0x7bfc(gp) | t9 = sym.imp.fflush;
0x00021250 move a0, s2 | a0 = s2;
0x00021254 jalr t9 | t9 ();
0x00021258 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002125c lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00021260 move a0, s2 | a0 = s2;
0x00021264 jalr t9 | t9 ();
0x00021268 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002126c lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x00021270 move a0, s1 | a0 = s1;
0x00021274 jalr t9 | t9 ();
0x00021278 lw gp, 0x20(sp) | gp = *(var_20h);
| label_27:
0x0002127c lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x00021280 lw v0, 0x38(sp) | v0 = *(var_38h);
0x00021284 lw t9, -0x7fb0(gp) | t9 = sym.logerr;
0x00021288 lw a2, 0x34(sp) | a2 = *(var_34h);
| /* str.delete_group__s_failed_ */
0x0002128c addiu a1, a1, -0x6f90 | a1 += -0x6f90;
0x00021290 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021294 bal 0x19b80 | sym_logerr ();
0x00021298 addiu s0, zero, -1 | s0 = -1;
0x0002129c lw gp, 0x20(sp) | gp = *(var_20h);
0x000212a0 b 0x21090 | goto label_12;
| label_69:
0x000212a4 move a0, s6 | a0 = s6;
0x000212a8 jalr t9 | t9 ();
0x000212ac lw gp, 0x20(sp) | gp = *(var_20h);
0x000212b0 b 0x20fd8 | goto label_13;
| label_47:
0x000212b4 lw v0, 0x44(sp) | v0 = *(var_44h);
0x000212b8 sll a2, v0, 2 | a2 = v0 << 2;
0x000212bc lw v0, -0x7fac(gp) | v0 = *(gp);
0x000212c0 addu a2, s0, a2 | a2 = s0 + a2;
0x000212c4 sw a2, 0x60(sp) | *(var_60h) = a2;
0x000212c8 lw v0, (v0) | v0 = *(v0);
0x000212cc lw a1, (a2) | a1 = *(a2);
| if (v0 == 0) {
0x000212d0 beqz v0, 0x213ac | goto label_73;
| }
0x000212d4 lw t9, -0x7d40(gp) | t9 = sym.imp.strcmp;
0x000212d8 lw a0, 0x48(sp) | a0 = *(var_48h);
0x000212dc jalr t9 | t9 ();
0x000212e0 sw zero, 0x74(sp) | *(var_74h) = 0;
| if (v0 == 0) {
0x000212e4 bnel v0, zero, 0x213c4 | goto label_74;
| }
0x000212e8 lw a2, 0x60(sp) | a2 = *(var_60h);
| do {
0x000212ec lw v1, 0x44(sp) | v1 = *(var_44h);
0x000212f0 lw v0, 4(a2) | v0 = *((a2 + 1));
0x000212f4 addiu v1, v1, 1 | v1++;
0x000212f8 sw v1, 0x44(sp) | *(var_44h) = v1;
| if (v0 == 0) {
0x000212fc beqz v0, 0x217a4 | goto label_75;
| }
0x00021300 addiu v0, zero, -1 | v0 = -1;
0x00021304 sw v0, 0x70(sp) | *(var_70h) = v0;
0x00021308 sw zero, 0x74(sp) | *(var_74h) = 0;
0x0002130c b 0x208d4 | goto label_14;
| label_44:
0x00021310 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x00021314 addiu a3, zero, 1 | a3 = 1;
0x00021318 move a2, zero | a2 = 0;
0x0002131c addiu a1, sp, 0x78 | a1 = sp + 0x78;
| /* fcn.0001d93c */
0x00021320 addiu t9, v0, -0x26c4 | t9 = v0 + -0x26c4;
0x00021324 move a0, s7 | a0 = s7;
0x00021328 bal 0x1d93c | fcn_0001d93c ();
0x0002132c move s3, v0 | s3 = v0;
0x00021330 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00021334 beqz v0, 0x21468 | goto label_45;
| }
0x00021338 lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x0002133c move a0, s7 | a0 = s7;
0x00021340 jalr t9 | t9 ();
0x00021344 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021348 lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x0002134c addiu a0, v0, 0xf | a0 = v0 + 0xf;
0x00021350 jalr t9 | t9 ();
0x00021354 sw v0, 0x58(sp) | *(var_58h) = v0;
0x00021358 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0002135c beqz v0, 0x21a00 | goto label_76;
| }
0x00021360 lw a3, -0x7fbc(gp) | a3 = *((gp - 8175));
0x00021364 lw s0, 0x58(sp) | s0 = *(var_58h);
0x00021368 lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x0002136c lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
| /* str._s__s__s */
0x00021370 addiu a3, a3, -0x72c4 | a3 += -0x72c4;
0x00021374 addiu a2, zero, -1 | a2 = -1;
0x00021378 addiu a1, zero, 1 | a1 = 1;
0x0002137c move a0, s0 | a0 = s0;
0x00021380 sw s4, 0x18(sp) | *(var_18h) = s4;
0x00021384 sw s7, 0x14(sp) | *(var_14h) = s7;
0x00021388 sw v0, 0x10(sp) | *(var_10h) = v0;
0x0002138c jalr t9 | t9 ();
0x00021390 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021394 lw t9, -0x7fc4(gp) | t9 = *(gp);
| /* fcn.0001d0dc */
0x00021398 addiu t9, t9, -0x2f24 | t9 += -0x2f24;
0x0002139c move a0, s0 | a0 = s0;
0x000213a0 bal 0x1d0dc | fcn_0001d0dc ();
0x000213a4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000213a8 b 0x2081c | goto label_15;
| label_73:
0x000213ac lw t9, -0x7c78(gp) | t9 = sym.imp.strcasecmp;
0x000213b0 lw a0, 0x48(sp) | a0 = *(var_48h);
0x000213b4 jalr t9 | t9 ();
0x000213b8 lw a2, 0x60(sp) | a2 = *(var_60h);
0x000213bc beqz v0, 0x212ec |
| } while (v0 == 0);
0x000213c0 sw zero, 0x74(sp) | *(var_74h) = 0;
| label_74:
0x000213c4 sw zero, 0x70(sp) | *(var_70h) = 0;
0x000213c8 b 0x208d4 | goto label_14;
| label_57:
0x000213cc addiu s6, zero, 0x2e | s6 = 0x2e;
| label_58:
0x000213d0 lw t9, 0x28(sp) | t9 = *(var_28h);
| label_17:
0x000213d4 move a1, s0 | a1 = s0;
| label_19:
0x000213d8 move a2, fp | a2 = fp;
0x000213dc move a0, s2 | a0 = s2;
0x000213e0 jalr t9 | t9 ();
0x000213e4 move s0, v0 | s0 = v0;
0x000213e8 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000213ec beqz v0, 0x20b54 | goto label_16;
| }
0x000213f0 lb v0, (s0) | v0 = *(s0);
0x000213f4 addiu v1, zero, 0x5b | v1 = 0x5b;
0x000213f8 lw t9, 0x28(sp) | t9 = *(var_28h);
| if (v0 != v1) {
0x000213fc bne v0, v1, 0x213d4 | goto label_17;
| }
0x00021400 lw t9, -0x7c98(gp) | t9 = sym.imp.strstr;
0x00021404 move a1, s1 | a1 = s1;
0x00021408 move a0, s0 | a0 = s0;
0x0002140c jalr t9 | t9 ();
0x00021410 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00021414 beqz v0, 0x20ba4 | goto label_18;
| }
0x00021418 addu v0, v0, s4 | v0 += s4;
0x0002141c lb v0, (v0) | v0 = *(v0);
0x00021420 lw t9, 0x28(sp) | t9 = *(var_28h);
| if (v0 == s3) {
0x00021424 beq v0, s3, 0x213d4 | goto label_17;
| }
0x00021428 move a1, s0 | a1 = s0;
| if (v0 == s6) {
0x0002142c beq v0, s6, 0x213d8 | goto label_19;
| }
0x00021430 lw t9, -0x7afc(gp) | t9 = sym.imp.fputs;
0x00021434 b 0x20ba8 | goto label_20;
| label_68:
0x00021438 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x0002143c lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021440 lw v0, 0x38(sp) | v0 = *(var_38h);
0x00021444 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.remove_dependant_files */
0x00021448 addiu a2, a2, -0x6eb8 | a2 += -0x6eb8;
| /* str.Memory_allocation_failed__in_function__s_. */
0x0002144c addiu a1, a1, 0x6404 | a1 += 0x6404;
0x00021450 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021454 bal 0x199c0 | sym_fatald ();
0x00021458 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002145c b 0x20ffc | goto label_21;
| label_60:
0x00021460 move a0, zero | a0 = 0;
0x00021464 b 0x20d44 | goto label_22;
| label_45:
0x00021468 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x0002146c move a0, s7 | a0 = s7;
0x00021470 jalr t9 | t9 ();
0x00021474 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021478 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x0002147c lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021480 move s7, zero | s7 = 0;
0x00021484 jalr t9 | t9 ();
0x00021488 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002148c lw a0, 0x78(sp) | a0 = *(var_78h);
0x00021490 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021494 sw zero, 0x2c(sp) | *(var_2ch) = 0;
0x00021498 jalr t9 | t9 ();
0x0002149c lw gp, 0x20(sp) | gp = *(var_20h);
0x000214a0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x000214a4 move a0, s2 | a0 = s2;
0x000214a8 jalr t9 | t9 ();
0x000214ac lw s1, 0x68(sp) | s1 = *(var_68h);
0x000214b0 lw gp, 0x20(sp) | gp = *(var_20h);
0x000214b4 lw a0, (s1) | a0 = *(s1);
| label_25:
0x000214b8 addiu v0, zero, 1 | v0 = 1;
0x000214bc sw zero, 0x7c(sp) | *(var_7ch) = 0;
0x000214c0 sw v0, 0x80(sp) | *(var_80h) = v0;
| if (a0 != 0) {
0x000214c4 bnez a0, 0x20c94 | goto label_23;
| }
0x000214c8 move s2, zero | s2 = 0;
0x000214cc b 0x20cbc | goto label_24;
| label_56:
0x000214d0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x000214d4 move a0, s2 | a0 = s2;
0x000214d8 jalr t9 | t9 ();
0x000214dc lw gp, 0x20(sp) | gp = *(var_20h);
0x000214e0 lw t9, -0x7bfc(gp) | t9 = sym.imp.fflush;
0x000214e4 move a0, s5 | a0 = s5;
0x000214e8 jalr t9 | t9 ();
0x000214ec lw gp, 0x20(sp) | gp = *(var_20h);
0x000214f0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x000214f4 move a0, s5 | a0 = s5;
0x000214f8 jalr t9 | t9 ();
0x000214fc lw gp, 0x20(sp) | gp = *(var_20h);
0x00021500 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021504 move a0, s1 | a0 = s1;
0x00021508 jalr t9 | t9 ();
0x0002150c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021510 lw t9, -0x7d34(gp) | t9 = sym.imp.strdup;
0x00021514 lw a0, 0x34(sp) | a0 = *(var_34h);
0x00021518 jalr t9 | t9 ();
0x0002151c move s0, v0 | s0 = v0;
0x00021520 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x00021524 beqz v0, 0x21a80 | goto label_77;
| }
0x00021528 lw t9, -0x7bbc(gp) | t9 = sym.imp.strrchr;
0x0002152c addiu a1, zero, 0x2e | a1 = 0x2e;
0x00021530 move a0, s0 | a0 = s0;
0x00021534 jalr t9 | t9 ();
0x00021538 lw t9, 0x50(sp) | t9 = *(var_50h);
0x0002153c sb zero, (v0) | *(v0) = 0;
0x00021540 move a0, s0 | a0 = s0;
0x00021544 jalr t9 | t9 ();
0x00021548 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002154c beqz v0, 0x21690 |
| while (1) {
0x00021550 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021554 move a0, s0 | a0 = s0;
0x00021558 jalr t9 | t9 ();
0x0002155c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021560 lw a1, 0x58(sp) | a1 = *(var_58h);
0x00021564 lw t9, -0x7f18(gp) | t9 = sym.move_file;
0x00021568 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x0002156c bal 0x22d4c | sym_move_file ();
0x00021570 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021574 lw a1, 0x38(sp) | a1 = *(var_38h);
0x00021578 lw t9, -0x7f18(gp) | t9 = sym.move_file;
0x0002157c move a0, s7 | a0 = s7;
0x00021580 bal 0x22d4c | sym_move_file ();
0x00021584 lw s1, 0x68(sp) | s1 = *(var_68h);
0x00021588 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002158c lw a0, (s1) | a0 = *(s1);
0x00021590 b 0x214b8 | goto label_25;
| label_54:
0x00021594 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x00021598 addiu a3, zero, 1 | a3 = 1;
0x0002159c addiu a2, zero, 1 | a2 = 1;
0x000215a0 addiu a1, sp, 0x78 | a1 = sp + 0x78;
| /* fcn.0001d93c */
0x000215a4 addiu t9, v0, -0x26c4 | t9 = v0 + -0x26c4;
0x000215a8 move a0, s4 | a0 = s4;
0x000215ac bal 0x1d93c | fcn_0001d93c ();
0x000215b0 move s2, v0 | s2 = v0;
0x000215b4 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x000215b8 beqz v0, 0x21630 |
0x000215bc lw t9, -0x7c44(gp) | t9 = sym.imp.strlen;
0x000215c0 move a0, s1 | a0 = s1;
0x000215c4 jalr t9 | t9 ();
0x000215c8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000215cc lw t9, -0x7cac(gp) | t9 = sym.imp.malloc;
0x000215d0 addiu a0, v0, 0xf | a0 = v0 + 0xf;
0x000215d4 jalr t9 | t9 ();
0x000215d8 sw v0, 0x38(sp) | *(var_38h) = v0;
0x000215dc lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x000215e0 beqz v0, 0x21aa8 | goto label_78;
| }
0x000215e4 lw a3, -0x7fbc(gp) | a3 = *((gp - 8175));
0x000215e8 lw fp, 0x38(sp) | fp = *(var_38h);
0x000215ec lw v0, 0x4c(sp) | v0 = *(var_4ch);
0x000215f0 lw t9, -0x7d00(gp) | t9 = sym.imp.__sprintf_chk;
| /* str._s__s__s */
0x000215f4 addiu a3, a3, -0x72c4 | a3 += -0x72c4;
0x000215f8 addiu a2, zero, -1 | a2 = -1;
0x000215fc addiu a1, zero, 1 | a1 = 1;
0x00021600 move a0, fp | a0 = fp;
0x00021604 sw s6, 0x18(sp) | *(var_18h) = s6;
0x00021608 sw s4, 0x14(sp) | *(var_14h) = s4;
0x0002160c sw v0, 0x10(sp) | *(var_10h) = v0;
0x00021610 jalr t9 | t9 ();
0x00021614 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021618 lw t9, -0x7fc4(gp) | t9 = *(gp);
| /* fcn.0001d0dc */
0x0002161c addiu t9, t9, -0x2f24 | t9 += -0x2f24;
0x00021620 move a0, fp | a0 = fp;
0x00021624 bal 0x1d0dc | fcn_0001d0dc ();
0x00021628 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002162c b 0x20b10 | goto label_26;
| }
| label_55:
0x00021630 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00021634 move a0, s5 | a0 = s5;
0x00021638 jalr t9 | t9 ();
0x0002163c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021640 move a0, s7 | a0 = s7;
0x00021644 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021648 move s7, zero | s7 = 0;
0x0002164c jalr t9 | t9 ();
0x00021650 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021654 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021658 move a0, s1 | a0 = s1;
0x0002165c jalr t9 | t9 ();
0x00021660 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021664 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021668 lw a0, 0x78(sp) | a0 = *(var_78h);
0x0002166c jalr t9 | t9 ();
0x00021670 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021674 lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x00021678 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x0002167c jalr t9 | t9 ();
0x00021680 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021684 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00021688 sw v0, 0x38(sp) | *(var_38h) = v0;
0x0002168c b 0x2127c | goto label_27;
0x00021690 lw t9, -0x7fc4(gp) | t9 = *(gp);
0x00021694 lw v0, 0x38(sp) | v0 = *(var_38h);
0x00021698 lw a3, 0x58(sp) | a3 = *(var_58h);
0x0002169c lw a2, 0x40(sp) | a2 = *(var_40h);
0x000216a0 lw a1, 0x5c(sp) | a1 = *(var_5ch);
0x000216a4 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* fcn.0001de10 */
0x000216a8 addiu t9, t9, -0x21f0 | t9 += -0x21f0;
0x000216ac move a0, s0 | a0 = s0;
0x000216b0 bal 0x1de10 | fcn_0001de10 ();
0x000216b4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000216b8 b 0x21550 |
| }
| label_63:
0x000216bc lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x000216c0 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x000216c4 lw v0, 0x38(sp) | v0 = *(var_38h);
0x000216c8 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
0x000216cc addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
| /* str.remove_dependant_files */
0x000216d0 addiu a2, a2, -0x6eb8 | a2 += -0x6eb8;
| /* str.Memory_allocation_failed__in_function__s_. */
0x000216d4 addiu a1, a1, 0x6404 | a1 += 0x6404;
0x000216d8 lw s7, 0x60(sp) | s7 = *(var_60h);
0x000216dc bal 0x199c0 | sym_fatald ();
0x000216e0 lw gp, 0x20(sp) | gp = *(var_20h);
0x000216e4 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000216e8 lw a0, 0x78(sp) | a0 = *(var_78h);
0x000216ec jalr t9 | t9 ();
0x000216f0 lw gp, 0x20(sp) | gp = *(var_20h);
0x000216f4 b 0x21038 | goto label_28;
| label_64:
0x000216f8 lw s7, 0x60(sp) | s7 = *(var_60h);
| if (s4 == 0) {
0x000216fc beqz s4, 0x2176c | goto label_79;
| }
| label_31:
0x00021700 lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x00021704 lw v0, 0x38(sp) | v0 = *(var_38h);
0x00021708 lw t9, -0x7fb0(gp) | t9 = sym.logerr;
0x0002170c move a2, s4 | a2 = s4;
| /* str.Opening_directory__s_failed:__m */
0x00021710 addiu a1, a1, -0x6f74 | a1 += -0x6f74;
0x00021714 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021718 bal 0x19b80 | sym_logerr ();
0x0002171c lw gp, 0x20(sp) | gp = *(var_20h);
| do {
0x00021720 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021724 lw a0, 0x78(sp) | a0 = *(var_78h);
0x00021728 jalr t9 | t9 ();
0x0002172c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021730 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021734 move a0, s1 | a0 = s1;
0x00021738 jalr t9 | t9 ();
0x0002173c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021740 b 0x21038 | goto label_28;
| label_65:
0x00021744 lw t9, -0x7c8c(gp) | t9 = sym.imp.closedir;
0x00021748 move a0, s5 | a0 = s5;
0x0002174c lw s7, 0x60(sp) | s7 = *(var_60h);
0x00021750 jalr t9 | t9 ();
0x00021754 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021758 b 0x21720 |
| } while (1);
| label_53:
0x0002175c move s3, zero | s3 = 0;
0x00021760 b 0x20ac8 | goto label_29;
| label_36:
0x00021764 addiu s0, zero, -1 | s0 = -1;
0x00021768 b 0x210d0 | goto label_30;
| label_79:
0x0002176c lw s4, -0x7fbc(gp) | s4 = *((gp - 8175));
| /* esilref: '(' */
0x00021770 addiu s4, s4, -0x6f34 | s4 += -0x6f34;
0x00021774 b 0x21700 | goto label_31;
| label_37:
0x00021778 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x0002177c lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021780 lw a0, -0x7fbc(gp) | a0 = *((gp - 8175));
0x00021784 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.delete_group */
0x00021788 addiu a2, a2, -0x6e78 | a2 += -0x6e78;
| /* str.Memory_allocation_failed__in_function__s_. */
0x0002178c addiu a1, a1, 0x6404 | a1 += 0x6404;
| /* str.dynamic.c */
0x00021790 addiu a0, a0, -0x741c | a0 += -0x741c;
0x00021794 bal 0x199c0 | sym_fatald ();
0x00021798 addiu s0, zero, -1 | s0 = -1;
0x0002179c lw gp, 0x20(sp) | gp = *(var_20h);
0x000217a0 b 0x210d0 | goto label_30;
| label_75:
0x000217a4 addiu v0, sp, 0x70 | v0 = sp + 0x70;
0x000217a8 addiu s4, sp, 0x74 | s4 = sp + 0x74;
0x000217ac lw t9, 0x38(sp) | t9 = *(var_38h);
0x000217b0 sw v0, 0x48(sp) | *(var_48h) = v0;
0x000217b4 move a2, s4 | a2 = s4;
0x000217b8 move a1, v0 | a1 = v0;
0x000217bc move a0, s1 | a0 = s1;
0x000217c0 sw zero, 0x74(sp) | *(var_74h) = 0;
0x000217c4 sw zero, 0x70(sp) | *(var_70h) = 0;
0x000217c8 jalr t9 | t9 ();
0x000217cc lw t9, 0x28(sp) | t9 = *(var_28h);
| do {
0x000217d0 move a1, s1 | a1 = s1;
| label_32:
0x000217d4 move a2, s5 | a2 = s5;
0x000217d8 move a0, s3 | a0 = s3;
0x000217dc jalr t9 | t9 ();
0x000217e0 lw a1, 0x48(sp) | a1 = *(var_48h);
0x000217e4 lw t9, 0x38(sp) | t9 = *(var_38h);
0x000217e8 move a0, v0 | a0 = v0;
0x000217ec move a2, s4 | a2 = s4;
0x000217f0 move s1, v0 | s1 = v0;
0x000217f4 jalr t9 | t9 ();
0x000217f8 lw v0, 0x74(sp) | v0 = *(var_74h);
0x000217fc lw t9, 0x28(sp) | t9 = *(var_28h);
0x00021800 beqz v0, 0x217d0 |
| } while (v0 == 0);
0x00021804 lw v1, 0x70(sp) | v1 = *(var_70h);
0x00021808 move a1, s1 | a1 = s1;
| if (v0 != v1) {
0x0002180c bne v0, v1, 0x217d4 | goto label_32;
| }
0x00021810 addiu s4, zero, 1 | s4 = 1;
0x00021814 b 0x2090c | goto label_33;
| label_41:
0x00021818 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x0002181c lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00021820 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021824 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.dynamic.c */
0x00021828 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x0002182c sw v0, 0x38(sp) | *(var_38h) = v0;
| /* str.remove_group_file */
0x00021830 addiu a2, a2, -0x6e8c | a2 += -0x6e8c;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021834 addiu a1, a1, 0x6404 | a1 += 0x6404;
0x00021838 bal 0x199c0 | sym_fatald ();
0x0002183c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021840 move a0, s7 | a0 = s7;
0x00021844 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021848 move s7, zero | s7 = 0;
0x0002184c jalr t9 | t9 ();
0x00021850 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021854 b 0x2127c | goto label_27;
| label_40:
0x00021858 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x0002185c lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00021860 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021864 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
0x00021868 sw v0, 0x38(sp) | *(var_38h) = v0;
| /* str.remove_group_file */
0x0002186c addiu a2, a2, -0x6e8c | a2 += -0x6e8c;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021870 addiu a1, a1, 0x6404 | a1 += 0x6404;
| /* str.dynamic.c */
0x00021874 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021878 bal 0x199c0 | sym_fatald ();
0x0002187c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021880 sw zero, 0x2c(sp) | *(var_2ch) = 0;
0x00021884 b 0x2127c | goto label_27;
| label_38:
0x00021888 lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x0002188c lw a0, -0x7fbc(gp) | a0 = *((gp - 8175));
0x00021890 lw t9, -0x7fb8(gp) | t9 = sym.loginfo;
| /* str.Deleteing_root_is_FORBIDDEN_ */
0x00021894 addiu a1, a1, -0x6fe4 | a1 += -0x6fe4;
| /* str.dynamic.c */
0x00021898 addiu a0, a0, -0x741c | a0 += -0x741c;
0x0002189c bal 0x19b04 | sym_loginfo ();
0x000218a0 lw gp, 0x20(sp) | gp = *(var_20h);
| do {
0x000218a4 lw a0, 0x30(sp) | a0 = *(var_30h);
0x000218a8 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000218ac addiu s0, zero, -1 | s0 = -1;
0x000218b0 jalr t9 | t9 ();
0x000218b4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000218b8 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000218bc lw a0, 0x68(sp) | a0 = *(var_68h);
0x000218c0 jalr t9 | t9 ();
0x000218c4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000218c8 b 0x210d0 | goto label_30;
| label_50:
0x000218cc lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x000218d0 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x000218d4 move s7, zero | s7 = 0;
0x000218d8 jalr t9 | t9 ();
0x000218dc lw gp, 0x20(sp) | gp = *(var_20h);
0x000218e0 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x000218e4 sw v0, 0x38(sp) | *(var_38h) = v0;
0x000218e8 b 0x2127c | goto label_27;
| label_59:
0x000218ec lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x000218f0 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x000218f4 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x000218f8 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
0x000218fc sw v0, 0x38(sp) | *(var_38h) = v0;
| /* str.remove_dependant_files */
0x00021900 addiu a2, a2, -0x6eb8 | a2 += -0x6eb8;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021904 addiu a1, a1, 0x6404 | a1 += 0x6404;
| /* str.dynamic.c */
0x00021908 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x0002190c bal 0x199c0 | sym_fatald ();
0x00021910 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021914 b 0x21048 | goto label_34;
| label_42:
0x00021918 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x0002191c move a0, s7 | a0 = s7;
0x00021920 jalr t9 | t9 ();
0x00021924 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021928 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x0002192c lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021930 move s7, zero | s7 = 0;
0x00021934 jalr t9 | t9 ();
0x00021938 lw gp, 0x20(sp) | gp = *(var_20h);
0x0002193c sw zero, 0x2c(sp) | *(var_2ch) = 0;
0x00021940 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00021944 sw v0, 0x38(sp) | *(var_38h) = v0;
0x00021948 b 0x2127c | goto label_27;
| label_51:
0x0002194c lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00021950 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00021954 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021958 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.dynamic.c */
0x0002195c addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021960 sw v0, 0x38(sp) | *(var_38h) = v0;
| /* str.remove_param_file */
0x00021964 addiu a2, a2, -0x6ea0 | a2 += -0x6ea0;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021968 addiu a1, a1, 0x6404 | a1 += 0x6404;
0x0002196c bal 0x199c0 | sym_fatald ();
0x00021970 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021974 move a0, s1 | a0 = s1;
0x00021978 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
| label_35:
0x0002197c jalr t9 | t9 ();
0x00021980 nop |
0x00021984 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021988 lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x0002198c lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x00021990 jalr t9 | t9 ();
0x00021994 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021998 b 0x2127c | goto label_27;
| label_52:
0x0002199c lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x000219a0 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x000219a4 lw a1, -0x7fbc(gp) | a1 = *((gp - 8175));
0x000219a8 lw t9, -0x7fb0(gp) | t9 = sym.logerr;
0x000219ac move a3, s7 | a3 = s7;
| /* str.dynamic.c */
0x000219b0 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x000219b4 sw v0, 0x38(sp) | *(var_38h) = v0;
| /* str.remove_param_file */
0x000219b8 addiu a2, a2, -0x6ea0 | a2 += -0x6ea0;
| /* str._s__fopen___failed_on__s:__m */
0x000219bc addiu a1, a1, -0x73ec | a1 += -0x73ec;
0x000219c0 bal 0x19b80 | sym_logerr ();
0x000219c4 lw gp, 0x20(sp) | gp = *(var_20h);
0x000219c8 move a0, s7 | a0 = s7;
0x000219cc lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000219d0 move s7, zero | s7 = 0;
0x000219d4 jalr t9 | t9 ();
0x000219d8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000219dc lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x000219e0 move a0, s1 | a0 = s1;
0x000219e4 jalr t9 | t9 ();
0x000219e8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000219ec lw t9, -0x7ca8(gp) | t9 = sym.imp.remove;
0x000219f0 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x000219f4 jalr t9 | t9 ();
0x000219f8 lw gp, 0x20(sp) | gp = *(var_20h);
0x000219fc b 0x2127c | goto label_27;
| label_76:
0x00021a00 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00021a04 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00021a08 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021a0c lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.dynamic.c */
0x00021a10 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021a14 sw v0, 0x38(sp) | *(var_38h) = v0;
| /* str.remove_group_file */
0x00021a18 addiu a2, a2, -0x6e8c | a2 += -0x6e8c;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021a1c addiu a1, a1, 0x6404 | a1 += 0x6404;
0x00021a20 bal 0x199c0 | sym_fatald ();
0x00021a24 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021a28 move a0, s7 | a0 = s7;
0x00021a2c lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021a30 move s7, zero | s7 = 0;
0x00021a34 jalr t9 | t9 ();
0x00021a38 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021a3c lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021a40 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x00021a44 jalr t9 | t9 ();
0x00021a48 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021a4c lw a0, 0x78(sp) | a0 = *(var_78h);
0x00021a50 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021a54 sw zero, 0x2c(sp) | *(var_2ch) = 0;
0x00021a58 jalr t9 | t9 ();
0x00021a5c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021a60 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00021a64 move a0, s2 | a0 = s2;
0x00021a68 jalr t9 | t9 ();
0x00021a6c lw gp, 0x20(sp) | gp = *(var_20h);
0x00021a70 b 0x2127c | goto label_27;
| label_72:
0x00021a74 lw t9, -0x7cb4(gp) | t9 = sym.imp.__stack_chk_fail;
0x00021a78 jalr t9 | t9 ();
0x00021a7c nop |
| label_77:
0x00021a80 lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00021a84 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021a88 lw a0, -0x7fbc(gp) | a0 = *((gp - 8175));
0x00021a8c lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.delete_group */
0x00021a90 addiu a2, a2, -0x6e78 | a2 += -0x6e78;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021a94 addiu a1, a1, 0x6404 | a1 += 0x6404;
| /* str.dynamic.c */
0x00021a98 addiu a0, a0, -0x741c | a0 += -0x741c;
0x00021a9c bal 0x199c0 | sym_fatald ();
0x00021aa0 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021aa4 b 0x218a4 |
| } while (1);
| label_78:
0x00021aa8 lw v0, -0x7fbc(gp) | v0 = *((gp - 8175));
0x00021aac lw a2, -0x7fbc(gp) | a2 = *((gp - 8175));
0x00021ab0 lw a1, -0x7fc4(gp) | a1 = *(gp);
0x00021ab4 lw t9, -0x7fc8(gp) | t9 = sym.fatald;
| /* str.remove_param_file */
0x00021ab8 addiu a2, a2, -0x6ea0 | a2 += -0x6ea0;
| /* str.Memory_allocation_failed__in_function__s_. */
0x00021abc addiu a1, a1, 0x6404 | a1 += 0x6404;
| /* str.dynamic.c */
0x00021ac0 addiu a0, v0, -0x741c | a0 = v0 + -0x741c;
0x00021ac4 sw v0, 0x38(sp) | *(var_38h) = v0;
0x00021ac8 bal 0x199c0 | sym_fatald ();
0x00021acc lw gp, 0x20(sp) | gp = *(var_20h);
0x00021ad0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00021ad4 move a0, s5 | a0 = s5;
0x00021ad8 jalr t9 | t9 ();
0x00021adc lw gp, 0x20(sp) | gp = *(var_20h);
0x00021ae0 lw t9, -0x7c2c(gp) | t9 = sym.imp.fclose;
0x00021ae4 move a0, s2 | a0 = s2;
0x00021ae8 jalr t9 | t9 ();
0x00021aec lw gp, 0x20(sp) | gp = *(var_20h);
0x00021af0 move a0, s7 | a0 = s7;
0x00021af4 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021af8 move s7, zero | s7 = 0;
0x00021afc jalr t9 | t9 ();
0x00021b00 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021b04 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021b08 move a0, s1 | a0 = s1;
0x00021b0c jalr t9 | t9 ();
0x00021b10 lw gp, 0x20(sp) | gp = *(var_20h);
0x00021b14 lw a0, 0x78(sp) | a0 = *(var_78h);
0x00021b18 lw t9, -0x7bec(gp) | t9 = sym.imp.free;
0x00021b1c b 0x2197c | goto label_35;
| }
[*] Function strcat used 6 times parhand