[*] Binary protection state of blinkenlights
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function system tear down of blinkenlights
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/blinkenlights @ 0xc928 */
| #include <stdint.h>
|
; (fcn) sym.real_main () | void real_main () {
0x0000c928 lui gp, 3 |
0x0000c92c addiu gp, gp, -0x5908 |
0x0000c930 addu gp, gp, t9 | gp += t9;
0x0000c934 addiu sp, sp, -0x1c0 |
0x0000c938 addiu v1, zero, 1 | v1 = 1;
0x0000c93c sw s0, 0x1a4(sp) | *(var_1a4h) = s0;
0x0000c940 lw s0, -0x7cfc(gp) | s0 = *((gp - 7999));
0x0000c944 sw gp, 0x18(sp) | *(var_18h) = gp;
0x0000c948 sw ra, 0x1bc(sp) | *(var_1bch) = ra;
0x0000c94c lw v0, (s0) | v0 = *(s0);
0x0000c950 sw v1, 0x11c(sp) | *(var_11ch) = v1;
0x0000c954 sw v0, 0x19c(sp) | *(var_19ch) = v0;
0x0000c958 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c95c sw a1, 0x24(sp) | *(var_24h) = a1;
| /* esilref: 'no-daemon' */
0x0000c960 addiu v0, v0, -0x47d8 | v0 += -0x47d8;
0x0000c964 sw v0, 0xd8(sp) | *(var_d8h) = v0;
0x0000c968 addiu v0, zero, 0x6e | v0 = 0x6e;
0x0000c96c sb v0, 0xdc(sp) | *(var_dch) = v0;
0x0000c970 addiu v0, sp, 0x2c | v0 = sp + 0x2c;
0x0000c974 sw v0, 0xe8(sp) | *(var_e8h) = v0;
0x0000c978 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c97c sw s2, 0x1ac(sp) | *(var_1ach) = s2;
| /* str.Do_not_daemonize */
0x0000c980 addiu v0, v0, -0x47cc | v0 += -0x47cc;
0x0000c984 sw v0, 0xec(sp) | *(var_ech) = v0;
0x0000c988 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c98c sw s1, 0x1a8(sp) | *(var_1a8h) = s1;
| /* str.debug */
0x0000c990 addiu v0, v0, -0x47b8 | v0 += -0x47b8;
0x0000c994 sw v0, 0xf4(sp) | *(var_f4h) = v0;
0x0000c998 addiu v0, zero, 0x64 | v0 = 0x64;
0x0000c99c sb v0, 0xf8(sp) | *(var_f8h) = v0;
0x0000c9a0 addiu v0, sp, 0x30 | v0 = sp + 0x30;
0x0000c9a4 sw v0, 0x104(sp) | *(var_104h) = v0;
0x0000c9a8 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c9ac sw a0, 0x1c0(sp) | *(arg_1c0h) = a0;
| /* str.Enable_debug_output_prints */
0x0000c9b0 addiu v0, v0, -0x47b0 | v0 += -0x47b0;
0x0000c9b4 sw v0, 0x108(sp) | *(var_108h) = v0;
0x0000c9b8 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c9bc sw s5, 0x1b8(sp) | *(var_1b8h) = s5;
| /* str.config_file */
0x0000c9c0 addiu v0, v0, -0x4794 | v0 += -0x4794;
0x0000c9c4 sw v0, 0x110(sp) | *(var_110h) = v0;
0x0000c9c8 addiu v0, zero, 0x63 | v0 = 0x63;
0x0000c9cc sb v0, 0x114(sp) | *(var_114h) = v0;
0x0000c9d0 addiu v0, sp, 0x3c | v0 = sp + 0x3c;
0x0000c9d4 sw v0, 0x120(sp) | *(var_120h) = v0;
0x0000c9d8 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c9dc sw s4, 0x1b4(sp) | *(var_1b4h) = s4;
| /* str.Specify_configuration_file___c__filename_ */
0x0000c9e0 addiu v0, v0, -0x4788 | v0 += -0x4788;
0x0000c9e4 sw v0, 0x124(sp) | *(var_124h) = v0;
0x0000c9e8 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000c9ec sw s3, 0x1b0(sp) | *(var_1b0h) = s3;
| /* str.priority_file */
0x0000c9f0 addiu v0, v0, -0x475c | v0 += -0x475c;
0x0000c9f4 sw zero, 0x2c(sp) | *(var_2ch) = 0;
0x0000c9f8 sw zero, 0x30(sp) | *(var_30h) = 0;
0x0000c9fc sw zero, 0x34(sp) | *(var_34h) = 0;
0x0000ca00 sw zero, 0x38(sp) | *(var_38h) = 0;
0x0000ca04 sw zero, 0x3c(sp) | *(var_3ch) = 0;
0x0000ca08 sw zero, 0x40(sp) | *(var_40h) = 0;
0x0000ca0c sw v0, 0x12c(sp) | *(var_12ch) = v0;
0x0000ca10 addiu v0, zero, 0x70 | v0 = 0x70;
0x0000ca14 sb v0, 0x130(sp) | *(var_130h) = v0;
0x0000ca18 addiu v0, sp, 0x40 | v0 = sp + 0x40;
0x0000ca1c sw v0, 0x13c(sp) | *(var_13ch) = v0;
0x0000ca20 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000ca24 lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
| /* str.Specify_state_priority_file___p__filename_ */
0x0000ca28 addiu v0, v0, -0x474c | v0 += -0x474c;
0x0000ca2c sw v0, 0x140(sp) | *(var_140h) = v0;
0x0000ca30 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000ca34 lw t9, -0x7da8(gp) | t9 = sym.imp.g_option_context_new;
| /* str.boot */
0x0000ca38 addiu v0, v0, -0x4720 | v0 += -0x4720;
0x0000ca3c sw v0, 0x148(sp) | *(var_148h) = v0;
0x0000ca40 addiu v0, zero, 0x62 | v0 = 0x62;
0x0000ca44 sb v0, 0x14c(sp) | *(var_14ch) = v0;
0x0000ca48 addiu v0, sp, 0x34 | v0 = sp + 0x34;
0x0000ca4c sw v0, 0x158(sp) | *(var_158h) = v0;
0x0000ca50 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000ca54 sw v1, 0x138(sp) | *(var_138h) = v1;
| /* str.Set_boot_colors_without_daemonizing */
0x0000ca58 addiu v0, v0, -0x4718 | v0 += -0x4718;
0x0000ca5c sw v0, 0x15c(sp) | *(var_15ch) = v0;
0x0000ca60 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000ca64 addiu a0, a0, -0x27f0 | a0 += -0x27f0;
| /* esilref: 'booting' */
0x0000ca68 addiu v0, v0, -0x7750 | v0 += -0x7750;
0x0000ca6c sw v0, 0x164(sp) | *(var_164h) = v0;
0x0000ca70 addiu v0, zero, 0x72 | v0 = 0x72;
0x0000ca74 sb v0, 0x168(sp) | *(var_168h) = v0;
0x0000ca78 addiu v0, sp, 0x38 | v0 = sp + 0x38;
0x0000ca7c sw v0, 0x174(sp) | *(var_174h) = v0;
0x0000ca80 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000ca84 sw zero, 0x44(sp) | *(var_44h) = 0;
| /* str.Set_booting_states */
0x0000ca88 addiu v0, v0, -0x46f4 | v0 += -0x46f4;
0x0000ca8c sw v0, 0x178(sp) | *(var_178h) = v0;
0x0000ca90 sw zero, 0xe0(sp) | *(var_e0h) = 0;
0x0000ca94 sw zero, 0xe4(sp) | *(var_e4h) = 0;
0x0000ca98 sw zero, 0xf0(sp) | *(var_f0h) = 0;
0x0000ca9c sw zero, 0xfc(sp) | *(var_fch) = 0;
0x0000caa0 sw zero, 0x100(sp) | *(var_100h) = 0;
0x0000caa4 sw zero, 0x10c(sp) | *(var_10ch) = 0;
0x0000caa8 sw zero, 0x118(sp) | *(var_118h) = 0;
0x0000caac sw zero, 0x128(sp) | *(var_128h) = 0;
0x0000cab0 sw zero, 0x134(sp) | *(var_134h) = 0;
0x0000cab4 sw zero, 0x144(sp) | *(var_144h) = 0;
0x0000cab8 sw zero, 0x150(sp) | *(var_150h) = 0;
0x0000cabc sw zero, 0x154(sp) | *(var_154h) = 0;
0x0000cac0 sw zero, 0x160(sp) | *(var_160h) = 0;
0x0000cac4 sw zero, 0x16c(sp) | *(var_16ch) = 0;
0x0000cac8 sw zero, 0x170(sp) | *(var_170h) = 0;
0x0000cacc sw zero, 0x17c(sp) | *(var_17ch) = 0;
0x0000cad0 sw zero, 0x180(sp) | *(var_180h) = 0;
0x0000cad4 sb zero, 0x184(sp) | *(var_184h) = 0;
0x0000cad8 sw zero, 0x188(sp) | *(var_188h) = 0;
0x0000cadc sw zero, 0x18c(sp) | *(var_18ch) = 0;
0x0000cae0 sw zero, 0x190(sp) | *(var_190h) = 0;
0x0000cae4 sw zero, 0x194(sp) | *(var_194h) = 0;
0x0000cae8 sw zero, 0x198(sp) | *(var_198h) = 0;
0x0000caec jalr t9 | t9 ();
0x0000caf0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000caf4 move a0, v0 | a0 = v0;
0x0000caf8 move a2, zero | a2 = 0;
0x0000cafc lw t9, -0x7c08(gp) | t9 = sym.imp.g_option_context_add_main_entries;
0x0000cb00 addiu a1, sp, 0xd8 | a1 = sp + 0xd8;
0x0000cb04 move s1, v0 | s1 = v0;
0x0000cb08 jalr t9 | t9 ();
0x0000cb0c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cb10 addiu s2, sp, 0x44 | s2 = sp + 0x44;
0x0000cb14 move a3, s2 | a3 = s2;
0x0000cb18 lw t9, -0x7ccc(gp) | t9 = sym.imp.g_option_context_parse;
0x0000cb1c addiu a2, sp, 0x24 | a2 = sp + 0x24;
0x0000cb20 addiu a1, sp, 0x1c0 | a1 = sp + segment.REGINFO;
0x0000cb24 move a0, s1 | a0 = s1;
0x0000cb28 jalr t9 | t9 ();
0x0000cb2c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cb30 beqz v0, 0xcd84 | goto label_8;
| }
0x0000cb34 lw t9, -0x7b94(gp) | t9 = sym.imp.g_option_context_free;
0x0000cb38 move a0, s1 | a0 = s1;
0x0000cb3c jalr t9 | t9 ();
0x0000cb40 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cb44 lw v0, 0x30(sp) | v0 = *(var_30h);
0x0000cb48 lw v1, -0x7fa8(gp) | v1 = *(gp);
0x0000cb4c lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
0x0000cb50 lw t9, -0x7bd4(gp) | t9 = sym.imp.system
0x0000cb54 sltu v0, zero, v0 | v0 = (0 < v0) ? 1 : 0;
| /* str.pidof_setled____dev_null */
0x0000cb58 addiu a0, a0, -0x46b4 | a0 += -0x46b4;
0x0000cb5c sw v0, (v1) | *(v1) = v0;
0x0000cb60 jalr t9 | t9 ();
0x0000cb64 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cb68 beqz v0, 0xcd3c | goto label_9;
| }
| label_0:
0x0000cb6c lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000cb70 addiu v0, zero, 1 | v0 = 1;
| if (v0 != 0) {
0x0000cb74 bnez v0, 0xcd00 | goto label_10;
| }
0x0000cb78 lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x0000cb7c lw t9, -0x7c5c(gp) | t9 = sym.imp.openlog;
| if (v0 != 0) {
0x0000cb80 bnez v0, 0xcd04 | goto label_11;
| }
0x0000cb84 lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
0x0000cb88 addiu a2, zero, 0x18 | a2 = 0x18;
0x0000cb8c addiu a1, zero, 1 | a1 = 1;
| /* str.blinkenlights */
0x0000cb90 addiu a0, a0, -0x4668 | a0 += -0x4668;
0x0000cb94 jalr t9 | t9 ();
0x0000cb98 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cb9c lw t9, -0x7edc(gp) | t9 = sym.plugin_led_lib_init;
0x0000cba0 bal 0x131ec | sym_plugin_led_lib_init ();
0x0000cba4 nop |
0x0000cba8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cbac beqz v0, 0xcd34 | goto label_12;
| }
| do {
0x0000cbb0 lw t9, -0x7ed8(gp) | t9 = sym.create_transfer_socket;
0x0000cbb4 bal 0xadc4 | sym_create_transfer_socket ();
0x0000cbb8 nop |
0x0000cbbc move s5, v0 | s5 = v0;
0x0000cbc0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x0000cbc4 bltz v0, 0xd180 | goto label_13;
| }
0x0000cbc8 lw s4, -0x7fc8(gp) | s4 = *(gp);
0x0000cbcc lw t9, -0x7df8(gp) | t9 = sym.imp.getpwnam;
| /* esilref: 'led' */
0x0000cbd0 addiu a0, s4, 0x744c | a0 = s4 + 0x744c;
0x0000cbd4 jalr t9 | t9 ();
0x0000cbd8 move s3, v0 | s3 = v0;
0x0000cbdc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cbe0 beqz v0, 0xd0f8 | goto label_14;
| }
0x0000cbe4 lw t9, -0x7bb8(gp) | t9 = sym.imp.getgrnam;
| /* esilref: 'led' */
0x0000cbe8 addiu a0, s4, 0x744c | a0 = s4 + 0x744c;
0x0000cbec jalr t9 | t9 ();
0x0000cbf0 move s1, v0 | s1 = v0;
0x0000cbf4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cbf8 beqz v0, 0xd11c | goto label_15;
| }
0x0000cbfc lw t9, -0x7de0(gp) | t9 = sym.imp.setgid;
0x0000cc00 lw a0, 8(v0) | a0 = *((v0 + 2));
0x0000cc04 jalr t9 | t9 ();
0x0000cc08 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x0000cc0c bltz v0, 0xd084 | goto label_16;
| }
0x0000cc10 lw t9, -0x7d30(gp) | t9 = sym.imp.initgroups;
0x0000cc14 lw a1, 8(s1) | a1 = *((s1 + 2));
0x0000cc18 lw a0, (s3) | a0 = *(s3);
0x0000cc1c jalr t9 | t9 ();
0x0000cc20 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x0000cc24 bltz v0, 0xd0cc | goto label_17;
| }
0x0000cc28 lw t9, -0x7ca0(gp) | t9 = sym.imp.setuid;
0x0000cc2c lw a0, 8(s3) | a0 = *((s3 + 2));
0x0000cc30 jalr t9 | t9 ();
0x0000cc34 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 < 0) {
0x0000cc38 bltz v0, 0xd140 | goto label_18;
| }
0x0000cc3c lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x0000cc40 lw t9, -0x7b60(gp) | t9 = sym.imp.daemon;
| if (v0 == 0) {
0x0000cc44 beqz v0, 0xcde4 | goto label_19;
| }
| label_1:
0x0000cc48 lw t9, -0x7f54(gp) | t9 = sym.led_controller_get_type;
0x0000cc4c bal 0x7c0c | sym_led_controller_get_type ();
0x0000cc50 nop |
0x0000cc54 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cc58 move a1, zero | a1 = 0;
0x0000cc5c lw t9, -0x7c48(gp) | t9 = sym.imp.g_object_new;
0x0000cc60 move a0, v0 | a0 = v0;
0x0000cc64 jalr t9 | t9 ();
0x0000cc68 lw v1, 0x3c(sp) | v1 = *(var_3ch);
0x0000cc6c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cc70 move s1, v0 | s1 = v0;
| if (v1 == 0) {
0x0000cc74 beqz v1, 0xcf58 | goto label_20;
| }
| label_4:
0x0000cc78 lw a2, 0x40(sp) | a2 = *(var_40h);
0x0000cc7c lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
| if (a2 == 0) {
0x0000cc80 beqz a2, 0xcf3c | goto label_21;
| }
| label_3:
0x0000cc84 lw t9, -0x7ed4(gp) | t9 = sym.led_controller_setup;
0x0000cc88 lw a1, 0x3c(sp) | a1 = *(var_3ch);
0x0000cc8c move a3, s2 | a3 = s2;
0x0000cc90 move a0, s1 | a0 = s1;
0x0000cc94 bal 0x9068 | sym_led_controller_setup ();
0x0000cc98 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000cc9c bnez v0, 0xce44 | goto label_22;
| }
0x0000cca0 lw v0, 0x44(sp) | v0 = *(var_44h);
0x0000cca4 lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
| if (v0 == 0) {
0x0000cca8 beqz v0, 0xce18 | goto label_23;
| }
0x0000ccac lw v0, 8(v0) | v0 = *((v0 + 2));
0x0000ccb0 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* str.blinkenlights_could_not_initialize */
0x0000ccb4 addiu a3, a3, -0x44a4 | a3 += -sym.led_name_get_type;
| label_2:
0x0000ccb8 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000ccbc addiu a1, zero, 1 | a1 = 1;
| /* str._s:__s */
0x0000ccc0 addiu a2, a2, -0x4480 | a2 += -0x4480;
0x0000ccc4 sw v0, 0x10(sp) | *(var_10h) = v0;
0x0000ccc8 addiu a0, zero, 3 | a0 = 3;
0x0000cccc jalr t9 | t9 ();
0x0000ccd0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000ccd4 lw t9, -0x7dbc(gp) | t9 = sym.imp.g_error_free;
0x0000ccd8 lw a0, 0x44(sp) | a0 = *(var_44h);
0x0000ccdc jalr t9 | t9 ();
0x0000cce0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cce4 lw t9, -0x7b9c(gp) | t9 = sym.imp.g_object_unref;
0x0000cce8 move a0, s1 | a0 = s1;
0x0000ccec jalr t9 | t9 ();
0x0000ccf0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000ccf4 lw t9, -0x7e08(gp) | t9 = sym.imp.exit;
0x0000ccf8 addiu a0, zero, 1 | a0 = 1;
0x0000ccfc jalr t9 | t9 ();
| label_10:
0x0000cd00 sw v0, 0x2c(sp) | *(var_2ch) = v0;
| label_11:
0x0000cd04 lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
0x0000cd08 lw t9, -0x7c5c(gp) | t9 = sym.imp.openlog;
0x0000cd0c addiu a2, zero, 0xa8 | a2 = 0xa8;
0x0000cd10 addiu a1, zero, 3 | a1 = 3;
| /* str.blinkenlights */
0x0000cd14 addiu a0, a0, -0x4668 | a0 += -0x4668;
0x0000cd18 jalr t9 | t9 ();
0x0000cd1c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cd20 lw t9, -0x7edc(gp) | t9 = sym.plugin_led_lib_init;
0x0000cd24 bal 0x131ec | sym_plugin_led_lib_init ();
0x0000cd28 nop |
0x0000cd2c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cd30 bnez v0, 0xcbb0 |
| } while (v0 != 0);
| label_12:
0x0000cd34 addiu v0, zero, 1 | v0 = 1;
0x0000cd38 b 0xcdb4 | goto label_24;
| label_9:
0x0000cd3c lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
0x0000cd40 lw t9, -0x7bd4(gp) | t9 = sym.imp.system
| /* str.killall_setled */
0x0000cd44 addiu a0, a0, -0x4698 | a0 += -0x4698;
0x0000cd48 jalr t9 | t9 ();
0x0000cd4c addiu v1, zero, -1 | v1 = -1;
0x0000cd50 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != v1) {
0x0000cd54 bne v0, v1, 0xcb6c | goto label_0;
| }
0x0000cd58 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000cd5c lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
0x0000cd60 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| /* str.retcode____1 */
0x0000cd64 addiu v0, v0, -0x4678 | v0 += -0x4678;
0x0000cd68 lw t9, -0x7c44(gp) | t9 = sym.imp.g_assertion_message_expr;
0x0000cd6c sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.real_main */
0x0000cd70 addiu a3, a3, -0x43d0 | a3 += -0x43d0;
0x0000cd74 addiu a2, zero, 0xf0 | a2 = 0xf0;
| /* str.blinkenlights.c */
0x0000cd78 addiu a1, a1, -0x4688 | a1 += -0x4688;
0x0000cd7c move a0, zero | a0 = 0;
0x0000cd80 jalr t9 | t9 ();
| label_8:
0x0000cd84 lw v0, 0x44(sp) | v0 = *(var_44h);
0x0000cd88 lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
0x0000cd8c lw t9, -0x7bf0(gp) | t9 = sym.imp.g_printerr;
0x0000cd90 lw a1, 8(v0) | a1 = *((v0 + 2));
| /* str._s_nTry____or___help_for_more_information._n */
0x0000cd94 addiu a0, a0, -0x46e0 | a0 += -0x46e0;
0x0000cd98 jalr t9 | t9 ();
0x0000cd9c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cda0 lw t9, -0x7dbc(gp) | t9 = sym.imp.g_error_free;
0x0000cda4 lw a0, 0x44(sp) | a0 = *(var_44h);
0x0000cda8 jalr t9 | t9 ();
0x0000cdac lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cdb0 addiu v0, zero, 1 | v0 = 1;
| do {
| label_24:
0x0000cdb4 lw a0, 0x19c(sp) | a0 = *(var_19ch);
0x0000cdb8 lw v1, (s0) | v1 = *(s0);
0x0000cdbc lw ra, 0x1bc(sp) | ra = *(var_1bch);
| if (a0 != v1) {
0x0000cdc0 bne a0, v1, 0xd164 | goto label_25;
| }
0x0000cdc4 lw s5, 0x1b8(sp) | s5 = *(var_1b8h);
0x0000cdc8 lw s4, 0x1b4(sp) | s4 = *(var_1b4h);
0x0000cdcc lw s3, 0x1b0(sp) | s3 = *(var_1b0h);
0x0000cdd0 lw s2, 0x1ac(sp) | s2 = *(var_1ach);
0x0000cdd4 lw s1, 0x1a8(sp) | s1 = *(var_1a8h);
0x0000cdd8 lw s0, 0x1a4(sp) | s0 = *(var_1a4h);
0x0000cddc addiu sp, sp, 0x1c0 |
0x0000cde0 jr ra | return v0;
| label_19:
0x0000cde4 move a1, zero | a1 = 0;
0x0000cde8 move a0, zero | a0 = 0;
0x0000cdec jalr t9 | t9 ();
0x0000cdf0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cdf4 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| if (v0 != 0) {
0x0000cdf8 bnez v0, 0xd170 | goto label_26;
| }
0x0000cdfc lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000ce00 addiu a1, zero, 1 | a1 = 1;
| /* str.blinkenlights_starting. */
0x0000ce04 addiu a2, a2, -0x4528 | a2 += -0x4528;
0x0000ce08 addiu a0, zero, 6 | a0 = 6;
0x0000ce0c jalr t9 | t9 ();
0x0000ce10 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000ce14 b 0xcc48 | goto label_1;
| label_23:
0x0000ce18 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000ce1c lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
0x0000ce20 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| /* str.err___NULL */
0x0000ce24 addiu v0, v0, -0x44b0 | v0 += -0x44b0;
0x0000ce28 lw t9, -0x7c44(gp) | t9 = sym.imp.g_assertion_message_expr;
0x0000ce2c sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.real_main */
0x0000ce30 addiu a3, a3, -0x43d0 | a3 += -0x43d0;
0x0000ce34 addiu a2, zero, 0x128 | a2 = 0x128;
| /* str.blinkenlights.c */
0x0000ce38 addiu a1, a1, -0x4688 | a1 += -0x4688;
0x0000ce3c move a0, zero | a0 = 0;
0x0000ce40 jalr t9 | t9 ();
| label_22:
0x0000ce44 lw t9, -0x7b48(gp) | t9 = *((gp - 7890));
0x0000ce48 lw a0, 0x3c(sp) | a0 = *(var_3ch);
0x0000ce4c addiu s3, sp, 0x48 | s3 = sp + 0x48;
0x0000ce50 jalr t9 | t9 ();
0x0000ce54 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000ce58 lw t9, -0x7b48(gp) | t9 = *((gp - 7890));
0x0000ce5c lw a0, 0x40(sp) | a0 = *(var_40h);
0x0000ce60 jalr t9 | t9 ();
0x0000ce64 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000ce68 addiu a0, sp, 0x50 | a0 = sp + 0x50;
0x0000ce6c lw t9, -0x7b50(gp) | t9 = sym.imp.sigemptyset;
0x0000ce70 sw zero, 0x48(sp) | *(var_48h) = 0;
0x0000ce74 jalr t9 | t9 ();
0x0000ce78 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000ce7c move a2, zero | a2 = 0;
0x0000ce80 move a1, s3 | a1 = s3;
0x0000ce84 lw v0, -0x7fc8(gp) | v0 = *(gp);
0x0000ce88 lw t9, -0x7c70(gp) | t9 = sym.imp.sigaction;
0x0000ce8c addiu v0, v0, -0x3710 | v0 += -0x3710;
0x0000ce90 addiu a0, zero, 0xf | a0 = 0xf;
0x0000ce94 sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x0000ce98 jalr t9 | t9 ();
0x0000ce9c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cea0 move a2, zero | a2 = 0;
0x0000cea4 move a1, s3 | a1 = s3;
0x0000cea8 lw t9, -0x7c70(gp) | t9 = sym.imp.sigaction;
0x0000ceac addiu a0, zero, 2 | a0 = 2;
0x0000ceb0 jalr t9 | t9 ();
0x0000ceb4 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000ceb8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000cebc bnez v0, 0xcfcc | goto label_27;
| }
0x0000cec0 lw v0, 0x38(sp) | v0 = *(var_38h);
0x0000cec4 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| if (v0 != 0) {
0x0000cec8 beqz v0, 0xcf04 |
0x0000cecc lw t9, -0x7f20(gp) | t9 = sym.led_controller_set_boot_states;
0x0000ced0 move a1, s2 | a1 = s2;
0x0000ced4 move a0, s1 | a0 = s1;
0x0000ced8 bal 0x94dc | sym_led_controller_set_boot_states ();
0x0000cedc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cee0 bnez v0, 0xcf00 |
0x0000cee4 lw v0, 0x44(sp) | v0 = *(var_44h);
0x0000cee8 lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
| if (v0 == 0) {
0x0000ceec beqz v0, 0xd02c | goto label_28;
| }
0x0000cef0 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0000cef4 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* str.blinkenlights_could_not_insert_boot_states */
0x0000cef8 addiu a3, a3, -0x4450 | a3 += -0x4450;
0x0000cefc b 0xccb8 | goto label_2;
| }
0x0000cf00 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| }
0x0000cf04 lw t9, -0x7ed0(gp) | t9 = sym.led_controller_set_states_from_file;
0x0000cf08 move a2, s2 | a2 = s2;
| /* str._var_run_setled_states */
0x0000cf0c addiu a1, a1, -0x4424 | a1 += -0x4424;
0x0000cf10 move a0, s1 | a0 = s1;
0x0000cf14 bal 0x9730 | sym_led_controller_set_states_from_file ();
0x0000cf18 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0000cf1c bnez v0, 0xcf74 |
0x0000cf20 lw v0, 0x44(sp) | v0 = *(var_44h);
0x0000cf24 lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
| if (v0 == 0) {
0x0000cf28 beqz v0, 0xd000 | goto label_29;
| }
0x0000cf2c lw v0, 8(v0) | v0 = *((v0 + 2));
0x0000cf30 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* str.blinkenlights_could_not_read_states_from_file */
0x0000cf34 addiu a3, a3, -0x440c | a3 += -0x440c;
0x0000cf38 b 0xccb8 | goto label_2;
| label_21:
0x0000cf3c lw t9, -0x7bb0(gp) | t9 = sym.imp.g_strdup;
| /* str._usr_share_blinkenlights_led_state_priorities.conf */
0x0000cf40 addiu a0, a0, -0x44e4 | a0 += -0x44e4;
0x0000cf44 jalr t9 | t9 ();
0x0000cf48 move a2, v0 | a2 = v0;
0x0000cf4c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cf50 sw v0, 0x40(sp) | *(var_40h) = v0;
0x0000cf54 b 0xcc84 | goto label_3;
| label_20:
0x0000cf58 lw a0, -0x7fc4(gp) | a0 = *((gp - 8177));
0x0000cf5c lw t9, -0x7bb0(gp) | t9 = sym.imp.g_strdup;
| /* str._usr_share_blinkenlights_led_control.conf */
0x0000cf60 addiu a0, a0, -0x4510 | a0 += -0x4510;
0x0000cf64 jalr t9 | t9 ();
0x0000cf68 sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x0000cf6c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cf70 b 0xcc78 | goto label_4;
| }
0x0000cf74 lw t9, -0x7ecc(gp) | t9 = sym.led_controller_run_loop;
0x0000cf78 move a1, s5 | a1 = s5;
0x0000cf7c move a0, s1 | a0 = s1;
0x0000cf80 bal 0x9a28 | sym_led_controller_run_loop ();
0x0000cf84 lw gp, 0x18(sp) | gp = *(var_18h);
| label_5:
0x0000cf88 lw t9, -0x7b9c(gp) | t9 = sym.imp.g_object_unref;
0x0000cf8c move a0, s1 | a0 = s1;
0x0000cf90 jalr t9 | t9 ();
0x0000cf94 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cf98 lw t9, -0x7ec8(gp) | t9 = sym.plugin_led_lib_exit;
0x0000cf9c bal 0x13174 | sym_plugin_led_lib_exit ();
0x0000cfa0 nop |
0x0000cfa4 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cfa8 addiu a1, zero, 1 | a1 = 1;
0x0000cfac addiu a0, zero, 6 | a0 = 6;
0x0000cfb0 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000cfb4 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* str.Terminating */
0x0000cfb8 addiu a2, a2, -0x43dc | a2 += -0x43dc;
0x0000cfbc jalr t9 | t9 ();
0x0000cfc0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000cfc4 move v0, zero | v0 = 0;
0x0000cfc8 b 0xcdb4 |
| } while (1);
| label_27:
0x0000cfcc lw t9, -0x7ec4(gp) | t9 = sym.led_controller_set_boot_colors;
0x0000cfd0 move a1, s2 | a1 = s2;
0x0000cfd4 move a0, s1 | a0 = s1;
0x0000cfd8 bal 0x93c8 | sym_led_controller_set_boot_colors ();
0x0000cfdc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000cfe0 bnez v0, 0xcf88 | goto label_5;
| }
0x0000cfe4 lw v0, 0x44(sp) | v0 = *(var_44h);
0x0000cfe8 lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
| if (v0 != 0) {
0x0000cfec beqz v0, 0xd058 |
0x0000cff0 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0000cff4 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* str.blinkenlights_could_not_set_boot_colors */
0x0000cff8 addiu a3, a3, -0x4478 | a3 += -0x4478;
0x0000cffc b 0xccb8 | goto label_2;
| label_29:
0x0000d000 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000d004 lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
0x0000d008 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| /* str.err___NULL */
0x0000d00c addiu v0, v0, -0x44b0 | v0 += -0x44b0;
0x0000d010 lw t9, -0x7c44(gp) | t9 = sym.imp.g_assertion_message_expr;
0x0000d014 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.real_main */
0x0000d018 addiu a3, a3, -0x43d0 | a3 += -0x43d0;
0x0000d01c addiu a2, zero, 0x148 | a2 = 0x148;
| /* str.blinkenlights.c */
0x0000d020 addiu a1, a1, -0x4688 | a1 += -0x4688;
0x0000d024 move a0, zero | a0 = 0;
0x0000d028 jalr t9 | t9 ();
| label_28:
0x0000d02c lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000d030 lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
0x0000d034 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| /* str.err___NULL */
0x0000d038 addiu v0, v0, -0x44b0 | v0 += -0x44b0;
0x0000d03c lw t9, -0x7c44(gp) | t9 = sym.imp.g_assertion_message_expr;
0x0000d040 sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.real_main */
0x0000d044 addiu a3, a3, -0x43d0 | a3 += -0x43d0;
0x0000d048 addiu a2, zero, 0x13e | a2 = 0x13e;
| /* str.blinkenlights.c */
0x0000d04c addiu a1, a1, -0x4688 | a1 += -0x4688;
0x0000d050 move a0, zero | a0 = 0;
0x0000d054 jalr t9 | t9 ();
| }
0x0000d058 lw v0, -0x7fc4(gp) | v0 = *((gp - 8177));
0x0000d05c lw a3, -0x7fc4(gp) | a3 = *((gp - 8177));
0x0000d060 lw a1, -0x7fc4(gp) | a1 = *((gp - 8177));
| /* str.err___NULL */
0x0000d064 addiu v0, v0, -0x44b0 | v0 += -0x44b0;
0x0000d068 lw t9, -0x7c44(gp) | t9 = sym.imp.g_assertion_message_expr;
0x0000d06c sw v0, 0x10(sp) | *(var_10h) = v0;
| /* str.real_main */
0x0000d070 addiu a3, a3, -0x43d0 | a3 += -0x43d0;
0x0000d074 addiu a2, zero, 0x136 | a2 = 0x136;
| /* str.blinkenlights.c */
0x0000d078 addiu a1, a1, -0x4688 | a1 += -0x4688;
0x0000d07c move a0, zero | a0 = 0;
0x0000d080 jalr t9 | t9 ();
| label_16:
0x0000d084 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d088 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
0x0000d08c lw a3, 8(s1) | a3 = *((s1 + 2));
| /* str.Failed_setting_gid_to__d:__m_n */
0x0000d090 addiu a2, a2, -0x45e4 | a2 += -0x45e4;
0x0000d094 addiu a1, zero, 1 | a1 = 1;
0x0000d098 addiu a0, zero, 3 | a0 = 3;
0x0000d09c jalr t9 | t9 ();
0x0000d0a0 lw gp, 0x18(sp) | gp = *(var_18h);
| do {
| label_6:
0x0000d0a4 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d0a8 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
0x0000d0ac addiu a0, zero, 3 | a0 = 3;
| /* str.Failed_setting_uid_and_gid_of_the_process._n */
0x0000d0b0 addiu a2, a2, -0x4568 | a2 += -0x4568;
| label_7:
0x0000d0b4 addiu a1, zero, 1 | a1 = 1;
0x0000d0b8 jalr t9 | t9 ();
0x0000d0bc lw gp, 0x18(sp) | gp = *(var_18h);
0x0000d0c0 lw t9, -0x7e08(gp) | t9 = sym.imp.exit;
0x0000d0c4 addiu a0, zero, 1 | a0 = 1;
0x0000d0c8 jalr t9 | t9 ();
| label_17:
0x0000d0cc lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d0d0 lw v0, 8(s1) | v0 = *((s1 + 2));
0x0000d0d4 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
0x0000d0d8 lw a3, (s3) | a3 = *(s3);
| /* str.Unable_to_run_initgroups___with_username:__s__gid:__d:__m_n */
0x0000d0dc addiu a2, a2, -0x45c4 | a2 += -0x45c4;
0x0000d0e0 sw v0, 0x10(sp) | *(var_10h) = v0;
0x0000d0e4 addiu a1, zero, 1 | a1 = 1;
0x0000d0e8 addiu a0, zero, 3 | a0 = 3;
0x0000d0ec jalr t9 | t9 ();
0x0000d0f0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000d0f4 b 0xd0a4 |
| } while (1);
| label_14:
0x0000d0f8 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d0fc lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* esilref: 'led' */
0x0000d100 addiu a3, s4, 0x744c | a3 = s4 + 0x744c;
| /* str.Couldnt_get_uid_for_user___s_:__m._n */
0x0000d104 addiu a2, a2, -0x4634 | a2 += -0x4634;
0x0000d108 addiu a1, zero, 1 | a1 = 1;
0x0000d10c addiu a0, zero, 3 | a0 = 3;
0x0000d110 jalr t9 | t9 ();
0x0000d114 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000d118 b 0xd0a4 | goto label_6;
| label_15:
0x0000d11c lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d120 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
| /* esilref: 'led' */
0x0000d124 addiu a3, s4, 0x744c | a3 = s4 + 0x744c;
| /* str.Couldnt_get_gid_for_group___s_:__m._n */
0x0000d128 addiu a2, a2, -0x460c | a2 += -0x460c;
0x0000d12c addiu a1, zero, 1 | a1 = 1;
0x0000d130 addiu a0, zero, 3 | a0 = 3;
0x0000d134 jalr t9 | t9 ();
0x0000d138 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000d13c b 0xd0a4 | goto label_6;
| label_18:
0x0000d140 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d144 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
0x0000d148 lw a3, 8(s3) | a3 = *((s3 + 2));
| /* str.Failed_setting_uid_to__d:__m_n */
0x0000d14c addiu a2, a2, -0x4588 | a2 += -0x4588;
0x0000d150 addiu a1, zero, 1 | a1 = 1;
0x0000d154 addiu a0, zero, 3 | a0 = 3;
0x0000d158 jalr t9 | t9 ();
0x0000d15c lw gp, 0x18(sp) | gp = *(var_18h);
0x0000d160 b 0xd0a4 | goto label_6;
| label_25:
0x0000d164 lw t9, -0x7d48(gp) | t9 = sym.imp.__stack_chk_fail;
0x0000d168 jalr t9 | t9 ();
0x0000d16c nop |
| label_26:
0x0000d170 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d174 addiu a0, zero, 3 | a0 = 3;
| /* str.Daemon_failed:__m */
0x0000d178 addiu a2, a2, -0x453c | a2 += -0x453c;
0x0000d17c b 0xd0b4 | goto label_7;
| label_13:
0x0000d180 lw a2, -0x7fc4(gp) | a2 = *((gp - 8177));
0x0000d184 lw t9, -0x7d20(gp) | t9 = sym.imp.__syslog_chk;
0x0000d188 addiu a0, zero, 3 | a0 = 3;
| /* str.Failed_to_create_transfer_socket._n */
0x0000d18c addiu a2, a2, -0x4658 | a2 += -0x4658;
0x0000d190 b 0xd0b4 | goto label_7;
| }
[*] Function system used 3 times blinkenlights