[*] Binary protection state of powerd
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of powerd
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/powerd @ 0xae70 */
| #include <stdint.h>
|
; (fcn) sym.power_producer_new () | void power_producer_new () {
0x0000ae70 lui gp, 3 |
0x0000ae74 addiu gp, gp, -0x1e40 |
0x0000ae78 addu gp, gp, t9 | gp += t9;
0x0000ae7c addiu sp, sp, -0x70 |
0x0000ae80 sw fp, 0x68(sp) | *(var_68h) = fp;
0x0000ae84 lw fp, -0x7c4c(gp) | fp = *((gp - 7955));
0x0000ae88 sw gp, 0x20(sp) | *(var_20h) = gp;
0x0000ae8c sw ra, 0x6c(sp) | *(var_6ch) = ra;
0x0000ae90 lw v0, (fp) | v0 = *(fp);
0x0000ae94 sw s7, 0x64(sp) | *(var_64h) = s7;
0x0000ae98 sw s6, 0x60(sp) | *(var_60h) = s6;
0x0000ae9c sw s5, 0x5c(sp) | *(var_5ch) = s5;
0x0000aea0 sw s4, 0x58(sp) | *(var_58h) = s4;
0x0000aea4 sw s3, 0x54(sp) | *(var_54h) = s3;
0x0000aea8 sw s2, 0x50(sp) | *(var_50h) = s2;
0x0000aeac sw s1, 0x4c(sp) | *(var_4ch) = s1;
0x0000aeb0 sw s0, 0x48(sp) | *(var_48h) = s0;
0x0000aeb4 sw v0, 0x44(sp) | *(var_44h) = v0;
0x0000aeb8 lw t9, -0x7e7c(gp) | t9 = sym.power_producer_get_type;
| if (a0 == 0) {
0x0000aebc beqz a0, 0xb108 | goto label_4;
| }
0x0000aec0 move s0, a0 | s0 = a0;
0x0000aec4 bal 0xa250 | sym_power_producer_get_type ();
0x0000aec8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000aecc move a1, zero | a1 = 0;
0x0000aed0 lw t9, -0x7b90(gp) | t9 = sym.imp.g_object_new;
0x0000aed4 move a0, v0 | a0 = v0;
0x0000aed8 jalr t9 | t9 ();
0x0000aedc move s2, v0 | s2 = v0;
0x0000aee0 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0000aee4 beqz v0, 0xb300 | goto label_5;
| }
0x0000aee8 lw t9, -0x7ae8(gp) | t9 = sym.imp.g_key_file_new;
0x0000aeec sw zero, 0x40(sp) | *(var_40h) = 0;
0x0000aef0 jalr t9 | t9 ();
0x0000aef4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000aef8 addiu s5, sp, 0x40 | s5 = sp + 0x40;
0x0000aefc move a3, s5 | a3 = s5;
0x0000af00 lw t9, -0x7cb4(gp) | t9 = sym.imp.g_key_file_load_from_file;
0x0000af04 move a2, zero | a2 = 0;
0x0000af08 move a1, s0 | a1 = s0;
0x0000af0c move a0, v0 | a0 = v0;
0x0000af10 move s1, v0 | s1 = v0;
0x0000af14 jalr t9 | t9 ();
0x0000af18 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0000af1c beqz v0, 0xb168 | goto label_6;
| }
0x0000af20 lw a0, -0x7fc4(gp) | a0 = *(gp);
0x0000af24 lw t9, -0x7aec(gp) | t9 = sym.imp.g_strdup;
| /* str.producer0 */
0x0000af28 addiu a0, a0, -0x1c6c | a0 += -0x1c6c;
0x0000af2c jalr t9 | t9 ();
0x0000af30 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000af34 move s0, v0 | s0 = v0;
0x0000af38 move a1, s0 | a1 = s0;
0x0000af3c lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0000af40 lw t9, -0x7b54(gp) | t9 = sym.imp.g_key_file_has_group;
| /* esilref: 'name' */
0x0000af44 addiu v0, v0, -0xa44 | v0 += -0xa44;
0x0000af48 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0000af4c lw v0, -0x7fc0(gp) | v0 = *(gp);
0x0000af50 lw s7, -0x7fc4(gp) | s7 = *(gp);
0x0000af54 sw v0, 0x34(sp) | *(var_34h_2) = v0;
0x0000af58 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0000af5c move a0, s1 | a0 = s1;
0x0000af60 sw v0, 0x38(sp) | *(var_38h_2) = v0;
0x0000af64 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0000af68 move s6, zero | s6 = 0;
| /* str.producer_d */
0x0000af6c addiu v0, v0, -0x1bd0 | v0 += -0x1bd0;
0x0000af70 sw v0, 0x3c(sp) | *(var_3ch_2) = v0;
0x0000af74 jalr t9 | t9 ();
| /* esilref: 'max_power' */
0x0000af78 addiu s7, s7, -0x2054 | s7 += -0x2054;
0x0000af7c lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 != 0) {
0x0000af80 bnez v0, 0xb03c | goto label_7;
| }
| do {
0x0000af84 lw t9, -0x7e64(gp) | t9 = sym.power_status_set_power_producers;
0x0000af88 lw a0, 0x14(s2) | a0 = *((s2 + 5));
0x0000af8c bal 0x925c | sym_power_status_set_power_producers ();
0x0000af90 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000af94 lw t9, -0x7a50(gp) | t9 = *((gp - 7828));
0x0000af98 move a0, s0 | a0 = s0;
0x0000af9c jalr t9 | t9 ();
0x0000afa0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000afa4 lw t9, -0x7d48(gp) | t9 = sym.imp.g_key_file_free;
0x0000afa8 move a0, s1 | a0 = s1;
0x0000afac jalr t9 | t9 ();
0x0000afb0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000afb4 b 0xb128 | goto label_3;
| label_1:
0x0000afb8 lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
0x0000afbc sw t0, 0x18(sp) | *(var_18h) = t0;
0x0000afc0 sw t1, 0x1c(sp) | *(var_1ch) = t1;
0x0000afc4 sw s4, 0x10(sp) | *(var_10h_2) = s4;
0x0000afc8 move a3, s0 | a3 = s0;
0x0000afcc addiu a2, v0, -0x1bf8 | a2 = v0 + -0x1bf8;
0x0000afd0 addiu a1, zero, 1 | a1 = 1;
0x0000afd4 addiu a0, zero, 7 | a0 = 7;
0x0000afd8 jalr t9 | t9 ();
0x0000afdc lw gp, 0x20(sp) | gp = *(var_20h);
0x0000afe0 lw t9, -0x7b18(gp) | t9 = sym.imp.g_hash_table_insert;
| label_0:
0x0000afe4 lw a0, 0x14(s2) | a0 = *((s2 + 5));
0x0000afe8 move a2, s3 | a2 = s3;
0x0000afec move a1, s4 | a1 = s4;
0x0000aff0 jalr t9 | t9 ();
0x0000aff4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000aff8 move a0, s0 | a0 = s0;
0x0000affc lw t9, -0x7a50(gp) | t9 = *((gp - 7828));
0x0000b000 addiu s6, s6, 1 | s6++;
0x0000b004 jalr t9 | t9 ();
0x0000b008 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b00c lw a0, 0x3c(sp) | a0 = *(var_3ch_2);
0x0000b010 lw t9, -0x7bb0(gp) | t9 = sym.imp.g_strdup_printf
0x0000b014 move a1, s6 | a1 = s6;
0x0000b018 jalr t9 | t9 ();
0x0000b01c lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b020 move s0, v0 | s0 = v0;
0x0000b024 move a1, s0 | a1 = s0;
0x0000b028 lw t9, -0x7b54(gp) | t9 = sym.imp.g_key_file_has_group;
0x0000b02c move a0, s1 | a0 = s1;
0x0000b030 jalr t9 | t9 ();
0x0000b034 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b038 beqz v0, 0xaf84 |
| } while (v0 == 0);
| label_7:
0x0000b03c lw t9, -0x7ac0(gp) | t9 = sym.imp.g_key_file_get_string;
0x0000b040 lw a2, 0x30(sp) | a2 = *(var_30h);
0x0000b044 move a3, s5 | a3 = s5;
0x0000b048 move a1, s0 | a1 = s0;
0x0000b04c move a0, s1 | a0 = s1;
0x0000b050 jalr t9 | t9 ();
0x0000b054 move s4, v0 | s4 = v0;
0x0000b058 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0000b05c beqz v0, 0xb28c | goto label_8;
| }
0x0000b060 lw t9, -0x7b48(gp) | t9 = sym.imp.g_malloc;
0x0000b064 addiu a0, zero, 0x10 | a0 = 0x10;
0x0000b068 jalr t9 | t9 ();
0x0000b06c lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b070 sw zero, 8(v0) | *((v0 + 2)) = 0;
0x0000b074 sw zero, 0xc(v0) | *((v0 + 3)) = 0;
0x0000b078 lw t9, -0x7a74(gp) | t9 = sym.imp.g_key_file_has_key;
0x0000b07c move a3, zero | a3 = 0;
0x0000b080 move a2, s7 | a2 = s7;
0x0000b084 move a1, s0 | a1 = s0;
0x0000b088 move a0, s1 | a0 = s1;
0x0000b08c move s3, v0 | s3 = v0;
0x0000b090 jalr t9 | t9 ();
0x0000b094 lw gp, 0x20(sp) | gp = *(var_20h);
| if (v0 == 0) {
0x0000b098 beqz v0, 0xb2b4 | goto label_9;
| }
0x0000b09c lw t9, -0x7b30(gp) | t9 = sym.imp.g_key_file_get_double;
0x0000b0a0 move a3, s5 | a3 = s5;
0x0000b0a4 move a2, s7 | a2 = s7;
0x0000b0a8 move a1, s0 | a1 = s0;
0x0000b0ac move a0, s1 | a0 = s1;
0x0000b0b0 jalr t9 | t9 ();
0x0000b0b4 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b0b8 sw v0, (s3) | *(s3) = v0;
0x0000b0bc sw v1, 4(s3) | *((s3 + 1)) = v1;
0x0000b0c0 lw t9, -0x7f70(gp) | t9 = *(gp);
0x0000b0c4 move a2, zero | a2 = 0;
0x0000b0c8 move a3, zero | a3 = 0;
0x0000b0cc move a0, v0 | a0 = v0;
0x0000b0d0 move a1, v1 | a1 = v1;
0x0000b0d4 sw v0, 0x28(sp) | *(var_28h) = v0;
0x0000b0d8 sw v1, 0x2c(sp) | *(var_2ch_2) = v1;
0x0000b0dc bal 0x1ac70 | fcn_0001ac70 ();
0x0000b0e0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b0e4 lw t0, 0x28(sp) | t0 = *(var_28h);
0x0000b0e8 lw t1, 0x2c(sp) | t1 = *(var_2ch_2);
| if (v0 < 0) {
0x0000b0ec bltz v0, 0xb2d8 | goto label_10;
| }
0x0000b0f0 lw v0, 0x34(sp) | v0 = *(var_34h_2);
0x0000b0f4 lw v0, (v0) | v0 = *(v0);
0x0000b0f8 lw t9, -0x7b18(gp) | t9 = sym.imp.g_hash_table_insert;
| if (v0 == 0) {
0x0000b0fc beqz v0, 0xafe4 | goto label_0;
| }
0x0000b100 lw v0, 0x38(sp) | v0 = *(var_38h_2);
0x0000b104 b 0xafb8 | goto label_1;
| label_4:
0x0000b108 lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b10c lw a1, -0x7fc4(gp) | a1 = *(gp);
0x0000b110 lw t9, -0x7c30(gp) | t9 = sym.imp.g_return_if_fail_warning;
| /* str.config_file_name___NULL */
0x0000b114 addiu a2, a2, -0x1cc0 | a2 += -0x1cc0;
| /* str.power_producer_new */
0x0000b118 addiu a1, a1, -0x1b90 | a1 += -aav.0x00001b90;
0x0000b11c jalr t9 | t9 ();
0x0000b120 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b124 move s2, zero | s2 = 0;
| do {
| label_3:
0x0000b128 lw a0, 0x44(sp) | a0 = *(var_44h);
0x0000b12c lw v1, (fp) | v1 = *(fp);
0x0000b130 move v0, s2 | v0 = s2;
| if (a0 != v1) {
0x0000b134 bne a0, v1, 0xb358 | goto label_11;
| }
0x0000b138 lw ra, 0x6c(sp) | ra = *(var_6ch);
0x0000b13c lw fp, 0x68(sp) | fp = *(var_68h);
0x0000b140 lw s7, 0x64(sp) | s7 = *(var_64h);
0x0000b144 lw s6, 0x60(sp) | s6 = *(var_60h);
0x0000b148 lw s5, 0x5c(sp) | s5 = *(var_5ch);
0x0000b14c lw s4, 0x58(sp) | s4 = *(var_58h);
0x0000b150 lw s3, 0x54(sp) | s3 = *(var_54h);
0x0000b154 lw s2, 0x50(sp) | s2 = *(var_50h);
0x0000b158 lw s1, 0x4c(sp) | s1 = *(var_4ch);
0x0000b15c lw s0, 0x48(sp) | s0 = *(var_48h);
0x0000b160 addiu sp, sp, 0x70 |
0x0000b164 jr ra | return v0;
| label_6:
0x0000b168 lw v0, 0x40(sp) | v0 = *(var_40h);
0x0000b16c lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b170 lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
0x0000b174 lw v0, 8(v0) | v0 = *((v0 + 2));
0x0000b178 move a3, s0 | a3 = s0;
0x0000b17c sw v0, 0x10(sp) | *(var_10h_2) = v0;
| /* str.failed_to_load__s:__s */
0x0000b180 addiu a2, a2, -0x1c84 | a2 += -0x1c84;
0x0000b184 addiu a1, zero, 1 | a1 = 1;
0x0000b188 addiu a0, zero, 3 | a0 = 3;
0x0000b18c jalr t9 | t9 ();
0x0000b190 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b194 move s3, zero | s3 = 0;
0x0000b198 move s4, zero | s4 = 0;
0x0000b19c move s0, zero | s0 = 0;
| label_2:
0x0000b1a0 lw t9, -0x7a50(gp) | t9 = *((gp - 7828));
0x0000b1a4 move a0, s0 | a0 = s0;
0x0000b1a8 jalr t9 | t9 ();
0x0000b1ac lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b1b0 lw t9, -0x7a50(gp) | t9 = *((gp - 7828));
0x0000b1b4 move a0, s3 | a0 = s3;
0x0000b1b8 jalr t9 | t9 ();
0x0000b1bc lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b1c0 lw t9, -0x7a50(gp) | t9 = *((gp - 7828));
0x0000b1c4 move a0, s4 | a0 = s4;
0x0000b1c8 jalr t9 | t9 ();
0x0000b1cc lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b1d0 lw t9, -0x7d58(gp) | t9 = sym.imp.g_error_free;
0x0000b1d4 lw s3, -0x7fc4(gp) | s3 = *(gp);
0x0000b1d8 lw a0, 0x40(sp) | a0 = *(var_40h);
0x0000b1dc jalr t9 | t9 ();
0x0000b1e0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b1e4 lw t9, -0x7d48(gp) | t9 = sym.imp.g_key_file_free;
0x0000b1e8 move a0, s1 | a0 = s1;
0x0000b1ec jalr t9 | t9 ();
0x0000b1f0 lw gp, 0x20(sp) | gp = *(var_20h);
| /* str.power_producer.c */
0x0000b1f4 addiu a3, s3, -0x1e80 | a3 = s3 + -0x1e80;
0x0000b1f8 addiu a1, zero, 8 | a1 = 8;
0x0000b1fc lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0000b200 lw s0, -0x7fc4(gp) | s0 = *(gp);
| /* str.load_producers */
0x0000b204 addiu v0, v0, -0x1ba0 | v0 += -0x1ba0;
0x0000b208 lw t9, -0x7db4(gp) | t9 = sym.imp.g_log;
0x0000b20c sw v0, 0x14(sp) | *(var_14h) = v0;
0x0000b210 addiu v0, zero, 0xa8 | v0 = 0xa8;
0x0000b214 sw v0, 0x10(sp) | *(var_10h_2) = v0;
| /* str.file__s:_line__d___s_:_should_not_be_reached */
0x0000b218 addiu a2, s0, -0x1e6c | a2 = s0 + -0x1e6c;
0x0000b21c move a0, zero | a0 = 0;
0x0000b220 jalr t9 | t9 ();
0x0000b224 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b228 move a0, s2 | a0 = s2;
0x0000b22c lw t9, -0x7ae0(gp) | t9 = *((gp - 7864));
0x0000b230 move s2, zero | s2 = 0;
0x0000b234 jalr t9 | t9 ();
0x0000b238 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b23c addiu a1, zero, 1 | a1 = 1;
0x0000b240 addiu a0, zero, 3 | a0 = 3;
0x0000b244 lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b248 lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
| /* str.Failed_to_load_producers */
0x0000b24c addiu a2, a2, -0x1bc4 | a2 += -0x1bc4;
0x0000b250 jalr t9 | t9 ();
0x0000b254 lw gp, 0x20(sp) | gp = *(var_20h);
| /* str.power_producer.c */
0x0000b258 addiu a3, s3, -0x1e80 | a3 = s3 + -0x1e80;
| /* str.file__s:_line__d___s_:_should_not_be_reached */
0x0000b25c addiu a2, s0, -0x1e6c | a2 = s0 + -0x1e6c;
0x0000b260 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0000b264 lw t9, -0x7db4(gp) | t9 = sym.imp.g_log;
| /* str.power_producer_new */
0x0000b268 addiu v0, v0, -0x1b90 | v0 += -aav.0x00001b90;
0x0000b26c sw v0, 0x14(sp) | *(var_14h) = v0;
0x0000b270 addiu v0, zero, 0x184 | v0 = segment.NOTE;
0x0000b274 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x0000b278 addiu a1, zero, 8 | a1 = 8;
0x0000b27c move a0, zero | a0 = 0;
0x0000b280 jalr t9 | t9 ();
0x0000b284 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b288 b 0xb128 |
| } while (1);
| label_8:
0x0000b28c lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b290 lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
0x0000b294 move a3, s0 | a3 = s0;
| /* str.could_not_find_name_key_for__s */
0x0000b298 addiu a2, a2, -0x1c60 | a2 += -0x1c60;
0x0000b29c addiu a1, zero, 1 | a1 = 1;
0x0000b2a0 addiu a0, zero, 3 | a0 = 3;
0x0000b2a4 jalr t9 | t9 ();
0x0000b2a8 move s3, zero | s3 = 0;
0x0000b2ac lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b2b0 b 0xb1a0 | goto label_2;
| label_9:
0x0000b2b4 lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b2b8 lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
0x0000b2bc move a3, s4 | a3 = s4;
| /* str.max_power_key_value_does_not_exist_for__s */
0x0000b2c0 addiu a2, a2, -0x1c40 | a2 += -0x1c40;
0x0000b2c4 addiu a1, zero, 1 | a1 = 1;
0x0000b2c8 addiu a0, zero, 3 | a0 = 3;
0x0000b2cc jalr t9 | t9 ();
0x0000b2d0 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b2d4 b 0xb1a0 | goto label_2;
| label_10:
0x0000b2d8 lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b2dc lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
0x0000b2e0 sw t0, 0x10(sp) | *(var_10h_2) = t0;
0x0000b2e4 sw t1, 0x14(sp) | *(var_14h) = t1;
| /* str.max_power_invalid_value__f */
0x0000b2e8 addiu a2, a2, -0x1c14 | a2 += -0x1c14;
0x0000b2ec addiu a1, zero, 1 | a1 = 1;
0x0000b2f0 addiu a0, zero, 3 | a0 = 3;
0x0000b2f4 jalr t9 | t9 ();
0x0000b2f8 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b2fc b 0xb1a0 | goto label_2;
| label_5:
0x0000b300 lw a2, -0x7fc4(gp) | a2 = *(gp);
0x0000b304 lw t9, -0x7c78(gp) | t9 = sym.imp.__syslog_chk;
| /* str.Failed_to_init_PowerProducer */
0x0000b308 addiu a2, a2, -0x1ca4 | a2 += -0x1ca4;
0x0000b30c addiu a1, zero, 1 | a1 = 1;
0x0000b310 addiu a0, zero, 3 | a0 = 3;
0x0000b314 jalr t9 | t9 ();
0x0000b318 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b31c addiu a1, zero, 8 | a1 = 8;
0x0000b320 move a0, zero | a0 = 0;
0x0000b324 lw v0, -0x7fc4(gp) | v0 = *(gp);
0x0000b328 lw a3, -0x7fc4(gp) | a3 = *(gp);
0x0000b32c lw a2, -0x7fc4(gp) | a2 = *(gp);
| /* str.power_producer_new */
0x0000b330 addiu v0, v0, -0x1b90 | v0 += -aav.0x00001b90;
0x0000b334 lw t9, -0x7db4(gp) | t9 = sym.imp.g_log;
0x0000b338 sw v0, 0x14(sp) | *(var_14h) = v0;
0x0000b33c addiu v0, zero, 0x17f | v0 = 0x17f;
0x0000b340 sw v0, 0x10(sp) | *(var_10h_2) = v0;
| /* str.power_producer.c */
0x0000b344 addiu a3, a3, -0x1e80 | a3 += -0x1e80;
| /* str.file__s:_line__d___s_:_should_not_be_reached */
0x0000b348 addiu a2, a2, -0x1e6c | a2 += -0x1e6c;
0x0000b34c jalr t9 | t9 ();
0x0000b350 lw gp, 0x20(sp) | gp = *(var_20h);
0x0000b354 b 0xb128 | goto label_3;
| label_11:
0x0000b358 lw t9, -0x7cb8(gp) | t9 = sym.imp.__stack_chk_fail;
0x0000b35c jalr t9 | t9 ();
0x0000b360 nop |
0x0000b364 nop |
0x0000b368 nop |
0x0000b36c nop |
| }
[*] Function printf used 2 times powerd