[*] Binary protection state of dbox
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of dbox
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/dbox @ 0xee1c */
| #include <stdint.h>
|
; (fcn) fcn.0000ee1c () | void fcn_0000ee1c () {
0x0000ee1c lui gp, 2 |
0x0000ee20 addiu gp, gp, 0x2254 |
0x0000ee24 addu gp, gp, t9 | gp += t9;
0x0000ee28 lw v0, -0x7d68(gp) | v0 = *((gp - 8026));
0x0000ee2c addiu sp, sp, -0x1058 |
0x0000ee30 lw a3, 0xc(a0) | a3 = *((a0 + 3));
0x0000ee34 lw v1, (v0) | v1 = *(v0);
0x0000ee38 sw s5, 0x1044(sp) | *(var_1044h) = s5;
0x0000ee3c sw gp, 0x18(sp) | *(var_18h_2) = gp;
0x0000ee40 sw v0, 0x24(sp) | *(var_24h_2) = v0;
0x0000ee44 move s5, a1 | s5 = a1;
0x0000ee48 addiu v0, zero, -1 | v0 = -1;
0x0000ee4c sw s0, 0x1030(sp) | *(var_1030h) = s0;
0x0000ee50 sw ra, 0x1054(sp) | *(var_1054h) = ra;
0x0000ee54 sw fp, 0x1050(sp) | *(var_1050h) = fp;
0x0000ee58 sw s7, 0x104c(sp) | *(var_104ch) = s7;
0x0000ee5c sw s6, 0x1048(sp) | *(var_1048h) = s6;
0x0000ee60 sw s4, 0x1040(sp) | *(var_1040h) = s4;
0x0000ee64 sw s3, 0x103c(sp) | *(var_103ch) = s3;
0x0000ee68 sw s2, 0x1038(sp) | *(var_1038h) = s2;
0x0000ee6c sw s1, 0x1034(sp) | *(var_1034h) = s1;
0x0000ee70 move s0, a0 | s0 = a0;
0x0000ee74 sw v1, 0x102c(sp) | *(var_102ch) = v1;
0x0000ee78 lw a1, 0x18(a0) | a1 = *((a0 + 6));
0x0000ee7c lw a2, 0x1c(a0) | a2 = *((a0 + 7));
| if (s5 == v0) {
0x0000ee80 beq s5, v0, 0xefc8 | goto label_1;
| }
0x0000ee84 lw t9, -0x7fdc(gp) | t9 = *(gp);
0x0000ee88 addiu t9, t9, -0x1330 | t9 += -0x1330;
0x0000ee8c move a0, s5 | a0 = s5;
0x0000ee90 bal 0xecd0 | fcn_0000ecd0 ();
0x0000ee94 addiu s1, zero, 0x288 | s1 = 0x288;
0x0000ee98 mul v0, v0, s1 | __asm ("mul v0, v0, s1");
0x0000ee9c lw gp, 0x18(sp) | gp = *(var_18h_2);
| label_0:
0x0000eea0 lw t9, -0x7ed8(gp) | t9 = sym.proc_fdlist;
0x0000eea4 lw s1, (a3) | s1 = *(a3);
0x0000eea8 addiu s2, sp, 0x2c | s2 = sp + 0x2c;
0x0000eeac addiu a2, zero, 0x400 | a2 = 0x400;
0x0000eeb0 move a1, s2 | a1 = s2;
0x0000eeb4 move a0, s5 | a0 = s5;
0x0000eeb8 addu s1, s1, v0 | s1 += v0;
0x0000eebc bal 0xa078 | sym_proc_fdlist ();
0x0000eec0 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000eec4 move s3, v0 | s3 = v0;
0x0000eec8 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x0000eecc lw s4, -0x7ed4(gp) | s4 = sym.strace_printf
0x0000eed0 lw a1, -0x7fdc(gp) | a1 = *(gp);
0x0000eed4 move a3, s1 | a3 = s1;
0x0000eed8 move a2, s5 | a2 = s5;
| /* str._n__d__s___d_open_fds:_n */
0x0000eedc addiu a1, a1, 0x5dd4 | a1 += 0x5dd4;
0x0000eee0 move t9, s4 | t9 = s4;
0x0000eee4 move a0, s0 | a0 = s0;
0x0000eee8 bal 0xedac | sym_strace_printf ()
0x0000eeec lw gp, 0x18(sp) | gp = *(var_18h_2);
| if (s3 == 0) {
0x0000eef0 beqz s3, 0xef84 | goto label_2;
| }
0x0000eef4 lw s7, -0x7fdc(gp) | s7 = *(gp);
0x0000eef8 lw s6, -0x7fdc(gp) | s6 = *(gp);
0x0000eefc sll s3, s3, 2 | s3 <<= 2;
0x0000ef00 addu fp, s2, s3 | fp = s2 + s3;
| /* esilref: '&d ' */
0x0000ef04 addiu s7, s7, 0x5dec | s7 += 0x5dec;
0x0000ef08 move s3, zero | s3 = 0;
0x0000ef0c addiu s6, s6, 0x55e4 | s6 += 0x55e4;
| do {
0x0000ef10 lw a2, (s2) | a2 = *(s2);
0x0000ef14 move a1, s7 | a1 = s7;
0x0000ef18 move t9, s4 | t9 = s4;
0x0000ef1c move a0, s0 | a0 = s0;
0x0000ef20 bal 0xedac | sym_strace_printf ()
0x0000ef24 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000ef28 lw a3, 0x2c(s0) | a3 = *((s0 + 11));
0x0000ef2c lw a2, 0x28(s0) | a2 = *((s0 + 10));
0x0000ef30 lw t9, -0x7ed0(gp) | t9 = sym.proc_fdinfo_lookup;
0x0000ef34 lw a1, (s2) | a1 = *(s2);
0x0000ef38 move a0, s5 | a0 = s5;
0x0000ef3c move s1, v0 | s1 = v0;
0x0000ef40 bal 0x98fc | sym_proc_fdinfo_lookup ();
0x0000ef44 lw t9, (s0) | t9 = *(s0);
0x0000ef48 addu s1, s1, v0 | s1 += v0;
| if (t9 != 0) {
0x0000ef4c beqz t9, 0xef60 |
0x0000ef50 lw a1, 0x28(s0) | a1 = *((s0 + 10));
0x0000ef54 lw a0, 8(s0) | a0 = *((s0 + 2));
0x0000ef58 move a2, v0 | a2 = v0;
0x0000ef5c jalr t9 | t9 ();
| }
0x0000ef60 move a1, s6 | a1 = s6;
0x0000ef64 move t9, s4 | t9 = s4;
0x0000ef68 move a0, s0 | a0 = s0;
0x0000ef6c bal 0xedac | sym_strace_printf ()
0x0000ef70 addu v0, v0, s1 | v0 += s1;
0x0000ef74 addiu s2, s2, 4 | s2 += 4;
0x0000ef78 lw gp, 0x18(sp) | gp = *(var_18h_2);
0x0000ef7c addu s3, s3, v0 | s3 += v0;
0x0000ef80 bne fp, s2, 0xef10 |
| } while (fp != s2);
| label_2:
0x0000ef84 lw v0, 0x24(sp) | v0 = *(var_24h_2);
0x0000ef88 lw a0, 0x102c(sp) | a0 = *(var_102ch);
0x0000ef8c lw v1, (v0) | v1 = *(v0);
0x0000ef90 move v0, s3 | v0 = s3;
| if (a0 == v1) {
0x0000ef94 bne a0, v1, 0xefd0 |
0x0000ef98 lw ra, 0x1054(sp) | ra = *(var_1054h);
0x0000ef9c lw fp, 0x1050(sp) | fp = *(var_1050h);
0x0000efa0 lw s7, 0x104c(sp) | s7 = *(var_104ch);
0x0000efa4 lw s6, 0x1048(sp) | s6 = *(var_1048h);
0x0000efa8 lw s5, 0x1044(sp) | s5 = *(var_1044h);
0x0000efac lw s4, 0x1040(sp) | s4 = *(var_1040h);
0x0000efb0 lw s3, 0x103c(sp) | s3 = *(var_103ch);
0x0000efb4 lw s2, 0x1038(sp) | s2 = *(var_1038h);
0x0000efb8 lw s1, 0x1034(sp) | s1 = *(var_1034h);
0x0000efbc lw s0, 0x1030(sp) | s0 = *(var_1030h);
0x0000efc0 addiu sp, sp, 0x1058 |
0x0000efc4 jr ra | return v0;
| label_1:
0x0000efc8 addiu v0, zero, -0x288 | v0 = -0x288;
0x0000efcc b 0xeea0 | goto label_0;
| }
0x0000efd0 lw t9, -0x7db0(gp) | t9 = sym.imp.__stack_chk_fail;
0x0000efd4 jalr t9 | t9 ();
0x0000efd8 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/dbox @ 0xf0d8 */
| #include <stdint.h>
|
; (fcn) sym.do_strace () | void do_strace () {
0x0000f0d8 lui gp, 2 |
0x0000f0dc addiu gp, gp, 0x1f98 |
0x0000f0e0 addu gp, gp, t9 | gp += t9;
0x0000f0e4 lw v0, -0x7d68(gp) | v0 = *((gp - 8026));
0x0000f0e8 addiu sp, sp, -0xb0 |
0x0000f0ec lw t9, -0x7c60(gp) | t9 = sym.imp.calloc;
0x0000f0f0 sw v0, 0x2c(sp) | *(var_2ch_3) = v0;
0x0000f0f4 lw v0, (v0) | v0 = *(v0);
0x0000f0f8 sw s5, 0x9c(sp) | *(var_9ch) = s5;
0x0000f0fc sw v0, 0x84(sp) | *(var_84h) = v0;
0x0000f100 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0000f104 move s5, a0 | s5 = a0;
| /* str._bin_sleep */
0x0000f108 addiu v0, v0, 0x5df0 | v0 += 0x5df0;
0x0000f10c lw a0, 0x1c(a0) | a0 = *((a0 + 7));
0x0000f110 sw gp, 0x20(sp) | *(var_20h_3) = gp;
0x0000f114 addiu a1, sp, 0x50 | a1 = sp + 0x50;
0x0000f118 sw v0, 0x58(sp) | *(var_58h) = v0;
0x0000f11c addiu v0, zero, 1 | v0 = 1;
0x0000f120 sw ra, 0xac(sp) | *(var_ach) = ra;
0x0000f124 sw fp, 0xa8(sp) | *(var_a8h) = fp;
0x0000f128 sw s7, 0xa4(sp) | *(var_a4h) = s7;
0x0000f12c sw s6, 0xa0(sp) | *(var_a0h) = s6;
0x0000f130 sw s4, 0x98(sp) | *(var_98h) = s4;
0x0000f134 sw s3, 0x94(sp) | *(var_94h) = s3;
0x0000f138 sw s2, 0x90(sp) | *(var_90h) = s2;
0x0000f13c sw s1, 0x8c(sp) | *(var_8ch) = s1;
0x0000f140 sw s0, 0x88(sp) | *(var_88h) = s0;
0x0000f144 addiu a0, a0, 1 | a0++;
0x0000f148 sw a1, 0xc(s5) | *((s5 + 3)) = a1;
0x0000f14c sw zero, 0x5c(sp) | *(var_5ch) = 0;
0x0000f150 addiu a1, zero, 0x288 | a1 = 0x288;
0x0000f154 sw zero, 0x60(sp) | *(var_60h) = 0;
0x0000f158 sw v0, 0x54(sp) | *(var_54h) = v0;
0x0000f15c jalr t9 | t9 ();
0x0000f160 sw v0, 0x50(sp) | *(var_50h) = v0;
0x0000f164 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == 0) {
0x0000f168 beqz v0, 0xf4f8 | goto label_23;
| }
0x0000f16c lw v0, -0x7fb8(gp) | v0 = *((gp - 8174));
0x0000f170 lw t9, -0x7da8(gp) | t9 = sym.imp.pthread_mutex_lock;
0x0000f174 sw v0, 0x34(sp) | *(var_34h_3) = v0;
0x0000f178 addiu a0, v0, -0x5730 | a0 = v0 + -sym.cored_mgm_close;
0x0000f17c jalr t9 | t9 ();
0x0000f180 lw v0, 0x28(s5) | v0 = *((s5 + 10));
0x0000f184 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == 0) {
0x0000f188 beqz v0, 0xf4a4 | goto label_24;
| }
0x0000f18c lw v0, 0x2c(s5) | v0 = *((s5 + 11));
0x0000f190 lw t9, -0x7da0(gp) | t9 = sym.imp.malloc;
| if (v0 == 0) {
0x0000f194 beqz v0, 0xf4a8 | goto label_25;
| }
| label_2:
0x0000f198 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
0x0000f19c lw s7, -0x7fdc(gp) | s7 = *(gp);
| if (v0 <= 0) {
0x0000f1a0 blez v0, 0xf4c4 | goto label_8;
| }
0x0000f1a4 move s4, zero | s4 = 0;
| /* str._proc__d_cmdline */
0x0000f1a8 addiu v1, s7, 0x55a4 | v1 = s7 + 0x55a4;
0x0000f1ac sw v1, 0x28(sp) | *(var_28h_3) = v1;
0x0000f1b0 lw v1, -0x7fdc(gp) | v1 = *(gp);
0x0000f1b4 move s0, zero | s0 = 0;
| /* str.WARNING:_ptrace_SYSCALL_failed___d_n */
0x0000f1b8 addiu v1, v1, 0x5dfc | v1 += 0x5dfc;
0x0000f1bc move s3, zero | s3 = 0;
0x0000f1c0 addiu fp, sp, 0x64 | fp = sp + 0x64;
0x0000f1c4 sw v1, 0x30(sp) | *(var_30h_3) = v1;
| label_0:
0x0000f1c8 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f1cc sll s1, s3, 2 | s1 = s3 << 2;
0x0000f1d0 addiu s6, zero, -1 | s6 = -1;
0x0000f1d4 lwx a0, s1(a0) | __asm ("lwx a0, s1(a0)");
| if (a0 == s6) {
0x0000f1d8 beql a0, s6, 0xf324 | goto label_26;
| }
0x0000f1dc addiu s3, s3, 1 | s3++;
0x0000f1e0 lw v0, 0x24(s5) | v0 = *((s5 + 9));
0x0000f1e4 lw t9, -0x7ecc(gp) | t9 = sym.trace_attach;
| if (v0 == 0) {
0x0000f1e8 beqz v0, 0xf538 | goto label_27;
| }
| label_3:
0x0000f1ec lw v0, 0x10(s5) | v0 = *((s5 + 4));
0x0000f1f0 lw t9, -0x7ec8(gp) | t9 = sym.trace_setoptions;
0x0000f1f4 addiu a2, zero, 1 | a2 = 1;
0x0000f1f8 andi v0, v0, 4 | v0 &= 4;
0x0000f1fc addiu a1, zero, 0x41 | a1 = 0x41;
| if (v0 != 0) {
0x0000f200 movz a1, a2, v0 | a1 = a2;
| }
0x0000f204 bal 0x8988 | sym_trace_setoptions ();
0x0000f208 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f20c lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f210 move a1, zero | a1 = 0;
0x0000f214 lw t9, -0x7ec4(gp) | t9 = sym.trace_syscall;
0x0000f218 lwx a0, s1(a0) | __asm ("lwx a0, s1(a0)");
0x0000f21c addiu s6, zero, -1 | s6 = -1;
0x0000f220 bal 0x8b24 | sym_trace_syscall ();
0x0000f224 move s2, v0 | s2 = v0;
0x0000f228 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == s6) {
0x0000f22c beq v0, s6, 0xf554 | goto label_28;
| }
0x0000f230 lw v0, 0x18(s5) | v0 = *((s5 + 6));
0x0000f234 lw t9, -0x7e08(gp) | t9 = sym.imp.__snprintf_chk
0x0000f238 addiu a3, zero, 0x1e | a3 = 0x1e;
0x0000f23c lwx s1, s1(v0) | __asm ("lwx s1, s1(v0)");
0x0000f240 lw v0, 0x28(sp) | v0 = *(var_28h_3);
0x0000f244 addiu a2, zero, 1 | a2 = 1;
0x0000f248 addiu a1, zero, 0x1e | a1 = 0x1e;
0x0000f24c move a0, fp | a0 = fp;
0x0000f250 sw s1, 0x14(sp) | *(var_14h_2) = s1;
0x0000f254 sw v0, 0x10(sp) | *(var_50h_2) = v0;
0x0000f258 lw s1, 0x50(sp) | s1 = *(var_50h);
0x0000f25c jalr t9 | t9 ();
0x0000f260 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f264 move a1, zero | a1 = 0;
0x0000f268 move a0, fp | a0 = fp;
0x0000f26c lw t9, -0x7bf4(gp) | t9 = sym.imp.open;
0x0000f270 addu s1, s1, s4 | s1 += s4;
0x0000f274 jalr t9 | t9 ();
0x0000f278 move s7, v0 | s7 = v0;
0x0000f27c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f280 addiu s0, s0, 1 | s0++;
| if (v0 == s6) {
0x0000f284 beq v0, s6, 0xf5a0 | goto label_29;
| }
0x0000f288 lw t9, -0x7cac(gp) | t9 = sym.imp.read;
0x0000f28c addiu a2, zero, 0x1f | a2 = 0x1f;
0x0000f290 move a1, s1 | a1 = s1;
0x0000f294 move a0, v0 | a0 = v0;
0x0000f298 jalr t9 | t9 ();
0x0000f29c move s2, v0 | s2 = v0;
0x0000f2a0 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == s6) {
0x0000f2a4 beq v0, s6, 0xf30c | goto label_30;
| }
0x0000f2a8 lw t9, -0x7d90(gp) | t9 = sym.imp.close;
0x0000f2ac move a0, s7 | a0 = s7;
0x0000f2b0 jalr t9 | t9 ();
0x0000f2b4 addu a1, s1, s2 | a1 = s1 + s2;
0x0000f2b8 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f2bc sb zero, (a1) | *(a1) = 0;
0x0000f2c0 lb v0, (s1) | v0 = *(s1);
0x0000f2c4 move a1, zero | a1 = 0;
| if (v0 == 0) {
0x0000f2c8 beqz v0, 0xf30c | goto label_30;
| }
0x0000f2cc move a2, zero | a2 = 0;
| do {
0x0000f2d0 addiu a2, a2, 1 | a2++;
0x0000f2d4 addu a3, s1, a2 | a3 = s1 + a2;
0x0000f2d8 xori a0, v0, 0x2f | a0 = v0 ^ 0x2f;
0x0000f2dc lb v0, (a3) | v0 = *(a3);
| if (a0 != 0) {
0x0000f2e0 movz a1, a2, a0 | a1 = a2;
| }
0x0000f2e4 bnez v0, 0xf2d0 |
| } while (v0 != 0);
0x0000f2e8 lw t9, -0x7d90(gp) | t9 = sym.imp.close;
| if (a1 != 0) {
0x0000f2ec beqz a1, 0xf310 |
0x0000f2f0 lw t9, -0x7dd0(gp) | t9 = sym.imp.memmove;
0x0000f2f4 subu a2, a2, a1 | __asm ("subu a2, a2, a1");
0x0000f2f8 addiu a2, a2, 1 | a2++;
0x0000f2fc addu a1, s1, a1 | a1 = s1 + a1;
0x0000f300 move a0, s1 | a0 = s1;
0x0000f304 jalr t9 | t9 ();
0x0000f308 lw gp, 0x20(sp) | gp = *(var_20h_3);
| label_30:
0x0000f30c lw t9, -0x7d90(gp) | t9 = sym.imp.close;
| }
0x0000f310 move a0, s7 | a0 = s7;
0x0000f314 jalr t9 | t9 ();
0x0000f318 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f31c lw v0, 0x1c(s5) | v0 = *((s5 + 7));
| label_4:
0x0000f320 addiu s3, s3, 1 | s3++;
| label_26:
0x0000f324 slt a0, s3, v0 | a0 = (s3 < v0) ? 1 : 0;
0x0000f328 addiu s4, s4, 0x288 | s4 += 0x288;
| if (a0 != 0) {
0x0000f32c bnez a0, 0xf1c8 | goto label_0;
| }
0x0000f330 lw v0, 0x34(sp) | v0 = *(var_34h_3);
| if (s0 == 0) {
0x0000f334 beqz s0, 0xf4c8 | goto label_9;
| }
0x0000f338 lw v0, 0x20(s5) | v0 = *((s5 + 8));
| if (v0 > 0) {
0x0000f33c bgtzl v0, 0xf798 | goto label_31;
| }
0x0000f340 sw v0, 0x14(sp) | *(var_14h_2) = v0;
0x0000f344 addiu s2, zero, -1 | s2 = -1;
| label_17:
0x0000f348 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0000f34c lw v0, 0x54(sp) | v0 = *(var_54h);
0x0000f350 addiu v1, a0, -0x1330 | v1 = a0 + -0x1330;
0x0000f354 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0000f358 sw v1, 0x28(sp) | *(var_28h_3) = v1;
| /* str.WARNING:_ptrace_SYSCALL_failed___d_n */
0x0000f35c addiu v1, a0, 0x5dfc | v1 = a0 + 0x5dfc;
0x0000f360 sw v1, 0x38(sp) | *(var_38h_3) = v1;
0x0000f364 lw a0, -0x7fdc(gp) | a0 = *(gp);
0x0000f368 lw v1, -0x7fdc(gp) | v1 = *(gp);
0x0000f36c addiu s1, zero, -1 | s1 = -1;
0x0000f370 sw v1, 0x3c(sp) | *(var_3ch_3) = v1;
| /* str.pid_d_i_d__nr_pids_d_n */
0x0000f374 addiu v1, a0, 0x5e20 | v1 = a0 + 0x5e20;
0x0000f378 addiu fp, sp, 0x4c | fp = sp + 0x4c;
0x0000f37c sw v1, 0x30(sp) | *(var_30h_3) = v1;
| do {
| label_1:
0x0000f380 move s7, fp | s7 = fp;
| if (v0 == 0) {
0x0000f384 beqz v0, 0xf684 | goto label_32;
| }
0x0000f388 addiu s4, zero, 1 | s4 = 1;
0x0000f38c addiu s3, zero, 0xa | s3 = 0xa;
0x0000f390 addiu s6, zero, 4 | s6 = 4;
| label_6:
0x0000f394 lw t9, -0x7d60(gp) | t9 = sym.imp.waitpid;
0x0000f398 move a2, zero | a2 = 0;
0x0000f39c move a1, fp | a1 = fp;
0x0000f3a0 addiu a0, zero, -1 | a0 = -1;
0x0000f3a4 jalr t9 | t9 ();
0x0000f3a8 lw t9, (s5) | t9 = *(s5);
0x0000f3ac lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f3b0 move s1, v0 | s1 = v0;
| if (t9 == 0) {
0x0000f3b4 beqz t9, 0xf67c | goto label_33;
| }
0x0000f3b8 lw a1, 0x28(s5) | a1 = *((s5 + 10));
0x0000f3bc lw a0, 8(s5) | a0 = *((s5 + 2));
0x0000f3c0 move a2, zero | a2 = 0;
0x0000f3c4 jalr t9 | t9 ();
0x0000f3c8 sw v0, 0x54(sp) | *(var_54h) = v0;
0x0000f3cc lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == 0) {
0x0000f3d0 beqz v0, 0xf684 | goto label_32;
| }
| label_7:
0x0000f3d4 addiu v0, zero, -1 | v0 = -1;
0x0000f3d8 lw t9, -0x7be4(gp) | t9 = sym.imp.__errno_location;
| if (s1 == v0) {
0x0000f3dc beq s1, v0, 0xf638 | goto label_34;
| }
0x0000f3e0 lw v0, 0x20(s5) | v0 = *((s5 + 8));
| if (v0 > 0) {
0x0000f3e4 blezl v0, 0xf3f8 |
0x0000f3e8 lw a3, 0x1c(s5) | a3 = *((s5 + 7));
| if (s1 == s2) {
0x0000f3ec beql s1, s2, 0xf69c | goto label_14;
| }
0x0000f3f0 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
0x0000f3f4 lw a3, 0x1c(s5) | a3 = *((s5 + 7));
| }
0x0000f3f8 lw a1, 0x18(s5) | a1 = *((s5 + 6));
0x0000f3fc lw t9, 0x28(sp) | t9 = *(var_28h_3);
0x0000f400 move a2, a3 | a2 = a3;
0x0000f404 move a0, s1 | a0 = s1;
0x0000f408 jalr t9 | t9 ();
0x0000f40c move s3, v0 | s3 = v0;
0x0000f410 slt v0, v0, a3 | v0 = (v0 < a3) ? 1 : 0;
0x0000f414 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == 0) {
0x0000f418 beqz v0, 0xf718 | goto label_35;
| }
| label_13:
0x0000f41c lw v0, 0x54(sp) | v0 = *(var_54h);
0x0000f420 bltz s3, 0xf380 |
| } while (s3 < 0);
0x0000f424 lw a0, 0x4c(sp) | a0 = *(var_4ch);
0x0000f428 andi v0, a0, 0x7f | v0 = a0 & 0x7f;
0x0000f42c addiu v0, v0, 1 | v0++;
| if (v0 == 0) {
0x0000f430 bnez v0, 0xf460 |
0x0000f434 lw v0, 0x18(s5) | v0 = *((s5 + 6));
0x0000f438 sll s3, s3, 2 | s3 <<= 2;
0x0000f43c addu s3, v0, s3 | s3 = v0 + s3;
0x0000f440 addiu s0, s0, -1 | s0 += -1;
0x0000f444 addiu v0, zero, -1 | v0 = -1;
0x0000f448 sw v0, (s3) | *(s3) = v0;
| if (s0 == 0) {
0x0000f44c beqz s0, 0xf688 | goto label_36;
| }
0x0000f450 lw a0, 0x4c(sp) | a0 = *(var_4ch);
0x0000f454 addiu s3, zero, -1 | s3 = -1;
0x0000f458 andi v0, a0, 0x7f | v0 = a0 & 0x7f;
0x0000f45c addiu v0, v0, 1 | v0++;
| }
0x0000f460 seb v0, v0 | __asm ("seb v0, v0");
0x0000f464 sra v0, v0, 1 | v0 >>= 1;
0x0000f468 andi v0, a0, 0xff | v0 = a0 & 0xff;
| if (v0 > 0) {
0x0000f46c blez v0, 0xf490 |
0x0000f470 lw v0, 0x18(s5) | v0 = *((s5 + 6));
0x0000f474 sll a0, s3, 2 | a0 = s3 << 2;
0x0000f478 addu v0, v0, a0 | v0 += a0;
0x0000f47c addiu a0, zero, -1 | a0 = -1;
0x0000f480 sw a0, (v0) | *(v0) = a0;
0x0000f484 lw a0, 0x4c(sp) | a0 = *(var_4ch);
0x0000f488 addiu s0, s0, -1 | s0 += -1;
0x0000f48c andi v0, a0, 0xff | v0 = a0 & 0xff;
| }
0x0000f490 addiu a1, zero, 0x7f | a1 = 0x7f;
| if (v0 == a1) {
0x0000f494 beql v0, a1, 0xf5a8 | goto label_37;
| }
0x0000f498 ext s4, a0, 8, 8 | __asm ("ext s4, a0, 8, 8");
| label_5:
0x0000f49c lw v0, 0x54(sp) | v0 = *(var_54h);
0x0000f4a0 b 0xf380 | goto label_1;
| label_24:
0x0000f4a4 lw t9, -0x7da0(gp) | t9 = sym.imp.malloc;
| label_25:
0x0000f4a8 addiu v0, zero, 0x1000 | v0 = 0x1000;
0x0000f4ac sw v0, 0x2c(s5) | *((s5 + 11)) = v0;
0x0000f4b0 addiu a0, zero, 0x1000 | a0 = 0x1000;
0x0000f4b4 jalr t9 | t9 ();
0x0000f4b8 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f4bc sw v0, 0x28(s5) | *((s5 + 10)) = v0;
| if (v0 != 0) {
0x0000f4c0 bnez v0, 0xf198 | goto label_2;
| }
| label_8:
0x0000f4c4 lw v0, 0x34(sp) | v0 = *(var_34h_3);
| label_9:
0x0000f4c8 lw t9, -0x7d18(gp) | t9 = sym.imp.pthread_mutex_unlock;
0x0000f4cc addiu a0, v0, -0x5730 | a0 = v0 + -sym.cored_mgm_close;
0x0000f4d0 jalr t9 | t9 ();
0x0000f4d4 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f4d8 lw t9, -0x7cd0(gp) | t9 = sym.imp.free;
0x0000f4dc lw a0, 0x28(s5) | a0 = *((s5 + 10));
0x0000f4e0 jalr t9 | t9 ();
0x0000f4e4 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f4e8 lw t9, -0x7cd0(gp) | t9 = sym.imp.free;
0x0000f4ec lw a0, 0x50(sp) | a0 = *(var_50h);
0x0000f4f0 jalr t9 | t9 ();
0x0000f4f4 lw gp, 0x20(sp) | gp = *(var_20h_3);
| label_23:
0x0000f4f8 lw v0, 0x2c(sp) | v0 = *(var_2ch_3);
0x0000f4fc lw v1, 0x84(sp) | v1 = *(var_84h);
0x0000f500 lw v0, (v0) | v0 = *(v0);
0x0000f504 lw ra, 0xac(sp) | ra = *(var_ach);
| if (v1 != v0) {
0x0000f508 bne v1, v0, 0xf9fc | goto label_38;
| }
0x0000f50c lw fp, 0xa8(sp) | fp = *(var_a8h);
0x0000f510 lw s7, 0xa4(sp) | s7 = *(var_a4h);
0x0000f514 lw s6, 0xa0(sp) | s6 = *(var_a0h);
0x0000f518 lw s5, 0x9c(sp) | s5 = *(var_9ch);
0x0000f51c lw s4, 0x98(sp) | s4 = *(var_98h);
0x0000f520 lw s3, 0x94(sp) | s3 = *(var_94h);
0x0000f524 lw s2, 0x90(sp) | s2 = *(var_90h);
0x0000f528 lw s1, 0x8c(sp) | s1 = *(var_8ch);
0x0000f52c lw s0, 0x88(sp) | s0 = *(var_88h);
0x0000f530 addiu sp, sp, 0xb0 |
0x0000f534 jr ra | return v0;
| label_27:
0x0000f538 bal 0x885c | sym_trace_attach ();
0x0000f53c nop |
0x0000f540 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f544 lw a0, 0x18(s5) | a0 = *((s5 + 6));
| if (v0 != s6) {
0x0000f548 beq v0, s6, 0xf598 |
0x0000f54c lwx a0, s1(a0) | __asm ("lwx a0, s1(a0)");
0x0000f550 b 0xf1ec | goto label_3;
| label_28:
0x0000f554 lw a2, 0x18(s5) | a2 = *((s5 + 6));
0x0000f558 lw t9, -0x7c50(gp) | t9 = sym.dump_one;
0x0000f55c lw a1, 0x30(sp) | a1 = *(var_30h_3);
0x0000f560 lwx a2, s1(a2) | __asm ("lwx a2, s1(a2)");
0x0000f564 addiu a0, zero, 1 | a0 = 1;
0x0000f568 jalr t9 | t9 ();
0x0000f56c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f570 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f574 lw t9, -0x7ec0(gp) | t9 = sym.trace_detach;
0x0000f578 lwx a0, s1(a0) | __asm ("lwx a0, s1(a0)");
0x0000f57c bal 0x8844 | sym_trace_detach ();
0x0000f580 lw v0, 0x18(s5) | v0 = *((s5 + 6));
0x0000f584 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f588 addu s1, v0, s1 | s1 = v0 + s1;
0x0000f58c sw s2, (s1) | *(s1) = s2;
0x0000f590 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
0x0000f594 b 0xf320 | goto label_4;
| }
0x0000f598 addu s1, a0, s1 | s1 = a0 + s1;
0x0000f59c sw v0, (s1) | *(s1) = v0;
| label_29:
0x0000f5a0 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
0x0000f5a4 b 0xf320 | goto label_4;
| label_37:
0x0000f5a8 addiu v0, zero, 0x85 | v0 = 0x85;
0x0000f5ac addiu v0, zero, 5 | v0 = 5;
| if (s4 == v0) {
0x0000f5b0 beq s4, v0, 0xf774 | goto label_39;
| }
| if (s4 == v0) {
0x0000f5b4 beql s4, v0, 0xf83c | goto label_40;
| }
0x0000f5b8 andi a0, a0, 0x600 | a0 &= 0x600;
0x0000f5bc lw v0, 0x10(s5) | v0 = *((s5 + 4));
| label_18:
0x0000f5c0 andi v0, v0, 2 | v0 &= 2;
0x0000f5c4 lw a0, 0x18(s5) | a0 = *((s5 + 6));
| if (v0 != 0) {
0x0000f5c8 bnez v0, 0xf86c | goto label_41;
| }
| label_19:
0x0000f5cc sll s3, s3, 2 | s3 <<= 2;
0x0000f5d0 move a1, s4 | a1 = s4;
0x0000f5d4 lwx a0, s3(a0) | __asm ("lwx a0, s3(a0)");
| label_16:
0x0000f5d8 lw t9, -0x7ec4(gp) | t9 = sym.trace_syscall;
0x0000f5dc bal 0x8b24 | sym_trace_syscall ();
0x0000f5e0 nop |
0x0000f5e4 move s4, v0 | s4 = v0;
0x0000f5e8 addiu v0, zero, -1 | v0 = -1;
0x0000f5ec lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (s4 != v0) {
0x0000f5f0 bne s4, v0, 0xf49c | goto label_5;
| }
0x0000f5f4 lw a2, 0x18(s5) | a2 = *((s5 + 6));
0x0000f5f8 lw t9, -0x7c50(gp) | t9 = sym.dump_one;
0x0000f5fc lw a1, 0x38(sp) | a1 = *(var_38h_3);
0x0000f600 lwx a2, s3(a2) | __asm ("lwx a2, s3(a2)");
0x0000f604 addiu a0, zero, 1 | a0 = 1;
0x0000f608 jalr t9 | t9 ();
0x0000f60c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f610 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f614 lw t9, -0x7ec0(gp) | t9 = sym.trace_detach;
0x0000f618 lwx a0, s3(a0) | __asm ("lwx a0, s3(a0)");
0x0000f61c bal 0x8844 | sym_trace_detach ();
0x0000f620 lw v0, 0x18(s5) | v0 = *((s5 + 6));
0x0000f624 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f628 addu s3, v0, s3 | s3 = v0 + s3;
0x0000f62c sw s4, (s3) | *(s3) = s4;
0x0000f630 lw v0, 0x54(sp) | v0 = *(var_54h);
0x0000f634 b 0xf380 | goto label_1;
| label_34:
0x0000f638 jalr t9 | t9 ();
0x0000f63c nop |
0x0000f640 lw v0, (v0) | v0 = *(v0);
0x0000f644 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 == s3) {
0x0000f648 beq v0, s3, 0xf73c | goto label_42;
| }
0x0000f64c lw v0, 0x54(sp) | v0 = *(var_54h);
| if (v0 != s6) {
0x0000f650 bne v0, s6, 0xf380 | goto label_1;
| }
0x0000f654 lw t9, (s5) | t9 = *(s5);
| if (t9 == 0) {
0x0000f658 beql t9, zero, 0xf394 | goto label_6;
| }
0x0000f65c sw s4, 0x54(sp) | *(var_54h) = s4;
0x0000f660 lw a1, 0x28(s5) | a1 = *((s5 + 10));
0x0000f664 lw a0, 8(s5) | a0 = *((s5 + 2));
0x0000f668 move a2, zero | a2 = 0;
0x0000f66c jalr t9 | t9 ();
0x0000f670 sw v0, 0x54(sp) | *(var_54h) = v0;
0x0000f674 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f678 b 0xf380 | goto label_1;
| label_33:
0x0000f67c sw s4, 0x54(sp) | *(var_54h) = s4;
0x0000f680 b 0xf3d4 | goto label_7;
| label_32:
0x0000f684 addiu v0, zero, -1 | v0 = -1;
| if (s2 != v0) {
| label_36:
0x0000f688 beql s2, v0, 0xf69c |
0x0000f68c lw v0, 0x1c(s5) | v0 = *((s5 + 7));
0x0000f690 addiu s7, sp, 0x4c | s7 = sp + 0x4c;
| if (s1 != s2) {
0x0000f694 bne s1, s2, 0xf744 | goto label_43;
| }
| label_15:
0x0000f698 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
| }
| label_14:
0x0000f69c move s3, zero | s3 = 0;
| if (v0 <= 0) {
0x0000f6a0 blez v0, 0xf4c4 | goto label_8;
| }
0x0000f6a4 lw s1, -0x7fdc(gp) | s1 = *(gp);
0x0000f6a8 addiu s0, zero, -1 | s0 = -1;
0x0000f6ac addiu s1, s1, -0x11e4 | s1 += -0x11e4;
0x0000f6b0 b 0xf6d4 | goto label_44;
| label_12:
0x0000f6b4 lw t9, -0x7ec0(gp) | t9 = sym.trace_detach;
| label_11:
0x0000f6b8 addiu s3, s3, 1 | s3++;
0x0000f6bc bal 0x8844 | sym_trace_detach ();
0x0000f6c0 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f6c4 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
| label_10:
0x0000f6c8 slt a0, s3, v0 | a0 = (s3 < v0) ? 1 : 0;
| if (a0 == 0) {
0x0000f6cc beql a0, zero, 0xf4c8 | goto label_9;
| }
0x0000f6d0 lw v0, 0x34(sp) | v0 = *(var_34h_3);
| label_44:
0x0000f6d4 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f6d8 sll s4, s3, 2 | s4 = s3 << 2;
0x0000f6dc lwx a0, s4(a0) | __asm ("lwx a0, s4(a0)");
| if (a0 == s0) {
0x0000f6e0 beql a0, s0, 0xf6c8 | goto label_10;
| }
0x0000f6e4 addiu s3, s3, 1 | s3++;
0x0000f6e8 lw v0, 0x10(s5) | v0 = *((s5 + 4));
0x0000f6ec andi v0, v0, 8 | v0 &= 8;
0x0000f6f0 lw t9, -0x7ec0(gp) | t9 = sym.trace_detach;
| if (v0 == 0) {
0x0000f6f4 beqz v0, 0xf6b8 | goto label_11;
| }
0x0000f6f8 move a1, a0 | a1 = a0;
0x0000f6fc move t9, s1 | t9 = s1;
0x0000f700 move a0, s5 | a0 = s5;
0x0000f704 bal 0xee1c | fcn_0000ee1c ();
0x0000f708 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f70c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f710 lwx a0, s4(a0) | __asm ("lwx a0, s4(a0)");
0x0000f714 b 0xf6b4 | goto label_12;
| label_35:
0x0000f718 lw t9, -0x7c50(gp) | t9 = sym.dump_one;
0x0000f71c lw a1, 0x30(sp) | a1 = *(var_30h_3);
0x0000f720 sw a3, 0x10(sp) | *(var_50h_2) = a3;
0x0000f724 move a2, s1 | a2 = s1;
0x0000f728 move a3, s3 | a3 = s3;
0x0000f72c addiu a0, zero, 1 | a0 = 1;
0x0000f730 jalr t9 | t9 ();
0x0000f734 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f738 b 0xf41c | goto label_13;
| if (s2 == s1) {
| label_42:
0x0000f73c beql s2, s1, 0xf69c | goto label_14;
| }
0x0000f740 lw v0, 0x1c(s5) | v0 = *((s5 + 7));
| label_43:
0x0000f744 lw t9, -0x7e20(gp) | t9 = sym.imp.kill;
0x0000f748 addiu a1, zero, 2 | a1 = 2;
0x0000f74c move a0, s2 | a0 = s2;
0x0000f750 jalr t9 | t9 ();
0x0000f754 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f758 move a2, zero | a2 = 0;
0x0000f75c move a1, s7 | a1 = s7;
0x0000f760 lw t9, -0x7d60(gp) | t9 = sym.imp.waitpid;
0x0000f764 move a0, s2 | a0 = s2;
0x0000f768 jalr t9 | t9 ();
0x0000f76c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f770 b 0xf698 | goto label_15;
| label_39:
0x0000f774 lw v0, 0x10(s5) | v0 = *((s5 + 4));
0x0000f778 andi v0, v0, 1 | v0 &= 1;
0x0000f77c addiu a0, zero, 0x288 | a0 = 0x288;
| if (v0 == 0) {
0x0000f780 bnel v0, zero, 0xf8d8 | goto label_45;
| }
| label_21:
0x0000f784 lw a0, 0x18(s5) | a0 = *((s5 + 6));
| label_20:
0x0000f788 sll s3, s3, 2 | s3 <<= 2;
0x0000f78c move a1, zero | a1 = 0;
0x0000f790 lwx a0, s3(a0) | __asm ("lwx a0, s3(a0)");
0x0000f794 b 0xf5d8 | goto label_16;
| label_31:
0x0000f798 lw v0, -0x7fdc(gp) | v0 = *(gp);
0x0000f79c lw t9, -0x7e08(gp) | t9 = sym.imp.__snprintf_chk
0x0000f7a0 addiu s1, sp, 0x64 | s1 = sp + 0x64;
| /* esilref: '&d' */
0x0000f7a4 addiu v0, v0, 0x55a0 | v0 += 0x55a0;
0x0000f7a8 addiu a3, zero, 0x14 | a3 = 0x14;
0x0000f7ac addiu a2, zero, 1 | a2 = 1;
0x0000f7b0 addiu a1, zero, 0x14 | a1 = 0x14;
0x0000f7b4 move a0, s1 | a0 = s1;
0x0000f7b8 sw v0, 0x10(sp) | *(var_50h_2) = v0;
0x0000f7bc jalr t9 | t9 ();
0x0000f7c0 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f7c4 sw s1, 0x5c(sp) | *(var_5ch) = s1;
0x0000f7c8 lw s3, 0x58(sp) | s3 = *(var_58h);
0x0000f7cc lw v0, -0x7dc0(gp) | v0 = *((gp - 8048));
0x0000f7d0 lw t9, -0x7be0(gp) | t9 = sym.imp.fileno;
0x0000f7d4 lw a0, (v0) | a0 = *(v0);
0x0000f7d8 jalr t9 | t9 ();
0x0000f7dc lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f7e0 move s1, v0 | s1 = v0;
0x0000f7e4 lw v0, -0x7ddc(gp) | v0 = *((gp - 8055));
0x0000f7e8 lw t9, -0x7be0(gp) | t9 = sym.imp.fileno;
0x0000f7ec lw a0, (v0) | a0 = *(v0);
0x0000f7f0 jalr t9 | t9 ();
0x0000f7f4 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f7f8 move s4, v0 | s4 = v0;
0x0000f7fc lw v0, -0x7d38(gp) | v0 = *((gp - 8014));
0x0000f800 lw t9, -0x7be0(gp) | t9 = sym.imp.fileno;
0x0000f804 lw a0, (v0) | a0 = *(v0);
0x0000f808 jalr t9 | t9 ();
0x0000f80c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f810 sw zero, 0x14(sp) | *(var_14h_2) = 0;
0x0000f814 sw v0, 0x10(sp) | *(var_50h_2) = v0;
0x0000f818 lw t9, -0x7f38(gp) | t9 = sym.sys_run_nowait;
0x0000f81c move a3, s4 | a3 = s4;
0x0000f820 move a2, s1 | a2 = s1;
0x0000f824 addiu a1, sp, 0x58 | a1 = sp + 0x58;
0x0000f828 move a0, s3 | a0 = s3;
0x0000f82c bal 0xab3c | sym_sys_run_nowait ();
0x0000f830 move s2, v0 | s2 = v0;
0x0000f834 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f838 b 0xf348 | goto label_17;
| if (a0 == 0) {
| label_40:
0x0000f83c beql a0, zero, 0xf5c0 | goto label_18;
| }
0x0000f840 lw v0, 0x10(s5) | v0 = *((s5 + 4));
0x0000f844 lw t9, -0x7ebc(gp) | t9 = sym.strace_exit;
0x0000f848 move a0, s5 | a0 = s5;
0x0000f84c sw zero, 0x10(sp) | *(var_50h_2) = 0;
0x0000f850 move a3, zero | a3 = 0;
0x0000f854 addiu a2, zero, 1 | a2 = 1;
0x0000f858 move a1, s1 | a1 = s1;
0x0000f85c bal 0xefdc | sym_strace_exit ();
0x0000f860 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f864 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f868 b 0xf5cc | goto label_19;
| label_41:
0x0000f86c lw a2, 0x1c(s5) | a2 = *((s5 + 7));
0x0000f870 lw t9, 0x28(sp) | t9 = *(var_28h_3);
0x0000f874 move a1, a0 | a1 = a0;
0x0000f878 move a0, s1 | a0 = s1;
0x0000f87c jalr t9 | t9 ();
0x0000f880 addiu s6, zero, 0x288 | s6 = 0x288;
0x0000f884 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f888 mul v1, v0, s6 | __asm ("mul v1, v0, s6");
0x0000f88c lw a1, 0xc(s5) | a1 = *((s5 + 3));
0x0000f890 lw t9, -0x7eb8(gp) | t9 = sym.signal_map_sig2name;
0x0000f894 move a0, s4 | a0 = s4;
0x0000f898 lw a1, (a1) | a1 = *(a1);
0x0000f89c addu s6, v1, a1 | s6 = v1 + a1;
0x0000f8a0 bal 0xbb10 | sym_signal_map_sig2name ();
0x0000f8a4 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f8a8 sw v0, 0x14(sp) | *(var_14h_2) = v0;
0x0000f8ac lw v0, 0x3c(sp) | v0 = *(var_3ch_3);
0x0000f8b0 lw t9, -0x7ed4(gp) | t9 = sym.strace_printf
0x0000f8b4 move a0, s5 | a0 = s5;
0x0000f8b8 sw s4, 0x10(sp) | *(var_50h_2) = s4;
0x0000f8bc move a3, s6 | a3 = s6;
0x0000f8c0 move a2, s1 | a2 = s1;
0x0000f8c4 addiu a1, v0, 0x5e3c | a1 = v0 + 0x5e3c;
0x0000f8c8 bal 0xedac | sym_strace_printf ()
0x0000f8cc lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f8d0 lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f8d4 b 0xf5cc | goto label_19;
| label_45:
0x0000f8d8 mul s6, s3, a0 | __asm ("mul s6, s3, a0");
0x0000f8dc lw s7, 0xc(s5) | s7 = *((s5 + 3));
0x0000f8e0 lw a3, 0x28(s5) | a3 = *((s5 + 10));
0x0000f8e4 lw a0, 0x2c(s5) | a0 = *((s5 + 11));
0x0000f8e8 lw s4, (s7) | s4 = *(s7);
0x0000f8ec addu s4, s4, s6 | s4 += s6;
0x0000f8f0 addiu t1, s4, 0x28 | t1 = s4 + 0x28;
0x0000f8f4 lbu v0, 0x20(s4) | v0 = *((s4 + 32));
0x0000f8f8 andi v0, v0, 1 | v0 &= 1;
0x0000f8fc addiu t2, s4, 0x158 | t2 = s4 + aav.0x00000158;
| if (v0 == 0) {
0x0000f900 beqz v0, 0xf964 | goto label_46;
| }
0x0000f904 lw t9, -0x7eb4(gp) | t9 = sym.arch_dec_syscall_ret;
0x0000f908 sw a0, 0x10(sp) | *(var_50h_2) = a0;
0x0000f90c move a2, s4 | a2 = s4;
0x0000f910 sw t2, 0x18(sp) | *(var_18h_5) = t2;
0x0000f914 sw t1, 0x14(sp) | *(var_14h_2) = t1;
0x0000f918 move a1, s1 | a1 = s1;
0x0000f91c move a0, s5 | a0 = s5;
0x0000f920 bal 0x11504 | sym_arch_dec_syscall_ret ();
0x0000f924 move a2, v0 | a2 = v0;
0x0000f928 lw gp, 0x20(sp) | gp = *(var_20h_3);
| if (v0 != 0) {
0x0000f92c beqz v0, 0xf944 |
0x0000f930 lw a0, (s7) | a0 = *(s7);
0x0000f934 addu a0, a0, s6 | a0 += s6;
0x0000f938 lbu v0, 0x20(a0) | v0 = *((a0 + 32));
0x0000f93c ins v0, zero, 0, 1 | __asm ("ins v0, zero, 0, 1");
0x0000f940 sb v0, 0x20(a0) | *((a0 + 32)) = v0;
| }
| label_22:
0x0000f944 lw t9, (s5) | t9 = *(s5);
| if (t9 == 0) {
0x0000f948 beql t9, zero, 0xf788 | goto label_20;
| }
0x0000f94c lw a0, 0x18(s5) | a0 = *((s5 + 6));
0x0000f950 lw a1, 0x28(s5) | a1 = *((s5 + 10));
0x0000f954 lw a0, 8(s5) | a0 = *((s5 + 2));
0x0000f958 jalr t9 | t9 ();
0x0000f95c lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f960 b 0xf784 | goto label_21;
| label_46:
0x0000f964 lw t9, -0x7eb0(gp) | t9 = sym.arch_dec_syscall;
0x0000f968 sw t2, 0x18(sp) | *(var_18h_5) = t2;
0x0000f96c sw t2, 0x44(sp) | *(var_44h) = t2;
0x0000f970 sw t1, 0x14(sp) | *(var_14h_2) = t1;
0x0000f974 sw t1, 0x40(sp) | *(var_40h) = t1;
0x0000f978 sw a0, 0x10(sp) | *(var_50h_2) = a0;
0x0000f97c move a2, s4 | a2 = s4;
0x0000f980 move a0, s5 | a0 = s5;
0x0000f984 move a1, s1 | a1 = s1;
0x0000f988 bal 0x10fe0 | sym_arch_dec_syscall ();
0x0000f98c addiu a0, zero, -1 | a0 = -1;
0x0000f990 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f994 lw t1, 0x40(sp) | t1 = *(var_40h);
0x0000f998 lw t2, 0x44(sp) | t2 = *(var_44h);
| if (v0 == a0) {
0x0000f99c beq v0, a0, 0xf9c8 | goto label_47;
| }
0x0000f9a0 lw a0, (s7) | a0 = *(s7);
0x0000f9a4 addiu a2, zero, 1 | a2 = 1;
0x0000f9a8 addu a0, a0, s6 | a0 += s6;
0x0000f9ac lbu a1, 0x20(a0) | a1 = *((a0 + 32));
0x0000f9b0 ins a1, a2, 0, 1 | __asm ("ins a1, a2, 0, 1");
0x0000f9b4 sb a1, 0x20(a0) | *((a0 + 32)) = a1;
| do {
0x0000f9b8 slti a2, v0, 0 | a2 = (v0 < 0) ? 1 : 0;
| if (a2 == 0) {
0x0000f9bc movn v0, zero, a2 | v0 = 0;
| }
0x0000f9c0 move a2, v0 | a2 = v0;
0x0000f9c4 b 0xf944 | goto label_22;
| label_47:
0x0000f9c8 lw v0, 0x2c(s5) | v0 = *((s5 + 11));
0x0000f9cc lw a3, 0x28(s5) | a3 = *((s5 + 10));
0x0000f9d0 lw t9, -0x7eb4(gp) | t9 = sym.arch_dec_syscall_ret;
0x0000f9d4 sw t2, 0x18(sp) | *(var_18h_5) = t2;
0x0000f9d8 sw t1, 0x14(sp) | *(var_14h_2) = t1;
0x0000f9dc sw v0, 0x10(sp) | *(var_50h_2) = v0;
0x0000f9e0 move a2, s4 | a2 = s4;
0x0000f9e4 move a1, s1 | a1 = s1;
0x0000f9e8 move a0, s5 | a0 = s5;
0x0000f9ec bal 0x11504 | sym_arch_dec_syscall_ret ();
0x0000f9f0 addiu v0, v0, -1 | v0 += -1;
0x0000f9f4 lw gp, 0x20(sp) | gp = *(var_20h_3);
0x0000f9f8 b 0xf9b8 |
| } while (1);
| label_38:
0x0000f9fc lw t9, -0x7db0(gp) | t9 = sym.imp.__stack_chk_fail;
0x0000fa00 jalr t9 | t9 ();
0x0000fa04 nop |
0x0000fa08 nop |
0x0000fa0c nop |
| }
[*] Function printf used 9 times dbox