[*] Binary protection state of overlayd
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function sprintf tear down of overlayd
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/overlayd @ 0x13e58 */
| #include <stdint.h>
|
; (fcn) fcn.00013e58 () | void fcn_00013e58 () {
| label_8:
0x00013e58 lui gp, 7 |
0x00013e5c addiu gp, gp, 0x11c8 |
0x00013e60 addu gp, gp, t9 | gp += t9;
0x00013e64 addiu sp, sp, -0x88 |
0x00013e68 lw t9, -0x7e20(gp) | t9 = sym.overlay_dbus_lookup_overlay_info;
0x00013e6c sw s3, 0x74(sp) | *(var_74h) = s3;
0x00013e70 lw s3, -0x773c(gp) | s3 = *((gp - 7631));
0x00013e74 sw gp, 0x18(sp) | *(var_18h_2) = gp;
0x00013e78 sw s1, 0x6c(sp) | *(var_6ch) = s1;
0x00013e7c lw v0, (s3) | v0 = *(s3);
0x00013e80 sw ra, 0x84(sp) | *(var_84h) = ra;
0x00013e84 sw s6, 0x80(sp) | *(var_80h) = s6;
0x00013e88 sw s5, 0x7c(sp) | *(var_7ch) = s5;
0x00013e8c sw s4, 0x78(sp) | *(var_78h) = s4;
0x00013e90 sw s2, 0x70(sp) | *(var_70h) = s2;
0x00013e94 sw s0, 0x68(sp) | *(var_68h) = s0;
0x00013e98 sw zero, 0x20(sp) | *(var_20h_2) = 0;
0x00013e9c sw v0, 0x64(sp) | *(var_64h) = v0;
0x00013ea0 move s1, a0 | s1 = a0;
0x00013ea4 bal 0x1eb80 | sym_overlay_dbus_lookup_overlay_info ();
0x00013ea8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00013eac beqz v0, 0x140c4 | goto label_10;
| }
0x00013eb0 move s0, v0 | s0 = v0;
0x00013eb4 lw v0, 0x14(v0) | v0 = *((v0 + 5));
0x00013eb8 lw a3, -0x7fd4(gp) | a3 = *(gp);
| if (v0 >= 0) {
0x00013ebc bgez v0, 0x13f34 | goto label_11;
| }
| label_3:
0x00013ec0 lw t9, -0x7e1c(gp) | t9 = sym.overlay_backend_remove;
0x00013ec4 move a0, s0 | a0 = s0;
0x00013ec8 bal 0x1c818 | sym_overlay_backend_remove ();
0x00013ecc lw v1, 0x1024(s0) | v1 = *((s0 + 1033));
0x00013ed0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013ed4 move s4, v0 | s4 = v0;
| if (v1 != 0) {
0x00013ed8 bnez v1, 0x13fcc | goto label_12;
| }
| do {
| label_2:
0x00013edc lw t9, -0x7e18(gp) | t9 = sym.overlay_dbus_unexport_overlay_object;
0x00013ee0 lw a0, 0x18(s0) | a0 = *((s0 + 6));
0x00013ee4 bal 0x1e998 | sym_overlay_dbus_unexport_overlay_object ();
0x00013ee8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013eec lw t9, -0x7e14(gp) | t9 = sym.overlay_dbus_remove_overlay_info;
0x00013ef0 move a0, s0 | a0 = s0;
0x00013ef4 bal 0x1eaf0 | sym_overlay_dbus_remove_overlay_info ();
0x00013ef8 lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_5:
0x00013efc lw a0, 0x64(sp) | a0 = *(var_64h);
0x00013f00 lw v1, (s3) | v1 = *(s3);
0x00013f04 move v0, s4 | v0 = s4;
| if (a0 != v1) {
0x00013f08 bne a0, v1, 0x140ec | goto label_13;
| }
0x00013f0c lw ra, 0x84(sp) | ra = *(var_84h);
0x00013f10 lw s6, 0x80(sp) | s6 = *(var_80h);
0x00013f14 lw s5, 0x7c(sp) | s5 = *(var_7ch);
0x00013f18 lw s4, 0x78(sp) | s4 = *(var_78h);
0x00013f1c lw s3, 0x74(sp) | s3 = *(var_74h);
0x00013f20 lw s2, 0x70(sp) | s2 = *(var_70h);
0x00013f24 lw s1, 0x6c(sp) | s1 = *(var_6ch);
0x00013f28 lw s0, 0x68(sp) | s0 = *(var_68h);
0x00013f2c addiu sp, sp, 0x88 |
0x00013f30 jr ra | return v0;
| label_11:
0x00013f34 lw t9, -0x7894(gp) | t9 = sym.imp.__sprintf_chk
0x00013f38 addiu s1, sp, 0x24 | s1 = sp + 0x24;
| /* str.Overlay_d */
0x00013f3c addiu a3, a3, 0x6504 | a3 += 0x6504;
0x00013f40 addiu a2, zero, 0x40 | a2 = 0x40;
0x00013f44 addiu a1, zero, 1 | a1 = 1;
0x00013f48 move a0, s1 | a0 = s1;
0x00013f4c sw v0, 0x10(sp) | *(var_10h_3) = v0;
0x00013f50 jalr t9 | t9 ();
0x00013f54 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013f58 addiu s2, sp, 0x20 | s2 = sp + 0x20;
0x00013f5c move a2, s2 | a2 = s2;
0x00013f60 lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x00013f64 lw t9, -0x7630(gp) | t9 = sym.imp.g_key_file_remove_group;
0x00013f68 move a1, s1 | a1 = s1;
0x00013f6c lw a0, -0x2380(v0) | a0 = *((v0 - 2272));
0x00013f70 jalr t9 | t9 ();
0x00013f74 lw v0, 0x20(sp) | v0 = *(var_20h_2);
0x00013f78 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x00013f7c beqz v0, 0x140a0 | goto label_14;
| }
0x00013f80 lw a2, -0x7fd4(gp) | a2 = *(gp);
| label_4:
0x00013f84 lw t9, -0x7774(gp) | t9 = sym.imp.__syslog_chk;
0x00013f88 lw a3, 8(v0) | a3 = *((v0 + 2));
| /* str.could_not_remove_overlay_from_conf_file_due_to__s_n */
0x00013f8c addiu a2, a2, 0x6510 | a2 += 0x6510;
0x00013f90 addiu a1, zero, 1 | a1 = 1;
0x00013f94 addiu a0, zero, 3 | a0 = 3;
0x00013f98 jalr t9 | t9 ();
0x00013f9c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013fa0 lw t9, -0x78ac(gp) | t9 = sym.imp.g_error_free;
0x00013fa4 lw a0, 0x20(sp) | a0 = *(var_20h_2);
0x00013fa8 jalr t9 | t9 ();
0x00013fac lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013fb0 lw t9, -0x7e1c(gp) | t9 = sym.overlay_backend_remove;
0x00013fb4 move a0, s0 | a0 = s0;
0x00013fb8 bal 0x1c818 | sym_overlay_backend_remove ();
0x00013fbc lw v1, 0x1024(s0) | v1 = *((s0 + 1033));
0x00013fc0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013fc4 move s4, v0 | s4 = v0;
0x00013fc8 beqz v1, 0x13edc |
| } while (v1 == 0);
| label_12:
0x00013fcc lw t9, -0x7e10(gp) | t9 = sym.overlay_dbus_get_overlay_info_keys;
0x00013fd0 lw s5, 8(s0) | s5 = *((s0 + 2));
0x00013fd4 bal 0x1ec6c | sym_overlay_dbus_get_overlay_info_keys ();
0x00013fd8 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00013fdc move a0, v0 | a0 = v0;
0x00013fe0 lw t9, -0x7880(gp) | t9 = sym.imp.g_list_first;
0x00013fe4 move s6, v0 | s6 = v0;
0x00013fe8 jalr t9 | t9 ();
0x00013fec move s1, v0 | s1 = v0;
0x00013ff0 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x00013ff4 bnez v0, 0x1400c | goto label_15;
| }
0x00013ff8 lw t9, -0x7570(gp) | t9 = sym.imp.g_list_free;
0x00013ffc b 0x14078 | goto label_16;
| do {
| label_1:
0x00014000 lw s1, 4(s1) | s1 = *((s1 + 1));
| label_0:
0x00014004 lw t9, -0x7570(gp) | t9 = sym.imp.g_list_free;
| if (s1 == 0) {
0x00014008 beqz s1, 0x14078 | goto label_16;
| }
| label_15:
0x0001400c lw t9, -0x7e20(gp) | t9 = sym.overlay_dbus_lookup_overlay_info;
0x00014010 lw a0, (s1) | a0 = *(s1);
0x00014014 bal 0x1eb80 | sym_overlay_dbus_lookup_overlay_info ();
0x00014018 move s2, v0 | s2 = v0;
0x0001401c lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00014020 beqz v0, 0x14000 |
| } while (v0 == 0);
0x00014024 lw v0, 8(v0) | v0 = *((v0 + 2));
0x00014028 lw s1, 4(s1) | s1 = *((s1 + 1));
| if (s5 == v0) {
0x0001402c bnel s5, v0, 0x14004 | goto label_0;
| }
0x00014030 lw v0, 0x102c(s2) | v0 = *(s2);
0x00014034 lw s1, 4(s1) | s1 = *((s1 + 1));
| if (v0 == 0) {
0x00014038 bnel v0, zero, 0x14004 | goto label_0;
| }
0x0001403c lw v0, 0x1028(s2) | v0 = *((s2 + 1034));
| if (v0 == 0) {
0x00014040 beql v0, zero, 0x14004 | goto label_0;
| }
0x00014044 lw s1, 4(s1) | s1 = *((s1 + 1));
0x00014048 lw t9, -0x7e0c(gp) | t9 = sym.overlay_backend_set_visibility;
0x0001404c addiu a1, zero, 1 | a1 = 1;
0x00014050 move a0, s2 | a0 = s2;
0x00014054 bal 0x1d1ac | sym_overlay_backend_set_visibility ();
0x00014058 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 != 0) {
0x0001405c bnez v0, 0x14000 | goto label_1;
| }
0x00014060 lw t9, -0x7e5c(gp) | t9 = sym.overlay_dbus_set_visible;
0x00014064 lw a0, 0x18(s2) | a0 = *((s2 + 6));
0x00014068 addiu a1, zero, 1 | a1 = 1;
0x0001406c bal 0x1efac | sym_overlay_dbus_set_visible ();
0x00014070 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00014074 b 0x14000 | goto label_1;
| label_16:
0x00014078 move a0, s6 | a0 = s6;
0x0001407c jalr t9 | t9 ();
0x00014080 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x00014084 lw v0, 8(s0) | v0 = *((s0 + 2));
0x00014088 lw v1, -0x7fdc(gp) | v1 = *((gp - 8183));
0x0001408c sll v0, v0, 2 | v0 <<= 2;
0x00014090 addiu v1, v1, -0x23c8 | v1 += -0x23c8;
0x00014094 addu v0, v0, v1 | v0 += v1;
0x00014098 sw zero, (v0) | *(v0) = 0;
0x0001409c b 0x13edc | goto label_2;
| label_14:
0x000140a0 lw t9, -0x7f58(gp) | t9 = *(gp);
| /* fcn.00013d94 */
0x000140a4 addiu t9, t9, 0x3d94 | t9 += 0x3d94;
0x000140a8 move a0, s2 | a0 = s2;
0x000140ac bal 0x13d94 | fcn_00013d94 ();
0x000140b0 lw v0, 0x20(sp) | v0 = *(var_20h_2);
0x000140b4 lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (v0 == 0) {
0x000140b8 beqz v0, 0x13ec0 | goto label_3;
| }
0x000140bc lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000140c0 b 0x13f84 | goto label_4;
| label_10:
0x000140c4 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000140c8 lw t9, -0x7774(gp) | t9 = sym.imp.__syslog_chk;
0x000140cc move a3, s1 | a3 = s1;
| /* str.Invalid_overlay_handle:__s */
0x000140d0 addiu a2, a2, 0x64e8 | a2 += 0x64e8;
0x000140d4 addiu a1, zero, 1 | a1 = 1;
0x000140d8 addiu a0, zero, 3 | a0 = 3;
0x000140dc jalr t9 | t9 ();
0x000140e0 addiu s4, zero, -3 | s4 = -3;
0x000140e4 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x000140e8 b 0x13efc | goto label_5;
| label_13:
0x000140ec lw t9, -0x77d4(gp) | t9 = sym.imp.__stack_chk_fail;
0x000140f0 jalr t9 | t9 ();
0x000140f4 nop |
0x000140f8 lui gp, 7 |
0x000140fc addiu gp, gp, 0xf28 |
0x00014100 addu gp, gp, t9 | gp += t9;
0x00014104 addiu sp, sp, -0x38 |
0x00014108 sw s0, 0x1c(sp) | *(var_1ch_2) = s0;
0x0001410c lw s0, (a2) | s0 = *(a2);
0x00014110 sw gp, 0x10(sp) | *(var_10h_2) = gp;
0x00014114 sw s2, 0x24(sp) | *(var_24h_2) = s2;
0x00014118 sw ra, 0x34(sp) | *(var_34h) = ra;
0x0001411c sw s5, 0x30(sp) | *(var_30h) = s5;
0x00014120 sw s4, 0x2c(sp) | *(var_2ch_2) = s4;
0x00014124 sw s3, 0x28(sp) | *(var_28h_2) = s3;
0x00014128 sw s1, 0x20(sp) | *(var_20h_3) = s1;
0x0001412c move s2, a2 | s2 = a2;
| if (s0 == 0) {
0x00014130 beqz s0, 0x14190 | goto label_17;
| }
0x00014134 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00014138 lw t9, -0x790c(gp) | t9 = sym.imp.strcmp;
| /* str.dbus_send */
0x0001413c addiu a1, a1, 0x6544 | a1 += 0x6544;
0x00014140 move a0, s0 | a0 = s0;
0x00014144 jalr t9 | t9 ();
0x00014148 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x0001414c bnez v0, 0x14174 |
| while (v0 == 0) {
0x00014150 lw ra, 0x34(sp) | ra = *(var_34h);
0x00014154 lw s5, 0x30(sp) | s5 = *(var_30h);
0x00014158 lw s4, 0x2c(sp) | s4 = *(var_2ch_2);
0x0001415c lw s3, 0x28(sp) | s3 = *(var_28h_2);
0x00014160 lw s2, 0x24(sp) | s2 = *(var_24h_2);
0x00014164 lw s1, 0x20(sp) | s1 = *(var_20h_3);
0x00014168 lw s0, 0x1c(sp) | s0 = *(var_1ch_2);
0x0001416c addiu sp, sp, 0x38 |
0x00014170 jr ra | return v0;
0x00014174 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00014178 lw t9, -0x790c(gp) | t9 = sym.imp.strcmp;
| /* str.gdbus */
0x0001417c addiu a1, a1, 0x6550 | a1 += 0x6550;
0x00014180 move a0, s0 | a0 = s0;
0x00014184 jalr t9 | t9 ();
0x00014188 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x0001418c beqz v0, 0x14150 |
| }
| label_17:
0x00014190 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00014194 lw t9, -0x7774(gp) | t9 = sym.imp.__syslog_chk;
0x00014198 move a3, s0 | a3 = s0;
| /* str._s_vanished__removing_its_overlays */
0x0001419c addiu a2, a2, 0x6558 | a2 += 0x6558;
0x000141a0 addiu a1, zero, 1 | a1 = 1;
0x000141a4 addiu a0, zero, 6 | a0 = 6;
0x000141a8 jalr t9 | t9 ();
0x000141ac lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000141b0 lw t9, -0x7e10(gp) | t9 = sym.overlay_dbus_get_overlay_info_keys;
0x000141b4 bal 0x1ec6c | sym_overlay_dbus_get_overlay_info_keys ();
0x000141b8 nop |
0x000141bc lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000141c0 move a0, v0 | a0 = v0;
0x000141c4 lw t9, -0x7880(gp) | t9 = sym.imp.g_list_first;
0x000141c8 move s4, v0 | s4 = v0;
0x000141cc jalr t9 | t9 ();
0x000141d0 move s0, v0 | s0 = v0;
0x000141d4 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (v0 == 0) {
0x000141d8 beqz v0, 0x14258 | goto label_18;
| }
0x000141dc lw s5, -0x7f58(gp) | s5 = *(gp);
0x000141e0 addiu s3, zero, -1 | s3 = -1;
| /* fcn.00013e58 */
0x000141e4 addiu s5, s5, 0x3e58 | s5 += 0x3e58;
0x000141e8 b 0x141f8 |
| while (v0 == 0) {
| label_6:
0x000141ec lw s0, 4(s0) | s0 = *((s0 + 1));
| if (s0 == 0) {
| label_7:
0x000141f0 beql s0, zero, 0x1425c | goto label_19;
| }
0x000141f4 lw t9, -0x7570(gp) | t9 = sym.imp.g_list_free;
| label_9:
0x000141f8 lw t9, -0x7e20(gp) | t9 = sym.overlay_dbus_lookup_overlay_info;
0x000141fc lw a0, (s0) | a0 = *(s0);
0x00014200 bal 0x1eb80 | sym_overlay_dbus_lookup_overlay_info ();
0x00014204 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x00014208 move s1, v0 | s1 = v0;
0x0001420c addiu a0, v0, 0x20 | a0 = v0 + 0x20;
0x00014210 lw t9, -0x790c(gp) | t9 = sym.imp.strcmp;
0x00014214 beqz v0, 0x141ec |
| }
0x00014218 lw a1, (s2) | a1 = *(s2);
0x0001421c jalr t9 | t9 ();
0x00014220 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (v0 != 0) {
0x00014224 bnez v0, 0x141ec | goto label_6;
| }
0x00014228 lw v0, 0x14(s1) | v0 = *((s1 + 5));
0x0001422c lw s0, 4(s0) | s0 = *((s0 + 1));
| if (v0 == s3) {
0x00014230 bnel v0, s3, 0x141f0 | goto label_7;
| }
0x00014234 lw v0, 0x1038(s1) | v0 = *((s1 + 1038));
| if (v0 == 0) {
0x00014238 beql v0, zero, 0x141f0 | goto label_7;
| }
0x0001423c lw s0, 4(s0) | s0 = *((s0 + 1));
0x00014240 move t9, s5 | t9 = s5;
0x00014244 lw a0, (s0) | a0 = *(s0);
0x00014248 bal 0x13e58 | fcn_00013e58 ();
| goto label_8;
0x0001424c lw s0, 4(s0) | s0 = *((s0 + 1));
0x00014250 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (s0 != 0) {
0x00014254 bnez s0, 0x141f8 | goto label_9;
| }
| label_18:
0x00014258 lw t9, -0x7570(gp) | t9 = sym.imp.g_list_free;
| label_19:
0x0001425c move a0, s4 | a0 = s4;
0x00014260 jalr t9 | t9 ();
0x00014264 lw v0, 4(s2) | v0 = *((s2 + 1));
0x00014268 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x0001426c bnez v0, 0x142ac |
| while (1) {
0x00014270 lw t9, -0x7450(gp) | t9 = *((gp - 7444));
0x00014274 lw a0, (s2) | a0 = *(s2);
0x00014278 jalr t9 | t9 ();
0x0001427c lw gp, 0x10(sp) | gp = *(var_10h_2);
0x00014280 lw ra, 0x34(sp) | ra = *(var_34h);
0x00014284 lw s5, 0x30(sp) | s5 = *(var_30h);
0x00014288 lw s4, 0x2c(sp) | s4 = *(var_2ch_2);
0x0001428c lw s3, 0x28(sp) | s3 = *(var_28h_2);
0x00014290 lw s1, 0x20(sp) | s1 = *(var_20h_3);
0x00014294 lw s0, 0x1c(sp) | s0 = *(var_1ch_2);
0x00014298 move a0, s2 | a0 = s2;
0x0001429c lw t9, -0x7450(gp) | t9 = *((gp - 7444));
0x000142a0 lw s2, 0x24(sp) | s2 = *(var_24h_2);
0x000142a4 addiu sp, sp, 0x38 |
0x000142a8 jr t9 | t9 ();
0x000142ac lw v0, -0x7fdc(gp) | v0 = *((gp - 8183));
0x000142b0 lw t9, -0x75b8(gp) | t9 = sym.imp.g_hash_table_remove;
0x000142b4 lw a1, (s2) | a1 = *(s2);
0x000142b8 lw a0, -0x23cc(v0) | a0 = *((v0 - 2291));
0x000142bc jalr t9 | t9 ();
0x000142c0 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000142c4 lw t9, -0x77a0(gp) | t9 = sym.imp.g_bus_unwatch_name;
0x000142c8 lw a0, 4(s2) | a0 = *((s2 + 1));
0x000142cc jalr t9 | t9 ();
0x000142d0 lw gp, 0x10(sp) | gp = *(var_10h_2);
0x000142d4 b 0x14270 |
| }
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/overlayd @ 0x142d8 */
| #include <stdint.h>
|
; (fcn) fcn.000142d8 () | void fcn_000142d8 () {
0x000142d8 lui gp, 7 |
0x000142dc addiu gp, gp, 0xd48 |
0x000142e0 addu gp, gp, t9 | gp += t9;
0x000142e4 addiu sp, sp, -0x98 |
0x000142e8 sw s2, 0x78(sp) | *(var_78h) = s2;
0x000142ec sw s1, 0x74(sp) | *(var_74h) = s1;
0x000142f0 lw s2, -0x773c(gp) | s2 = *((gp - 7631));
0x000142f4 lw s1, -0x7fdc(gp) | s1 = *((gp - 8183));
0x000142f8 sw gp, 0x18(sp) | *(var_18h) = gp;
0x000142fc lw v1, (s2) | v1 = *(s2);
0x00014300 lw v0, -0x2380(s1) | v0 = *((s1 - 2272));
0x00014304 sw ra, 0x94(sp) | *(var_94h) = ra;
0x00014308 sw fp, 0x90(sp) | *(var_90h) = fp;
0x0001430c sw s7, 0x8c(sp) | *(var_8ch) = s7;
0x00014310 sw s6, 0x88(sp) | *(var_88h) = s6;
0x00014314 sw s5, 0x84(sp) | *(var_84h) = s5;
0x00014318 sw s4, 0x80(sp) | *(var_80h) = s4;
0x0001431c sw s3, 0x7c(sp) | *(var_7ch) = s3;
0x00014320 sw s0, 0x70(sp) | *(var_70h) = s0;
0x00014324 sw v1, 0x6c(sp) | *(var_6ch) = v1;
0x00014328 sw zero, 0x28(sp) | *(var_28h) = 0;
| if (v0 == 0) {
0x0001432c beqz v0, 0x1434c | goto label_0;
| }
0x00014330 lw v0, 4(a1) | v0 = *((a1 + 1));
0x00014334 move s0, a1 | s0 = a1;
| if (v0 == 0) {
0x00014338 beqz v0, 0x1434c | goto label_0;
| }
0x0001433c lw s3, 0xc(a1) | s3 = *((a1 + 3));
0x00014340 addiu v0, zero, -1 | v0 = -1;
0x00014344 addiu s5, a1, 0x20 | s5 = a1 + 0x20;
0x00014348 beq s3, v0, 0x14388 |
| while (v0 != 0) {
| label_0:
0x0001434c lw v1, 0x6c(sp) | v1 = *(var_6ch);
0x00014350 lw v0, (s2) | v0 = *(s2);
0x00014354 lw ra, 0x94(sp) | ra = *(var_94h);
| if (v1 != v0) {
0x00014358 bne v1, v0, 0x148c8 | goto label_5;
| }
0x0001435c lw fp, 0x90(sp) | fp = *(var_90h);
0x00014360 lw s7, 0x8c(sp) | s7 = *(var_8ch);
0x00014364 lw s6, 0x88(sp) | s6 = *(var_88h);
0x00014368 lw s5, 0x84(sp) | s5 = *(var_84h);
0x0001436c lw s4, 0x80(sp) | s4 = *(var_80h);
0x00014370 lw s3, 0x7c(sp) | s3 = *(var_7ch);
0x00014374 lw s2, 0x78(sp) | s2 = *(var_78h);
0x00014378 lw s1, 0x74(sp) | s1 = *(var_74h);
0x0001437c lw s0, 0x70(sp) | s0 = *(var_70h);
0x00014380 addiu sp, sp, 0x98 |
0x00014384 jr ra | return v0;
0x00014388 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001438c lw t9, -0x790c(gp) | t9 = sym.imp.strcmp;
0x00014390 move s4, a0 | s4 = a0;
| /* str._usr_bin_dynamic_overlayd */
0x00014394 addiu a1, a1, 0x657c | a1 += 0x657c;
0x00014398 move a0, s5 | a0 = s5;
0x0001439c jalr t9 | t9 ();
0x000143a0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000143a4 bnez v0, 0x1434c |
| }
0x000143a8 lw s7, 0x14(s0) | s7 = *((s0 + 5));
0x000143ac lw t9, -0x787c(gp) | t9 = sym.imp.rand;
| if (s7 == s3) {
0x000143b0 beq s7, s3, 0x14688 | goto label_6;
| }
0x000143b4 lw s6, -0x7fd4(gp) | s6 = *(gp);
0x000143b8 addiu s3, sp, 0x2c | s3 = sp + 0x2c;
| label_3:
0x000143bc lw t9, -0x7894(gp) | t9 = sym.imp.__sprintf_chk
0x000143c0 sw s7, 0x10(sp) | *(var_10h_2) = s7;
| /* str.Overlay_d */
0x000143c4 addiu a3, s6, 0x6504 | a3 = s6 + 0x6504;
0x000143c8 addiu a2, zero, 0x40 | a2 = 0x40;
0x000143cc addiu a1, zero, 1 | a1 = 1;
0x000143d0 move a0, s3 | a0 = s3;
0x000143d4 jalr t9 | t9 ();
0x000143d8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s4 == 0) {
0x000143dc beqz s4, 0x1434c | goto label_0;
| }
0x000143e0 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000143e4 lw t9, -0x785c(gp) | t9 = sym.imp.g_key_file_set_integer;
0x000143e8 lw a3, 8(s0) | a3 = *((s0 + 2));
0x000143ec lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
| /* str.CameraID */
0x000143f0 addiu a2, a2, 0x6598 | a2 += 0x6598;
0x000143f4 move a1, s3 | a1 = s3;
0x000143f8 jalr t9 | t9 ();
0x000143fc lw gp, 0x18(sp) | gp = *(var_18h);
0x00014400 lw a3, 0xc(s0) | a3 = *((s0 + 3));
0x00014404 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014408 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x0001440c lw t9, -0x785c(gp) | t9 = sym.imp.g_key_file_set_integer;
| /* str.StreamID */
0x00014410 addiu a2, a2, 0x65a4 | a2 += 0x65a4;
0x00014414 move a1, s3 | a1 = s3;
0x00014418 jalr t9 | t9 ();
0x0001441c lw gp, 0x18(sp) | gp = *(var_18h);
0x00014420 lw a3, 4(s0) | a3 = *((s0 + 1));
0x00014424 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014428 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x0001442c lw t9, -0x785c(gp) | t9 = sym.imp.g_key_file_set_integer;
| /* str.OverlayType */
0x00014430 addiu a2, a2, 0x65b0 | a2 += 0x65b0;
0x00014434 move a1, s3 | a1 = s3;
0x00014438 jalr t9 | t9 ();
0x0001443c lw gp, 0x18(sp) | gp = *(var_18h);
0x00014440 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014444 move a3, s5 | a3 = s5;
0x00014448 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x0001444c lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
| /* str.Owner */
0x00014450 addiu a2, a2, 0x65bc | a2 += 0x65bc;
0x00014454 lw s5, -0x7fd4(gp) | s5 = *(gp);
0x00014458 move a1, s3 | a1 = s3;
0x0001445c jalr t9 | t9 ();
0x00014460 lw gp, 0x18(sp) | gp = *(var_18h);
| /* esilref: 'Position' */
0x00014464 addiu a1, s5, 0x55fc | a1 = s5 + 0x55fc;
0x00014468 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
0x0001446c move a0, s4 | a0 = s4;
0x00014470 jalr t9 | t9 ();
0x00014474 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00014478 beqz v0, 0x14498 |
0x0001447c lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014480 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014484 move a3, v0 | a3 = v0;
| /* esilref: 'Position' */
0x00014488 addiu a2, s5, 0x55fc | a2 = s5 + 0x55fc;
0x0001448c move a1, s3 | a1 = s3;
0x00014490 jalr t9 | t9 ();
0x00014494 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00014498 lw v0, 0x1020(s0) | v0 = *((s0 + 1032));
0x0001449c lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
| if (v0 != 0) {
0x000144a0 bnez v0, 0x14670 | goto label_7;
| }
0x000144a4 lw a3, -0x7fd4(gp) | a3 = *(gp);
| /* str.false */
0x000144a8 addiu a3, a3, 0x54d8 | a3 += 0x54d8;
| label_1:
0x000144ac lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000144b0 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
| /* str.Legacy */
0x000144b4 addiu a2, a2, 0x65c4 | a2 += 0x65c4;
0x000144b8 move a1, s3 | a1 = s3;
0x000144bc jalr t9 | t9 ();
0x000144c0 lw v0, 0x1028(s0) | v0 = *((s0 + 1034));
0x000144c4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000144c8 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
| if (v0 != 0) {
0x000144cc bnez v0, 0x1467c | goto label_8;
| }
0x000144d0 lw a3, -0x7fd4(gp) | a3 = *(gp);
| /* str.false */
0x000144d4 addiu a3, a3, 0x54d8 | a3 += 0x54d8;
| label_2:
0x000144d8 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000144dc lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
| /* str.Visible */
0x000144e0 addiu a2, a2, 0x54c8 | a2 += 0x54c8;
0x000144e4 lw s5, -0x7fd4(gp) | s5 = *(gp);
0x000144e8 move a1, s3 | a1 = s3;
0x000144ec jalr t9 | t9 ();
0x000144f0 lw gp, 0x18(sp) | gp = *(var_18h);
| /* str.AnchorPoint */
0x000144f4 addiu a1, s5, 0x6428 | a1 = s5 + 0x6428;
0x000144f8 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
0x000144fc move a0, s4 | a0 = s4;
0x00014500 jalr t9 | t9 ();
0x00014504 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00014508 beqz v0, 0x14528 |
0x0001450c lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014510 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014514 move a3, v0 | a3 = v0;
| /* str.AnchorPoint */
0x00014518 addiu a2, s5, 0x6428 | a2 = s5 + 0x6428;
0x0001451c move a1, s3 | a1 = s3;
0x00014520 jalr t9 | t9 ();
0x00014524 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00014528 lw s5, -0x7fd4(gp) | s5 = *(gp);
0x0001452c lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.Reference */
0x00014530 addiu a1, s5, 0x54bc | a1 = s5 + 0x54bc;
0x00014534 move a0, s4 | a0 = s4;
0x00014538 jalr t9 | t9 ();
0x0001453c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00014540 beqz v0, 0x14560 |
0x00014544 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014548 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x0001454c move a3, v0 | a3 = v0;
| /* str.Reference */
0x00014550 addiu a2, s5, 0x54bc | a2 = s5 + 0x54bc;
0x00014554 move a1, s3 | a1 = s3;
0x00014558 jalr t9 | t9 ();
0x0001455c lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00014560 lw s5, -0x7fd4(gp) | s5 = *(gp);
0x00014564 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.ZIndex */
0x00014568 addiu a1, s5, 0x6434 | a1 = s5 + 0x6434;
0x0001456c move a0, s4 | a0 = s4;
0x00014570 jalr t9 | t9 ();
0x00014574 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00014578 beqz v0, 0x14598 |
0x0001457c lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014580 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014584 move a3, v0 | a3 = v0;
| /* str.ZIndex */
0x00014588 addiu a2, s5, 0x6434 | a2 = s5 + 0x6434;
0x0001458c move a1, s3 | a1 = s3;
0x00014590 jalr t9 | t9 ();
0x00014594 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00014598 lw s5, -0x7fd4(gp) | s5 = *(gp);
0x0001459c lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.AlwaysOn */
0x000145a0 addiu a1, s5, 0x643c | a1 = s5 + 0x643c;
0x000145a4 move a0, s4 | a0 = s4;
0x000145a8 jalr t9 | t9 ();
0x000145ac lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000145b0 beqz v0, 0x145d0 |
0x000145b4 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x000145b8 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x000145bc move a3, v0 | a3 = v0;
| /* str.AlwaysOn */
0x000145c0 addiu a2, s5, 0x643c | a2 = s5 + 0x643c;
0x000145c4 move a1, s3 | a1 = s3;
0x000145c8 jalr t9 | t9 ();
0x000145cc lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x000145d0 lw s5, -0x7fd4(gp) | s5 = *(gp);
0x000145d4 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.NbrOfBuffers */
0x000145d8 addiu a1, s5, 0x6458 | a1 = s5 + 0x6458;
0x000145dc move a0, s4 | a0 = s4;
0x000145e0 jalr t9 | t9 ();
0x000145e4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000145e8 beqz v0, 0x14608 |
0x000145ec lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x000145f0 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x000145f4 move a3, v0 | a3 = v0;
| /* str.NbrOfBuffers */
0x000145f8 addiu a2, s5, 0x6458 | a2 = s5 + 0x6458;
0x000145fc move a1, s3 | a1 = s3;
0x00014600 jalr t9 | t9 ();
0x00014604 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00014608 lw v0, 4(s0) | v0 = *((s0 + 1));
0x0001460c addiu v1, zero, 1 | v1 = 1;
0x00014610 addiu v1, zero, 2 | v1 = 2;
| if (v0 == v1) {
0x00014614 beq v0, v1, 0x1473c | goto label_9;
| }
0x00014618 lw s0, -0x7fd4(gp) | s0 = *(gp);
| if (v0 == v1) {
0x0001461c beq v0, v1, 0x14778 | goto label_10;
| }
| label_4:
0x00014620 lw t9, -0x7f58(gp) | t9 = *(gp);
| /* fcn.00013d94 */
0x00014624 addiu t9, t9, 0x3d94 | t9 += 0x3d94;
0x00014628 addiu a0, sp, 0x28 | a0 = sp + 0x28;
0x0001462c bal 0x13d94 | fcn_00013d94 ();
0x00014630 lw v0, 0x28(sp) | v0 = *(var_28h);
0x00014634 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00014638 beqz v0, 0x1434c | goto label_0;
| }
0x0001463c lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00014640 lw t9, -0x7774(gp) | t9 = sym.imp.__syslog_chk;
0x00014644 lw a3, 8(v0) | a3 = *((v0 + 2));
| /* str.save_to_conf_file_failed_due_to__s_n */
0x00014648 addiu a2, a2, 0x65cc | a2 += 0x65cc;
0x0001464c addiu a1, zero, 1 | a1 = 1;
0x00014650 addiu a0, zero, 3 | a0 = 3;
0x00014654 jalr t9 | t9 ();
0x00014658 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001465c lw t9, -0x78ac(gp) | t9 = sym.imp.g_error_free;
0x00014660 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00014664 jalr t9 | t9 ();
0x00014668 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001466c b 0x1434c | goto label_0;
| label_7:
0x00014670 lw a3, -0x7fd4(gp) | a3 = *(gp);
| /* str.true */
0x00014674 addiu a3, a3, 0x54d0 | a3 += 0x54d0;
0x00014678 b 0x144ac | goto label_1;
| label_8:
0x0001467c lw a3, -0x7fd4(gp) | a3 = *(gp);
| /* str.true */
0x00014680 addiu a3, a3, 0x54d0 | a3 += 0x54d0;
0x00014684 b 0x144d8 | goto label_2;
| label_6:
0x00014688 lw s6, -0x7fd4(gp) | s6 = *(gp);
0x0001468c addiu s3, sp, 0x2c | s3 = sp + 0x2c;
0x00014690 jalr t9 | t9 ();
0x00014694 lui v1, 0x1062 | v1 = 0x10624dd3;
0x00014698 addiu v1, v1, 0x4dd3 |
0x0001469c mult v0, v1 | __asm ("mult v0, v1");
0x000146a0 mfhi v1 | __asm ("mfhi v1");
0x000146a4 sra a0, v0, 0x1f | a0 = v0 >> 0x1f;
0x000146a8 lw gp, 0x18(sp) | gp = *(var_18h);
| /* str.Overlay_d */
0x000146ac addiu a3, s6, 0x6504 | a3 = s6 + 0x6504;
0x000146b0 sra v1, v1, 6 | v1 >>= 6;
0x000146b4 subu s7, v1, a0 | __asm ("subu s7, v1, a0");
0x000146b8 addiu a0, zero, 0x3e8 | a0 = aav.0x000003e8;
0x000146bc mul v1, s7, a0 | __asm ("mul v1, s7, a0");
0x000146c0 lw t9, -0x7894(gp) | t9 = sym.imp.__sprintf_chk
0x000146c4 addiu a2, zero, 0x40 | a2 = 0x40;
0x000146c8 addiu a1, zero, 1 | a1 = 1;
0x000146cc move a0, s3 | a0 = s3;
0x000146d0 subu s7, v0, v1 | __asm ("subu s7, v0, v1");
0x000146d4 sw s7, 0x10(sp) | *(var_10h_2) = s7;
0x000146d8 jalr t9 | t9 ();
| /* str.Overlay_d */
0x000146dc addiu v0, s6, 0x6504 | v0 = s6 + 0x6504;
0x000146e0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000146e4 addiu fp, zero, 0x3e8 | fp = aav.0x000003e8;
0x000146e8 sw v0, 0x24(sp) | *(var_24h) = v0;
0x000146ec b 0x1471c |
| while (v0 != 0) {
0x000146f0 addiu s7, s7, 1 | s7++;
| if (s7 != fp) {
0x000146f4 beql s7, fp, 0x146fc |
0x000146f8 move s7, zero | s7 = 0;
| }
0x000146fc lw t9, -0x7894(gp) | t9 = sym.imp.__sprintf_chk
0x00014700 lw a3, 0x24(sp) | a3 = *(var_24h);
0x00014704 sw s7, 0x10(sp) | *(var_10h_2) = s7;
0x00014708 addiu a2, zero, 0x40 | a2 = 0x40;
0x0001470c addiu a1, zero, 1 | a1 = 1;
0x00014710 move a0, s3 | a0 = s3;
0x00014714 jalr t9 | t9 ();
0x00014718 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001471c lw t9, -0x75c0(gp) | t9 = sym.imp.g_key_file_has_group;
0x00014720 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014724 move a1, s3 | a1 = s3;
0x00014728 jalr t9 | t9 ();
0x0001472c lw gp, 0x18(sp) | gp = *(var_18h);
0x00014730 bnez v0, 0x146f0 |
| }
0x00014734 sw s7, 0x14(s0) | *((s0 + 5)) = s7;
0x00014738 b 0x143bc | goto label_3;
| label_9:
0x0001473c lw s0, -0x7fd4(gp) | s0 = *(gp);
0x00014740 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.OverlayPath */
0x00014744 addiu a1, s0, 0x5274 | a1 = s0 + 0x5274;
0x00014748 move a0, s4 | a0 = s4;
0x0001474c jalr t9 | t9 ();
0x00014750 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00014754 beqz v0, 0x14620 | goto label_4;
| }
0x00014758 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x0001475c lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014760 move a3, v0 | a3 = v0;
| /* str.OverlayPath */
0x00014764 addiu a2, s0, 0x5274 | a2 = s0 + 0x5274;
0x00014768 move a1, s3 | a1 = s3;
0x0001476c jalr t9 | t9 ();
0x00014770 lw gp, 0x18(sp) | gp = *(var_18h);
0x00014774 b 0x14620 | goto label_4;
| label_10:
0x00014778 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.Text */
0x0001477c addiu a1, s0, 0x5298 | a1 = s0 + 0x5298;
0x00014780 move a0, s4 | a0 = s4;
0x00014784 jalr t9 | t9 ();
0x00014788 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001478c beqz v0, 0x147ac |
0x00014790 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014794 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014798 move a3, v0 | a3 = v0;
| /* str.Text */
0x0001479c addiu a2, s0, 0x5298 | a2 = s0 + 0x5298;
0x000147a0 move a1, s3 | a1 = s3;
0x000147a4 jalr t9 | t9 ();
0x000147a8 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x000147ac lw s0, -0x7fd4(gp) | s0 = *(gp);
0x000147b0 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.TextColor */
0x000147b4 addiu a1, s0, 0x52a0 | a1 = s0 + 0x52a0;
0x000147b8 move a0, s4 | a0 = s4;
0x000147bc jalr t9 | t9 ();
0x000147c0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000147c4 beqz v0, 0x147e4 |
0x000147c8 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x000147cc lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x000147d0 move a3, v0 | a3 = v0;
| /* str.TextColor */
0x000147d4 addiu a2, s0, 0x52a0 | a2 = s0 + 0x52a0;
0x000147d8 move a1, s3 | a1 = s3;
0x000147dc jalr t9 | t9 ();
0x000147e0 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x000147e4 lw s0, -0x7fd4(gp) | s0 = *(gp);
0x000147e8 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.TextBGColor */
0x000147ec addiu a1, s0, 0x52ac | a1 = s0 + 0x52ac;
0x000147f0 move a0, s4 | a0 = s4;
0x000147f4 jalr t9 | t9 ();
0x000147f8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000147fc beqz v0, 0x1481c |
0x00014800 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014804 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014808 move a3, v0 | a3 = v0;
| /* str.TextBGColor */
0x0001480c addiu a2, s0, 0x52ac | a2 = s0 + 0x52ac;
0x00014810 move a1, s3 | a1 = s3;
0x00014814 jalr t9 | t9 ();
0x00014818 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x0001481c lw s0, -0x7fd4(gp) | s0 = *(gp);
0x00014820 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.TextOLColor */
0x00014824 addiu a1, s0, 0x6400 | a1 = s0 + 0x6400;
0x00014828 move a0, s4 | a0 = s4;
0x0001482c jalr t9 | t9 ();
0x00014830 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00014834 beqz v0, 0x14854 |
0x00014838 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x0001483c lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014840 move a3, v0 | a3 = v0;
| /* str.TextOLColor */
0x00014844 addiu a2, s0, 0x6400 | a2 = s0 + 0x6400;
0x00014848 move a1, s3 | a1 = s3;
0x0001484c jalr t9 | t9 ();
0x00014850 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00014854 lw s0, -0x7fd4(gp) | s0 = *(gp);
0x00014858 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.FontSize */
0x0001485c addiu a1, s0, 0x52c4 | a1 = s0 + 0x52c4;
0x00014860 move a0, s4 | a0 = s4;
0x00014864 jalr t9 | t9 ();
0x00014868 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001486c beqz v0, 0x1488c |
0x00014870 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x00014874 lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x00014878 move a3, v0 | a3 = v0;
| /* str.FontSize */
0x0001487c addiu a2, s0, 0x52c4 | a2 = s0 + 0x52c4;
0x00014880 move a1, s3 | a1 = s3;
0x00014884 jalr t9 | t9 ();
0x00014888 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x0001488c lw s0, -0x7fd4(gp) | s0 = *(gp);
0x00014890 lw t9, -0x7810(gp) | t9 = sym.imp.g_hash_table_lookup;
| /* str.ScrollSpeed */
0x00014894 addiu a1, s0, 0x640c | a1 = s0 + 0x640c;
0x00014898 move a0, s4 | a0 = s4;
0x0001489c jalr t9 | t9 ();
0x000148a0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000148a4 beqz v0, 0x14620 | goto label_4;
| }
0x000148a8 lw t9, -0x7564(gp) | t9 = sym.imp.g_key_file_set_string;
0x000148ac lw a0, -0x2380(s1) | a0 = *((s1 - 2272));
0x000148b0 move a3, v0 | a3 = v0;
| /* str.ScrollSpeed */
0x000148b4 addiu a2, s0, 0x640c | a2 = s0 + 0x640c;
0x000148b8 move a1, s3 | a1 = s3;
0x000148bc jalr t9 | t9 ();
0x000148c0 lw gp, 0x18(sp) | gp = *(var_18h);
0x000148c4 b 0x14620 | goto label_4;
| label_5:
0x000148c8 lw t9, -0x77d4(gp) | t9 = sym.imp.__stack_chk_fail;
0x000148cc jalr t9 | t9 ();
0x000148d0 nop |
| }
[*] Function sprintf used 5 times overlayd