[*] Binary protection state of metadatad
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of metadatad
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/metadatad @ 0x7a78 */
| #include <stdint.h>
|
; (fcn) fcn.00007a78 () | void fcn_00007a78 () {
| label_1:
0x00007a78 lui gp, 2 |
0x00007a7c addiu gp, gp, -0x3a68 |
0x00007a80 addu gp, gp, t9 | gp += t9;
0x00007a84 addiu sp, sp, -0x48 |
0x00007a88 lw t9, -0x7e08(gp) | t9 = sym.imp.strlen;
0x00007a8c sw s1, 0x34(sp) | *(var_34h) = s1;
0x00007a90 lw s1, -0x7e34(gp) | s1 = *((gp - 8077));
0x00007a94 sw gp, 0x18(sp) | *(var_18h) = gp;
0x00007a98 sw ra, 0x44(sp) | *(var_44h) = ra;
0x00007a9c sw s4, 0x40(sp) | *(var_40h) = s4;
0x00007aa0 sw s3, 0x3c(sp) | *(var_3ch) = s3;
0x00007aa4 sw s2, 0x38(sp) | *(var_38h) = s2;
0x00007aa8 sw s0, 0x30(sp) | *(var_30h) = s0;
0x00007aac lw v0, (s1) | v0 = *(s1);
0x00007ab0 move s3, a0 | s3 = a0;
0x00007ab4 sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x00007ab8 move a0, a1 | a0 = a1;
0x00007abc sw zero, 0x28(sp) | *(var_28h) = 0;
0x00007ac0 move s0, a1 | s0 = a1;
0x00007ac4 jalr t9 | t9 ();
0x00007ac8 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007acc addiu s4, sp, 0x28 | s4 = sp + 0x28;
0x00007ad0 sw s4, 0x10(sp) | *(var_10h) = s4;
0x00007ad4 lw t9, -0x7dc4(gp) | t9 = sym.imp.g_io_channel_write_chars;
0x00007ad8 addiu a3, sp, 0x24 | a3 = sp + 0x24;
0x00007adc addiu a2, v0, 1 | a2 = v0 + 1;
0x00007ae0 move a1, s0 | a1 = s0;
0x00007ae4 move a0, s3 | a0 = s3;
0x00007ae8 jalr t9 | t9 ();
0x00007aec move s2, v0 | s2 = v0;
0x00007af0 addiu v0, zero, 1 | v0 = 1;
0x00007af4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s2 != v0) {
0x00007af8 bne s2, v0, 0x7b8c | goto label_9;
| }
0x00007afc lw t9, -0x7e08(gp) | t9 = sym.imp.strlen;
0x00007b00 move a0, s0 | a0 = s0;
0x00007b04 jalr t9 | t9 ();
0x00007b08 lw v1, 0x24(sp) | v1 = *(var_24h);
0x00007b0c addiu v0, v0, 1 | v0++;
0x00007b10 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != v1) {
0x00007b14 beq v0, v1, 0x7b44 |
0x00007b18 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00007b1c lw a3, -0x7fdc(gp) | a3 = *((gp - 8183));
0x00007b20 lw a1, -0x7fdc(gp) | a1 = *((gp - 8183));
0x00007b24 addiu v0, v0, -0x51c8 | v0 += -0x51c8;
0x00007b28 lw t9, -0x7da8(gp) | t9 = sym.imp.g_assertion_message_expr;
0x00007b2c sw v0, 0x10(sp) | *(var_10h) = v0;
0x00007b30 addiu a3, a3, -0x4d90 | a3 += -0x4d90;
0x00007b34 addiu a2, zero, 0x144 | a2 = 0x144;
0x00007b38 addiu a1, a1, -0x51ec | a1 += -0x51ec;
0x00007b3c move a0, zero | a0 = 0;
0x00007b40 jalr t9 | t9 ();
| }
0x00007b44 lw t9, -0x7ee0(gp) | t9 = sym.imp.g_io_channel_flush;
0x00007b48 move a1, s4 | a1 = s4;
0x00007b4c move a0, s3 | a0 = s3;
0x00007b50 jalr t9 | t9 ();
0x00007b54 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != s2) {
0x00007b58 bne v0, s2, 0x7ba4 | goto label_10;
| }
0x00007b5c addiu v0, zero, 1 | v0 = 1;
| do {
| label_0:
0x00007b60 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x00007b64 lw v1, (s1) | v1 = *(s1);
0x00007b68 lw ra, 0x44(sp) | ra = *(var_44h);
| if (a0 != v1) {
0x00007b6c bne a0, v1, 0x7bbc | goto label_11;
| }
0x00007b70 lw s4, 0x40(sp) | s4 = *(var_40h);
0x00007b74 lw s3, 0x3c(sp) | s3 = *(var_3ch);
0x00007b78 lw s2, 0x38(sp) | s2 = *(var_38h);
0x00007b7c lw s1, 0x34(sp) | s1 = *(var_34h);
0x00007b80 lw s0, 0x30(sp) | s0 = *(var_30h);
0x00007b84 addiu sp, sp, 0x48 |
0x00007b88 jr ra | return v0;
| label_9:
0x00007b8c lw t9, -0x7efc(gp) | t9 = sym.imp.g_error_free;
0x00007b90 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00007b94 jalr t9 | t9 ();
0x00007b98 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007b9c move v0, zero | v0 = 0;
0x00007ba0 b 0x7b60 |
| } while (1);
| label_10:
0x00007ba4 lw t9, -0x7efc(gp) | t9 = sym.imp.g_error_free;
0x00007ba8 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00007bac jalr t9 | t9 ();
0x00007bb0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007bb4 move v0, zero | v0 = 0;
0x00007bb8 b 0x7b60 | goto label_0;
| label_11:
0x00007bbc lw t9, -0x7e98(gp) | t9 = sym.imp.__stack_chk_fail;
0x00007bc0 jalr t9 | t9 ();
0x00007bc4 nop |
0x00007bc8 lui gp, 2 |
0x00007bcc addiu gp, gp, -0x3bb8 |
0x00007bd0 addu gp, gp, t9 | gp += t9;
0x00007bd4 addiu sp, sp, -0x70 |
0x00007bd8 lw t9, -0x7d08(gp) | t9 = sym.imp.g_io_channel_unix_new;
0x00007bdc sw gp, 0x18(sp) | *(var_18h_2) = gp;
0x00007be0 sw ra, 0x6c(sp) | *(var_6ch) = ra;
0x00007be4 sw s4, 0x58(sp) | *(var_58h) = s4;
0x00007be8 sw s1, 0x4c(sp) | *(var_4ch) = s1;
0x00007bec sw s0, 0x48(sp) | *(var_48h) = s0;
0x00007bf0 sw fp, 0x68(sp) | *(var_68h) = fp;
0x00007bf4 sw s7, 0x64(sp) | *(var_64h) = s7;
0x00007bf8 sw s6, 0x60(sp) | *(var_60h) = s6;
0x00007bfc sw s5, 0x5c(sp) | *(var_5ch) = s5;
0x00007c00 sw s3, 0x54(sp) | *(var_54h) = s3;
0x00007c04 sw s2, 0x50(sp) | *(var_50h) = s2;
0x00007c08 lw s4, -0x7e34(gp) | s4 = *((gp - 8077));
0x00007c0c lw v0, 0xc(a1) | v0 = *((a1 + 3));
0x00007c10 sw zero, 0x34(sp) | *(var_34h_2) = 0;
0x00007c14 sw v0, 0x2c(sp) | *(var_2ch_2) = v0;
0x00007c18 lw v0, (s4) | v0 = *(s4);
0x00007c1c sw zero, 0x3c(sp) | *(var_3ch_2) = 0;
0x00007c20 sw v0, 0x44(sp) | *(var_44h_2) = v0;
0x00007c24 jalr t9 | t9 ();
0x00007c28 nop |
0x00007c2c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007c30 move a2, zero | a2 = 0;
0x00007c34 move a1, zero | a1 = 0;
0x00007c38 lw t9, -0x7cf0(gp) | t9 = sym.imp.g_io_channel_set_encoding;
0x00007c3c move a0, v0 | a0 = v0;
0x00007c40 move s1, v0 | s1 = v0;
0x00007c44 jalr t9 | t9 ();
0x00007c48 move s0, v0 | s0 = v0;
0x00007c4c addiu v0, zero, 1 | v0 = 1;
0x00007c50 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (s0 == v0) {
0x00007c54 beq s0, v0, 0x7d04 | goto label_12;
| }
0x00007c58 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00007c5c lw t9, -0x7d2c(gp) | t9 = sym.imp.g_strdup;
0x00007c60 addiu a0, a0, -0x51a4 | a0 += -0x51a4;
| label_8:
0x00007c64 jalr t9 | t9 ();
0x00007c68 nop |
0x00007c6c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007c70 move s0, v0 | s0 = v0;
0x00007c74 move a1, v0 | a1 = v0;
0x00007c78 move a0, s1 | a0 = s1;
| do {
| label_2:
0x00007c7c lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00007c80 addiu t9, t9, 0x7a78 | t9 += fcn.00007a78;
0x00007c84 bal 0x7a78 | fcn_00007a78 ();
| goto label_1;
0x00007c88 nop |
0x00007c8c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007c90 move a0, s0 | a0 = s0;
0x00007c94 lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
| label_5:
0x00007c98 jalr t9 | t9 ();
0x00007c9c nop |
0x00007ca0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007ca4 addiu a1, zero, 1 | a1 = 1;
0x00007ca8 lw t9, -0x7f08(gp) | t9 = sym.imp.g_io_channel_set_close_on_unref;
0x00007cac move a0, s1 | a0 = s1;
0x00007cb0 jalr t9 | t9 ();
0x00007cb4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_6:
0x00007cb8 lw t9, -0x7edc(gp) | t9 = sym.imp.g_io_channel_unref;
0x00007cbc move a0, s1 | a0 = s1;
0x00007cc0 jalr t9 | t9 ();
0x00007cc4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_7:
0x00007cc8 lw v1, 0x44(sp) | v1 = *(var_44h_2);
0x00007ccc lw v0, (s4) | v0 = *(s4);
0x00007cd0 lw ra, 0x6c(sp) | ra = *(var_6ch);
| if (v1 != v0) {
0x00007cd4 bne v1, v0, 0x81e8 | goto label_13;
| }
0x00007cd8 lw fp, 0x68(sp) | fp = *(var_68h);
0x00007cdc lw s7, 0x64(sp) | s7 = *(var_64h);
0x00007ce0 lw s6, 0x60(sp) | s6 = *(var_60h);
0x00007ce4 lw s5, 0x5c(sp) | s5 = *(var_5ch);
0x00007ce8 lw s4, 0x58(sp) | s4 = *(var_58h);
0x00007cec lw s3, 0x54(sp) | s3 = *(var_54h);
0x00007cf0 lw s2, 0x50(sp) | s2 = *(var_50h);
0x00007cf4 lw s1, 0x4c(sp) | s1 = *(var_4ch);
0x00007cf8 lw s0, 0x48(sp) | s0 = *(var_48h);
0x00007cfc addiu sp, sp, 0x70 |
0x00007d00 jr ra | return v0;
| label_12:
0x00007d04 lw t9, -0x7d94(gp) | t9 = sym.imp.g_io_channel_read_line;
0x00007d08 addiu s6, sp, 0x38 | s6 = sp + 0x38;
0x00007d0c addiu s5, sp, 0x34 | s5 = sp + 0x34;
0x00007d10 addiu s2, sp, 0x3c | s2 = sp + 0x3c;
0x00007d14 sw s2, 0x10(sp) | *(var_10h_2) = s2;
0x00007d18 move a3, zero | a3 = 0;
0x00007d1c move a2, s6 | a2 = s6;
0x00007d20 move a1, s5 | a1 = s5;
0x00007d24 move a0, s1 | a0 = s1;
0x00007d28 jalr t9 | t9 ();
0x00007d2c lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == s0) {
0x00007d30 beq v0, s0, 0x7d78 | goto label_14;
| }
0x00007d34 lw v0, 0x3c(sp) | v0 = *(var_3ch_2);
| if (v0 == 0) {
0x00007d38 beql v0, zero, 0x7fc4 | goto label_15;
| }
0x00007d3c lw a1, -0x7fdc(gp) | a1 = *((gp - 8183));
0x00007d40 lw a1, 8(v0) | a1 = *((v0 + 2));
| label_4:
0x00007d44 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00007d48 lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x00007d4c addiu a0, a0, -0x516c | a0 += -0x516c;
0x00007d50 jalr t9 | t9 ();
0x00007d54 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007d58 move a0, s2 | a0 = s2;
0x00007d5c lw t9, -0x7d30(gp) | t9 = sym.imp.g_clear_error;
0x00007d60 move s0, v0 | s0 = v0;
0x00007d64 jalr t9 | t9 ();
0x00007d68 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007d6c move a1, s0 | a1 = s0;
0x00007d70 move a0, s1 | a0 = s1;
0x00007d74 b 0x7c7c |
| } while (1);
| label_14:
0x00007d78 lw a1, -0x7fdc(gp) | a1 = *((gp - 8183));
0x00007d7c lw t9, -0x7d28(gp) | t9 = sym.imp.g_strcmp0;
0x00007d80 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007d84 addiu a1, a1, -0x5174 | a1 += -0x5174;
0x00007d88 jalr t9 | t9 ();
0x00007d8c lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00007d90 bnez v0, 0x7f88 | goto label_16;
| }
0x00007d94 lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x00007d98 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007d9c addiu fp, sp, 0x40 | fp = sp + 0x40;
0x00007da0 jalr t9 | t9 ();
0x00007da4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007da8 lw a3, -0x7cb8(gp) | a3 = *((gp - 7982));
0x00007dac lw t9, -0x7df0(gp) | t9 = sym.imp.g_hash_table_new_full;
0x00007db0 lw a1, -0x7f44(gp) | a1 = *((gp - 8145));
0x00007db4 lw a0, -0x7cfc(gp) | a0 = *((gp - 7999));
0x00007db8 move a2, a3 | a2 = a3;
0x00007dbc jalr t9 | t9 ();
0x00007dc0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007dc4 move s3, v0 | s3 = v0;
0x00007dc8 lw s7, -0x7fdc(gp) | s7 = *((gp - 8183));
0x00007dcc addiu v0, s7, -0x654c | v0 = s7 + -0x654c;
0x00007dd0 sw v0, 0x24(sp) | *(var_24h_2) = v0;
0x00007dd4 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00007dd8 addiu v0, v0, -0x50e4 | v0 += -0x50e4;
0x00007ddc sw v0, 0x28(sp) | *(var_28h_2) = v0;
| label_3:
0x00007de0 lw t9, -0x7d94(gp) | t9 = sym.imp.g_io_channel_read_line;
0x00007de4 sw s2, 0x10(sp) | *(var_10h_2) = s2;
0x00007de8 move a3, fp | a3 = fp;
0x00007dec move a2, s6 | a2 = s6;
0x00007df0 move a1, s5 | a1 = s5;
0x00007df4 move a0, s1 | a0 = s1;
0x00007df8 jalr t9 | t9 ();
0x00007dfc addiu v1, zero, 1 | v1 = 1;
0x00007e00 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == v1) {
0x00007e04 beq v0, v1, 0x7e54 | goto label_17;
| }
0x00007e08 lw v0, 0x3c(sp) | v0 = *(var_3ch_2);
0x00007e0c lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00007e10 lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x00007e14 lw a1, 8(v0) | a1 = *((v0 + 2));
0x00007e18 addiu a0, a0, -0x5118 | a0 += -0x5118;
0x00007e1c jalr t9 | t9 ();
0x00007e20 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007e24 move a0, s2 | a0 = s2;
0x00007e28 lw t9, -0x7d30(gp) | t9 = sym.imp.g_clear_error;
| do {
0x00007e2c move s0, v0 | s0 = v0;
0x00007e30 jalr t9 | t9 ();
0x00007e34 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007e38 lw t9, -0x7ef8(gp) | t9 = sym.imp.g_hash_table_unref;
0x00007e3c move a0, s3 | a0 = s3;
0x00007e40 jalr t9 | t9 ();
0x00007e44 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007e48 move a1, s0 | a1 = s0;
0x00007e4c move a0, s1 | a0 = s1;
0x00007e50 b 0x7c7c | goto label_2;
| label_17:
0x00007e54 lw t9, -0x7d28(gp) | t9 = sym.imp.g_strcmp0;
0x00007e58 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007e5c lw a1, 0x24(sp) | a1 = *(var_24h_2);
0x00007e60 jalr t9 | t9 ();
0x00007e64 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00007e68 beqz v0, 0x7fcc | goto label_18;
| }
0x00007e6c lw v1, 0x40(sp) | v1 = *(var_40h_2);
0x00007e70 lw v0, 0x34(sp) | v0 = *(var_34h_2);
0x00007e74 lw t9, -0x7d2c(gp) | t9 = sym.imp.g_strdup;
0x00007e78 addu v0, v0, v1 | v0 += v1;
0x00007e7c sb zero, (v0) | *(v0) = 0;
0x00007e80 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007e84 jalr t9 | t9 ();
0x00007e88 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007e8c move a0, v0 | a0 = v0;
0x00007e90 lw t9, -0x7e5c(gp) | t9 = sym.imp.g_strchomp;
0x00007e94 move s7, v0 | s7 = v0;
0x00007e98 jalr t9 | t9 ();
0x00007e9c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007ea0 lw a1, 0x28(sp) | a1 = *(var_28h_2);
0x00007ea4 move a0, v0 | a0 = v0;
0x00007ea8 lw t9, -0x7eb0(gp) | t9 = sym.imp.g_strsplit;
0x00007eac addiu a2, zero, 2 | a2 = 2;
0x00007eb0 jalr t9 | t9 ();
0x00007eb4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007eb8 move s0, v0 | s0 = v0;
0x00007ebc move a0, s7 | a0 = s7;
0x00007ec0 lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
| if (v0 != 0) {
0x00007ec4 beqz v0, 0x7ef4 |
0x00007ec8 jalr t9 | t9 ();
0x00007ecc nop |
0x00007ed0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007ed4 lw t9, -0x7d98(gp) | t9 = sym.imp.g_strv_length;
0x00007ed8 move a0, s0 | a0 = s0;
0x00007edc jalr t9 | t9 ();
0x00007ee0 addiu v1, zero, 2 | v1 = 2;
0x00007ee4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == v1) {
0x00007ee8 beq v0, v1, 0x7f24 | goto label_19;
| }
0x00007eec lw t9, -0x7f00(gp) | t9 = sym.imp.g_strfreev;
0x00007ef0 move a0, s0 | a0 = s0;
| }
0x00007ef4 jalr t9 | t9 ();
0x00007ef8 nop |
0x00007efc lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f00 lw a1, 0x34(sp) | a1 = *(var_34h_2);
0x00007f04 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00007f08 lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x00007f0c addiu a0, a0, -0x50e0 | a0 += -0x50e0;
0x00007f10 jalr t9 | t9 ();
0x00007f14 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f18 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007f1c lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x00007f20 b 0x7e2c |
| } while (1);
| label_19:
0x00007f24 lw t9, -0x7d2c(gp) | t9 = sym.imp.g_strdup;
0x00007f28 lw a0, (s0) | a0 = *(s0);
0x00007f2c jalr t9 | t9 ();
0x00007f30 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f34 lw a0, 4(s0) | a0 = *((s0 + 1));
0x00007f38 lw t9, -0x7d2c(gp) | t9 = sym.imp.g_strdup;
0x00007f3c move s7, v0 | s7 = v0;
0x00007f40 jalr t9 | t9 ();
0x00007f44 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f48 move a0, s0 | a0 = s0;
0x00007f4c lw t9, -0x7f00(gp) | t9 = sym.imp.g_strfreev;
0x00007f50 move s0, v0 | s0 = v0;
0x00007f54 jalr t9 | t9 ();
0x00007f58 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f5c lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x00007f60 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007f64 jalr t9 | t9 ();
0x00007f68 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f6c move a2, s0 | a2 = s0;
0x00007f70 move a1, s7 | a1 = s7;
0x00007f74 lw t9, -0x7d38(gp) | t9 = sym.imp.g_hash_table_insert;
0x00007f78 move a0, s3 | a0 = s3;
0x00007f7c jalr t9 | t9 ();
0x00007f80 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007f84 b 0x7de0 | goto label_3;
| label_16:
0x00007f88 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00007f8c lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x00007f90 lw a1, 0x34(sp) | a1 = *(var_34h_2);
0x00007f94 lw a2, 0x38(sp) | a2 = *(var_38h_2);
0x00007f98 addiu a0, a0, -0x5138 | a0 += -0x5138;
0x00007f9c jalr t9 | t9 ();
0x00007fa0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007fa4 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007fa8 lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x00007fac move s0, v0 | s0 = v0;
0x00007fb0 jalr t9 | t9 ();
0x00007fb4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007fb8 move a1, s0 | a1 = s0;
0x00007fbc move a0, s1 | a0 = s1;
0x00007fc0 b 0x7c7c | goto label_2;
| label_15:
0x00007fc4 addiu a1, a1, -0x5d9c | a1 += -0x5d9c;
0x00007fc8 b 0x7d44 | goto label_4;
| label_18:
0x00007fcc lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x00007fd0 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x00007fd4 move s5, zero | s5 = 0;
0x00007fd8 jalr t9 | t9 ();
0x00007fdc lw v0, 0x2c(sp) | v0 = *(var_2ch_2);
0x00007fe0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00007fe4 sw zero, 0x34(sp) | *(var_34h_2) = 0;
0x00007fe8 lw s0, 0x10(v0) | s0 = *((v0 + 4));
0x00007fec lw t9, -0x7fa0(gp) | t9 = sym.source_factory_get_type;
| if (s0 == 0) {
0x00007ff0 bnel s0, zero, 0x8024 | goto label_20;
| }
0x00007ff4 lw t9, -0x7ef8(gp) | t9 = sym.imp.g_hash_table_unref;
0x00007ff8 b 0x81bc | goto label_21;
| do {
0x00007ffc lw t9, -0x7e70(gp) | t9 = sym.imp.g_list_append;
| if (v0 != 0) {
0x00008000 beqz v0, 0x8018 |
0x00008004 move a0, s5 | a0 = s5;
0x00008008 move a1, v0 | a1 = v0;
0x0000800c jalr t9 | t9 ();
0x00008010 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008014 move s5, v0 | s5 = v0;
| }
0x00008018 lw s0, 4(s0) | s0 = *((s0 + 1));
0x0000801c lw t9, -0x7fa0(gp) | t9 = sym.source_factory_get_type;
| if (s0 == 0) {
0x00008020 beqz s0, 0x80c4 | goto label_22;
| }
| label_20:
0x00008024 lw s6, (s0) | s6 = *(s0);
0x00008028 bal 0x8ca8 | sym_source_factory_get_type ();
0x0000802c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008030 move a1, v0 | a1 = v0;
0x00008034 lw t9, -0x7e90(gp) | t9 = sym.imp.g_type_check_instance_cast;
0x00008038 move a0, s6 | a0 = s6;
0x0000803c jalr t9 | t9 ();
0x00008040 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008044 move a2, s2 | a2 = s2;
0x00008048 move a1, s3 | a1 = s3;
0x0000804c lw t9, -0x7f78(gp) | t9 = sym.source_factory_create_source;
0x00008050 move a0, v0 | a0 = v0;
0x00008054 bal 0x8da4 | sym_source_factory_create_source ();
0x00008058 lw v1, 0x3c(sp) | v1 = *(var_3ch_2);
0x0000805c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008060 beqz v1, 0x7ffc |
| } while (v1 == 0);
0x00008064 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x00008068 lw a1, 8(v1) | a1 = *((v1 + 2));
0x0000806c lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x00008070 addiu a0, a0, -0x50b8 | a0 += -0x50b8;
0x00008074 jalr t9 | t9 ();
0x00008078 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000807c move a0, s2 | a0 = s2;
0x00008080 lw t9, -0x7d30(gp) | t9 = sym.imp.g_clear_error;
0x00008084 move s0, v0 | s0 = v0;
0x00008088 jalr t9 | t9 ();
0x0000808c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008090 move a1, s0 | a1 = s0;
0x00008094 lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00008098 addiu t9, t9, 0x7a78 | t9 += fcn.00007a78;
0x0000809c move a0, s1 | a0 = s1;
0x000080a0 bal 0x7a78 | fcn_00007a78 ();
| goto label_1;
0x000080a4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000080a8 lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x000080ac move a0, s0 | a0 = s0;
0x000080b0 jalr t9 | t9 ();
0x000080b4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000080b8 move a0, s3 | a0 = s3;
0x000080bc lw t9, -0x7ef8(gp) | t9 = sym.imp.g_hash_table_unref;
0x000080c0 b 0x7c98 | goto label_5;
| label_22:
0x000080c4 lw t9, -0x7ef8(gp) | t9 = sym.imp.g_hash_table_unref;
0x000080c8 move a0, s3 | a0 = s3;
0x000080cc jalr t9 | t9 ();
0x000080d0 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (s5 != 0) {
0x000080d4 beqz s5, 0x81c8 |
0x000080d8 lw t9, -0x7e14(gp) | t9 = sym.imp.g_io_channel_unix_get_fd;
0x000080dc move a0, s1 | a0 = s1;
0x000080e0 jalr t9 | t9 ();
0x000080e4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000080e8 move a1, v0 | a1 = v0;
0x000080ec lw t9, -0x7f74(gp) | t9 = sym.connection_manager_new;
0x000080f0 move a0, s5 | a0 = s5;
0x000080f4 bal 0x4130 | sym_connection_manager_new ();
0x000080f8 move s0, v0 | s0 = v0;
0x000080fc lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00008100 beqz v0, 0x81d8 | goto label_23;
| }
0x00008104 lw t9, -0x7f70(gp) | t9 = sym.connection_manager_prepare;
0x00008108 move a0, v0 | a0 = v0;
0x0000810c bal 0x4210 | sym_connection_manager_prepare ();
0x00008110 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00008114 beqz v0, 0x8158 |
0x00008118 lw a1, -0x7fdc(gp) | a1 = *((gp - 8183));
0x0000811c lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00008120 addiu a1, a1, -0x4ff4 | a1 += -0x4ff4;
0x00008124 addiu t9, t9, 0x7a78 | t9 += fcn.00007a78;
0x00008128 move a0, s1 | a0 = s1;
0x0000812c bal 0x7a78 | fcn_00007a78 ();
| goto label_1;
0x00008130 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008134 lw t9, -0x7f6c(gp) | t9 = sym.connection_manager_start;
0x00008138 move a0, s0 | a0 = s0;
0x0000813c bal 0x4aac | sym_connection_manager_start ();
0x00008140 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008144 lw t9, -0x7d24(gp) | t9 = *((gp - 8009));
0x00008148 move a0, s0 | a0 = s0;
0x0000814c jalr t9 | t9 ();
0x00008150 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008154 b 0x7cb8 | goto label_6;
| }
0x00008158 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x0000815c lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x00008160 addiu a0, a0, -0x502c | a0 += -0x502c;
0x00008164 jalr t9 | t9 ();
0x00008168 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000816c move a1, v0 | a1 = v0;
0x00008170 move a0, s1 | a0 = s1;
0x00008174 lw t9, -0x7fd0(gp) | t9 = *((gp - 8180));
0x00008178 addiu t9, t9, 0x7a78 | t9 += fcn.00007a78;
0x0000817c move s2, v0 | s2 = v0;
0x00008180 bal 0x7a78 | fcn_00007a78 ();
| goto label_1;
0x00008184 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008188 lw t9, -0x7cb8(gp) | t9 = *((gp - 7982));
0x0000818c move a0, s2 | a0 = s2;
0x00008190 jalr t9 | t9 ();
0x00008194 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00008198 lw t9, -0x7edc(gp) | t9 = sym.imp.g_io_channel_unref;
0x0000819c move a0, s1 | a0 = s1;
0x000081a0 jalr t9 | t9 ();
0x000081a4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000081a8 lw t9, -0x7d24(gp) | t9 = *((gp - 8009));
0x000081ac move a0, s0 | a0 = s0;
0x000081b0 jalr t9 | t9 ();
0x000081b4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000081b8 b 0x7cc8 | goto label_7;
| label_21:
0x000081bc move a0, s3 | a0 = s3;
0x000081c0 jalr t9 | t9 ();
0x000081c4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| }
0x000081c8 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x000081cc lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x000081d0 addiu a0, a0, -0x5094 | a0 += -0x5094;
0x000081d4 b 0x7c64 | goto label_8;
| label_23:
0x000081d8 lw a0, -0x7fdc(gp) | a0 = *((gp - 8183));
0x000081dc lw t9, -0x7dc8(gp) | t9 = sym.imp.g_strdup_printf
0x000081e0 addiu a0, a0, -0x5064 | a0 += -0x5064;
0x000081e4 b 0x7c64 | goto label_8;
| label_13:
0x000081e8 lw t9, -0x7e98(gp) | t9 = sym.imp.__stack_chk_fail;
0x000081ec jalr t9 | t9 ();
0x000081f0 nop |
| }
[*] Function printf used 9 times metadatad